Interazioni API

Se non utilizzi una delle opzioni di integrazione, devi scrivere codice che interagisca direttamente con l'utente finale. Devi inoltre interagire direttamente con l'API di Dialogflow per ogni svolta di conversazione per inviare espressioni dell'utente finale e ricevere 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 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 per il rilevamento dell'intent al tuo servizio. Questo messaggio contiene informazioni sull'intent con corrispondenza, l'azione, i parametri e la risposta definiti per l'intent.
  4. Il servizio esegue le azioni in base alle esigenze, ad esempio query sul database o chiamate API esterne.
  5. Il 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, per creare gli agenti devi utilizzare la console di Dialogflow ES (consulta la documentazione, apri la console). Puoi seguire i passaggi 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 concettuali sono incentrate sull'utilizzo della console per creare gli 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 maggiori dettagli su queste opzioni, consulta la panoramica dell'utilizzo delle API.

Sessioni

Una sessione rappresenta una conversazione tra un agente Dialogflow e un utente finale. Puoi creare una sessione all'inizio di una conversazione e utilizzarla a ogni suo turno. Al termine della conversazione, smetti di utilizzarla.

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

Ogni sessione è determinata da un ID sessione generato dal sistema. Puoi creare una nuova sessione fornendo un nuovo ID sessione in una richiesta di rilevamento dell'intento. Un ID sessione è una stringa di massimo 36 byte. La generazione di ID sessione univoci è responsabilità del sistema. Possono essere numeri casuali, identificatori dell'utente finale sottoposti ad hashing o qualsiasi altro valore che puoi generare facilmente.

Rilevamento dell'intento

Quando utilizzi l'API per le interazioni, il tuo servizio interagisce direttamente con l'utente finale. Per ogni svolta di conversazione, il servizio invia espressioni dell'utente finale a Dialogflow chiamando il metodo detectIntent o streamingDetectIntent del tipo Sessions. Dialogflow risponde con informazioni sull'intent corrispondente, sull'azione, sui parametri e sulla 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 di rilevamento dell'intent nella pagina della guida rapida delle API e nelle pagine di istruzioni.