En esta guía, se describe cómo enviar entradas de audio a una solicitud de intent de detección con la API. Dialogflow procesa el audio y lo convierte en texto antes de intentar una coincidencia de intent.
Antes de comenzar
Esta función solo es aplicable cuando se usa la API para las interacciones del usuario final. Si usas una integración, puedes omitir esta guía.
Antes de leer esta guía, completa las siguientes tareas:
- Lee los conceptos básicos de Dialogflow.
- Completa los pasos de configuración.
Crea un agente
- Ve a la consola de Dialogflow ES.
- Accede a la consola si se te solicita. Para obtener más información, consulta la descripción general de la consola de Dialogflow.
- En el menú de la barra lateral, expande Cargando agentes.
- Haz clic en Create new agent.
- Ingresa el nombre del agente, el idioma predeterminado y la zona horaria predeterminada.
- Ingresa un proyecto existente. Para permitir que la consola de Dialogflow cree un proyecto, selecciona Crear un proyecto de Google nuevo.
- Haz clic en Crear.
Detecta intents
Para detectar la intención, llama al método detectIntent en el tipo Sessions.
REST
Descarga el archivo de audio de entrada de muestrabook-a-room.wav, que dice "book a room". En este ejemplo, el archivo de audio debe estar codificado en Base64 para que se pueda proporcionar en la siguiente solicitud JSON.
Para codificar el archivo de audio de la solicitud, usa los siguientes comandos en 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
Para obtener más información sobre cómo codificar contenido de audio, consulta Contenido de audio con codificación en Base64.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: El ID del proyecto de Google Cloud.
- AUDIO: Es el contenido de audio codificado en base64
Método HTTP y URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/agent/sessions/123456789:detectIntent
Cuerpo JSON de la solicitud:
{
"queryInput": {
"audioConfig": {
"languageCode": "en-US"
}
},
"inputAudio": "AUDIO"
}
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"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"
}
}
El valor del campo queryResult.action es "room.reservation", y el valor del campo queryResult.fulfillmentMessages[0|1].text.text[0] le pide al usuario más información.
Go
Para autenticarte en Dialogflow CX, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para autenticarte en Dialogflow CX, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para autenticarte en Dialogflow CX, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para autenticarte en Dialogflow CX, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Idiomas adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas cliente y, luego, visita la documentación de referencia de Dialogflow CX para .NET.
PHP: Sigue las instrucciones de configuración de PHP en la página de bibliotecas cliente y, luego, visita la documentación de referencia de Dialogflow CX para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página de bibliotecas cliente y, luego, visita la documentación de referencia de Dialogflow CX para Ruby.