Formatowanie wiadomości

Na tej stronie dowiesz się, jak aplikacje do Google Chat mogą formatować tekst, aby wysyłać wiadomości zawierające:

  • Tekst sformatowany, który zawiera hiperlinki lub @wzmianki o jednym lub wszystkich użytkownikach w pokoju czatu.
  • Tekst, który pojawia się w interfejsie karty, w tym tekst akapitu lub tekst interfejsu wyświetlany obok ikony, np. przycisku.

Formatowanie SMS-a

W Google Chat możesz dodawać do wiadomości tekstowych podstawowe formatowanie, takie jak pogrubienie, kursywa i przekreślenie. Tekst w wiadomościach tekstowych formatuje się inaczej niż w wiadomościach z kartami, ponieważ wiadomości tekstowe są formatowane przy użyciu tej samej składni, której używają użytkownicy Google Chat.

W przypadku wiadomości wysyłanych lub pobieranych za pomocą interfejsu Chat API możesz używać standardowej składni Markdown (MARKUP_SYNTAX_MARKDOWN) lub składni znaczników Google Chat (MARKUP_SYNTAX_CHAT). W konsoli Google Cloud możesz skonfigurować domyślną składnię znaczników na poziomie aplikacji (patrz Konfigurowanie interfejsu Google Chat API):

  • Markdown: standardowa składnia Markdown (MARKUP_SYNTAX_MARKDOWN) oparta na specyfikacji CommonMark z dodatkowymi rozszerzeniami. Nowo utworzone aplikacje do Google Chat domyślnie używają Markdown.
  • Chat: składnia znaczników Google Chat (MARKUP_SYNTAX_CHAT). Istniejące aplikacje Google Chat domyślnie używają opcji Chat, aby zachować zgodność wsteczną.

Możesz też określić markup_syntax w poszczególnych żądaniach do interfejsu Chat API, aby zastąpić domyślne ustawienie na poziomie aplikacji. Jeśli w żądaniu do interfejsu API nie określono parametru markup_syntax, znaczniki są ustawiane na podstawie sposobu wywołania interfejsu Chat API:

  • Skonfigurowane aplikacje do Google Chat: używają składni znaczników zapisanej na stronie konfiguracji interfejsu Chat API.
  • Nieskonfigurowane projekty w chmurze (bez konfiguracji): jeśli projekt w chmurze wywołuje interfejs Chat API bez zapisanej konfiguracji aplikacji Google Chat, żądania domyślnie używają zakresu MARKUP_SYNTAX_MARKDOWN.
  • Przychodzące webhooki: domyślna wartość to MARKUP_SYNTAX_CHAT. Zobacz Wysyłanie wiadomości za pomocą przychodzących webhooków.

Aby sformatować SMS-y, użyj tej składni:

Format MARKUP_SYNTAX_CHAT MARKUP_SYNTAX_MARKDOWN Przykładowa składnia Tekst wyświetlany w Google Chat
Pogrubienie * **

*hello*

Lub:

**hello**

hello
Kursywa _ (podkreślenie) *

_hello_

Lub:

*hello*

hello
Przekreślenie ~ ~~

~hello~

Lub:

~~hello~~

hello
Stała szerokość znaków ` (grawis) ` (grawis) `hello` hello
Blok o stałej szerokości znaków ` ` ` (3 grawisy) ` ` ` (3 grawisy) ```
Hello
World
```
Hello
World
Lista punktowana * lub - (łącznik) i spacja * lub - (łącznik) i spacja

* To pierwszy element na liście.

* To jest drugi element na liście.

  • To pierwszy element na liście.
  • To jest drugi element na liście.
Lista zagnieżdżona * lub - (łącznik), po którym następuje spacja, poprzedzony 4 spacjami na każdy poziom zagnieżdżenia * lub - (łącznik), po którym następuje spacja, poprzedzony 4 spacjami na każdy poziom zagnieżdżenia

* To jest element z zagnieżdżeniem na poziomie 1 na liście.

    * To jest element zagnieżdżony na poziomie 2.

        * To jest element zagnieżdżony na poziomie 3 na liście.

  • To jest element na liście o głębokości zagnieżdżenia 1.
    • To jest element zagnieżdżony na poziomie 2 na liście.
      • To jest element na liście zagnieżdżony na poziomie 3.
Lista numerowana Nieobsługiwane 1. (liczba, po której następuje kropka i spacja);

1. To pierwszy element na liście.

2. To jest drugi element na liście.

  1. To pierwszy element na liście.
  2. To jest drugi element na liście.
Cytat blokowy > (znak większości) > (znak większości) >hello
ikona formatu cytatu blokowego cześć
Hiperlink <hyperlink|display text> [display text](hyperlink)

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

Lub:

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

