Nachrichten in Google Chat

Auf dieser Seite werden die Unterschiede zwischen Nachrichten per SMS und per Karte erläutert.

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

Aufbau einer SMS

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

Im folgenden Beispiel wird in einer Chat-App eine Nachricht in einem Gruppenbereich für ein Softwareentwicklungsteam erstellt, dass ein Code-Freeze bevorsteht:

{
  "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 SMS in Google Chat, die den Code Freeze ankündigt

Aufbau einer Kartennachricht

In der Google Chat API werden Nachrichten als JSON-Objekte dargestellt. Innerhalb einer Nachricht wird eine Karte als cardsV2-Array dargestellt und besteht aus Folgendem:

  • Ein oder mehrere CardWithId-Objekte
  • Eine cardId, die die Karte identifiziert und auf eine bestimmte Nachricht beschränkt ist. Karten in verschiedenen Nachrichten können dieselbe ID haben.
  • Ein card-Objekt, das Folgendes umfasst:

    • Ein header-Objekt, das beispielsweise einen Titel, einen Untertitel und ein Avatarbild 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, in der eine Umfrage in einem Chatbereich mithilfe einer Kartennachricht ausgeführt wird

Der folgende Code stellt das JSON 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 können Sie Nachrichten und Benutzeroberflächen für Chat-Apps entwerfen und in der Vorschau ansehen:

Karten-Tool öffnen