ComeçarComece de graça

Protocolos diferentes por nível de tópico

Agora que Sam criou os tópicos critical e extreme, ela precisa inscrever a equipe da lista de contatos nesses tópicos.

Sam decidiu que as pessoas inscritas em tópicos 'critical' receberão apenas emails. Por outro lado, quem estiver inscrito em tópicos 'extreme' receberá SMS — porque são bem urgentes.

Ela já criou o cliente SNS do boto3 na variável sns.

Ajude a Sam a inscrever os usuários do DataFrame contacts para receber notificações por email ou SMS com base no departamento. Isso vai ajudar a enviar os alertas certos para as pessoas certas, fazendo a cidade de San Diego funcionar melhor e mais rápido!

Este exercício faz parte do curso

Introdução ao AWS Boto em Python

Ver curso

Instruções do exercício

  • Obtenha o nome do tópico usando o campo 'Department' no DataFrame contacts.
  • Use o nome do tópico para criar os TopicArns de critical e extreme para o departamento de um usuário.
  • Inscreva o endereço de email do usuário no tópico critical.
  • Inscreva o número de telefone do usuário no tópico extreme.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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']))
Editar e executar o código