Recevoir des interactions utilisateur et y répondre

Cette page explique comment votre application Google Chat peut recevoir et de répondre aux interactions des utilisateurs, également appelées applications Google Chat les événements d'interaction.

Cette page explique comment effectuer les opérations suivantes :

  • Configurer votre application Chat pour recevoir des interactions événements.
  • Traitez l'événement d'interaction sur votre infrastructure.
  • Le cas échéant, répondez aux événements d'interaction.

Prérequis

Une application Google Chat avec des fonctionnalités interactives. Pour créer un interactive, suivez l'un des guides de démarrage rapide suivants sur l'architecture de l'application que vous souhaitez utiliser:

Fonctionnement des événements d'interaction

Un événement d'interaction avec l'application Google Chat représente toute action effectuée par pour appeler une application Chat ou interagir avec elle, que de mentionner une application Chat ou de l'ajouter à une l'espace de stockage. Lorsque les utilisateurs interagissent avec une application Chat, Google Chat envoie un événement d'interaction à l'application Chat. L'application Chat peut utiliser l'événement pour traiter le d’interaction et de créer une réponse.

Par exemple, les applications Chat utilisent des événements d'interaction pour effectuer les actions suivantes:

Exemple d'événement d'interaction Réponse type d'une application Chat
Un utilisateur appelle une application Chat en le mentionnant @ ou en utilisant une commande à barre oblique. La L'application Chat traite le contenu du message créer un message. Par exemple, une application Chat répond à la commande /about par un message qui explique les tâches que de l'application Chat.
Un utilisateur ajoute une application Chat à un espace. L'application Chat envoie un guide d'intégration message qui explique son rôle et la façon dont les utilisateurs de l'espace peuvent interagir avec
Un utilisateur supprime Application Chat d'un espace La L'application Chat supprime toutes les notifications entrantes configurées pour l'espace (comme la suppression webhook) et nettoie mémoire de stockage interne.
Un utilisateur clique sur un bouton d'une carte ou d'une boîte de dialogue envoyée par Application Chat L'application Chat traite et stocke les les données fournies par l'utilisateur, ou renvoie une autre carte ou boîte de dialogue.

Pour chaque type d'interaction utilisateur, Google Chat envoie un type de qui aide votre application Chat à gérer chacune le type d'événement en conséquence. Par exemple, Google Chat utilise le type d'événement ADDED_TO_SPACE pour toute interaction où un utilisateur ajoute la l'application Chat à un espace, afin que L'application Chat peut gérer une réponse, comme publier une de bienvenue. Pour voir tous les événements d'interaction acceptés, consultez la Référence EventType documentation.

Recevoir les événements d'interaction avec l'application Chat

Cette section explique comment recevoir et traiter les événements d'interaction pour votre Application Chat

Configurer votre application Chat pour recevoir des événements d'interaction

Toutes les applications Chat ne sont pas interactives. Par exemple : les webhooks entrants peuvent uniquement envoyer des messages sortants et ne peuvent pas répondre aux utilisateurs. Si vous créez une interface l'application de chat, vous devez choisir un point de terminaison qui permet à vos Application Chat : réception, traitement et réponse aux interactions événements. Pour en savoir plus sur la conception de votre application Chat, consultez Architectures d'implémentation des applications Chat

Pour chacune des fonctionnalités interactives que vous souhaitez créer, vous devez mettre à jour votre configuration dans l'API Chat afin que Google Chat puisse envoyer d'interaction avec votre application Chat:

  1. Dans la console Google Cloud, accédez à la page de l'API Chat et cliquez sur l'icône Page Configuration:

    Accéder à la page "Configuration de l'API Chat"

  2. Sous Fonctionnalités interactives, vérifiez les paramètres et effectuez les mises à jour en fonction les fonctionnalités que vous souhaitez construire:

    Champ Description
    Fonctionnalité Obligatoire. Ensemble de champs qui détermine la manière dont l'application Chat peut interagir avec les utilisateurs:
    • Recevoir des messages privés : les utilisateurs peuvent rechercher l'application Chat et lui envoyer des messages directement dans Google Chat.
    • Rejoindre des espaces et des conversations de groupe: les utilisateurs peuvent ajouter l'application Chat aux espaces et aux conversations de groupe.
    Paramètres de connexion Obligatoire. Point de terminaison de l'application Chat, qui correspond à l'un des points suivants:
    • URL de l'application: point de terminaison HTTPS qui héberge la mise en œuvre de l'application Chat.
    • Projet Apps Script: ID de déploiement d'un projet Apps Script mettant en œuvre une application Chat.
    • Nom du sujet Cloud Pub/Sub: sujet Pub/Sub auquel l'application Chat s'abonne en tant que point de terminaison.
    • Dialogflow: enregistre l'application Chat avec une intégration Dialogflow. Pour en savoir plus, consultez la page Créer une application Google Chat Dialogflow qui comprend le langage naturel.
    Commandes à barre oblique Facultatif. Commandes qui peuvent être présentées aux utilisateurs dans Google Chat. Permet aux utilisateurs d'afficher les actions principales de votre application Chat dans Google Chat et de choisir l'action spécifique avec laquelle ils souhaitent interagir. Pour en savoir plus, consultez Répondre aux commandes à barre oblique en tant qu'application Chat.
    Aperçus de liens Facultatif. Formats d'URL reconnus par l'application Chat et comprenant du contenu supplémentaire pour l'envoi de liens par les utilisateurs Pour en savoir plus, consultez Liens d'aperçu.
    Visibilité Facultatif. Jusqu'à cinq personnes ou un ou plusieurs groupes Google qui peuvent voir et installer votre application Chat. Utilisez ce champ pour tester votre application Chat ou pour la partager avec votre équipe. Pour en savoir plus, consultez Tester les fonctionnalités interactives.
  3. Cliquez sur Enregistrer. Lorsque vous enregistrez l'application Chat votre application Chat est accessible certains utilisateurs de votre organisation Google Workspace.

Votre application Chat est désormais configurée pour recevoir des interactions depuis Google Chat.

Gérer les tentatives d'appel HTTP à votre service

Si une requête HTTPS adressée à votre service échoue (par exemple, si un délai avant expiration, une connexion réseau temporaire ou avec un code d'état HTTPS autre que 2xx), il se peut que Google Chat relance la distribution fois en quelques minutes (mais cela n'est pas garanti). Par conséquent, un Il est possible que l'application Chat reçoive le même message plusieurs fois dans dans certaines situations. Si la requête aboutit, mais renvoie un du message, Google Chat ne relance pas la requête.

Traiter les événements d'interaction ou y répondre

Cette section explique comment les applications Google Chat peuvent traiter les messages et y répondre des événements d'interaction.

Une fois que votre application Chat reçoit un événement d'interaction de la part de Google Chat, ils peuvent répondre de différentes manières. Dans de nombreux cas, les interactions interactives Les applications de chat répondent à l'utilisateur par un message. L'application Google Chat peut également rechercher certaines informations à partir d'un la source, enregistrer les informations de l'événement d'interaction ou à peu près tout autre chose. Ce comportement de traitement définit Application Google Chat.

Pour répondre de manière synchrone, une application Chat doit répondre dans les 30 secondes. La réponse doit être publiée dans l'espace où interaction s'est produite. Sinon, l'application Chat peut répondre de manière asynchrone.

Pour chaque événement d'interaction, les applications Chat reçoivent un corps de requête, qui est la charge utile JSON qui représente l'événement. Vous pouvez utiliser pour traiter une réponse. Pour obtenir des exemples de charges utiles d'événement, consultez Types d'événements d'interaction avec l'application Chat

Le schéma suivant montre comment En général, l'application Google Chat traite différents types de d'interaction:

Architecture du traitement des événements d'interaction par les applications Google Chat.

Réponse en temps réel

Les événements d'interaction permettent aux applications Chat de répondre en temps réel. de manière synchrone. Les réponses synchrones ne nécessitent authentification.

Répondre à une invitation à rejoindre un espace

Dans cet exemple, votre application Chat crée et envoie un SMS chaque fois qu'il est ajouté à un espace. Pour en savoir plus sur les meilleures pratiques pour l'intégration des utilisateurs, consultez Présentez votre application Chat aux utilisateurs.

Pour envoyer un message lorsqu'un utilisateur ajoute votre application Chat à un espace, votre application Chat répond à un ADDED_TO_SPACE événement d'interaction. Pour répondre à ADDED_TO_SPACE avec un message, utilisez le code suivant:

Node.js

/**
 * Sends an onboarding message when the Chat app is added to a space.
 *
 * @param {Object} req The event object from Chat API.
 * @param {Object} res The response object from the Chat app. An onboarding message that
 * introduces the app and helps people get started with it.
 */
exports.onMessage = function onMessage(req, res) {
  if (req.method === 'GET' || !req.body.message) {
    res.send(
      'Hello! This function is meant to be used in a Google Chat space.');
  }

  // Send an onboarding message when added to a Chat space
  if (req.body.type === 'ADDED_TO_SPACE') {
    res.json({
      'text': 'Hi, Cymbal at your service. I help you manage your calendar
      from Google Chat. Take a look at your schedule today by typing
      `/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To
      learn what else I can do, type `/help`.'
    });
  }
};

Apps Script

/**
 * Sends an onboarding message when the Chat app is added to a space.
 *
 * @param {Object} event The event object from Chat API.
 * @return {Object} Response from the Chat app. An onboarding message that
 * introduces the app and helps people get started with it.
 */
function onAddToSpace(event) {

  return {
    'text': 'Hi, Cymbal at your service. I help you manage your calendar
    from Google Chat. Take a look at your schedule today by typing
    `/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To learn
    what else I can do, type `/help`.'
  }
}

L'exemple de code renvoie le message texte suivant:

Exemple de message d'accueil.

Autres exemples de réponse aux interactions

Pour créer des réponses synchrones aux événements d'interaction, consultez les ressources suivantes : guides:

Répondre de manière asynchrone

Les applications Chat doivent parfois répondre à un événement d'interaction après 30 heures secondes ou effectuer des tâches en dehors de l'espace où l'événement d'interaction s'est produit générées. Par exemple, une application Chat peut avoir besoin de répondre à l'utilisateur après avoir terminé une tâche de longue durée. Dans ce cas, Les applications Chat peuvent répondre de manière asynchrone en appelant l'API Google Chat.

Pour créer un message à l'aide de l'API Chat, consultez Créez un message. Pour les guides sur l'utilisation d'autres méthodes de l'API Chat, consultez les Présentation de l'API Chat