Cette page explique comment créer une application Google Chat en tant que module complémentaire Google Workspace qui utilise Dialogflow ES pour comprendre le langage naturel et y répondre. Vous pouvez également utiliser Dialogflow CX, qui est directement intégré à Google Chat, pour créer une application Google Chat Dialogflow CX en suivant le guide Google Chat Dialogflow CX.
Objectifs
- configurer votre environnement ;
- Créez et déployez un agent Dialogflow ES.
- Créez et déployez une application Chat optimisée par l'agent Dialogflow ES.
- Testez l'application Chat.
Prérequis
- Compte Google Workspace Business ou Enterprise ayant accès à Google Chat.
- Un projet Google Cloud avec facturation activée. Pour vérifier si la facturation est activée pour un projet existant, consultez Vérifier l'état de facturation de vos projets. Pour créer un projet et configurer la facturation, consultez Créer un projet Google Cloud.
Architecture
Le schéma suivant illustre l'architecture d'une application de chat conçue avec Dialogflow :
Dans le diagramme précédent, un utilisateur qui interagit avec une application de chat Dialogflow suit le flux d'informations suivant :
- Un utilisateur envoie un message dans Chat à une application Chat, soit dans un message privé, soit dans un espace Chat.
- Un agent virtuel Dialogflow, qui réside dans , reçoit et traite le message pour produire une réponse.
- Si vous le souhaitez, vous pouvez utiliser un webhook Dialogflow pour permettre à l'agent Dialogflow d'interagir avec des services tiers externes, tels qu'un système de gestion de projet ou un outil de gestion des tickets.
- L'agent Dialogflow renvoie une réponse au service de l'application Chat dans Chat.
- La réponse est envoyée à l'espace Chat.
Configurer l'environnement
Avant d'utiliser les API Google, vous devez les activer dans un projet Google Cloud. Vous pouvez activer une ou plusieurs API dans un même projet Google Cloud.Dans la console Google APIs, activez les API Google Chat et Dialogflow.
Vérifiez que vous activez les API dans le bon projet Cloud, puis cliquez sur Suivant.
Vérifiez que vous activez les API appropriées, puis cliquez sur Activer.
Créer un agent Dialogflow ES
Si vous ne disposez pas d'agent Dialogflow ES :
- Accédez à la console Dialogflow ES.
- Cliquez sur Create Agent (Créer un agent).
- Attribuez-lui un nom, puis sélectionnez une langue et un fuseau horaire par défaut.
- Associez-le à votre projet Cloud.
- Cliquez sur Créer.
- Créez vos intents et entités selon les besoins du flux de conversation de votre application Chat. Vous pouvez commencer par un intent de salutation.
- Notez l'ID de votre projet.
Pour obtenir un guide détaillé, consultez Créer un agent.
Créer une application Chat et la connecter à l'agent Dialogflow
Après avoir créé un agent Dialogflow ES, procédez comme suit pour le transformer en application de chat :
Dans la console Google APIs, accédez à l'API Google Chat. Recherchez "API Google Chat", puis cliquez sur API Google Chat, puis sur Gérer.
Cliquez sur Configuration et configurez l'application Chat :
- Dans le champ Nom de l'application, saisissez
Dialogflow App. - Dans URL de l'avatar, saisissez
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png. - Dans Description, saisissez
Responds to real human conversation. - Sous Fonctionnalité, sélectionnez Rejoindre des espaces et des conversations de groupe.
- Sous Paramètres de connexion, sélectionnez Dialogflow.
- Sous Paramètres Dialogflow, sélectionnez Dialogflow ES.
- Rendre cette application de chat accessible à certains utilisateurs et groupes de votre domaine, puis saisissez votre adresse e-mail.
- Sous Journaux, sélectionnez Enregistrer les erreurs dans Logging.
- Dans le champ Nom de l'application, saisissez
Cliquez sur Enregistrer.
L'application Chat est prête à recevoir des messages et à y répondre.
Tester l'application Chat
Testez l'application Chat Dialogflow ES en lui envoyant un message dans Google Chat.
Ouvrez Google Chat avec le compte Google Workspace que vous avez fourni lorsque vous vous êtes ajouté en tant que testeur de confiance.
- Cliquez sur Nouveau chat.
- Dans le champ Ajouter une ou plusieurs personnes, saisissez le nom de votre application Chat.
Sélectionnez votre application Chat dans les résultats. Un message privé s'ouvre.
Dans le nouveau message privé contenant l'application, saisissez
Hello, puis appuyez surenter.L'application Dialogflow Chat répond par un message de bienvenue.
Réponses textuelles
Les réponses textuelles sont envoyées à Google Chat sous forme de messages texte. Avec cette mise en forme, vous pouvez mettre le texte en gras ou en italique en l'encapsulant dans certains symboles (réduction claire).
La réponse par message ressemble visuellement à la réponse textuelle par défaut dans la console Dialogflow. Cependant, la réponse de l'API brute sera légèrement différente. Elle définit également la configuration de la plate-forme sur GOOGLE_HANGOUTS, ce qui peut être utile pour créer des agents pour plusieurs intégrations.
"fulfillmentMessages": [
{
"text": {
"text": [
"This is a test."
]
},
"platform": "GOOGLE_HANGOUTS"
},
Cartes
Les réponses sous forme de fiches sont envoyées à Google Chat sous forme de messages de fiche.
Images
Les réponses sous forme d'images sont envoyées à Google Chat sous forme de Widgets d'image Google Chat.
Charge utile personnalisée
Pour envoyer d'autres types de messages Google Chat, vous pouvez utiliser une charge utile personnalisée.
La charge utile personnalisée de Google Chat vous permet de créer des fiches plus avancées. Une fiche peut comporter une ou plusieurs sections. Chaque section peut avoir un en-tête. Vous pouvez consulter le guide de référence sur les fiches de modules complémentaires Google Workspace pour étendre Chat pour découvrir certaines des combinaisons que vous pouvez créer avec ce produit. Cependant, si vous utilisez des charges utiles personnalisées, vous devrez fournir le format JSON.
Voici un exemple de charge utile personnalisée pour créer un message avec une carte :
{ "hangouts": { "hostAppDataAction": { "chatDataAction": { "createMessageAction": { "message": { "cardsV2": [{ "cardId": "pizza", "card": { "header": { "title": "Pizza Delivery Customer Support", "subtitle": "pizzadelivery@example.com", "imageUrl": "https://goo.gl/aeDtrS" }, "sections": [{ "widgets": [{ "textParagraph": { "text": " Your pizza is here!" }}]}] } }]}} }}}}
Limites et points à prendre en compte
- Lorsque vous utilisez des modules complémentaires Google Workspace avec Dialogflow, les objets d'événement de chat présentent les limites et considérations suivantes :
- Événements de l'écran d'accueil de l'application : la prise en charge des événements
APP_HOMEn'est pas encore disponible. - Entrée de requête Dialogflow : le texte envoyé en tant qu'entrée de requête à l'agent Dialogflow dépend du type d'événement :
MESSAGE: valeur du champargumentTextdu message de chat.APP_COMMAND: chaîne"APP_COMMAND_PAYLOAD".ADDED_TO_SPACE: un événement de bienvenue par défaut est envoyé.REMOVED_FROM_SPACE: chaîne"REMOVED_FROM_SPACE_PAYLOAD".CARD_CLICKED: chaîne"BUTTON_CLICKED_PAYLOAD".WIDGET_UPDATED: chaîne"WIDGET_UPDATED_PAYLOAD"(utilisée pour l'autocomplétion).
- Charge utile complète de l'événement : la charge utile JSON complète de l'événement d'interaction de chat est envoyée à Dialogflow dans le champ
WebhookRequest.payload. Vous pouvez y accéder dans votre webhook Dialogflow. Pour en savoir plus, consultez la documentation sur les requêtes de webhook Dialogflow ES.
- Événements de l'écran d'accueil de l'application : la prise en charge des événements
- Points à prendre en compte pour répondre aux commandes et recevoir des données à partir de fiches ou de boîtes de dialogue :
- Si l'agent Dialogflow doit traiter la charge utile JSON de l'événement d'interaction par chat, il peut le faire à l'aide d'un webhook Dialogflow pour inspecter la charge utile personnalisée dans le paramètre de requête.
- Pour afficher une boîte de dialogue à partir de l'agent Dialogflow, répondez avec une seule charge utile JSON personnalisée contenant un objet
RenderActionsavec la navigationpushCard. - Pour traiter les données saisies à partir de cartes, vous pouvez utiliser un webhook Dialogflow et répondre avec une seule charge utile JSON personnalisée contenant l'action appropriée.
- Les aperçus des liens ne sont pas disponibles.
- Si l'agent Dialogflow ne répond qu'avec un seul message, celui-ci est envoyé à Google Chat de manière synchrone. Si l'agent Dialogflow répond avec plusieurs messages, ils sont tous envoyés à Chat de manière asynchrone en appelant la méthode
createsur la ressourcespaces.messagesdans l'API Chat une fois pour chaque message. - Lorsque vous utilisez l'intégration Dialogflow ES avec Chat, l'agent Dialogflow et l'application Chat doivent être configurés dans le même projet Google Cloud.
Résoudre les problèmes
Pour déboguer votre application Chat, commencez par examiner les journaux d'erreurs. Comme cette application utilise Dialogflow, vous disposez de plusieurs ressources de journalisation et de dépannage :
Journaux des modules complémentaires Google Workspace : interrogez les journaux pour obtenir des informations détaillées sur le comportement du module complémentaire, y compris ses interactions avec Chat. Consultez Interroger les journaux des modules complémentaires Google Workspace.
Erreurs de l'application Google Chat : pour obtenir des informations générales sur les messages d'erreur de l'application Chat et les solutions correspondantes, consultez Résoudre les erreurs de l'application Chat.
Historique des conversations Dialogflow ES : Historique | Dialogflow ES
Dépannage général de Dialogflow : Dépannage | Dialogflow
Effectuer un nettoyage
Pour éviter que les ressources utilisées dans ce tutoriel soient facturées sur votre compte , nous vous recommandons de supprimer le projet Cloud.
- Dans la console Google APIs, accédez à la page Gérer les ressources. Cliquez sur Menu > IAM et administration > Gérer les ressources.
- Dans la liste des projets, sélectionnez celui que vous souhaitez supprimer, puis cliquez sur Supprimer .
- Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.
Articles associés
- Dialogflow CX est une autre façon d'utiliser Dialogflow avec une application de chat.