Ce guide explique comment envoyer une entrée audio à une requête de détection d'intention à l'aide de l'API. Dialogflow traite l'audio et le convertit en texte avant de tenter une correspondance d'intent.
Avant de commencer
Cette fonctionnalité n'est disponible que lorsque l'API est utilisée pour les interactions de l'utilisateur final. Si vous utilisez une intégration, vous pouvez ignorer ce guide.
Avant de lire ce guide, effectuez les tâches suivantes :
- Consultez la section Principes de base de Dialogflow.
- Suivez la procédure de configuration.
Créer un agent
- Accédez à la console Dialogflow ES.
- Connectez-vous à la console si vous y êtes invité. Pour en savoir plus, consultez la présentation de la console Dialogflow.
- Dans le menu de la barre latérale, développez Agents de chargement.
- Cliquez sur Create new agent (Créer un agent).
- Saisissez le nom de l'agent, la langue par défaut et le fuseau horaire par défaut.
- Saisissez un projet existant. Pour laisser la console Dialogflow créer un projet, sélectionnez Create a new Google project (Créer un projet Google).
- Cliquez sur Créer.
Détecter un intent
Pour détecter l'intention, appelez la méthode detectIntent sur le type Sessions.
REST
Téléchargez l'exemple de fichier audio d'entréebook-a-room.wav, qui dit "book a room" (réserver une chambre). Le fichier audio doit être encodé en base64 pour cet exemple, afin de pouvoir être fourni dans la requête JSON suivante.
Pour encoder le fichier audio de la requête, utilisez les commandes suivantes sous 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
Pour en savoir plus sur l'encodage de contenus audio, consultez Encoder du contenu audio en base64.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud
- AUDIO : contenu audio encodé en base64
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/agent/sessions/123456789:detectIntent
Corps JSON de la requête :
{
"queryInput": {
"audioConfig": {
"languageCode": "en-US"
}
},
"inputAudio": "AUDIO"
}
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{
"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"
}
}
La valeur du champ queryResult.action est "room.reservation", et la valeur du champ queryResult.fulfillmentMessages[0|1].text.text[0] demande plus d'informations à l'utilisateur.
Go
Pour vous authentifier auprès de Dialogflow CX, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour vous authentifier auprès de Dialogflow CX, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour vous authentifier auprès de Dialogflow CX, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour vous authentifier auprès de Dialogflow CX, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Langages supplémentaires
C# : veuillez suivre les instructions de configuration de C# sur la page des bibliothèques clientes, puis consultez la documentation de référence sur Dialogflow CX pour .NET.
PHP : Veuillez suivre les Instructions de configuration pour PHP sur la page des bibliothèques clientes, puis consultez la Documentation de référence sur Dialogflow CX pour PHP.
Ruby : veuillez suivre les instructions de configuration de Ruby sur la page des bibliothèques clientes, puis consultez la documentation de référence sur Dialogflow CX pour Ruby.