Mensajería bidireccional SMS - AWS Mensajería para el usuario final SMS

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Mensajería bidireccional SMS

AWS La mensajería para el usuario final SMS incluye compatibilidad con la mensajería bidireccionalSMS. Al configurar la opción bidireccionalSMS, puede recibir los mensajes entrantes de sus clientes. También puede utilizar la mensajería bidireccional junto con otras Servicios de AWS, como Lambda y Amazon Lex, para crear experiencias de mensajería de texto interactivas.

Cuando uno de tus clientes envía un mensaje a tu número de teléfono, el cuerpo del mensaje se envía a un SNS tema de Amazon o a una instancia de Amazon Connect para su procesamiento.

nota
  • La opción de SMS ida y vuelta solo está disponible en algunos países y regiones. Para obtener más información sobre la SMS asistencia bidireccional por país o región, consulte. SMSy las capacidades y MMS limitaciones de los países

  • Amazon Connect para dos vías SMS está disponible en el Regiones de AWS SMSsubtipo Mensajes de chat de la Guía del administrador de Amazon Connect.

  • No MMS se admiten los mensajes bidireccionales, pero tu número de teléfono puede seguir recibiendo SMS mensajes entrantes en respuesta a un mensaje saliente. MMS

Two-way SMS messaging (Console)

Para habilitar la función bidireccional SMS mediante la SMS consola de mensajería para el usuario AWS final, sigue estos pasos:

Habilite la opción bidireccional SMS
  1. Abra la SMS consola de mensajería para el usuario AWS final en https://console.aws.amazon.com/sms-voice/.

  2. En el panel de navegación, en Configuraciones, elija Números de teléfono.

  3. En la página de números de teléfono, elija un número de teléfono.

  4. En la SMS pestaña Bidireccional, selecciona el botón Editar configuración.

  5. En la página Editar configuración, selecciona Habilitar mensaje bidireccional.

  6. En Tipo de destino, selecciona Amazon SNS o Amazon Connect.

    • Para Amazon, SNS elige Nuevo tema de Amazon o SNS Tema de Amazon SNS existente y, a continuación, para Rol de canal bidireccional, elige Elegir IAM rol existente o Usar políticas de SNS temas de Amazon.

      • Nuevo SNS tema de Amazon: si eliges esta opción, AWS End User Messaging SMS crea un tema en tu cuenta. El tema se crea automáticamente con todos los permisos necesarios. Para obtener más información sobre SNS los temas de Amazon, consulte Configuración de Amazon SNS en la Guía para desarrolladores de Amazon Simple Notification Service.

      • SNSTema de Amazon existente: si eliges esta opción, debes elegir un SNS tema de Amazon existente en el menú desplegable de destino de los mensajes entrantes.

      • Para el rol de canal bidireccional, elige una de las siguientes opciones:

        • Elige el IAM rol existente: elige una IAM política existente para aplicarla al SNS tema de Amazon. Por ejemplo, SNS las políticas de Amazon, consulteIAMpolíticas para SNS temas de Amazon.

        • Usa las políticas de SNS temas de Amazon: el SNS tema de Amazon requiere la política de SNS temas de Amazon correspondiente para permitir el acceso a los mensajes de los usuarios AWS finalesSMS. Para ver, por ejemplo, SNS las políticas de Amazon, consultePolíticas de SNS temas de Amazon para SNS temas de Amazon.

    • Para Amazon Connect, en Función de canal bidireccional, selecciona Elegir IAM funciones existentes.

      • En el menú desplegable IAMFunciones existentes, elija una IAM función existente como destino del mensaje. Para ver IAM políticas de ejemplo, consulteIAMpolíticas de Amazon Connect.

  7. Elija Guardar cambios.

  8. (Opcional) Si has elegido Amazon Connect como tipo de destino, en la ventana Importar número de teléfono a Amazon Connect:

    1. En el menú desplegable Destino de los mensajes entrantes, selecciona la instancia de Amazon Connect que recibirá los mensajes entrantes.

    2. Seleccione Importar número de teléfono.

Two-way SMS messaging (AWS CLI)

Puede usar el update-phone-numbercomando para habilitar la opción bidireccionalSMS.

En la línea de comandos, escriba el comando siguiente.

$ 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

En el comando anterior, realice los siguientes cambios:

  • Reemplazar PhoneNumber con el PhoneNumber ID o el nombre del recurso de Amazon (ARN) del número de teléfono.

  • Reemplazar TwoWayARN con el nombre de recurso de Amazon (ARN) para recibir los SMS mensajes entrantes. Para ver, por ejemplo, SNS las políticas de Amazon, consultePolíticas de SNS temas de Amazon para SNS temas de Amazon. Para configurar Amazon Connect como destino de entrada, defina TwoWayARN a connect.region.amazonaws.com. Reemplazar region con el lugar Región de AWS en el que está alojada la instancia de Amazon Connect.

  • Reemplazar TwoChannelWayRole con el nombre de recurso de Amazon (ARN) del IAM rol que se va a utilizar. Para ver, por ejemplo, las políticas de SNS permisos, consulte IAMpolíticas para SNS temas de Amazon y, por ejemplo, las políticas de Amazon Connect, consulteIAMpolíticas de Amazon Connect. Este parámetro solo es obligatorio si decide utilizar políticas de IAM permisos.

IAMpolíticas para SNS temas de Amazon

