Mensagens bidirecionais SMS - AWS Mensagens para o usuário final SMS

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Mensagens bidirecionais SMS

AWS O End User Messaging SMS inclui suporte bidirecionalSMS. Ao configurar o sistema bidirecionalSMS, você pode receber mensagens de seus clientes. Você também pode usar mensagens bidirecionais junto com outras Serviços da AWS, como Lambda e Amazon Lex, para criar experiências interativas de mensagens de texto.

Quando um de seus clientes envia uma mensagem para seu número de telefone, o corpo da mensagem é enviado para um SNS tópico da Amazon ou instância do Amazon Connect para processamento.

nota
Two-way SMS messaging (Console)

Para habilitar o SMS uso bidirecional do SMS console AWS End User Messaging, siga estas etapas:

Ativar bidirecional SMS
  1. Abra o SMS console de mensagens do usuário AWS final em https://console.aws.amazon.com/sms-voice/.

  2. No painel de navegação, em Configurações, selecione Números de telefone.

  3. Na página Números de telefone, escolha um número de telefone.

  4. Na SMS guia Bidirecional, escolha o botão Editar configurações.

  5. Na página Editar configurações, escolha Habilitar mensagem bidirecional.

  6. Para Tipo de destino, escolha Amazon SNS ou Amazon Connect.

    • Para a Amazon, SNS escolha Novo SNS tópico da Amazon ou Tópico existente da Amazon SNS e, em seguida, para Função de canal bidirecional, escolha Escolher IAM função existente ou Usar políticas de SNS tópicos da Amazon.

      • Novo SNS tópico da Amazon — Se você escolher essa opção, o AWS End User Messaging SMS cria um tópico em sua conta. O tópico é criado automaticamente com todas as permissões necessárias. Para obter mais informações sobre os SNS tópicos da Amazon, consulte Como configurar a Amazon SNS no Guia do desenvolvedor do Amazon Simple Notification Service.

      • SNSTópico existente da Amazon — Se você escolher essa opção, deverá escolher um SNS tópico existente da Amazon no menu suspenso Destino de mensagens recebidas.

      • Para a função de canal bidirecional, escolha uma das seguintes opções:

    • Para o Amazon Connect, em Função de canal bidirecional, escolha Escolher IAM funções existentes.

      • No menu suspenso IAMFunções existentes, escolha uma IAM função existente como destino da mensagem. Por exemplo, IAM políticas, consulteIAMpolíticas para o Amazon Connect.

  7. Escolha Salvar alterações.

  8. (Opcional) Se você escolheu o Amazon Connect como o tipo de destino, na janela Importar número de telefone para o Amazon Connect:

    1. No menu suspenso de destino das mensagens recebidas, escolha a instância do Amazon Connect que receberá as mensagens recebidas.

    2. Escolha Importar número de telefone.

Two-way SMS messaging (AWS CLI)

Você pode usar o update-phone-numbercomando para ativar a bidirecionalSMS.

Na linha de comando, insira o seguinte comando:

$ aws pinpoint-sms-voice-v2 update-phone-number \ > --phone-number-id PhoneNumber \ > --two-way-enabled True \ > --two-way-channel-arn TwoWayARN \ > --two-way-channel-role TwoChannelWayRole

No comando anterior, faça as seguintes alterações:

  • Substituir PhoneNumber com o PhoneNumber ID ou o nome de recurso da Amazon (ARN) do número de telefone.

  • Substituir TwoWayARN com o Amazon Resource Name (ARN) para receber as SMS mensagens recebidas. Por exemplo, SNS políticas da Amazon, consultePolíticas de SNS tópicos da Amazon para SNS tópicos da Amazon. Para definir o Amazon Connect como destino de entrada, defina TwoWayARN paraconnect.region.amazonaws.com. Substituir region com o em Região da AWS que a instância do Amazon Connect está hospedada.

  • Substituir TwoChannelWayRole com o Amazon Resource Name (ARN) da IAM função a ser usada. Por exemplo, políticas de SNS permissão, consulte IAMpolíticas para SNS tópicos da Amazon e, por exemplo, políticas do Amazon Connect, consulteIAMpolíticas para o Amazon Connect. Esse parâmetro só é necessário se você optar por usar políticas de IAM permissão.

IAMpolíticas para SNS tópicos da Amazon

Se você quiser que o AWS End SMS User Messaging use uma IAM função existente ou crie uma nova função, anexe as seguintes políticas a essa função para que o AWS End SMS User Messaging possa assumi-la. Para obter informações sobre como modificar a relação de confiança de uma função, consulte Modificar uma função no guia do IAM usuário.

A seguir está a política de confiança para a IAM função. Na IAM política a seguir, faça as seguintes alterações:

  • Substituir accountId com o ID exclusivo da sua AWS conta.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoice", "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }

A seguir está a política de permissão para a IAM função. O SMSVoiceAllowSNSPublish Sid é uma política de permissão para permitir a publicação em SNS tópicos da Amazon e o SMSVoiceAllowEncryptedSNSTopics Sid é uma opção para tópicos criptografados da AmazonSNS.

