SSML (Lenguaje de Marcado de Síntesis de Voz) te permite controlar cómo se lee el texto en voz alta. Es posible ajustar la pronunciación, el tono, el énfasis y más, para crear mensajes de voz naturales y atractivos. A continuación, se muestran los comandos SSML más útiles que pueden utilizar con SIP Caller para personalizar tu experiencia de texto a voz.
<speak>¡Hola! ¿Cómo puedo ayudarte hoy?</speak>
<speak>¡Hola! <break time="500ms"/> ¿Cómo puedo asistirte?</speak>
<speak>Esto es información <emphasis level="strong">muy importante</emphasis>.</speak>
<speak><prosody rate="slow" pitch="low">Por favor escucha atentamente.</prosody></speak>
<speak>La fecha es <say-as interpret-as="date">2024-11-08</say-as>.</speak>
<speak>SIP Caller utiliza <sub alias="Protocolo de Inicio de Sesión">SIP</sub> para conectarse con la PBX.</speak>
<speak><p>Bienvenido a SIP Caller.</p><p>¿Cómo podemos asistirte hoy?</p></speak>
Al utilizar SSML de manera eficaz en SIP Caller, podrás ofrecer mensajes de voz claros, profesionales y atractivos que mejoren las interacciones con los clientes. Para una mayor personalización, no dudes en explorar la especificación SSML para Google o la especificación SSML para Azure completa y probar diferentes configuraciones con la función de texto a voz de SIP Caller.
Al usar SSML con Azure Text-to-Speech, ten en cuenta que Azure es muy estricto con la estructura de etiquetas SSML, especialmente en comparación con Google Cloud Text-to-Speech, que es más permisivo.
Para que Azure TTS funcione correctamente en SIP Caller, debes incluir explícitamente tanto el elemento raíz <speak> como un elemento <voice> en el texto SSML.
Además, el elemento <voice> debe especificar exactamente la misma voz seleccionada para la campaña en SIP Caller. Si la voz definida en SSML no coincide con la voz de la campaña, Azure podría rechazar la solicitud y no sintetizar el audio.
No seguir esta estructura puede provocar errores de síntesis y que el audio no se genere.
Ejemplo:
<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="es-US"> <voice name="es-US-PalomaNeural"> Hola. <break time="1s"/> Esta es una llamada de ACME. <break time="1s"/> Es para confirmar tu cita en el día de mañana. <break time="1s"/> Si hay algún problema con esta visita, por favor contáctanos. Muchas gracias. </voice> </speak>