Ce tutoriel explique comment créer une application Google Chat qui répond aux incidents en temps réel. Lorsqu'elle répond à un incident, l'application crée et renseigne un espace Chat, facilite la résolution de l'incident avec des messages, des commandes à barre oblique et des boîtes de dialogue, et utilise l'IA pour résumer la réponse à l'incident dans un document Google Docs.
Un incident est un événement qui nécessite l'attention immédiate d'une équipe pour être résolu. Voici quelques exemples d'incidents:
- Une demande urgente est créée dans une plate-forme de gestion de la relation client (CRM), ce qui nécessite la collaboration d'une équipe de service pour la résoudre.
- Un système passe hors service, ce qui déclenche l'alerte d'un groupe d'ingénieurs en fiabilité des sites (SRE) afin qu'ils puissent travailler ensemble pour le remettre en ligne.
- Un tremblement de terre de forte magnitude se produit, et les services d'urgence doivent coordonner leur intervention.
Pour les besoins de ce tutoriel, l'alerte d'incident démarre lorsqu'un utilisateur signale l'incident en cliquant sur un bouton depuis une page Web. La page Web simule un incident en demandant aux utilisateurs de saisir des informations de base sur celui-ci: titre, description et adresses e-mail des personnes impliquées.
Découvrez l'application Chat de gestion des incidents en action:
-
Figure 2 Notification indiquant que l'espace Chat de l'incident a été créé. -
Figure 3. Espace Chat de gestion des incidents. -
Figure 4. Résoudre l'incident à l'aide d'une commande à barre oblique -
Figure 5 : Boîte de dialogue de résolution d'un incident. -
Figure 6 : Document Google Docs sur la résolution d'un incident partagé dans un espace. -
Figure 7 : Document Google Docs de résolution d'incidents avec synthèse par IA.
Prérequis
Si vous avez besoin que l'une de ces conditions préalables soit activée pour votre organisation, demandez à votre administrateur Google Workspace de l'activer:
- Compte Google Workspace Business ou Enterprise ayant accès à Google Chat.
- L'option Directory (annuaire, partage des contacts) doit être activée pour Google Workspace. L'application d'incident utilise l'annuaire pour rechercher les coordonnées des personnes chargées de la gestion des incidents, comme leur nom et leur adresse e-mail. Les spécialistes de la réponse aux incidents doivent être des utilisateurs disposant d'un compte Google Chat dans votre organisation Google Workspace.
Objectifs
- Créez une application Chat qui répond aux incidents.
- Aidez les utilisateurs à répondre aux incidents en procédant comme suit :
- Créer des espaces de réponse aux incidents
- Publier des messages récapitulatifs sur les incidents et les réponses
- Prise en charge de la collaboration avec les fonctionnalités interactives de l'application Chat.
- Résumez les conversations et les résolutions avec Vertex AI.
Architecture
Le schéma suivant illustre l'architecture des ressources Google Workspace et Google Cloud utilisées par l'application Google Chat de gestion des incidents.
L'architecture montre comment l'application Google Chat de gestion des incidents traite un incident et sa résolution.
Un utilisateur commence un incident à partir d'un site Web externe hébergé sur Apps Script.
Le site Web envoie une requête HTTP asynchrone à l'application Google Chat, également hébergée sur Apps Script.
L'application Google Chat de gestion des incidents traite la requête:
Le service du SDK Admin d'Apps Script obtient des informations sur les membres de l'équipe, telles que l'ID utilisateur et l'adresse e-mail.
À l'aide d'un ensemble de requêtes HTTP envoyées à l'API Chat à l'aide du service Chat avancé Apps Script, l'application Google Chat de gestion des incidents crée un espace Chat d'incident, le remplit avec les membres de l'équipe et envoie un message à l'espace.
Les membres de l'équipe discutent de l'incident dans l'espace Chat.
Un membre de l'équipe appelle une commande slash pour signaler la résolution de l'incident.
Un appel HTTP à l'API Chat à l'aide du service de chat avancé Apps Script répertorie tous les messages de l'espace Chat.
Vertex AI reçoit les messages listés et génère un résumé.
Le service
DocumentApp
d'Apps Script crée un document Docs et ajoute le résumé de Vertex AI au document.L'application Google Chat de gestion des incidents appelle l'API Chat pour envoyer un message partageant un lien vers le document Google Docs récapitulatif.
Préparer l'environnement
Cette section explique comment créer et configurer un projet Google Cloud pour l'application Chat.
Créer un projet Google Cloud
console Google Cloud
- Dans la console Google Cloud, accédez à Menu > IAM et administration > Créer un projet.
-
Dans le champ Project Name (Nom du projet), saisissez un nom descriptif pour votre projet.
Facultatif : Pour modifier l'ID de projet, cliquez sur Modifier. Une fois le projet créé, vous ne pourrez plus modifier l'ID. Choisissez-en donc un qui répond à vos besoins pour toute la durée de vie du projet.
- Dans le champ Emplacement, cliquez sur Parcourir pour afficher les emplacements potentiels de votre projet. Cliquez ensuite sur Sélectionner.
- Cliquez sur Créer. La console Google Cloud accède à la page "Tableau de bord", et votre projet est créé en quelques minutes.
CLI gcloud
Dans l'un des environnements de développement suivants, accédez à la Google Cloud CLI (gcloud
) :
-
Cloud Shell : pour utiliser un terminal en ligne avec gcloud CLI déjà configuré, activez Cloud Shell.
Activer Cloud Shell -
Interface système locale: pour utiliser un environnement de développement local, installez et initialisez la gcloud CLI.
Pour créer un projet Cloud, utilisez la commandegcloud projects create
: Remplacez PROJECT_ID en définissant l'ID du projet que vous souhaitez créer.gcloud projects create PROJECT_ID
Activer la facturation pour le projet Cloud
console Google Cloud
- Dans la console Google Cloud, accédez à Facturation. Cliquez sur Menu > Facturation > Mes projets.
- Dans Sélectionner une organisation, choisissez l'organisation associée à votre projet Google Cloud.
- Sur la ligne du projet, ouvrez le menu Actions ( ), cliquez sur Modifier la facturation, puis choisissez le compte de facturation Cloud.
- Cliquez sur Définir le compte.
CLI gcloud
- Pour lister les comptes de facturation disponibles, exécutez la commande suivante :
gcloud billing accounts list
- Associer un compte de facturation à un projet Google Cloud :
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Remplacez les éléments suivants :
PROJECT_ID
correspond à l'ID de projet du projet Cloud pour lequel vous souhaitez activer la facturation.BILLING_ACCOUNT_ID
est l'ID du compte de facturation à associer au projet Google Cloud.
Activer les API
console Google Cloud
Dans la console Google Cloud, activez les API Google Chat, Google Docs, Admin SDK et Vertex AI.
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.
CLI gcloud
Si nécessaire, définissez le projet Cloud actuel sur celui que vous avez créé avec la commande
gcloud config set project
:gcloud config set project PROJECT_ID
Remplacez PROJECT_ID par l'ID de projet du projet Cloud que vous avez créé.
Activez les API Google Chat, Google Docs, Admin SDK et Vertex AI avec la commande
gcloud services enable
:gcloud services enable chat.googleapis.com docs.googleapis.com admin.googleapis.com aiplatform.googleapis.com
Configurer l'authentification et l'autorisation
L'authentification et l'autorisation permettent à l'application Chat d'accéder aux ressources de Google Workspace et de Google Cloud pour traiter une réponse à un incident.
Dans ce tutoriel, vous publiez l'application en interne. Vous pouvez donc utiliser des informations d'espace réservé. Avant de publier l'application en externe, remplacez les informations d'espace réservé par des informations réelles pour l'écran d'autorisation.
Dans la console Google Cloud, accédez à Menu > API et services > Écran de consentement OAuth.
Sous Type d'utilisateur, sélectionnez Interne, puis cliquez sur Créer.
Dans le champ Nom de l'application, saisissez
Incident Management
.Dans Adresse e-mail d'assistance utilisateur, sélectionnez votre adresse e-mail ou un groupe Google approprié.
Sous Coordonnées du développeur, saisissez votre adresse e-mail.
Cliquez sur Enregistrer et continuer.
Cliquez sur Ajouter ou supprimer des habilitations. Un panneau s'affiche avec une liste des champs d'application pour chaque API que vous avez activée dans votre projet Cloud.
Sous Ajouter manuellement des champs d'application, collez les champs d'application suivants:
https://www.googleapis.com/auth/chat.spaces.create
https://www.googleapis.com/auth/chat.memberships
https://www.googleapis.com/auth/chat.memberships.app
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/documents
https://www.googleapis.com/auth/admin.directory.user.readonly
https://www.googleapis.com/auth/script.external_request
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/cloud-platform
Cliquez sur Ajouter à la table.
Cliquez sur Mettre à jour.
Cliquez sur Enregistrer et continuer.
Vérifiez le résumé de l'enregistrement de l'application, puis cliquez sur Revenir au tableau de bord.
Créer et déployer l'application Chat
Dans la section suivante, vous allez copier et mettre à jour un projet Apps Script complet contenant tout le code d'application requis pour votre application Chat. Vous n'avez donc pas besoin de copier et coller chaque fichier.
Certaines fonctions incluent des traits d'union à la fin de leur nom, comme processSlashCommand_()
à partir de ChatApp.gs
. Le trait de soulignement masque la fonction sur la page Web d'initialisation de l'incident lorsqu'elle est ouverte dans un navigateur. Pour en savoir plus, consultez la section Fonctions privées.
Apps Script accepte deux types de fichiers : les scripts .gs
et les fichiers .html
. Pour respecter cette compatibilité, le code JavaScript côté client de l'application est inclus dans des balises <script />
et son code CSS est inclus dans des balises <style />
dans un fichier HTML.
Vous pouvez éventuellement afficher l'intégralité du projet sur GitHub.
Voici un aperçu de chacun d'eux :
Consts.gs
Définit les constantes référencées par d'autres fichiers de code, y compris votre ID de projet Cloud, l'ID d'emplacement Vertex AI et l'ID de commande à barre oblique pour fermer un incident.
Afficher le code
Consts.gs
ChatApp.gs
Gère les événements d'interaction Chat, y compris les messages, les clics sur les fiches, les commandes à barre oblique et les boîtes de dialogue. Répond à la commande à barre oblique
/closeIncident
en ouvrant une boîte de dialogue pour recueillir les détails de résolution des incidents. Lit les messages de l'espace en appelant la méthodespaces.messages.list
de l'API Chat. Récupère les ID utilisateur à l'aide du service Directory du SDK Admin dans Apps Script.Afficher le code
ChatApp.gs
ChatSpaceCreator.gs
Il reçoit les données de formulaire que les utilisateurs saisissent sur la page Web d'initialisation de l'incident, et les utilise pour configurer un espace Chat en le créant et en le remplissant, puis publie un message sur l'incident.
Afficher le code
ChatSpaceCreator.gs
DocsApi.gs
Appele l'API Google Docs pour créer un document Google Docs dans Google Drive d'un utilisateur et écrit un résumé des informations sur l'incident, créé dans
VertexAiApi.gs
, dans le document.Afficher le code
DocsApi.gs
VertexAiApi.gs
Résume la conversation dans l'espace Chat à l'aide de Vertex AI. Ce résumé est publié dans un document spécialement créé dans
DocsAPI.gs
.Afficher le code
VertexAiApi.gs
WebController.gs
diffuse le site Web d'initialisation de l'incident.
Afficher le code
WebController.gs
Index.html
Code HTML du site Web d'initialisation de l'incident.
Afficher le code
Index.html
JavaScript.html
Gère le comportement du formulaire, y compris les envois, les erreurs et les effacements, pour le site Web d'initialisation des incidents. Il est inclus dans
Index.html
par la fonctioninclude
personnalisée dansWebController.gs
.Afficher le code
JavaScript.html
Stylesheet.html
CSS du site Web d'initialisation des incidents. Il est inclus dans
Index.html
par la fonctioninclude
personnalisée dansWebController.gs
.Afficher le code
Stylesheet.html
Trouver votre numéro et votre ID de projet Cloud
Dans la console Google Cloud, accédez à votre projet Cloud.
Cliquez sur Paramètres et utilitaires > Paramètres du projet.
Notez les valeurs des champs Project number (Numéro de projet) et Project ID (ID du projet). Vous les utiliserez dans les sections suivantes.
Créer le projet Apps Script
Pour créer un projet Apps Script et l'associer à votre projet Cloud:
- Cliquez sur le bouton suivant pour ouvrir le projet Apps Script Répondre aux incidents avec Google Chat.
Ouvrir le projet - Cliquez sur Vue d'ensemble.
- Sur la page de présentation, cliquez sur Créer une copie.
Nommez votre copie du projet Apps Script:
Cliquez sur Copie de "Répondre aux incidents avec Google Chat".
Dans le champ Titre du projet, saisissez
Incident Management Chat app
.Cliquez sur Renommer.
Dans votre copie du projet Apps Script, accédez au fichier
Consts.gs
et remplacezYOUR_PROJECT_ID
par l'ID de votre projet Cloud.
Définir le projet Cloud du projet Apps Script
- Dans votre projet Apps Script, cliquez sur Paramètres du projet.
- Sous Projet Google Cloud Platform (GCP), cliquez sur Changer de projet.
- Dans Numéro de projet GCP, collez le numéro de votre projet Cloud.
- Cliquez sur Définir un projet. Le projet Cloud et le projet Apps Script sont maintenant associés.
Créer un déploiement Apps Script
Maintenant que tout le code est en place, déployez le projet Apps Script. Vous utilisez l'ID de déploiement lorsque vous configurez l'application Chat dans Google Cloud.
Dans Apps Script, ouvrez le projet de l'application de gestion des incidents.
Cliquez sur Déployer > Nouveau déploiement.
Si Module complémentaire et Application Web ne sont pas déjà sélectionnés, en regard de Sélectionner le type, cliquez sur "Types de déploiement" , puis sélectionnez Module complémentaire et Application Web.
Dans Description, saisissez une description pour cette version, par exemple
Complete version of incident management app
.Dans Exécuter en tant que, sélectionnez Utilisateur accédant à l'application Web.
Dans Qui a accès, sélectionnez Tout le monde dans votre organisation Workspace, où "votre organisation Workspace" correspond au nom de votre organisation Google Workspace.
Cliquez sur Déployer. Apps Script indique que le déploiement a réussi, et fournit un ID de déploiement et une URL pour la page Web d'initialisation de l'incident.
Notez l'URL de l'application Web. Vous pourrez y accéder par la suite au début d'un incident. Copiez l'ID de déploiement. Vous utilisez cet ID lorsque vous configurez l'application Chat dans la console Google Cloud.
Cliquez sur OK.
Configurer l'application Chat dans la console Google Cloud
Cette section explique comment configurer l'API Google Chat dans la console Google Cloud avec des informations sur votre application Chat, y compris l'ID du déploiement que vous venez de créer à partir de votre projet Apps Script.
Dans la console Google Cloud, cliquez sur Menu > Autres produits > Google Workspace > Bibliothèque de produits > API Google Chat > Gérer > Configuration.
Dans le champ Nom de l'application, saisissez
Incident Management
.Dans le champ URL de l'avatar, saisissez
https://developers.google.com/chat/images/quickstart-app-avatar.png
.Dans Description, saisissez
Responds to incidents.
.Activez l'option Activer les fonctionnalités interactives.
Sous Fonctionnalité, sélectionnez Recevoir des messages privés et Rejoindre des espaces et des conversations de groupe.
Sous Paramètres de connexion, sélectionnez Apps Script.
Dans Deployment ID (ID de déploiement), collez l'ID de déploiement Apps Script que vous avez copié précédemment à partir du déploiement du projet Apps Script.
Enregistrez une commande à barre oblique utilisée par l'application Chat entièrement implémentée:
Sous Commandes à barre oblique, cliquez sur Ajouter une commande à barre oblique.
Dans Nom, saisissez
/closeIncident
.Dans ID de commande, saisissez
1
.Dans Description, saisissez
Closes the incident being discussed in the space.
.Sélectionnez Ouvre une boîte de dialogue.
Cliquez sur OK. La commande à barre oblique est enregistrée et listée.
Sous Visibilité, sélectionnez Rendre cette application de chat accessible à certains utilisateurs et groupes de votre domaine Workspace, puis saisissez votre adresse e-mail.
Sous Journaux, sélectionnez Consigner les erreurs dans Logging.
Cliquez sur Enregistrer. Un message indiquant que la configuration a été enregistrée s'affiche, ce qui signifie que l'application est prête à être testée.
Tester l'application Chat
Pour tester l'application Chat de gestion des incidents, déclenchez un incident depuis la page Web et vérifiez que l'application Chat fonctionne comme prévu:
Accédez à l'URL de l'application Web de déploiement d'Apps Script.
Lorsque Apps Script demande l'autorisation d'accéder à vos données, cliquez sur Examiner les autorisations, connectez-vous avec un compte Google approprié dans votre domaine Google Workspace, puis cliquez sur Autoriser.
La page Web d'initialisation de l'incident s'ouvre. Saisissez les informations de test:
- Dans Titre de l'incident, saisissez
The First Incident
. - (Facultatif) Dans Répondeurs à l'incident, saisissez les adresses e-mail de vos collègues chargés de la gestion des incidents. Il doit s'agir d'utilisateurs disposant d'un compte Google Chat dans votre organisation Google Workspace, sinon la création de l'espace échouera. Ne saisissez pas votre propre adresse e-mail, car elle est incluse automatiquement.
- Dans Message initial, saisissez
Testing the incident management Chat app.
.
- Dans Titre de l'incident, saisissez
Cliquez sur Créer un espace Chat. Un message
creating space
s'affiche.Une fois l'espace créé, un message
Space created!
s'affiche. Cliquez sur Ouvrir l'espace pour ouvrir l'espace dans Chat dans un nouvel onglet.Vous et les autres intervenants peuvent envoyer des messages dans l'espace. L'application résume ces messages à l'aide de Vertex AI et partage un document récapitulatif.
Pour mettre fin à la gestion de l'incident et commencer le processus de résolution, saisissez
/closeIncident
dans l'espace Chat. Une boîte de dialogue de gestion des incidents s'ouvre.Dans Fermer l'incident, saisissez une description de la résolution de l'incident, par exemple
Test complete
.Cliquez sur Fermer l'incident.
L'application de gestion des incidents liste les messages de l'espace, les résume avec Vertex AI, colle le résumé dans un document Google Docs et partage le document dans l'espace.
Effectuer un nettoyage
Pour éviter que les ressources utilisées dans ce tutoriel ne soient facturées sur votre compte Google Cloud, nous vous recommandons de supprimer le projet Cloud.
- Dans la console Google Cloud, 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
- Répondre à des questions basées sur des conversations Chat à l'aide d'une application Chat avec l'IA Gemini
- Gérer des projets avec Google Chat, Vertex AI et Firestore
- L'application de gestion des incidents s'authentifie avec des identifiants utilisateur pour appeler des API et appeler des services Google Cloud, tels que l'API Chat et l'API Vertex AI.
Cela signifie que l'utilisateur qui lance un incident doit avoir accès à ces services. Pour rendre l'application plus robuste, envisagez d'appeler l'API Vertex AI en tant que compte de service au lieu des identifiants de l'utilisateur appelant la commande à barre oblique
/closeIncident
. Pour savoir comment configurer un compte de service pour l'API Vertex AI, consultez la page Utiliser un compte de service personnalisé.