Se non utilizzi una delle opzioni di integrazione, devi scrivere codice che interagisca 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.
- L'utente finale digita o pronuncia un'espressione.
- Il tuo servizio invia questa espressione dell'utente finale a Dialogflow in un messaggio di richiesta di rilevamento dell'intenzione.
- Dialogflow invia un messaggio di risposta al rilevamento dell'intento al tuo servizio. Questo messaggio contiene informazioni sull'intent a cui corrisponde, 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.
- Il servizio invia una risposta all'utente finale.
- L'utente finale vede o sente 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, devi utilizzare la console Dialogflow ES (visita la documentazione, apri la console) per creare gli 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 informazioni dettagliate su queste opzioni, consulta la panoramica dell'utilizzo delle API.
Sessioni
Una sessione rappresenta una conversazione tra un agente Dialogflow e un utente finale. Creando una sessione all'inizio di una conversazione, la utilizzi per ogni passaggio 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 è determinata in modo univoco da un ID sessione generato dal sistema. Puoi creare una nuova sessione fornendo un nuovo ID sessione in una richiesta di rilevamento dell'intenzione. Un ID sessione è una stringa di massimo 36 byte. Il sistema è responsabile della generazione di ID sessione univoci. Possono essere numeri casuali, identificatori dell'utente finale sottomessi ad hashing o qualsiasi altro valore che ti è comodo generare.
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 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 chiamata di detect intent nella pagina di guida rapida dell'API e nelle pagine di istruzioni.