Você pode usar o recurso de streaming estendido para transmitir conteúdo de áudio para o Dialogflow e receber sugestões de agentes humanos.
Normalmente, você fecha parcialmente ou informa à API Dialogflow quando encerrar o stream para gerar a transcrição final e as sugestões do Assistente do agente. Isso acontece em turnos de conversa, quando a API recebe o parâmetro is_final=true
do resultado do reconhecimento, StreamingAnalyzeContentResponse.recognition_result
.
O streaming estendido reduz a necessidade de fechamento parcial nas rodadas de conversa. Ele estende o tempo limite de conexão para três minutos, durante os quais você pode enviar fluxos de áudio sem fechar pela metade. A API Dialogflow envia automaticamente as transcrições finais e as sugestões do Assistente do agente de volta para o fluxo. Só reinicie o stream se ele expirar.
Princípios básicos de streaming
O recurso de streaming estendido do Agent Assist é semelhante ao streaming de áudio para transcrição da CCAI. Seu sistema
transmite dados de áudio para a API, e o Dialogflow transmite de volta
dados de StreamingAnalyzeContentResponse
. Os dados retornados incluem sugestões
para seus agentes humanos.
Para usar o Extended Streaming, chame o método
streamingAnalyzeContent
.
O Extended Streaming só é compatível com a etapa do Assistente de agente. Consulte etapa da conversa. Para usar este recurso, siga estas etapas:
- Chame o método
streamingAnalyzeContent
e defina os seguintes campos:StreamingAnalyzeContentRequest.audio_config.audio_encoding
:AUDIO_ENCODING_LINEAR_16
ouAUDIO_ENCODING_MULAW
enable_extended_streaming
:true
.
- A primeira solicitação
streamingAnalyzeContent
prepara o stream e define sua configuração de áudio. - Em solicitações subsequentes, você envia bytes de áudio para o stream.
- Enquanto você continuar enviando áudio, vai receber sugestões. Não é necessário fechar o stream manualmente. Ela será fechada automaticamente quando o Assistente do agente detectar que as frases foram interrompidas.
- Reinicie o stream (que inclui o reenvio da configuração inicial de áudio) nos seguintes casos:
- O stream está corrompido (ele parou quando não deveria).
- Seus dados de áudio estão se aproximando do tempo limite automático de 3 minutos.
- Você recebeu um erro que permite uma nova tentativa. Você pode tentar até três vezes.