Répondre aux commandes à barre oblique via une application Google Chat

Cette page explique comment configurer des commandes à barre oblique et y répondre Application Google Chat.

Une commande à barre oblique est un moyen courant pour les utilisateurs d'appeler un objet Application Chat Les commandes à barre oblique aident également les utilisateurs à découvrir et utiliser les principales fonctionnalités d'une application Chat.

Pour utiliser une commande à barre oblique, les utilisateurs doivent saisir une barre oblique (/), puis une commande de texte courte, comme /about pour obtenir des informations sur l'application Chat. Les utilisateurs peuvent découvrir les commandes à barre oblique disponibles en tapant une barre oblique dans Google Chat, qui affiche une fenêtre répertoriant les commandes disponibles pour Application de chat:

<ph type="x-smartling-placeholder">
</ph> Fenêtre de commande à barre oblique
Figure 1: Fenêtre qui s'affiche lorsque les utilisateurs saisissent une barre oblique dans Google Chat.

Pour décider si vous devez configurer des commandes à barre oblique et comprendre comment concevoir des interactions utilisateur, voir Définissez tous les parcours utilisateur.

Commandes à barre oblique avec réponses privées

Lorsqu'un utilisateur envoie un message contenant une commande à barre oblique, le message est uniquement visible par l'utilisateur et dans l'application Chat. Si vous avez configuré votre application Chat pour être ajoutée à des espaces avec plusieurs personnes, vous pouvez envisager de répondre à la commande à barre oblique afin que l'interaction entre l'utilisateur et l'utilisateur Application Chat

Par exemple, pour en savoir plus sur une application Chat qu'ils dans un espace, les utilisateurs peuvent utiliser des commandes telles que /about ou /help. Pour éviter d'informer tous les autres membres de l'espace, le L'application Chat peut répondre en privé en fournissant des informations sur comment utiliser l'application Chat et obtenir de l'aide.

Prérequis

Node.js

Une application Google Chat avec des fonctionnalités interactives. Pour créer un une application Chat interactive utilisant un service HTTP, suivez ce guide de démarrage rapide.

Apps Script

Une application Google Chat avec des fonctionnalités interactives. Pour créer un application Chat interactive dans Apps Script, suivez ce guide de démarrage rapide.

Python

Une application Google Chat avec des fonctionnalités interactives. Pour créer un une application Chat interactive utilisant un service HTTP, suivez ce guide de démarrage rapide.

Configurer une commande à barre oblique

Cette section explique comment effectuer les étapes suivantes pour configurer une barre oblique :

  1. Créez un nom pour votre commande à barre oblique.
  2. Configurez la commande à barre oblique dans l'API Google Chat.

Nommez votre commande à barre oblique

Le nom d'une commande à barre oblique est ce que les utilisateurs saisissent dans un message Chat pour appeler l'application Chat. Une brève description également apparaît sous le nom pour inviter les utilisateurs à en savoir plus sur l'utilisation de la commande:

<ph type="x-smartling-placeholder">
</ph> Nom et description de la commande à barre oblique
Figure 2: Nom et description d'une commande à barre oblique

Lorsque vous choisissez un nom et une description pour votre commande à barre oblique, tenez compte de la recommandations suivantes:

  • Pour nommer votre commande à barre oblique:

    • Utilisez des mots ou des expressions courts, descriptifs et exploitables pour faire en sorte que des commandes claires et simples pour l'utilisateur. Par exemple, au lieu de saisir /createAReminder, utilisez /remindMe.
    • Si votre commande contient plusieurs mots, aidez les utilisateurs à la lire en mettant tout en minuscules pour le premier mot, puis en mettant le premier en majuscule ou la lettre de chaque mot supplémentaire. Par exemple, au lieu de /updatecontact, utiliser /updateContact.
    • Déterminez si vous devez utiliser un nom unique ou courant pour votre commande. Si votre commande décrit une interaction ou une fonctionnalité typique, vous pouvez utiliser nom courant que les utilisateurs reconnaissent et attendent, tel que /settingsou /feedback Sinon, essayez d'utiliser des noms de commande uniques, car si votre nom de la commande est identique pour les autres applications Chat, l'utilisateur doit filtrer grâce à des commandes similaires pour trouver et utiliser les vôtres.
  • Pour décrire votre commande à barre oblique:

    • La description doit être courte et claire pour que les utilisateurs sachent à quoi s'attendre lorsqu'ils appellent la commande.
    • Indiquez aux utilisateurs s'il existe des exigences de mise en forme pour la commande. Par exemple, si vous créez une commande /remindMe qui nécessite un argument , définissez la description comme Remind me to do [something] at [time].
    • Indiquer aux utilisateurs si l'application Chat répond à tout le monde dans l'espace, ou en privé à l'utilisateur qui appelle la commande. Par exemple, vous pouvez décrire la commande à barre oblique /about comme suit : Learn about this app (Only visible to you) Pour répondre en privé à une consultez la section Répondre avec un message privé.

Configurer votre commande à barre oblique dans l'API Google Chat

Pour créer une commande à barre oblique, vous devez spécifier des informations la concernant dans la configuration de votre application Chat pour l'API Google Chat.

Pour configurer une commande à barre oblique dans l'API Google Chat, procédez comme suit : étapes:

  1. Dans la console Google Cloud, cliquez sur Menu &gt; API et Services &gt; API activées et Services &gt; API Google Chat

    Accéder à la page API Google Chat

  2. Cliquez sur Configuration

  3. Sous Commandes à barre oblique, cliquez sur Ajouter une commande à barre oblique.

  4. Saisissez un nom, un ID de commande et une description pour la commande:

    1. Nom:le nom à afficher pour la commande et le type d'utilisateur saisi pour appeler votre application. Doit commencer par une barre oblique, ne contenir que du texte et ne peut ne pas dépasser 50 caractères.
    2. Description:le texte qui décrit comment utiliser et mettre en forme la commande. Les descriptions peuvent comporter jusqu'à 50 caractères.
    3. ID de commande:un nombre compris entre 1 et 1 000 que votre L'application de chat utilise pour reconnaître la commande à barre oblique et renvoyer une réponse.
  5. Facultatif: Si vous souhaitez que votre application Chat réponde aux commande avec une boîte de dialogue, sélectionnez Ouvrir une boîte de dialogue.

  6. Cliquez sur Enregistrer.

La commande à barre oblique est maintenant configurée pour l'application Chat.

Répondre à une commande à barre oblique

<ph type="x-smartling-placeholder">

Lorsque les utilisateurs créent un message Chat contenant une commande à barre oblique, votre application Chat reçoit un événement d'interaction MESSAGE. La charge utile de l'événement contient le slashCommand et slashCommandMetadata d'objets. Ces objets contiennent des détails sur la commande utilisée dans le message (y compris l'ID de commande), afin de pouvoir renvoyer une réponse appropriée.

<ph type="x-smartling-placeholder">
</ph> Message privé pour le
  Application Chat Cymbal Labs. Le message indique que
  L&#39;application Chat a été créée par Cymbal Labs et partage un lien
  vers la documentation et un lien pour contacter l&#39;équipe d&#39;assistance.
Une application Chat répond en privé au /help pour obtenir de l'aide.

Le code suivant montre un exemple d'application Chat qui répond à la commande à barre oblique /help en gérant MESSAGE événements d'interaction et détection si le message contient l'ID de commande correspondant. Si le message contient l'ID de commande, l'application Chat renvoie un message privé expliquant comment obtenir de l'aide:

Node.js

/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {!Object} req Request sent from Google Chat app
* @param {!Object} res Response to send back
*
* @return {!Object} respond to slash command
*/
exports.onMessage = function onMessage(req, res) {
  if (req.method === 'GET' || !req.body.message) {
    return res.send('Hello! This function is meant to be used in Google Chat app.');
  }

  const event = req.body;

  // Checks for the presence of event.message.slashCommand.
  // If the slash command is "/help", responds with a private text message.
  if (event.message.slashCommand) {
    switch (event.message.slashCommand.commandId) {
      case 'ID': // The ID for your slash command
        return res.json({
          privateMessageViewer: event.user, // Optional. Responds privately to the slash command.
          text: 'This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>.'
        });
    }
  }

  // If the Chat app doesn't detect a slash command, it responds
  // with a private text message
  return res.json({
    privateMessageViewer: event.user,
    text: 'Try a slash command.'
  });
};

Apps Script

/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {Object} event the event object from Google Chat
*/
function onMessage(event) {
  if (event.message.slashCommand) {
    switch (event.message.slashCommand.commandId) {
      case ID: // The ID for your slash command
        return {
          "privateMessageViewer": event.user, // Optional. Responds privately to the slash command.
          "text": "This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>."
        };
    }
  }
  else {
    return { "text": "Try a slash command.", "privateMessageViewer": event.user };
  }
}

Python

from typing import Any, Mapping

import flask
import functions_framework

@functions_framework.http
def main(req: flask.Request) -> Mapping[str, Any]:
  """Responds to a MESSAGE event in Google Chat.

  Args:
      req (flask.Request): the event object from Chat API.

  Returns:
      Mapping[str, Any]: open a Dialog in response to a card's button click.
  """
  if req.method == 'GET':
    return 'Hello! This function must be called from Google Chat.'

  request = req.get_json(silent=True)

  # Checks for the presence of event.message.slashCommand.
  # If the slash command is "/help", responds with a private text message.
  if request.get('message', {}).get('slashCommand'):
    command_id = request.get('message', {}).get('slashCommand').get('commandId')
    if command_id == 'ID': # The ID for your slash command
      return {
          'privateMessageViewer': request.get('user'),
          'text': (
              'This Chat app was created by Cymbal Labs. To get help with this'
              ' app, <https://cymbalgroup.com/docs|see our documentation> or'
              ' <https://cymbalgroup.com/support|contact our support team>.'
          ),
      }

  return {
      'privateMessageViewer': request.get('user'), # Optional. Responds privately to the slash command.
      'text': 'Try a slash command.',
  }

Remplacez ID par l'ID de commande que vous spécifiée lorsque vous configuré la commande à barre oblique dans l'API Chat. Pour tester ce code, consultez Testez les fonctionnalités interactives des applications Google Chat.