Questa guida descrive come inviare un input audio a una richiesta di rilevamento dell'intent utilizzando l'API. Dialogflow elabora l'audio e lo converte in testo prima di tentare una corrispondenza con l'intent.
Prima di iniziare
Questa funzionalità è applicabile solo quando si utilizza l'API per le interazioni con gli utenti finali. Se utilizzi un'integrazione, puoi saltare questa guida.
Prima di leggere questa guida, completa le seguenti attività:
- Leggi le nozioni di base di Dialogflow.
- Completa i passaggi di configurazione.
Crea un agente
- Vai alla console di Dialogflow ES.
- Se richiesto, accedi alla console. Per saperne di più, consulta la panoramica della console Dialogflow.
- Nel menu della barra laterale, espandi Agenti di caricamento.
- Fai clic su Crea nuovo agente.
- Inserisci il nome dell'agente, la lingua predefinita e il fuso orario predefinito.
- Inserisci un progetto esistente. Per consentire alla console Dialogflow di creare un progetto, seleziona Crea un nuovo progetto Google.
- Fai clic su Crea.
Rileva l'intent
Per rilevare l'intent, chiama il metodo detectIntent sul tipo Sessions.
REST
Scarica il file audio di input di esempiobook-a-room.wav, che dice "book a room". Per questo esempio, il file audio deve essere codificato in Base64, in modo da poter essere fornito nella seguente richiesta JSON.
Per codificare il file audio per la richiesta, utilizza i seguenti comandi su Linux:
wget https://cloud.google.com/dialogflow/es/docs/data/book-a-room.wav base64 -w 0 book-a-room.wav > book-a-room.b64
Per ulteriori informazioni sulla codifica dei contenuti audio, consulta Codifica dei contenuti audio in base64.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- AUDIO: i contenuti audio codificati in base64
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/agent/sessions/123456789:detectIntent
Corpo JSON della richiesta:
{
"queryInput": {
"audioConfig": {
"languageCode": "en-US"
}
},
"inputAudio": "AUDIO"
}
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{
"responseId": "3c1e5a89-75b9-4c3f-b63d-4b1351dd5e32",
"queryResult": {
"queryText": "book a room",
"action": "room.reservation",
"parameters": {
"time": "",
"date": "",
"guests": "",
"duration": "",
"location": ""
},
"fulfillmentText": "I can help with that. Where would you like to reserve a room?",
"fulfillmentMessages": [
{
"text": {
"text": [
"I can help with that. Where would you like to reserve a room?"
]
}
}
],
"intent": {
"name": "projects/PROJECT_ID/agent/intents/e8f6a63e-73da-4a1a-8bfc-857183f71228",
"displayName": "room.reservation"
},
"intentDetectionConfidence": 1,
"diagnosticInfo": {},
"languageCode": "en-us"
}
}
Il valore del campo queryResult.action è "room.reservation" e il valore del campo queryResult.fulfillmentMessages[0|1].text.text[0] chiede all'utente ulteriori informazioni.
Go
Per eseguire l'autenticazione in Dialogflow CX, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per eseguire l'autenticazione in Dialogflow CX, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per eseguire l'autenticazione in Dialogflow CX, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per eseguire l'autenticazione in Dialogflow CX, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client, poi consulta la documentazione di riferimento di Dialogflow CX per .NET.
PHP: segui le istruzioni di configurazione di PHP nella pagina delle librerie client, poi consulta la documentazione di riferimento di Dialogflow CX per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client, poi consulta la documentazione di riferimento di Dialogflow CX per Ruby.