Przykładowa witryna

Więcej informacji o hiperlinkach znajdziesz w artykule Formatowanie linków.

Wspomnij o użytkowniku <users/{user}>, gdzie {user} to identyfikator użytkownika.

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

Lub:

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

<users/123456789012345678901> lub <users/all>

Lub:

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

<chat-user data-user="users/all"> lub

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

@Mahan S

Więcej informacji o wzmiankach o użytkownikach znajdziesz w artykule Wspominanie o użytkownikach w SMS-ach.

Niestandardowe emotikony

<customEmojis/{uid}>

Lub:

<customEmojis/:{name}:>

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

Lub:

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

<customEmojis/abc-123-def>

Lub:

<customEmojis/:smiley-cat:>

Lub:

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

Lub:

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

🐱 (niestandardowy emotikon uśmiechniętego kota)
Cytat Nieobsługiwane <chat-citation data-id="{id}">{text}</chat-citation>, gdzie {id} to identyfikator cytatu zdefiniowany w wiadomości elements. <chat-citation data-id="cite_1">cited text</chat-citation>

cytowany tekst

Więcej informacji o cytatach znajdziesz w artykule Dodawanie cytatów do SMS-a.

Weźmy na przykład ten obiekt JSON:

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

Ta sformatowana wiadomość tekstowa wyświetla w pokoju Google Chat te informacje:

Aplikacja Cymbal Pizza wysyła SMS-a z informacją, że dostawa dotarła.

Wyświetlanie formatowania tekstu wysłanego w wiadomości

Gdy użytkownik wysyła wiadomość, jej treść w formacie zwykłego tekstu znajduje się w polu text. W polu text znajduje się formatowanie zastosowane do SMS-a za pomocą składni Markdown. Dodatkowe formatowanie znajduje się w polu formattedText, które jest przeznaczone tylko do danych wyjściowych. Obejmuje ono:

  • Dodatkowa składnia języka Markdown dla tekstu
  • Wzmianki użytkowników
  • Niestandardowe hiperlinki
  • Niestandardowe emotikony

Weźmy na przykład ten tekst wysłany przez użytkownika:

Wiadomość odebrana w Google Chat ze słowem

Jeśli wiadomość została sformatowana za pomocą menu Format w interfejsie Google Chat, pole text zawiera tylko tekst, a pole formattedText zawiera znaczniki, tekst i hiperlink. Poniższy przykład pokazuje wersję roboczą SMS-a z hiperlinkiem, elementami na liście i jednym słowem pogrubionym:

Wersja robocza wiadomości ze słowem

Wiadomość jest odbierana w tym formacie:

    {
      "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*?",
    }

Jeśli w tekście wiadomości umieścisz zwykły adres URL, np. http://www.example.com/, Google Chat użyje go jako tekstu linku i automatycznie utworzy hiperlink do podanego adresu URL.

Aby podać alternatywny tekst linku, użyj tej składni:

  • W przypadku wiadomości interfejsu API skonfigurowanych za pomocą języka Markdown użyj standardowej składni linków Markdown:

    Przykładowa składnia Tekst wyświetlany w Google Chat
    [Example website](https://example.com)
  • W przypadku standardowych wiadomości w formacie zwykłego tekstu użyj składni z pionową kreską:

    Przykładowa składnia Tekst wyświetlany w Google Chat
    <https://example.com|Example website>

    Pionowa kreska i tekst linku są opcjonalne, więc <https://example.com> i https://example.com są równoważne.

Używanie niestandardowych emotikonów w SMS-ach

Aplikacje do obsługi czatu mogą wysyłać wiadomości tekstowe z niestandardowymi emotikonami, aby spersonalizować wiadomości. Niestandardowe emotikony są dostępne tylko w organizacjach korzystających z Google Workspace, a administrator musi je włączyć w organizacji. Więcej informacji znajdziesz w artykułach Więcej informacji o niestandardowych emotikonach w Google Chat i Zarządzanie uprawnieniami do niestandardowych emotikonów.

Aby tworzyć wiadomości z niestandardowymi emotikonami, aplikacja musi używać uwierzytelniania użytkowników. Niestandardowe emotikony nie są obsługiwane w wiadomościach utworzonych jako webhook ani w wiadomościach utworzonych z uwierzytelnianiem aplikacji.

Aby dodać niestandardowy emotikon do tekstu wiadomości, określ name lub emoji_name zasobu customEmoji:

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

Aby użyć tego przykładu, zastąp CUSTOM_EMOJI_ID identyfikatorem niestandardowego emotikonu. Identyfikator ten znajdziesz w polu name lub emoji_name zasobu customEmoji.

Jeśli Twoja aplikacja wysyła wiadomości przy użyciu składni Markdown, możesz określić niestandardowe emotikony w formacie tagu HTML, używając identyfikatora niestandardowego emotikona:

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

Możesz też podać nazwę niestandardowego emotikonu:

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

Aby użyć tych przykładów, zastąp CUSTOM_EMOJI_ID identyfikatorem niestandardowego emotikona, a CUSTOM_EMOJI_NAME nazwą krótkiego kodu niestandardowego emotikona.

Dodawanie wzmianek o użytkownikach w SMS-ach

Aplikacje do Google Chat mogą wysyłać wiadomości tekstowe, które zawierają @wzmiankę o jednym lub wszystkich użytkownikach w pokoju czatu. Aplikacje do Google Chat mogą też wzmiankować użytkowników, którzy nie dołączyli do pokoju lub są członkami pokoju w trybie importowania.

Ciche wiadomości nie obsługują wzmianek o użytkownikach. Wzmianka w cichej wiadomości powoduje błąd.

@wzmianki o konkretnych użytkownikach,

Aby @wzmiankować konkretnego użytkownika, dodaj <users/{user}> do wiadomości tekstowej, gdzie {user} to identyfikator użytkownika. Weźmy na przykład tę wiadomość tekstową, w której 123456789012345678901 reprezentuje identyfikator użytkownika Mahan S.:

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

Jeśli aplikacja wysyła wiadomości przy użyciu składni Markdown, użyj formatu tagu HTML chat-user, aby określić identyfikator użytkownika:

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

Możesz też określić adres e-mail:

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

SMS będzie wyglądać tak:

Aplikacja do Google Chat wspomina o osobie w wiadomości tekstowej.

Wartość users/{user} możesz określić na te sposoby:

  • Jeśli aplikacja Google Chat odpowiada na wiadomość wysłaną przez użytkownika, możesz użyć pola message.sender.name zdarzenia interakcji MESSAGE.
  • Jeśli aplikacja Google Chat tworzy asynchroniczną wiadomość tekstową, możesz określić wartość users/{user} na te sposoby:

    • Użyj pola name zasobu Google Chat User, takiego jak users/123456789012345678901.
    • Użyj adresu e-mail użytkownika jako aliasu dla wartości {user}. Jeśli na przykład adres e-mail to mahan@example.com, możesz określić użytkownika jako users/mahan@example.com. Aby używać aliasu e-mail, aplikacja Google Chat musi uwierzytelniać się jako użytkownik.
  • Jeśli używasz interfejsu People API, możesz też użyć metody people.get, aby zidentyfikować identyfikator użytkownika.

@wzmianka o wszystkich użytkownikach,

Aby utworzyć SMS-a, który @wzmiankuje wszystkich w pokoju, zastąp {user} ciągiem all. Poniższy przykład JSON pokazuje, jak wspomnieć wszystkich użytkowników w wiadomości:

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

Jeśli aplikacja wysyła wiadomości przy użyciu składni Markdown, określ wzmiankę za pomocą formatu tagu HTML chat-user:

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

Dodawanie cytatów do SMS-a

Aplikacje do Google Chat mogą zawierać cytaty w wiadomościach tekstowych, aby dostarczać użytkownikom szczegółowe informacje o źródłach. Źródła możesz podać na 2 sposoby:

  • Cytaty w tekście: dodaj interaktywne karty, które pojawiają się, gdy użytkownicy najadą kursorem na określone fragmenty tekstu wiadomości.
  • Źródła w stopce: wyświetlają listę źródeł u dołu wiadomości jako linki w stopce.

Cytaty są obsługiwane tylko wtedy, gdy parametr markupSyntax wiadomości jest ustawiony na MARKUP_SYNTAX_MARKDOWN. Ta funkcja jest obsługiwana tylko przez asynchroniczne tworzenie wiadomości za pomocą interfejsu Chat API.

Aby dodać do wiadomości cytaty w tekście:

  1. Podaj źródła na liście citations wiadomości elements, przypisując unikalny identyfikator id do każdego obiektu Citation.
  2. W tekście wiadomości umieść tekst, który chcesz zacytować, w tagu HTML chat-citation w formacie: <chat-citation data-id="{id}">{text}</chat-citation>. Upewnij się, że {id} odpowiada identyfikatorowi zdefiniowanemu w elements. Cytaty bez odniesień (te bez pasującego tagu) są ignorowane.
{
  "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"
          }
        ]
      }
    ]
  }
}

Aby dodać źródła w stopce do wiadomości, podaj je na liście citedSources wiadomości elements. Wszystkie podane tutaj źródła automatycznie pojawiają się pod wiadomością jako linki w stopce i nie wymagają żadnych tagów w tekście wiadomości.

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

Formatowanie tekstu wyświetlanego na kartach

