Formattare i messaggi

Questa pagina spiega come le app Google Chat possono formattare il testo per inviare messaggi che contengono uno dei seguenti elementi:

  • RTF che contiene link ipertestuali o @menzioni di uno o tutti gli utenti in uno spazio di Chat.
  • Testo visualizzato in un'interfaccia della scheda, incluso il testo del paragrafo o il testo dell'interfaccia utente visualizzato accanto a un'icona, ad esempio un pulsante.

Formattare un messaggio

Chat ti consente di aggiungere la formattazione di base a un messaggio, tra cui grassetto, corsivo e barrato. La formattazione del testo nei messaggi è diversa da quella dei messaggi con schede perché i messaggi vengono formattati con la stessa sintassi utilizzata dagli utenti di Chat.

Per i messaggi inviati o recuperati utilizzando l'API Chat, puoi utilizzare la sintassi Markdown standard (MARKUP_SYNTAX_MARKDOWN) o la sintassi di markup di Chat (MARKUP_SYNTAX_CHAT). Puoi configurare una sintassi di markup predefinita a livello di app nella console Google Cloud (consulta Configura l'API Google Chat):

  • Markdown: sintassi Markdown standard (MARKUP_SYNTAX_MARKDOWN), basata sulla specifica CommonMark con estensioni aggiuntive. Le app di Chat appena create utilizzano per impostazione predefinita il formato Markdown.
  • Chat: sintassi di markup di Chat (MARKUP_SYNTAX_CHAT). Le app di Chat esistenti utilizzano per impostazione predefinita Chat per preservare la compatibilità con le versioni precedenti.

Puoi anche specificare markup_syntax su singole richieste API Chat per eseguire l'override del valore predefinito a livello di app. Quando markup_syntax non è specificato in una richiesta API, il markup viene impostato in base a come chiami l'API Chat:

  • App di Chat configurate:utilizza la sintassi di markup salvata nella pagina di configurazione dell'API Chat.
  • Progetti cloud non configurati (senza configurazione): se il tuo progetto cloud chiama l'API Chat senza una configurazione dell'app Chat salvata, le richieste vengono impostate per impostazione predefinita su MARKUP_SYNTAX_MARKDOWN.
  • Webhook in arrivo:il valore predefinito è MARKUP_SYNTAX_CHAT. Consulta Invia messaggi utilizzando i webhook in arrivo.

Per formattare i messaggi, utilizza la seguente sintassi:

Formato MARKUP_SYNTAX_CHAT MARKUP_SYNTAX_MARKDOWN Esempio di sintassi Testo visualizzato in Google Chat
Grassetto * **

*hello*

Oppure:

**hello**

hello
Corsivo _ (trattino basso) *

_hello_

Oppure:

*hello*

hello
Barrato ~ ~~

~hello~

Oppure:

~~hello~~

hello
Monospace ` (backquote) ` (backquote) `hello` hello
Blocco monospace ` ` ` (tre apici inversi) ` ` ` (tre apici inversi) ```
Hello
World
```
Hello
World
Elenco puntato * o - (trattino) seguito da uno spazio * o - (trattino) seguito da uno spazio

* Questo è il primo elemento dell'elenco.

* Questo è il secondo elemento dell'elenco.

  • Questo è il primo elemento dell'elenco.
  • Questo è il secondo elemento dell'elenco.
Elenco nidificato * o - (trattino) seguito da uno spazio, preceduto da quattro spazi per livello di nidificazione * o - (trattino) seguito da uno spazio, preceduto da quattro spazi per livello di nidificazione

* Questo è l'elemento con profondità di nidificazione uno nell'elenco.

    * This is the item with nested depth two in the list.

        * This is the item with nested depth three in the list.

  • Questo è l'elemento con profondità di nidificazione uno nell'elenco.
    • Questo è l'elemento con profondità di nidificazione due nell'elenco.
      • Questo è l'elemento con profondità di nidificazione tre nell'elenco.
Elenco numerato Non supportata 1. (numero seguito da un punto e uno spazio)

