Omówienie wiadomości w Google Chat

Na tej stronie wyjaśniamy różnice między wiadomościami tekstowymi a wiadomościami z kartą.

Gdy aplikacje do czatu wysyłają SMS-y z podstawowymi informacjami, wiadomości te pojawiają się w tekście, tak jak w przypadku wiadomości w Google Chat. Aby tworzyć wiadomości zawierające więcej niż tekst lub wiadomości, z którymi użytkownicy mogą wchodzić w interakcje, aplikacje czatu mogą używać kart. Aplikacje do czatu mogą też dołączać do wiadomości tekstowej kartę. Aby zachęcić użytkowników do ukończenia wieloetapowych procesów, takich jak wypełnianie formularzy, aplikacje Google Chat mogą też tworzyć karty, które otwierają się w nowym oknie jako dialogi.

Budowa SMS-a

W interfejsie Google Chat API wiadomości są reprezentowane jako obiekty JSON. W ramach wiadomości SMS jest on reprezentowany jako obiekt text.

W tym przykładzie aplikacja Google Chat tworzy wiadomość tekstową w pokoju dla zespołu programistów, aby poinformować go o zbliżającym się zamrożeniu kodu:

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

Format JSON zwraca następującą wiadomość:

Przykład wiadomości tekstowej w Google Chat, która informuje o zamrożeniu kodu

Anatomia wiadomości na karcie

W interfejsie Google Chat API wiadomości są reprezentowane jako obiekty JSON. W ramach wiadomości karta jest reprezentowana jako tablica cardsV2 i składa się z tych elementów:

  • Co najmniej 1 CardWithId obiekt.
  • cardId, służy do identyfikacji karty i określania jej zakresu w danej wiadomości. (karty w różnych wiadomościach mogą mieć ten sam identyfikator).
  • Obiekt card, który składa się z tych elementów:

    • Obiekt header, który określa takie elementy jak tytuł, podtytuł i obraz w stylu awatara.
    • Co najmniej 1 obiektsection, który zawiera co najmniej 1 widżet.
    • Co najmniej 1 widget obiekt. Każdy widżet to obiekt złożony, który może zawierać tekst, obrazy, przyciski i inne typy obiektów.

Na przykład ta wiadomość na karcie zawiera obiekty header, section i widget:

Aplikacja Google Chat przeprowadzająca ankietę w pokoju czatu za pomocą wiadomości z kartą

Ten kod reprezentuje kod JSON wiadomości na karcie:

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


Za pomocą Kreatora kart możesz projektować i przeglądać podglądy wiadomości oraz interfejsów aplikacji czatu:

Otwórz kreatora kart