Présentation des messages Google Chat

Cette page explique les différences entre les messages texte et les messages de fiche.

Lorsque les applications Chat envoient des messages texte pour transmettre des informations de base, les messages s'affichent en ligne, comme les messages écrits par les utilisateurs dans Google Chat. Pour créer des messages contenant plus que du texte ou des messages avec lesquels les utilisateurs peuvent interagir, les applications Chat peuvent utiliser des fiches. Les applications Chat peuvent également ajouter une fiche à un message texte. Pour inviter les utilisateurs à terminer des processus en plusieurs étapes, comme remplir un formulaire, les applications Chat peuvent également créer des fiches qui s'ouvrent dans une nouvelle fenêtre sous forme de boîtes de dialogue.

Anatomie d'un message texte

Dans l'API Google Chat, les messages sont représentés sous forme d'objets JSON. Dans un message, un message texte est représenté sous forme d' text objet.

Dans l'exemple suivant, une application Chat crée un message texte dans un espace pour une équipe de développeurs de logiciels indiquant qu'un gel de code approche :

{
  "text": "Attention <users/all>: Code freeze starts at `11:59 am` Pacific Standard Time! If you need a little more time, type `/moreTime` and I'll push the code freeze back one hour."
}

Le JSON renvoie le message suivant :

Exemple de message texte dans Google Chat annonçant le gel du code.

Anatomie d'un message de fiche

Dans l'API Google Chat, les messages sont représentés sous forme d'objets JSON. Dans un message une fiche est représentée sous forme de cardsV2 tableau et se compose des éléments suivants :

  • Un ou plusieurs CardWithId objets.
  • Un cardId, utilisé pour identifier la fiche et limité à un message donné. (Les fiches de différents messages peuvent avoir le même ID.)
  • Un objet card, qui se compose des éléments suivants :

    • Un objet header qui spécifie des éléments tels qu'un titre, un sous-titre et une image de style avatar.
    • Un ou plusieurs section objets contenant chacun au moins un widget.
    • Un ou plusieurs widget objets. Chaque widget est un objet composite qui peut représenter du texte, des images, des boutons et d'autres types d'objets.

Par exemple, le message de fiche suivant contient header, section et widget objets :

Application Chat exécutant un sondage dans un espace Chat à l&#39;aide d&#39;un message de carte

Le code suivant représente le JSON du message de fiche :

JSON

{
  "cardsV2": [
    {
      "cardId": "unique-card-id",
      "card": {
        "header": {
          "title": "Sasha",
          "subtitle": "Software Engineer",
          "imageUrl": "https://developers.google.com/chat/images/quickstart-app-avatar.png",
          "imageType": "CIRCLE",
          "imageAltText": "Avatar for Sasha"
        },
        "sections": [
          {
            "header": "Contact Info",
            "collapsible": true,
            "uncollapsibleWidgetsCount": 1,
            "widgets": [
              {
                "decoratedText": {
                  "startIcon": {
                    "knownIcon": "EMAIL"
                  },
                  "text": "sasha@example.com"
                }
              },
              {
                "decoratedText": {
                  "startIcon": {
                    "knownIcon": "PERSON"
                  },
                  "text": "<font color=\"#80e27e\">Online</font>"
                }
              },
              {
                "decoratedText": {
                  "startIcon": {
                    "knownIcon": "PHONE"
                  },
                  "text": "+1 (555) 555-1234"
                }
              },
              {
                "buttonList": {
                  "buttons": [
                    {
                      "text": "Share",
                      "onClick": {
                        "openLink": {
                          "url": "https://example.com/share"
                        }
                      }
                    },
                    {
                      "text": "Edit",
                      "onClick": {
                        "action": {
                          "function": "goToView",
                          "parameters": [
                            {
                              "key": "viewType",
                              "value": "EDIT"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        ]
      }
    }
  ]
}


Utilisez Card Builder pour concevoir et prévisualiser les interfaces de messagerie et utilisateur des applications Chat :

Ouvrir Card Builder