Flussi di dati estesi

Puoi utilizzare la funzionalità di streaming esteso per trasmettere contenuti audio in streaming su Dialogflow e ricevere i suggerimenti degli agenti umani in streaming.

In genere, chiudi a metà o chiedi all'API Dialogflow di terminare lo stream per generare la trascrizione finale e i suggerimenti di Agent Assist. Questo accade nei turni di conversazione, quando l'API riceve il parametro is_final=true dal risultato del riconoscimento, StreamingAnalyzeContentResponse.recognition_result.

Lo streaming esteso riduce la necessità di chiudere a metà durante i turni di conversazione. Estensione del timeout di connessione a tre minuti, durante i quali puoi inviare stream audio senza chiusura parziale. L'API Dialogflow invia automaticamente le trascrizioni finali e i suggerimenti di Agent Assist allo stream. Riavvia lo stream solo se scade il tempo di attesa.

Nozioni di base sullo streaming

La funzionalità di streaming esteso di Agent Assist è simile allo streaming audio per la trascrizione CCAI. Il sistema streamma i dati audio all'API e Dialogflow restituisce i dati StreamingAnalyzeContentResponse. I dati restituiti includono suggerimenti per gli agenti umani.

Per utilizzare lo streaming esteso, chiama il metodo streamingAnalyzeContent.

Lo streaming esteso supporta solo la fase di assistenza dell'agente. Vedi fase della conversazione. Per utilizzare questa funzionalità:

  1. Chiama il metodo streamingAnalyzeContent e imposta i seguenti campi:
    • StreamingAnalyzeContentRequest.audio_config.audio_encoding: AUDIO_ENCODING_LINEAR_16 o AUDIO_ENCODING_MULAW
    • enable_extended_streaming: true.
  2. La prima richiesta streamingAnalyzeContent prepara lo stream e imposta la configurazione audio.
  3. Nelle richieste successive, invii byte audio allo stream.
  4. Finché continui a inviare audio, continuerai a ricevere suggerimenti. Non è necessario chiudere manualmente lo stream. Verrà chiuso automaticamente quando Agent Assist rileva che le frasi sono state interrotte.
  5. Riavviare lo stream (che include il reinvio della configurazione audio iniziale) nei seguenti casi:
    • Lo stream è interrotto (si è interrotto quando non doveva).
    • I dati audio stanno per raggiungere il timeout automatico di 3 minuti.
    • Hai ricevuto un errore non irreversibile. Puoi riprovare fino a tre volte.