НачатьНачать бесплатно

Разные протоколы для разных уровней тем

Теперь, когда Сэм создала темы 'critical' и 'extreme', ей нужно подписать сотрудников из списка контактов на эти темы.

Сэм решила, что подписчики темы 'critical' будут получать только письма по электронной почте. Подписчики темы 'extreme' будут получать SMS — ведь такие уведомления особенно срочные.

Клиент SNS на основе boto3 уже создан и сохранён в переменной sns.

Помогите Сэм подписать пользователей из DataFrame contacts на уведомления по электронной почте или SMS в зависимости от их отдела. Это позволит своевременно доставлять нужные оповещения нужным людям и сделает работу города Сан-Диего более эффективной!

Это упражнение является частью курса

Введение в AWS Boto на Python

Посмотреть курс

Инструкции к упражнению

  • Получите название темы, используя поле 'Department' из DataFrame contacts.
  • На основе названия темы сформируйте TopicArn для тем critical и extreme отдела пользователя.
  • Подпишите адрес электронной почты пользователя на тему critical.
  • Подпишите номер телефона пользователя на тему extreme.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

for index, user_row in contacts.iterrows():
  # Get topic names for the users's dept
  critical_tname = '{}_critical'.____(user_row['Department'])
  extreme_tname = '{}_extreme'.format(user_row['Department'])
  
  # Get or create the TopicArns for a user's department.
  critical_arn = sns.create_topic(____=critical_tname)['TopicArn']
  extreme_arn = sns.____(Name=extreme_tname)['____']
  
  # Subscribe each users email to the critical Topic
  sns.____(____ = critical_arn, 
                ____='email', ____=user_row['Email'])
  # Subscribe each users phone number for the extreme Topic
  sns.____(____ = extreme_arn, 
                ____='sms', ____=str(user_row['Phone']))
Редактировать и запускать код