Interactions via l'API

Si vous n'utilisez aucune des options d'intégration, vous devez écrire du code interagissant directement avec l'utilisateur final. Vous devez également interagir directement avec l'API Dialogflow pour chaque tour de conversation, afin d'envoyer les expressions de l'utilisateur final et de recevoir les correspondances d'intents. Le schéma suivant illustre le flux de traitement correspondant à l'interaction via l'API.

Schéma illustrant le processus basé sur l'API
  1. L'utilisateur final saisit ou prononce une expression.
  2. Votre service envoie cette expression de l'utilisateur final à Dialogflow dans un message de requête de détection d'intent.
  3. Dialogflow envoie un message contenant une réponse de détection d'intent à votre service. Ce message contient des informations sur l'intent mis en correspondance, l'action, les paramètres et la réponse définie pour l'intent.
  4. Votre service effectue les actions requises, telles que des requêtes de base de données ou des appels d'API externes.
  5. Votre service envoie une réponse à l'utilisateur final.
  6. L'utilisateur final voit ou entend la réponse.

Configurer et authentifier le projet

Avant de pouvoir appeler l'API, vous devez configurer un projet GCP et l'authentification associée. Vous pouvez suivre les étapes décrites dans le guide Démarrage rapide pour la configuration.

Créer un agent

Dans la plupart des cas, vous devez utiliser la console Dialogflow ES (consulter la documentation, ouvrir la console) pour créer des agents. Pour créer un agent, vous pouvez suivre la procédure décrite dans le guide Démarrage rapide avec la console. Vous pouvez également utiliser l'API Dialogflow pour créer des agents dédiés à des scénarios avancés. De nombreuses pages de concepts se focalisent sur l'utilisation de la console pour créer des agents, mais elles fournissent également des liens vers des types pertinents de l'API.

REST, gRPC et bibliothèques clientes

Vous pouvez accéder à l'API Dialogflow via REST, gRPC ou l'une des bibliothèques clientes fournies. Pour en savoir plus sur ces options, consultez la page Présentation de l'utilisation de l'API.

Sessions

Une session représente une conversation entre un agent Dialogflow et un utilisateur final. Vous créez une session au début d'une conversation et vous l'utilisez pour chaque tour de conversation. Une fois la conversation terminée, vous arrêtez d'utiliser cette session.

N'utilisez pas la même session pour des conversations simultanées avec différents utilisateurs finaux. Dialogflow gère les contextes actifs pour chaque session active. Les données de session sont stockées par Dialogflow pendant 20 minutes.

Chaque session est déterminée de manière unique par un ID de session généré par votre système. Vous créez une session en transmettant un nouvel ID de session dans une requête de détection d'intent. Un ID de session est une chaîne de caractères d'une taille maximale de 36 octets. Votre système est chargé de générer des ID de session uniques. Il peut s'agir de nombres aléatoires, d'ID d'utilisateurs finaux hachés ou de toute autre valeur que vous pouvez facilement générer.

Détecter un intent

Lorsque vous gérez les interactions à l'aide de l'API, votre service interagit directement avec l'utilisateur final. Pour chaque tour de conversation, votre service envoie les expressions de l'utilisateur final à Dialogflow en appelant la méthode detectIntent ou streamingDetectIntent du type Sessions. Dialogflow répond en envoyant des informations sur l'intent correspondant, l'action, les paramètres et la réponse définie pour l'intent. Votre service effectue les actions requises (par exemple des requêtes de base de données ou des appels d'API externes) et envoie un message à l'utilisateur final. Ce processus se poursuit jusqu'à la fin de la conversation.

Vous pouvez trouver des exemples d'appels de détection d'intent dans la page du guide de démarrage rapide de l'API et dans les guides pratiques.