¿Cómo puedo configurar el registro de los mensajes de voz de AWS End User Messaging con Amazon Pinpoint?
Quiero registrar el estado de los mensajes de voz que envío a través de Amazon Pinpoint.
Resolución
Para registrar el estado de los mensajes de voz de Amazon Pinpoint, crea un conjunto de configuraciones y un destino del evento. A continuación, asigna el destino del evento al conjunto de configuraciones. Usa la configuración para recibir la información de respuesta de los mensajes de voz que envías a través de Amazon Pinpoint.
Puedes configurar los siguientes recursos de AWS como destinos de eventos de voz de Amazon Pinpoint:
- Tema de Amazon Simple Notification Service (Amazon SNS)
- Registros de Amazon CloudWatch
- Secuencias de entrega de Amazon Data Firehose
Para configurar el destino de un evento, utiliza las API de AWS End User Messaging o uno de los SDK de AWS.
Nota: La siguiente configuración de registro de mensajes de voz solo se aplica a AWS End User Messaging. Para SMS y Voice v1, consulta ¿Cómo se configura el registro de los mensajes de voz de Amazon Pinpoint para la primera versión de la API de mensajería de voz y SMS de Amazon Pinpoint?
Configuración de un tema de Amazon SNS como destino de eventos de voz de Amazon Pinpoint
Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.
Sigue estos pasos:
-
Para crear un conjunto de configuraciones, ejecuta el comando create-configuration-set:
aws pinpoint-sms-voice-v2 create-configuration-set --configuration-set-name VoiceSNSNota: Sustituye VoiceSNS por el nombre de tu conjunto de configuraciones.
-
Suscríbete al punto de enlace en el que deseas registrar los mensajes de voz en un tema de Amazon SNS. El tema de SNS puede ser un tema nuevo o existente.
-
Agrega los siguientes permisos a tu política de acceso a temas de SNS para permitir que el servicio de voz de AWS End User Messaging entregue registros:
{ "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sns:Publish", "Resource": "arn:aws:sns:us-east-1:ACCOUNT_ID:pinpointsmsvoice", "Condition": { "StringEquals": { "aws:SourceAccount": "ACCOUNT_ID" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:us-east-1:ACCOUNT_ID:configuration-set/VoiceSNS" } } }Nota: Sustituye us-east-1 por tu región de AWS, pinpointsmsvoice por el nombre de tu tema de SNS y ACCOUNT_ID por el ID de tu cuenta de AWS.
-
En un editor de texto, crea un archivo de solicitud de entrada denominado matching.json para MatchingEventTypes. Especifica los eventos que deseas recibir o especifica "ALL" para recibir todos los eventos:
[ "ALL" ] -
Para asignar el destino del evento a configuration-set-name, ejecuta el comando create-event-destination:
aws pinpoint-sms-voice-v2 create-event-destination --configuration-set-name VoiceSNS --event-destination-name VoiceSNS --matching-event-types file://matching.json --sns-destination TopicArn=arn:aws:sns:us-east-1:ACCOUNT_ID:pinpointsmsvoiceNota: Sustituye us-east-1 por tu región, ACCOUNT_ID por el ID de tu cuenta y pinpointsmsvoice por el nombre de tu tema de SNS.
-
Para probar la configuración, utiliza la operación de la API V2 SendVoiceMessage para enviar un mensaje de voz de Amazon Pinpoint. El evento aparece en el punto de enlace que está suscrito al tema de SNS después de unos minutos.
Configuración de Registros de CloudWatch como destino de eventos de voz de Amazon Pinpoint
Sigue estos pasos:
-
Para crear un conjunto de configuraciones, ejecuta el comando create-configuration-set:
aws pinpoint-sms-voice-v2 create-configuration-set --configuration-set-name VoiceCWNota: Sustituye VoiceCW por el nombre de tu conjunto de configuraciones.
-
Para crear un grupo de registros, ejecuta el comando create-log-group:
aws logs create-log-group --log-group-name /aws/pinpoint/voiceNota: Sustituye log-group-name por el nombre de tu grupo de registros. En el resultado del comando, anota el nombre de recurso de Amazon (ARN) del grupo de registro para usarlo en un paso posterior. Si usas un grupo de registro existente, llama a la operación de la API LogGroup para obtener el ARN.
-
Crea un nuevo rol de AWS Identity and Access Management (IAM) para que lo asuma el servicio Amazon Pinpoint.
-
Actualiza la política de confianza de roles de IAM con la siguiente instrucción para permitir que el servicio de voz por SMS asuma el rol de IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "ACCOUNT_ID" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:us-east-1:ACCOUNT_ID:configuration-set/VoiceCW" } } } ] }Nota: Sustituye us-east-1 por tu región, ACCOUNT_ID por tu ID de cuenta y VoiceCW por tu conjunto de configuración.
-
Actualiza la política de permisos de roles de IAM con la siguiente instrucción:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-1:ACCOUNT_ID:log-group:/aws/pinpoint/voice:*" ] } ] }Nota: Sustituye us-east-1 por tu región y ACCOUNT_ID por el ID de tu cuenta. La política anterior concede permisos para llamar a operaciones específicas de la API de Registros de CloudWatch. Para obtener más información, consulta CloudWatch Logs permissions reference (Referencia de permisos de Registros de CloudWatch).
-
En un editor de texto, crea un archivo de solicitud de entrada denominado CloudWatchDestination.json. A continuación, introduce los siguientes parámetros de destino en el archivo:
`{ "IamRoleArn": "arn:aws:iam::ACCOUNT_ID:role/IAM_ROLE", "LogGroupArn": "arn:aws:logs:us-east-1:ACCOUNT_ID:log-group:/aws/pinpoint/voice" }`Nota: Sustituye el valor de IamRoleArn por el ARN del rol de IAM. Sustituye el valor de LogGroupArn por el ARN del grupo de registro de CloudWatch al que deseas enviar los eventos.
-
En un editor de texto, crea un archivo de solicitud de entrada denominado matching.json para MatchingEventTypes. Especifica los eventos que deseas recibir o especifica "ALL" para recibir todos los eventos:
[ "ALL" ] -
Ejecuta el comando create-event-destination para asignar el destino del evento a configuration-set-name:
aws pinpoint-sms-voice-v2 create-event-destination --configuration-set-name VoiceCW --event-destination-name CloudWatch_Destination --matching-event-types file://matching.json --cloud-watch-logs-destination file://CloudWatchDestination.jsonNota: Sustituye VoiceCW por el nombre de tu conjunto de configuraciones.
-
Para probar la configuración, utiliza la operación de la API SendVoiceMessage V2 para enviar un mensaje de voz de Amazon Pinpoint. Después de unos minutos, el evento aparece en el grupo de registro de CloudWatch.
Configuración de una secuencia de entrega de Firehose como destino de eventos de voz de Amazon Pinpoint
Sigue estos pasos:
-
Para crear un conjunto de configuraciones, ejecuta el comando create-configuration-set:
aws pinpoint-sms-voice-v2 create-configuration-set --configuration-set-name VoiceKinesisNota: Sustituye VoiceKinesis por el nombre de tu conjunto de configuraciones.
-
Crea una secuencia de entrega de Firehose y anota el ARN de la secuencia de entrega. En Configuración de destino, elige Amazon Simple Storage Service (Amazon S3).
-
Crea un nuevo rol de IAM para que lo asuma el servicio de Amazon Pinpoint.
-
Actualiza la política de confianza de roles de IAM con la siguiente instrucción en la sección de entidades principales de la política:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "ACCOUNT_ID" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:us-east-1:ACCOUNT_ID:configuration-set/VoiceKinesis" } } } ] }Nota: Sustituye us-east-1 por tu región y ACCOUNT_ID por el ID de tu cuenta. La política anterior permite que el servicio de voz de SMS asuma el rol de IAM.
-
Actualiza la política de permisos de roles de IAM para incluir el ARN de la secuencia de entrega de Firehose:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "firehose:PutRecord", "Resource": "arn:aws:firehose:us-east-1:ACCOUNT_ID:deliverystream/KINESIS_FIREHOSE_NAME" } ] }Nota: Sustituye ACCOUNT_ID por el ID de tu cuenta y KINESIS_FIREHOSE_NAME por el nombre del ARN de la secuencia de entrega de Firehose.
-
En un editor de texto, crea un archivo de solicitud de entrada llamado KinesisFirehoseDestination.json. A continuación, copia y pega los siguientes parámetros de destino en el archivo:
{ "IamRoleArn": "arn:aws:iam::ACCOUNT_ID:role/IAM_ROLE", "DeliveryStreamArn": "arn:aws:firehose:us-east-1:ACCOUNT_ID:deliverystream/KINESIS_FIREHOSE_NAME" }Nota: Sustituye us-east-1 por tu región, ACCOUNT_ID por el ID de la cuenta, KINESIS_FIREHOSE_NAME por el nombre de la secuencia de entrega de Firehose e IAM_ROLE por el nombre del rol de IAM.
-
En un editor de texto, crea un archivo de solicitud de entrada denominado matching.json para MatchingEventTypes. Especifica los eventos que deseas recibir o especifica "ALL" para recibir todos los eventos:
[ "ALL" ] -
Para asignar el destino del evento a configuration-set-name, ejecuta el comando create-event-destination con un archivo de solicitud de entrada:
aws pinpoint-sms-voice-v2 create-event-destination --configuration-set-name VoiceKinesis --event-destination-name KinesisFirehose_Destination --matching-event-types file://matching.json --kinesis-firehose-destination file://KinesisFirehoseDestination.jsonNota: Sustituye VoiceKinesis por el nombre de los conjuntos de configuraciones.
-
Para probar la configuración, utiliza la operación de la API SendVoiceMessage V2 para enviar un mensaje de voz de Amazon Pinpoint. Después de unos minutos, el evento aparece en el bucket de Amazon S3 que configuraste al crear la secuencia de entrega de Firehose.
- Etiquetas
- Amazon Pinpoint
- Idioma
- Español

Contenido relevante
- Respuesta aceptadapreguntada hace un año
- preguntada hace 6 meses
- Respuesta aceptadapreguntada hace un año
- preguntada hace un año
- preguntada hace un año
OFICIAL DE AWSActualizada hace 8 meses
OFICIAL DE AWSActualizada hace 4 años