Interazioni API

Se non utilizzi uno dei di integrazione opzioni, occorre scrivere codice che interagisce direttamente con l'utente finale. Inoltre, devi interagire direttamente con l'API Dialogflow per ogni turno di conversazione per inviare le espressioni degli utenti finali 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 di rilevare il messaggio di richiesta di intent.
  3. Dialogflow invia un messaggio di risposta al rilevamento dell'intento al tuo servizio. Questo messaggio contiene informazioni sull'intent corrispondente, sull'azione, sui parametri e la risposta definita per l'intento.
  4. Il servizio esegue le azioni necessarie, come query sul database o chiamate API esterne.
  5. Il tuo servizio invia una risposta all'utente finale.
  6. L'utente finale vede o sente la risposta.

Configurazione e autenticazione del progetto

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

Creazione di agenti

Nella maggior parte dei casi, devi utilizzare la console Dialogflow ES (visita la documentazione e apri la console) per creare agenti. Per creare un agente, puoi seguire i passaggi descritti nella pagina di avvio rapido della console. Puoi anche utilizzare l'API Dialogflow per creare agenti per scenari avanzati. Molte pagine di concetto si concentrano sull'utilizzo della console per creare agenti, ma forniscono anche link a tipi di API pertinenti.

REST, gRPC e librerie client

Puoi accedere all'API Dialogflow tramite REST, gRPC, o una delle librerie client fornite. Per maggiori dettagli su queste opzioni, vedi il Panoramica sull'utilizzo delle API.

Sessioni

Una sessione rappresenta una conversazione tra un agente Dialogflow e un utente finale. Crei una sessione all'inizio di una conversazione e utilizzarlo per ogni turno della conversazione. Al termine della conversazione, interrompi l'utilizzo della sessione.

Non 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 viene identificata in modo univoco da un ID sessione generato dal sistema. Puoi creare una nuova sessione fornendo un nuovo ID sessione in un richiesta di rilevamento di intent. Un ID sessione è una stringa di massimo 36 byte. Il tuo sistema è responsabile della generazione di ID sessione univoci. Possono essere numeri casuali, identificatori di utenti finali con hash o qualsiasi altro valore che tu possa generare con facilità.

Rilevare l'intenzione

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

Puoi trovare esempi di chiamate al rilevamento dell'intento nella Pagina della guida rapida alle API e ai pagine di istruzioni.