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.
Speak
Puede reproducir la voz en cualquier tramo de llamada proporcionando texto. Puede introducir texto sin formato o lenguaje de marcado de síntesis de voz (SSML). SSML proporciona un mayor control sobre la forma en que Amazon Chime SDK genera la voz al añadir pausas, hacer hincapié en determinadas palabras o cambiar el estilo de expresión.
El SDK de Amazon Chime utiliza el servicio Amazon Polly para realizar conversiones. text-to-speech Amazon Polly le permite elegir entre el motor estándar o el motor neuronal para mejorar la calidad de la voz. Amazon Polly admite más de 20 idiomas y 60 voces para personalizar la experiencia de usuario de la aplicación. Amazon Chime SDK ofrece características de voz sin costo alguno, pero usted paga por usar Amazon Polly. Consulte la página de precios
importante
El uso de Amazon Polly está sujeto a las condiciones de servicio de AWS
Temas
Uso de la acción Speak
En el ejemplo siguiente se muestra una utilización típica de la acción Speak
.
{ "SchemaVersion": "1.0", "Actions":[ { "Type": "Speak", "Parameters": { "Text": "
Hello, World!
", // required "CallId": "call-id-1
", // required "Engine": "neural
", // optional. Defaults to standard "LanguageCode": "en-US
", // optional "TextType": "text
", // optional "VoiceId": "Joanna
" // optional. Defaults to Joanna } } ] }
- CallId
-
Descripción: la
CallId
del participante en losCallDetails
de la invocación de la función de LambdaValores permitidos: un identificador de llamada válido
Obligatorio: sí
Valor predeterminado: ninguno
- Text
-
Descripción: especifica el texto de entrada que se va a sintetizar en voz. Si especifica
ssml
comoTextType
, siga el formato SSML para el texto de entrada.Valores permitidos: cadena
Obligatorio: sí
Valor predeterminado: ninguno
- Engine
-
Descripción: especifica el motor (estándar o neuronal) que se utilizará al procesar texto para la síntesis de voz.
Valores permitidos: estándar | neuronal
Obligatorio: no
Valor predeterminado: estándar
- LanguageCode
-
Descripción: especifica el código de lenguaje. Solo es necesario si se utiliza una voz bilingüe. Si utiliza una voz bilingüe sin código de idioma, se utiliza el idioma predeterminado de la voz bilingüe.
Valores permitidos: códigos de lenguaje de Amazon Polly
Obligatorio: no
Valor predeterminado: ninguno
- TextType
-
Descripción: especifica el tipo de texto de entrada, texto sin formato o SSML. Si no se especifica un tipo de entrada, se utiliza texto sin formato como predeterminado. Para obtener más información sobre SSML, consulte Generación de voz a partir de documentos SSML en la Guía para desarrolladores de Amazon Polly.
Valores permitidos: ssml | texto
Obligatorio: no
Valor predeterminado: ninguno
- VoiceId
-
Descripción: especifica el ID de voz que desea usar.
Valores permitidos: identificadores de voz de Amazon Polly
Obligatorio: no
Valor predeterminado: Joanna
Manejo de ACTION_SUCCESSFUL eventos
El siguiente ejemplo muestra un evento ACTION_SUCCESSFUL
típico de una acción que sintetiza el texto «Hello World» en forma oral, en inglés, utilizando la voz de Joanna
de Amazon Polly.
{ "SchemaVersion": "1.0", "Sequence":
3
, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type": "Speak", "Parameters": { "CallId": "call-id-1
", "Engine": "neural
", "LanguageCode": "en-US
", "Text": "Hello World
", "TextType": "text
", "VoiceId": "Joanna
" } }, "CallDetails":{ ... } }
Gestión de ACTION_FAILED eventos
En el siguiente ejemplo, se muestra un evento ACTION_FAILED
típico del mismo evento utilizado en el ejemplo anterior.
{ "SchemaVersion": "1.0", "Sequence":
2
, "InvocationEventType": "ACTION_FAILED", "ActionData":{ "Type": "Speak", "Parameters": { "CallId": "call-id-1
", "Engine": "neural
", "LanguageCode": "en-US
", "Text": "Hello World
", "TextType": "text
", "VoiceId": "Joanna
" }, "ErrorType": "SystemException", "ErrorMessage": "System error while running action" }, "CallDetails":{ ... } }
Control de errores
En esta tabla se enumeran y describen los mensajes de error generados por la acción Speak
.
Error | Mensaje | Motivo |
---|---|---|
|
La función |
El rol vinculado al servicio que se utiliza para hacer solicitudes a Amazon Polly no existe o le faltan permisos. Para resolverlo, consulte los pasos de la sección Uso de la función vinculada al servicio Amazon Chime SDK Voice Connector |
|
|
Se ha producido un error al validar los parámetros de acción. Consulte la SynthesizeSpeech API en la Guía para desarrolladores de Amazon Polly para obtener más información sobre los parámetros. |
ActionExecutionThrottled |
Amazon Polly está limitando la solicitud de sintetizar voz. | La solicitud a Amazon Polly devuelve una excepción de limitación. Para obtener más información sobre los límites de limitación de Amazon Polly, consulte https://docs.aws.amazon.com/polly/latest/dg/limits.html#limits-throttle. |
|
El |
Los parámetros de acción deben tener un valor |
|
El |
El texto ha superado el límite de caracteres. |
|
Error del sistema al ejecutar la acción. |
Se ha producido un error del sistema al ejecutar la acción. |
Flujos de programas
El siguiente diagrama muestra el flujo del programa que habilita la acción Speak
para la persona que llama. En este ejemplo, la persona que llama escucha un texto que
En el diagrama
Con un teléfono móvil, la persona que llama introduce un número registrado en una aplicación multimedia SIP. La aplicación utiliza el método INVITE
de SIP y envía una respuesta Trying
(100)
a la persona que llama. Esto indica que el servidor de siguiente salto recibió la solicitud de llamada. A continuación, la aplicación SIP utiliza INVITE
para ponerse en contacto con el punto de conexión. Una vez establecida la conexión, las aplicaciones envían una respuesta Ringing (180)
a la persona que llama y comienzan las alertas.
A continuación, la aplicación multimedia SIP envía un evento NEW_INBOUND_CALL
a la función de Lambda, que responde con una acción Speak
que incluye el identificador de la persona que llama y el texto que se desea convertir en voz. A continuación, la aplicación SIP envía una respuesta 200 (OK)
para indicar que se ha respondido a la llamada. El protocolo también habilita los medios.
Si la acción Speak
se realiza correctamente y convierte el texto en voz, devuelve un evento ACTION_SUCCESSFUL
a la aplicación multimedia SIP, que devuelve el siguiente conjunto de acciones. Si la acción falla, la aplicación multimedia SIP envía un evento ACTION_FAILED
a la función de Lambda, que responde con un conjunto de acciones Hangup
. La aplicación cuelga a la persona que llama y devuelve un evento HANGUP
a la función de Lambda, que no realiza ninguna otra acción.
El siguiente diagrama muestra el flujo del programa que habilita la acción Speak
para la persona que recibe la llamada.
En el diagrama
La persona que llama introduce un número registrado en una aplicación multimedia SIP y la aplicación responde como se describe en el diagrama anterior. Cuando la función de Lambda recibe el evento NEW_INBOUND_CALL
, devuelve la acción CallAndBridge a la aplicación SIP. A continuación, la aplicación utiliza el método INVITE
de SIP para enviar las respuestas Trying (100)
y Ringing (180)
a la persona que recibe la llamada.
Si la persona que recibe la llamada responde, la aplicación multimedia SIP recibe una respuesta 200 (OK)
y envía la misma respuesta a la persona que llama. Esto establece los medios y la aplicación SIP envía un evento ACTION_SUCCESSFUL
para la acción CallAndBridge a la función de Lambda. A continuación, la función devuelve la acción de voz y los datos a la aplicación SIP, que los convierte