Nachrichten in Google Chat

Auf dieser Seite werden die Unterschiede zwischen Nachrichten mit Text und Kartennachrichten erläutert.

Wenn Chat-Apps Nachrichten senden, um grundlegende Informationen zu vermitteln, werden die Nachrichten inline angezeigt, genau wie Nutzer in Google Chat Nachrichten. Chat-Apps können Karten verwenden, um Nachrichten zu erstellen, die mehr als nur Text enthalten, oder Nachrichten zu erstellen, mit denen Nutzer interagieren können. Chat-Apps können auch eine SMS mit einer 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. In einer Nachricht wird eine Textnachricht text -Objekt enthält.

Im folgenden Beispiel wird in einer Chat-App eine Nachricht in einem Gruppenbereich für ein Team von Softwareentwicklern 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 Nachricht zurück:

Beispiel für eine Textnachricht in Google Chat, die ein Einfrieren von Code 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 und besteht aus Folgendem:

  • Ein oder mehrere CardWithId-Objekte
  • Ein cardId, der zum Identifizieren der Karte und des Bereichs einer bestimmten Nachricht verwendet wird. Karten in verschiedenen Nachrichten können dieselbe ID haben.
  • Ein card-Objekt, das aus Folgendem besteht:

    • Ein header-Objekt, das beispielsweise einen Titel, einen Untertitel und ein Avatarbild angibt.
    • Mindestens eine 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 header, section und widget Objekte:

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 als Vorschau anzeigen lassen:

Card Builder öffnen