Interazioni API

Se non utilizzi una delle opzioni di integrazione , devi scrivere codice che interagisca direttamente con l'utente finale. Devi anche interagire direttamente con l'API di Dialogflow per ogni turno di conversazione per inviare le espressioni dell'utente finale e ricevere le corrispondenze di intent. Il seguente diagramma mostra il flusso di elaborazione durante l'interazione con l'API.

Diagramma che mostra il flusso per l'API
  1. L'utente finale digita o pronuncia un'espressione.
  2. Il tuo servizio invia questa espressione dell'utente finale a Dialogflow in un messaggio di richiesta di rilevamento dell'intent.
  3. Dialogflow invia un messaggio di risposta di rilevamento dell'intent al tuo servizio. Questo messaggio contiene informazioni sull'intent corrispondente, sull'azione, sui parametri, e sulla risposta definiti per l'intent.
  4. Il tuo servizio esegue le azioni necessarie, ad esempio query di database o chiamate API esterne.
  5. Il tuo servizio invia una risposta all'utente finale.
  6. L'utente finale vede o ascolta la risposta.

Configurazione del progetto e autenticazione

Prima di chiamare l'API, devi configurare un progetto Google Cloud e l'autenticazione. Puoi seguire i passaggi descritti nella guida rapida alla configurazione.

Creazione di agenti

Nella maggior parte dei casi, per creare agenti devi utilizzare la console Dialogflow ES (consulta la documentazione, apri la console). Puoi seguire i passaggi descritti nella pagina della guida rapida della console per creare un agente. Puoi anche utilizzare l'API Dialogflow per creare agenti per scenari avanzati. Molte pagine di concetti si concentrano sull'utilizzo della console per creare agenti, ma forniscono anche link ai tipi di API pertinenti.

REST, gRPC e librerie client

Puoi accedere all'API Dialogflow tramite REST, gRPC o una delle librerie client fornite. Per i dettagli su queste opzioni, consulta la panoramica sull'utilizzo dell'API.

Sessioni

Una sessione rappresenta una conversazione tra un agente Dialogflow e un utente finale. Crea una sessione all'inizio di una conversazione e la utilizzi per ogni turno della conversazione. Una volta terminata la conversazione, interrompi l'utilizzo della sessione.

Non devi utilizzare la stessa sessione per conversazioni simultanee con utenti finali diversi. Dialogflow gestisce i contesti attualmente attivi per ogni sessione attiva. I dati della sessione vengono archiviati da Dialogflow per 20 minuti.

Ogni sessione è determinata in modo univoco da un ID sessione generato dal tuo sistema. Crea una nuova sessione fornendo un nuovo ID sessione in una richiesta di rilevamento dell'intent. Un ID sessione è una stringa di dimensioni massime di 36 byte. Il tuo sistema è responsabile della generazione di ID sessione univoci. Possono essere numeri casuali, identificatori dell'utente finale con hash, o qualsiasi altro valore che ti sia comodo generare.

Rileva intent

Quando utilizzi l'API per le interazioni, il tuo servizio interagisce direttamente con l'utente finale. Per ogni turno di conversazione, il tuo servizio invia le espressioni dell'utente finale a Dialogflow chiamando il detectIntent o streamingDetectIntent metodo del Sessions tipo. Dialogflow risponde con informazioni sull'intent corrispondente, sull'azione, sui parametri e sulla risposta definiti per l'intent. Il tuo servizio esegue le azioni necessarie (ad esempio, query di database o chiamate API esterne) e invia un messaggio all'utente finale. Questo processo continua fino al termine della conversazione.

Puoi trovare esempi di chiamata di rilevamento dell'intent nella pagina della guida rapida dell'API e nelle pagine delle istruzioni.