Panoramica dei messaggi di Google Chat

Questa pagina spiega le differenze tra i messaggi di testo e quelli con schede.

Quando le app Chat inviano messaggi di testo per comunicare informazioni di base, i messaggi vengono visualizzati in linea, proprio come quando le persone scrivono messaggi in Google Chat. Per creare messaggi che contengono più di un testo o per creare messaggi con cui gli utenti possono interagire, le app Chat possono utilizzare le schede. Le app Chat possono anche aggiungere una scheda a un messaggio di testo. Per invitare gli utenti a completare processi in più passaggi, ad esempio la compilazione di un modulo, le app Chat possono anche creare schede che si aprono in una nuova finestra come finestre di dialogo.

Struttura di un messaggio di testo

Nell'API Google Chat, i messaggi sono rappresentati come oggetti JSON. All'interno di un messaggio, un messaggio di testo è rappresentato come un text oggetto.

Nell'esempio che segue, un'app Chat crea un messaggio di testo in uno spazio per un team di sviluppatori di software che indica che si sta avvicinando un blocco del codice:

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

Il JSON restituisce il seguente messaggio:

Esempio di messaggio di testo in Google Chat che annuncia il blocco del codice.

Struttura di un messaggio con scheda

Nell'API Google Chat, i messaggi sono rappresentati come oggetti JSON. All'interno di un messaggio una scheda è rappresentata come un cardsV2 array e consiste in:

  • Uno o più CardWithId oggetti.
  • Un cardId, utilizzato per identificare la scheda e con ambito all'interno di un determinato messaggio. (Le schede in messaggi diversi possono avere lo stesso ID.)
  • Un oggetto card, composto da:

    • Un oggetto header che specifica elementi come un titolo, un sottotitolo e un'immagine in stile avatar.
    • Uno o più section oggetti che ognuno dei quali contiene almeno un widget.
    • Uno o più widget oggetti. Ogni widget è un oggetto composito che può rappresentare testo, immagini, pulsanti e altri tipi di oggetti.

Ad esempio, il seguente messaggio con scheda contiene header, section e widget oggetti:

Un&#39;app di chat che esegue un sondaggio in uno spazio di Chat utilizzando un messaggio con scheda

Il seguente codice rappresenta il JSON del messaggio con scheda:

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


Utilizza il generatore di schede per progettare e visualizzare in anteprima i messaggi e le interfacce utente per le app Chat:

Apri il generatore di schede