1. Questo è il primo elemento dell'elenco.

2. Questo è il secondo elemento dell'elenco.

  1. Questo è il primo elemento dell'elenco.
  2. Questo è il secondo elemento dell'elenco.
Citazione a blocco > (simbolo di maggiore) > (simbolo di maggiore) >ciao
icona del formato di citazione a blocco ciao
Link ipertestuale <hyperlink|display text> [display text](hyperlink)

<https://example.com|Example website>

Oppure:

[Example website](https://example.com)

Sito web di esempio

Per scoprire di più sui link ipertestuali, consulta Formattare i link.

Menziona utente <users/{user}> dove {user} è l'ID utente.

<chat-user data-user="users/{user}">

Oppure:

<chat-user data-email="{email}">

<users/123456789012345678901> o <users/all>

Oppure:

<chat-user data-user="users/123456789012345678901">,

<chat-user data-user="users/all">, oppure

<chat-user data-email="email@example.com">

@Mahan S

Per scoprire di più sulla menzione degli utenti, consulta Menziona gli utenti in un messaggio.

Custom Emoji

<customEmojis/{uid}>

Oppure:

<customEmojis/:{name}:>

<chat-emoji data-custom-emoji="customEmojis/{uid}">

Oppure:

<chat-emoji data-emoji-name=":{name}:">

<customEmojis/abc-123-def>

Oppure:

<customEmojis/:smiley-cat:>

Oppure:

<chat-emoji data-custom-emoji="customEmojis/abc-123-def">

Oppure:

<chat-emoji data-emoji-name=":smiley-cat:">

🐱 (emoji personalizzata Gatto che sorride)
Citazione Non supportata <chat-citation data-id="{id}">{text}</chat-citation> dove {id} è l'ID della citazione definito nel messaggio elements. <chat-citation data-id="cite_1">cited text</chat-citation>

testo citato

Per scoprire di più sulle citazioni, consulta Aggiungi citazioni a un messaggio.

Ad esempio, considera il seguente JSON:

    {
      "text": "Your pizza delivery *has arrived*!\nThank you for using _Cymbal Pizza!_"
    }

Questo messaggio di testo formattato mostra quanto segue in uno spazio di Chat:

L'app Cymbal Pizza invia un messaggio per informare che la consegna è arrivata.

Visualizza la formattazione del testo inviata in un messaggio

Quando un utente invia un messaggio, il corpo del messaggio in testo normale si trova nel campo text. Alcune formattazioni applicate al messaggio utilizzando la sintassi Markdown si trovano nel campo text. La formattazione aggiuntiva si trova nel campo di solo output formattedText, tra cui:

  • Sintassi Markdown aggiuntiva per il testo
  • Menzioni degli utenti
  • Link ipertestuali personalizzati
  • Emoji personalizzate

Ad esempio, considera il seguente testo inviato da un utente:

Messaggio ricevuto in Chat con la parola

Se il messaggio è stato formattato utilizzando il menu Formato nell'interfaccia utente di Chat, il campo text contiene solo il testo, mentre il campo formattedText contiene i markup, il testo e il link ipertestuale. L'esempio seguente mostra la bozza di un messaggio con una parola con link ipertestuale, elementi in un elenco e una parola in grassetto:

Bozza di messaggio con la parola

Il messaggio viene ricevuto nel seguente formato:

    {
      "text": "I can meet there at:\nNoon\n3 pm\n5 pm\nWhat time works for you?",
      "formattedText": "I can meet <http://example.com|there> at:\n* Noon\n* 3 pm\n* 5 pm\nWhat time works for *you*?",
    }

Se includi un URL di link semplice nel testo del messaggio, ad esempio http://www.example.com/, Google Chat lo utilizza come testo del link e lo collega automaticamente all'URL specificato.

Per fornire un testo del link alternativo per il tuo link, utilizza la seguente sintassi:

  • Per i messaggi API configurati con Markdown, utilizza la sintassi standard dei link Markdown:

    Esempio di sintassi Testo visualizzato in Google Chat
    [Example website](https://example.com)
  • Per i messaggi di testo normale standard, utilizza la sintassi con la barra verticale:

    Esempio di sintassi Testo visualizzato in Google Chat
    <https://example.com|Example website>

    La barra verticale e il testo del link sono facoltativi, quindi <https://example.com> e https://example.com sono equivalenti.

Utilizza le emoji personalizzate in un messaggio

Le app di Chat possono inviare messaggi con emoji personalizzate per personalizzare i messaggi. Le emoji personalizzate sono disponibili solo per le organizzazioni Google Workspace e l'amministratore deve attivarle per l'organizzazione. Per saperne di più, consulta Informazioni sulle emoji personalizzate in Google Chat e Gestisci le autorizzazioni per le emoji personalizzate.

Per creare messaggi con emoji personalizzate, la tua app deve utilizzare l'autenticazione utente. Le emoji personalizzate non sono supportate nei messaggi creati come webhook o nei messaggi creati con l'autenticazione dell'app.

Per aggiungere emoji personalizzate al testo di un messaggio, specifica name o emoji_name della risorsa customEmoji:

{
    "text": "Hello <customEmojis/CUSTOM_EMOJI_ID>."
}

Per utilizzare questo esempio, sostituisci CUSTOM_EMOJI_ID con l'ID dell'emoji personalizzata. Puoi trovare questo ID nel campo name o emoji_name della risorsa customEmoji.

Se la tua app invia messaggi utilizzando la sintassi Markdown, puoi specificare le emoji personalizzate nel formato dei tag HTML utilizzando l'ID delle emoji personalizzate:

{
  "text": "Hello <chat-emoji data-custom-emoji=\"customEmojis/CUSTOM_EMOJI_ID\">."
}

In alternativa, puoi specificare il nome dell'emoji personalizzata:

{
  "text": "Hello <chat-emoji data-emoji-name=\"CUSTOM_EMOJI_NAME\">."
}

Per utilizzare questi esempi, sostituisci CUSTOM_EMOJI_ID con l'ID dell'emoji personalizzata e CUSTOM_EMOJI_NAME con il nome dello shortcode dell'emoji personalizzata.

Menziona gli utenti in un messaggio

Le app di Chat possono inviare messaggi che @menzionano uno o tutti gli utenti in uno spazio di Chat. Le app di Chat possono anche menzionare gli utenti che non hanno partecipato allo spazio o che sono membri di uno spazio in modalità di importazione.

I messaggi silenziosi non supportano la menzione degli utenti. L'inserimento di una menzione in un messaggio silenzioso restituisce un errore.

@menzionare utenti specifici

Per menzionare un utente specifico con @, aggiungi <users/{user}> al messaggio, dove {user} è l'ID dell'utente. Ad esempio, considera il seguente messaggio in cui 123456789012345678901 rappresenta l'ID dell'utente Mahan S.:

{
    "text": "A customer has reported an issue. Assigning ticket #942 to <users/123456789012345678901>."
}

Se la tua app invia messaggi utilizzando la sintassi Markdown, utilizza il formato del tag HTML chat-user per specificare l'ID utente:

{
  "text": "Assigning ticket #942 to <chat-user data-user=\"users/123456789012345678901\">."
}

In alternativa, specifica l'indirizzo email:

{
  "text": "Assigning ticket #942 to <chat-user data-email=\"mahan@example.com\">."
}

Il messaggio viene visualizzato come segue:

L'app di Chat menziona una persona in un messaggio.

Puoi specificare il valore users/{user} nei seguenti modi:

  • Se l'app Google Chat risponde a un messaggio inviato dall'utente, puoi utilizzare il campo message.sender.name dell'evento di interazione MESSAGE.
  • Se la tua app Google Chat sta creando un messaggio di testo asincrono, puoi specificare il valore di users/{user} nei seguenti modi:

    • Utilizza il campo name della risorsa User di Google Chat, ad esempio users/123456789012345678901.
    • Utilizza l'indirizzo email dell'utente come alias per il valore {user}. Ad esempio, se l'indirizzo email è mahan@example.com, puoi specificare l'utente come users/mahan@example.com. Per utilizzare un alias email, l'app Google Chat deve eseguire l'autenticazione come utente.
  • Se utilizzi l'API People, puoi anche utilizzare il metodo people.get per identificare l'ID utente.

@menzionare tutti gli utenti

Per creare un messaggio che @menzioni tutti i partecipanti di uno spazio, sostituisci {user} con all. L'esempio JSON seguente menziona tutti gli utenti in un messaggio:

{
    "text": "Important message for <users/all>: Code freeze starts at midnight tonight!"
}

Se la tua app invia messaggi utilizzando la sintassi Markdown, specifica la menzione utilizzando il formato del tag HTML chat-user:

{
  "text": "Important message for <chat-user data-user=\"users/all\">: Code freeze starts at midnight tonight!"
}

Aggiungi citazioni a un messaggio

Le app di Chat possono includere citazioni nei messaggi per fornire agli utenti informazioni dettagliate sulla fonte. Puoi fornire le fonti in due modi:

  • Citazioni in linea: aggiungi schede interattive che vengono visualizzate quando gli utenti passano il puntatore su parti specifiche del testo del messaggio.
  • Fonti a piè di pagina: visualizza un elenco di fonti nella parte inferiore del messaggio come link a piè di pagina.

Le citazioni sono supportate solo quando il campo markupSyntax del messaggio è impostato su MARKUP_SYNTAX_MARKDOWN. Questa funzionalità è supportata solo tramite la creazione asincrona di messaggi utilizzando l'API Chat.

Per aggiungere citazioni in linea a un messaggio:

  1. Fornisci le fonti nell'elenco citations del messaggio elements, assegnando un id univoco a ogni oggetto Citation.
  2. Nel testo del messaggio, racchiudi il testo che vuoi citare utilizzando il formato del tag HTML chat-citation: <chat-citation data-id="{id}">{text}</chat-citation>. Assicurati che {id} corrisponda all'ID definito in elements. Le citazioni senza riferimento (quelle senza un tag corrispondente) vengono ignorate.
{
  "text": "This is a <chat-citation data-id=\"cite_1\">cited</chat-citation> text.",
  "markupSyntax": "MARKUP_SYNTAX_MARKDOWN",
  "elements": {
    "citations": [
      {
        "id": "cite_1",
        "citedSources": [
          {
            "title": "Example Source",
            "uri": "https://example.com"
          }
        ]
      }
    ]
  }
}

Per aggiungere fonti a piè di pagina a un messaggio, fornisci le fonti nell'elenco citedSources del messaggio elements. Tutte le fonti fornite qui vengono visualizzate automaticamente sotto il messaggio come link nel piè di pagina e non richiedono tag incorporati nel testo del messaggio.

{
  "text": "This is a message with a footer source.",
  "markupSyntax": "MARKUP_SYNTAX_MARKDOWN",
  "elements": {
    "citedSources": [
      {
        "title": "Example Source",
        "uri": "https://example.com"
      }
    ]
  }
}

Formattare il testo visualizzato nelle schede

All'interno delle schede, la maggior parte dei campi di testo supporta la formattazione di base del testo utilizzando un piccolo sottoinsieme di tag HTML. La formattazione del testo nei messaggi con schede è diversa da quella dei messaggi di testo, perché i messaggi di testo vengono formattati con la stessa sintassi utilizzata dagli utenti di Chat.


Utilizza lo Strumento per la creazione di schede per progettare e visualizzare in anteprima i messaggi e le interfacce utente per le app di Chat:

Apri Card Builder

Formatta il testo del paragrafo

I tag supportati e il loro scopo sono riportati nella tabella seguente:

Formato Esempio Risultato visualizzato
Grassetto "This is <b>bold</b>." Questo è grassetto.
Corsivo "This is <i>italics</i>." Questo è corsivo.
Sottolineato "This is <u>underline</u>." Questo è un testo sottolineato.
Barrato "This is <s>strikethrough</s>." Questo è un testo barrato.
Colore carattere "This is <font color=\"#FF0000\">red font</font>." Questo è un carattere rosso.
Link ipertestuale "This is a <a href=\"https://www.google.com\">hyperlink</a>." Questo è un link ipertestuale.
Ora "This is a time format: <time>2023-02-16 15:00</time>." Questo è un formato ora: .
Nuova riga "This is the first line. <br> This is a new line." Questa è la prima riga.
Questa è una nuova riga.

Per definire elenchi e blocchi di codice, utilizza i seguenti tag:

Formato Esempio Risultato visualizzato
Nuova riga "Line 1<br>Line 2" Riga 1
Riga 2
Monospace "This is an <code>inline code</code>." Questo è un inline code.
Blocco monospace "<pre><code>This a code block.</code></pre>"
This is a code block.
Elenco puntato "<ul><li>List item 1</li><li>List item 2</li></ul>"
  • Voce elenco 1
  • Voce elenco 2
Elenco ordinato "<ol><li>List item 1</li><li>List item 2</li></ol>"
  1. Voce elenco 1
  2. Voce elenco 2

Markdown

Quando la sintassi Markdown è attiva, puoi utilizzare la seguente sintassi:

Formato Esempio Risultato visualizzato
Grassetto **ciao** o __ciao__ hello
Corsivo *ciao* o _ciao_ hello
Barrato ~hello~ hello
Monospace `hello` hello
Blocco monospace ```
Hello
World
```
Hello
World
Elenco puntato

- Questo è il primo elemento dell'elenco

- Questo è il secondo elemento dell'elenco

  • Questo è il primo elemento dell'elenco
  • Questo è il secondo elemento dell'elenco

* Questo è il primo elemento dell'elenco

* Questo è il secondo elemento dell'elenco

  • Questo è il primo elemento dell'elenco
  • Questo è il secondo elemento dell'elenco
Elenco ordinato

1. Questo è il primo elemento dell'elenco

2. Questo è il secondo elemento dell'elenco

  1. Questo è il primo elemento dell'elenco
  2. Questo è il secondo elemento dell'elenco
Link ipertestuale [Sito web di esempio](https://example.com) Sito web di esempio

Aggiungi icone al testo

Per visualizzare le icone accanto al testo in una scheda, puoi utilizzare i widget DecoratedText e ButtonList.

Le sezioni seguenti spiegano come utilizzare le icone integrate, le icone di Google Material o le icone personalizzate nel testo o nei pulsanti decorati.

Utilizza le icone di Chat

Per utilizzare un'icona integrata disponibile in Chat, specifica una delle seguenti opzioni:

La tabella seguente elenca le icone integrate disponibili per i messaggi con schede:

AIRPLANE BOOKMARK
BUS CAR
OROLOGIO CONFIRMATION_NUMBER_ICON
DESCRIPTION DOLLAR
EMAIL EVENT_SEAT
FLIGHT_ARRIVAL FLIGHT_DEPARTURE
HOTEL HOTEL_ROOM_TYPE
INVITE MAP_PIN
MEMBERSHIP MULTIPLE_PEOPLE
PERSON PHONE
RESTAURANT_ICON SHOPPING_CART
STAR STORE
TICKET TRAIN
VIDEO_CAMERA VIDEO_PLAY

Di seguito è riportato un esempio di scheda con un'icona email:

Utilizza le icone Material di Google

Puoi utilizzare le icone Material di Google per scegliere tra oltre 2500 opzioni di icone e personalizzare lo spessore, il riempimento e l'intensità delle icone.

Di seguito è riportato un esempio di scheda con un'icona Material di Google:

Utilizza icone personalizzate

Per aggiungere un'icona personalizzata, includi il campo iconUrl e specifica l'URL corrispondente dell'icona.

Di seguito è riportato un esempio di icona personalizzata: