Разные протоколы для разных уровней тем
Теперь, когда Сэм создала темы 'critical' и 'extreme', ей нужно подписать сотрудников из списка контактов на эти темы.
Сэм решила, что подписчики темы 'critical' будут получать только письма по электронной почте. Подписчики темы 'extreme' будут получать SMS — ведь такие уведомления особенно срочные.
Клиент SNS на основе boto3 уже создан и сохранён в переменной sns.
Помогите Сэм подписать пользователей из DataFrame contacts на уведомления по электронной почте или SMS в зависимости от их отдела. Это позволит своевременно доставлять нужные оповещения нужным людям и сделает работу города Сан-Диего более эффективной!
Это упражнение является частью курса
Введение в AWS Boto на Python
Инструкции к упражнению
- Получите название темы, используя поле
'Department'из DataFramecontacts. - На основе названия темы сформируйте
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']))