Si desea que la mensajería SMS de usuario AWS final utilice una IAM función existente o si crea una nueva, adjunte las siguientes políticas a esa función para que la mensajería de usuario AWS final SMS pueda asumirla. Para obtener información sobre cómo modificar la relación de confianza de un rol, consulte Modificación de un rol en la guía del IAM usuario.

La siguiente es la política de confianza del IAM rol. En la siguiente IAM política, realice los siguientes cambios:

  • Reemplazar accountId con el identificador único de tu AWS cuenta.

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

La siguiente es la política de permisos para el IAM rol. El SMSVoiceAllowSNSPublish Sid es una política de permisos que permite publicar en SNS temas de Amazon y el SMSVoiceAllowEncryptedSNSTopics Sid es una opción para SNS temas cifrados de Amazon.

En la siguiente política de IAM permisos, realiza los siguientes cambios:

  • Reemplazar partition con la AWS partición en la que utiliza la mensajería SMS de usuario AWS final.

  • Reemplazar region con la Región de AWS que utiliza la mensajería de usuario AWS SMS final.

  • Reemplazar accountId con el identificador único de su Cuenta de AWS.

  • Reemplazar snsTopicArn con los SNS temas de Amazon que recibirán los mensajes.

{ "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 temas de Amazon para SNS temas de Amazon

El SNS tema de Amazon requiere la política temática correspondiente para conceder el acceso a los mensajes de usuario AWS final SMS si no se proporcionan en el TwoChannelWayRole parámetro.

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

En el ejemplo anterior, realice los siguientes cambios:

  • Reemplazar snsTopicArn con el SNS tema de Amazon que enviará y recibirá mensajes.

nota

No se admiten los SNS FIFO temas de Amazon.

Aunque SMS los datos de AWS End User Messaging están cifrados, puedes usar SNS temas de Amazon que estén cifrados mediante AWS KMS claves para un nivel de seguridad adicional. Esta seguridad adicional puede resultar útil si la aplicación maneja datos privados o confidenciales.

Debes realizar algunos pasos de configuración adicionales para usar SNS temas de Amazon cifrados con mensajería bidireccional.

En la siguiente instrucción de ejemplo, se utilizan las SourceArn condiciones, opcionales pero recomendadas, SourceAccount para evitar el confuso problema de los subalternos y solo tiene acceso la cuenta del SMS propietario de AWS End User Messaging. Para obtener más información sobre el problema del diputado confuso, consulte El problema del diputado confuso en la guía del IAM usuario.

En primer lugar, la clave que utilice debe ser simétrica. Los SNS temas cifrados de Amazon no admiten AWS KMS claves asimétricas.

En segundo lugar, la política de claves debe modificarse para permitir que la mensajería SMS del usuario AWS final utilice la clave. Agregue los siguientes permisos a la política de claves 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 obtener más información sobre cómo editar políticas de claves, consulte Cambio de una política de claves en la Guía para desarrolladores de AWS Key Management Service .

Para obtener más información sobre el cifrado de SNS temas de Amazon mediante AWS KMS claves, consulte Habilitar la compatibilidad entre las fuentes de eventos de AWS los servicios y los temas cifrados en la Guía para desarrolladores de Amazon Simple Notification Service.

Ejemplo de carga de SMS mensajes bidireccionales para temas de Amazon SNS

Cuando tu número recibe un SMS mensaje, AWS End User Messaging SMS envía una JSON carga útil a un SNS tema de Amazon que tú designes. La JSON carga útil contiene el mensaje y los datos relacionados, como en el siguiente ejemplo:

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

La carga del mensaje entrante contiene la siguiente información:

Propiedad Descripción

originationNumber

El número de teléfono que le envió el mensaje entrante (es decir, el número de teléfono de su cliente).

destinationNumber

El número de teléfono al que el cliente envió el mensaje (su número de teléfono dedicado).

messageKeyword

La palabra clave registrada que está asociada a su número de teléfono dedicado.

messageBody

El mensaje que el cliente le envió.

inboundMessageId

Identificador único del mensaje entrante.

previousPublishedMessageId

Identificador único del mensaje al que responde el cliente.

IAMpolíticas de Amazon Connect

Si desea que la mensajería SMS para el usuario AWS final utilice una IAM función existente o si crea una nueva, adjunte las siguientes políticas a esa función para que la mensajería para el usuario AWS final SMS pueda asumirla. Para obtener información sobre cómo modificar la relación de confianza existente de un rol, consulte Modificación de un rol en la guía del IAM usuario.

Para crear IAM políticas nuevas, haga lo siguiente:

  1. Cree una nueva política de permisos siguiendo las instrucciones de la Guía del IAM usuario sobre cómo crear políticas con el JSON editor.

    1. En el paso 4, utilice la política de permisos que se define a continuación.

  2. Cree una nueva política de confianza siguiendo las instrucciones de la Guía del IAM usuario sobre cómo crear un rol mediante políticas de confianza personalizadas.

    1. En el paso 4, utilice la política de confianza que se define a continuación.

    2. En el paso 11, añada la política de permisos que creó en el paso anterior.

La siguiente es la política de permisos del IAM rol para permitir la publicación en Amazon Connect.

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

La siguiente es la política de confianza del IAM rol. Realice los siguientes cambios:

  • Reemplazar accountId con el identificador único de su Cuenta de AWS.

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