Puedes usar la función de transmisión extendida para transmitir contenido de audio a Dialogflow y transmitir sugerencias de agentes humanos. Para usar esta función, debes configurar un modelo de Speech-to-Text que admita una sola expresión.
Normalmente, cierras a medias o le indicas a la API de Dialogflow cuándo finalizar la transmisión para generar la transcripción final y las sugerencias de Agent Assist. Esto sucede en los turnos de conversación, en los que la API recibe el parámetro is_final=true del resultado del reconocimiento, StreamingAnalyzeContentResponse.recognition_result.
La transmisión extendida reduce la necesidad de un cierre parcial en los turnos de conversación. Extiende el tiempo de espera de conexión a tres minutos, durante los cuales puedes enviar transmisiones de audio sin cerrar la conexión a medias. La API de Dialogflow envía automáticamente las transcripciones finales y las sugerencias de Agent Assist a la transmisión. Solo reinicia la transmisión si se agota el tiempo de espera.
Conceptos básicos de transmisión
La función de transmisión extendida de Agent Assist es similar a la transmisión de audio para la transcripción de voz. Tu sistema transmite datos de audio a la API, y Dialogflow transmite datos de StreamingAnalyzeContentResponse. Los datos devueltos incluyen sugerencias para tus agentes humanos.
Para usar la transmisión extendida, llama al método streamingAnalyzeContent.
La transmisión extendida solo admite la etapa de Asistencia del agente. Consulta etapa de la conversación. Sigue estos pasos para usar esta función:
- Llama al método
streamingAnalyzeContenty configura los siguientes campos:StreamingAnalyzeContentRequest.audio_config.audio_encoding:AUDIO_ENCODING_LINEAR_16oAUDIO_ENCODING_MULAWenable_extended_streaming:true.
- La primera solicitud
streamingAnalyzeContentprepara la transmisión y establece tu configuración de audio. - En las solicitudes posteriores, envías bytes de audio a la transmisión.
- Mientras sigas enviando audio, seguirás recibiendo sugerencias. No es necesario que cierres la transmisión de forma manual. Se cerrará automáticamente una vez que Asistente de agente detecte que se detuvieron las expresiones.
- Reinicia la transmisión (lo que incluye volver a enviar la configuración de audio inicial) en los siguientes casos:
- La transmisión está interrumpida (se detuvo cuando no debía hacerlo).
- Tus datos de audio se acercan al tiempo de espera automático de 3 minutos.
- Recibiste un error que se puede reintentar. Puedes volver a intentarlo hasta tres veces.