Większość pól tekstowych na kartach obsługuje podstawowe formatowanie tekstu za pomocą niewielkiego podzbioru tagów HTML. Tekst w wiadomościach z kartami formatuje się inaczej niż w wiadomościach tekstowych, ponieważ wiadomości tekstowe są formatowane przy użyciu tej samej składni, której używają użytkownicy Google Chat.


Za pomocą Kreatora kart możesz projektować i wyświetlać podgląd wiadomości oraz interfejsów aplikacji do Google Chat:

Otwieranie Kreatora kart

Formatowanie tekstu akapitu

Obsługiwane tagi i ich przeznaczenie są przedstawione w poniższej tabeli:

Format Przykład Wyrenderowany wynik
Pogrubienie "This is <b>bold</b>." To jest pogrubione.
Kursywa "This is <i>italics</i>." To jest kursywa.
Podkreślenie "This is <u>underline</u>." To jest podkreślenie.
Przekreślenie "This is <s>strikethrough</s>." To jest przekreślenie.
Kolor czcionki "This is <font color=\"#FF0000\">red font</font>." To jest czerwona czcionka.
Hiperlink "This is a <a href=\"https://www.google.com\">hyperlink</a>." To jest hiperlink.
Godzina "This is a time format: <time>2023-02-16 15:00</time>." Format czasu: .
Nowy wiersz "This is the first line. <br> This is a new line." To jest pierwszy wiersz.
To jest nowy wiersz.

Aby zdefiniować listy i bloki kodu, użyj tych tagów:

Format Przykład Wyrenderowany wynik
Nowy wiersz "Line 1<br>Line 2" Wiersz 1
Wiersz 2
Stała szerokość znaków "This is an <code>inline code</code>." To jest inline code.
Blok o stałej szerokości znaków "<pre><code>This a code block.</code></pre>"
This is a code block.
Lista punktowana "<ul><li>List item 1</li><li>List item 2</li></ul>"
  • Element listy 1
  • Element listy 2
Lista uporządkowana "<ol><li>List item 1</li><li>List item 2</li></ol>"
  1. Element listy 1
  2. Element listy 2

Markdown

Gdy składnia języka Markdown jest włączona, możesz używać tej składni:

Format Przykład Wyrenderowany wynik
Pogrubienie **cześć** lub __cześć__ hello
Kursywa *cześć* lub _cześć_ hello
Przekreślenie ~cześć~ hello
Stała szerokość znaków `hello` hello
Blok o stałej szerokości znaków ```
Hello
World
```
Hello
World
Lista punktowana

- To jest pierwszy element na liście

- To jest drugi element na liście

  • To pierwszy element na liście.
  • To jest drugi element na liście.

* To pierwszy element na liście.

* To jest drugi element na liście.

  • To pierwszy element na liście.
  • To jest drugi element na liście.
Lista uporządkowana

1. To pierwszy element na liście.

2. To jest drugi element na liście.

  1. To pierwszy element na liście.
  2. To jest drugi element na liście.
Hiperlink [Przykładowa witryna](https://example.com) Przykładowa witryna

Dodawanie ikon do tekstu

Aby wyświetlać ikony obok tekstu na karcie, możesz użyć widżetów DecoratedText i ButtonList.

W sekcjach poniżej wyjaśniamy, jak używać wbudowanych ikon, ikon Google Material lub ikon niestandardowych w sformatowanym tekście lub przyciskach.

Używanie ikon z Google Chat

Aby użyć wbudowanych ikon dostępnych w Google Chat, określ jedną z tych opcji:

W tabeli poniżej znajdziesz wbudowane ikony, które są dostępne w wiadomościach na kartach:

AIRPLANE BOOKMARK
BUS CAR
CLOCK CONFIRMATION_NUMBER_ICON
DESCRIPTION DOLLAR
E-MAIL EVENT_SEAT
FLIGHT_ARRIVAL FLIGHT_DEPARTURE
HOTEL HOTEL_ROOM_TYPE
ZAPROŚ MAP_PIN
MEMBERSHIP MULTIPLE_PEOPLE
PERSON PHONE
RESTAURANT_ICON SHOPPING_CART
STAR STORE
TICKET TRENUJ
VIDEO_CAMERA VIDEO_PLAY

Poniżej znajdziesz przykład karty z ikoną e-maila:

Używanie ikon w stylu Material Design od Google

Możesz użyć ikon w stylu Material Design, aby wybrać spośród ponad 2500 opcji ikon i dostosować ich wagę, wypełnienie i stopień.

Poniżej znajdziesz przykład karty z ikoną w stylu Material Design:

Używanie ikon niestandardowych

Aby dodać ikonę niestandardową, uwzględnij pole iconUrl i podaj odpowiedni adres URL ikony.

Oto przykład ikony niestandardowej: