Envoyer des messages Google Chat

suivant suivant suivant

Cette page explique comment les applications Google Chat peuvent envoyer des messages pour répondre aux interactions des utilisateurs.

Dans Google Chat, les modules complémentaires apparaissent aux utilisateurs comme des applications Google Chat. Pour en savoir plus, consultez la présentation de l'extension Google Chat.

  • Formulaire de contact à partir de la commande à barre oblique.
    Figure 1. Une application de chat répond à une commande à barre oblique avec un message textuel et un bouton.
  • Formulaire de contact dans une boîte de dialogue.
    Figure 2 Une application Chat ouvre une boîte de dialogue dans laquelle les utilisateurs peuvent saisir des informations.
  • Message de carte avec des widgets de saisie de formulaire.
    Figure 5 Une application Chat envoie un message avec du texte et une fiche interactive.

Prérequis

Node.js

Module complémentaire Google Workspace qui étend Google Chat. Pour en créer un, suivez le guide de démarrage rapide HTTP.

Apps Script

Module complémentaire Google Workspace qui étend Google Chat. Pour en créer un, suivez le guide de démarrage rapide Apps Script.

Concevoir le message

Les applications Chat peuvent inclure l'un des éléments suivants dans un message:

  • Texte contenant des liens hypertextes, des mentions @ et des emoji
  • Une ou plusieurs cartes, qui peuvent s'afficher dans un message ou s'ouvrir dans une nouvelle fenêtre en tant que boîte de dialogue.
  • Un ou plusieurs widgets accessoires, qui sont des boutons qui s'affichent après tout texte ou toute carte d'un message.

Pour en savoir plus sur la conception de messages, consultez la documentation de l'API Google Chat suivante:

Répondre par un message

Les applications Chat peuvent répondre par un message à l'un des déclencheurs ou interactions suivants:

  • Déclencheurs de message, par exemple lorsque les utilisateurs mentionnent un utilisateur ou envoient un message privé à une application Chat.
  • Déclencheurs "Ajout à un espace", par exemple lorsque les utilisateurs installent l'application Chat depuis Google Workspace Marketplace ou l'ajoutent à un espace.
  • Clics sur les boutons des fiches dans les messages ou les boîtes de dialogue Par exemple, lorsque les utilisateurs saisissent des informations et cliquent sur "Envoyer".

Sinon, les applications Chat peuvent envoyer des messages de manière proactive en appelant l'API Google Chat.

Pour répondre avec un message, renvoyez l'action DataActions avec un objet CreateMessageAction:

{ "hostAppDataAction": { "chatDataAction": { "createMessageAction": {
  "message": MESSAGE
}}}

Remplacez MESSAGE par une ressource Message de l'API Chat. Pour en savoir plus sur le fonctionnement des actions, consultez la section Actions Chat.

Dans l'exemple suivant, une application Chat crée et envoie un message texte chaque fois qu'elle est ajoutée à un espace. Pour envoyer un message texte lorsqu'un utilisateur ajoute votre application Chat à un espace, votre application Chat répond au déclencheur Ajout à un espace en renvoyant l'action DataActions:

Node.js

/**
 * Sends an onboarding message when the Chat app is added to a space.
 *
 * @param {Object} req The request object from Google Workspace Add-on.
 * @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.cymbalApp = function cymbalApp(req, res) {
  const chatEvent = req.body.chat;
  // Send an onboarding message when added to a Chat space
  if (chatEvent.addedToSpacePayload) {
    res.json({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
      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 onAddedToSpace(event) {
  return { hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
    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 suivant:

Exemple de message d'intégration.

Pour obtenir d'autres exemples de réponses par message, consultez les guides suivants:

Modifier un message

Les applications de chat peuvent également modifier les messages qu'elles envoient. Par exemple, pour mettre à jour un message après qu'un utilisateur a envoyé une boîte de dialogue ou cliqué sur un bouton dans un message.

Pour mettre à jour un message de l'application Chat, renvoyez l'action DataActions avec un UpdateMessageAction, comme illustré dans l'exemple suivant:

{ "hostAppDataAction": { "chatDataAction": { "updateMessageAction": {
  "message": MESSAGE
}}}}

Remplacez MESSAGE par une ressource Message de l'API Chat.

Pour en savoir plus sur le fonctionnement des actions, consultez la section Actions Chat.

Les applications Chat peuvent également mettre à jour un message d'un utilisateur pour afficher un aperçu d'un lien qu'il a envoyé. Pour en savoir plus, consultez Aperçu des liens dans les messages Google Chat.

Répondre aux interactions ou envoyer des messages proactifs à l'aide de l'API Google Chat

Au lieu de renvoyer une action de module complémentaire, les applications Chat peuvent devoir utiliser l'API Google Chat pour répondre à une interaction. Par exemple, les applications Chat doivent appeler l'API Google Chat pour effectuer l'une des opérations suivantes:

  • Envoyer des messages de manière planifiée ou concernant des modifications apportées à des ressources externes Par exemple, les notifications concernant un nouveau problème ou une nouvelle demande.
  • Répondre plus de 30 secondes après l'interaction. Par exemple, pour répondre avec un message après avoir terminé une tâche de longue durée.
  • Envoyer un message en dehors de l'espace où l'interaction a eu lieu
  • Envoyer un message au nom d'un utilisateur Chat

Pour envoyer un message à l'aide de l'API Chat, vous devez configurer l'authentification et appeler la méthode create() sur la ressource Message. Pour savoir comment procéder, consultez la section Envoyer un message à l'aide de l'API Google Chat.