Na política de IAM permissão a seguir, faça as seguintes alterações:

  • Substituir partition com a AWS partição na qual você usa o AWS End User MessagingSMS.

  • Substituir region com aquele em Região da AWS que você usa o AWS End User MessagingSMS.

  • Substituir accountId com o ID exclusivo do seu Conta da AWS.

  • Substituir snsTopicArn com os SNS tópicos da Amazon que receberão mensagens.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoiceAllowSNSPublish", "Effect": "Allow", "Action": "sns:Publish", "Resource": "arn:partition:sns:region:accountId:snsTopicArn", "Condition": { "StringEquals": { "aws:ResourceAccount": "accountId" } } }, { "Sid": "SMSVoiceAllowEncryptedSNSTopics", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:sns:topicArn": "arn:partition:sns:region:accountId:snsTopicArn", "aws:CalledViaLast": "sns.amazonaws.com" } } } ] }

Políticas de SNS tópicos da Amazon para SNS tópicos da Amazon

O SNS tópico da Amazon exige a política de tópicos apropriada para conceder acesso às mensagens do usuário AWS final, SMS caso elas não sejam fornecidas no TwoChannelWayRole parâmetro.

{ "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sns:Publish", "Resource": "snsTopicArn" }

No exemplo anterior, faça as seguintes alterações:

  • Substituir snsTopicArn com o SNS tópico da Amazon que enviará e receberá mensagens.

nota

SNSFIFOOs tópicos da Amazon não são suportados.

Embora SMS os dados do AWS End User Messaging sejam criptografados, você pode usar SNS tópicos da Amazon que são criptografados usando AWS KMS chaves para obter um nível adicional de segurança. Essa segurança adicional pode ser útil se seu aplicativo manipula dados privados ou confidenciais.

Você precisa realizar algumas etapas adicionais de configuração para usar SNS tópicos criptografados da Amazon com mensagens bidirecionais.

O exemplo de declaração a seguir usa as SourceArn condições opcionais, mas recomendadas, SourceAccount para evitar o confuso problema adjunto e somente a conta do SMS proprietário da Mensagem do Usuário AWS Final tem acesso. Para obter mais informações sobre o problema do deputado confuso, consulte O problema do deputado confuso no guia IAM do usuário.

Primeiro, a chave que você usa deve ser simétrica. SNSTópicos criptografados da Amazon não oferecem suporte a chaves assimétricas AWS KMS .

Em segundo lugar, a política de chaves deve ser modificada para permitir que o AWS End SMS User Messaging use a chave. Adicione as seguintes permissões à política de chave existente:

{ "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:region:accountId:*" } } }

Para obter informações sobre como editar políticas de chave, consulte Alterar uma política de chaves no Guia do desenvolvedor do AWS Key Management Service .

Para obter mais informações sobre a criptografia de SNS tópicos da Amazon usando AWS KMS chaves, consulte Habilitar a compatibilidade entre fontes de eventos de AWS serviços e tópicos criptografados no Guia do desenvolvedor do Amazon Simple Notification Service.

Exemplo de uma carga de SMS mensagem bidirecional para tópicos da Amazon SNS

Quando seu número recebe uma SMS mensagem, o AWS End User Messaging SMS envia uma JSON carga para um SNS tópico da Amazon que você designar. A JSON carga contém a mensagem e os dados relacionados, como no exemplo a seguir:

{ "originationNumber":"+14255550182", "destinationNumber":"+12125550101", "messageKeyword":"JOIN", "messageBody":"EXAMPLE", "inboundMessageId":"cae173d2-66b9-564c-8309-21f858e9fb84", "previousPublishedMessageId":"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" }

A carga útil da mensagem de entrada contém as seguintes informações:

Propriedade Descrição

originationNumber

O número de telefone que enviou a mensagem recebida para você (em outras palavras, o número de telefone do cliente).

destinationNumber

O número de telefone para o qual o cliente enviou a mensagem (seu número de telefone dedicado).

messageKeyword

A palavra-chave registrada associada ao seu número de telefone dedicado.

messageBody

A mensagem que o cliente enviou para você.

inboundMessageId

O identificador exclusivo da mensagem recebida.

previousPublishedMessageId

O identificador exclusivo da mensagem à qual o cliente está respondendo.

IAMpolíticas para o Amazon Connect

Se você quiser que o AWS End SMS User Messaging use uma IAM função existente ou crie uma nova função, anexe as seguintes políticas a essa função para que o AWS End SMS User Messaging possa assumi-la. Para obter informações sobre como modificar uma relação de confiança existente de uma função, consulte Modificar uma função no guia do IAM usuário.

Para criar novas IAM políticas, faça o seguinte:

  1. Crie uma nova política de permissão seguindo as instruções em Criação de políticas usando o JSON editor no Guia IAM do usuário.

    1. Na etapa 4, use a política de permissão definida abaixo.

  2. Crie uma nova política de confiança seguindo as instruções em Criação de uma função usando políticas de confiança personalizadas no Guia IAM do usuário.

    1. Na etapa 4, use a política de confiança definida abaixo.

    2. Na etapa 11, adicione a política de permissão que você criou na etapa anterior.

A seguir está a política de permissão da IAM função para permitir a publicação no Amazon Connect.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "connect:SendChatIntegrationEvent" ], "Resource": [ "*" ] } ] }

A seguir está a política de confiança para a IAM função, faça as seguintes alterações:

  • Substituir accountId com o ID exclusivo do seu Conta da AWS.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoice", "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }