Nachrichten in Google Chat

Auf dieser Seite werden die Unterschiede zwischen SMS- und Kartennachrichten erläutert.

Wenn Chat-Apps SMS senden, um grundlegende Informationen zu vermitteln, werden die Nachrichten inline angezeigt, genau wie in Google Chat. Chat-Apps können Karten verwenden, um Nachrichten zu erstellen, die mehr als Text enthalten, oder um Nachrichten zu erstellen, mit denen Nutzer interagieren können. Chat-Apps können auch eine Textnachricht mit einer Karte anhängen. Um Nutzer aufzufordern, mehrstufige Prozesse wie das Ausfüllen eines Formulars abzuschließen, können Chat-Apps auch Karten erstellen, die in einem neuen Fenster als Dialogfelder geöffnet werden.

Aufbau einer SMS

In der Google Chat API werden Nachrichten als JSON-Objekte dargestellt. Innerhalb einer Nachricht wird eine Textnachricht als text-Objekt dargestellt.

Im folgenden Beispiel erstellt eine Chat-App eine Textnachricht in einem Gruppenbereich für ein Team von Softwareentwicklern, in dem ein Code-Freeze ansteht:

{
  "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."
}

Die JSON-Datei gibt die folgende Meldung zurück:

Beispiel für eine Textnachricht in Google Chat, in der das Einfrieren von Code angekündigt wird.

Aufbau einer Kartennachricht

In der Google Chat API werden Nachrichten als JSON-Objekte dargestellt. In einer Nachricht wird eine Karte als cardsV2-Array dargestellt und umfasst Folgendes:

  • Ein oder mehrere CardWithId-Objekte.
  • Ein cardId, mit dem die Karte und der Bereich einer bestimmten Nachricht identifiziert werden. (Karten in verschiedenen Nachrichten können dieselbe ID haben.)
  • Ein card-Objekt, das Folgendes enthält:

    • Ein header-Objekt, das Dinge wie einen Titel, einen Untertitel und ein Bild im Avatar-Stil angibt.
    • Ein oder mehrere section-Objekte, die jeweils mindestens ein Widget enthalten.
    • Ein oder mehrere widget-Objekte. Jedes Widget ist ein zusammengesetztes Objekt, das Text, Bilder, Schaltflächen und andere Objekttypen darstellen kann.

Die folgende Kartennachricht enthält beispielsweise die Objekte header, section und widget:

Eine Chat-App, die mithilfe einer Kartennachricht eine Umfrage in einem Chatbereich durchführt

Der folgende Code stellt den JSON-Code der Kartennachricht dar:

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"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        ]
      }
    }
  ]
}


Mit dem Card Builder kannst du Karten entwerfen und sie dir als Vorschau ansehen.

Den Card Builder öffnen