Форматировать сообщения

Google Chat позволяет добавлять к сообщениям форматирование, в том числе следующее:

Форматирование текстового сообщения

Чат позволяет добавлять к текстовому сообщению базовое форматирование, в том числе жирный, курсив и зачеркивание, используя небольшое подмножество синтаксиса Markdown. Текст в текстовых сообщениях форматируется иначе, чем в сообщениях-карточках, поскольку текстовые сообщения форматируются с использованием того же синтаксиса, который используют пользователи чата. Чтобы отформатировать текст, отображаемый на карточке, см. раздел Форматирование сообщения на карточке .

Для форматирования текстовых сообщений используйте следующий синтаксис:

Формат Символ Пример синтаксиса Текст, отображаемый в Google Chat
Смелый * *привет* привет
Курсив _ (нижнее подчеркивание) _привет_ привет
Зачеркивание ~ ~привет~ привет
Моноширинный ` (обратная кавычка) `привет` hello
Моноширинный блок ` ` ` (три обратные кавычки) ```
Привет
Мир
```
Hello
World
Маркированный список * или - (дефис), за которым следует пробел

* Это первый элемент в списке

* Это второй пункт в списке

  • Это первый элемент в списке
  • Это второй пункт в списке

Например, рассмотрим следующий JSON:

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

Это форматированное текстовое сообщение отображает в чате следующее:

Приложение Cymbal Pizza отправляет текстовое сообщение о том, что доставка прибыла.

Просмотр форматирования текста, отправленного в сообщении

Когда пользователь отправляет сообщение, текстовое тело сообщения находится в text поле. Некоторое форматирование, применяемое к текстовому сообщению с использованием синтаксиса Markdown, находится в text поле. Дополнительное форматирование находится в поле formattedText , доступном только для вывода, включая следующее:

  • Дополнительный синтаксис Markdown для текста
  • Упоминания пользователей
  • Пользовательские гиперссылки
  • Пользовательские смайлы

Например, рассмотрим следующий текст, отправленный пользователем:

В чат получено сообщение со словом

Если сообщение было отформатировано с помощью меню «Формат» в пользовательском интерфейсе чата, text поле содержит только текст, а поле formattedText содержит пометки, текст и гиперссылку. В следующем примере показан черновик текстового сообщения со словом, выделенным гиперссылкой, элементами в списке и одним словом, выделенным жирным шрифтом:

Черновик сообщения со словом

Сообщение принимается в следующем формате:

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

Если вы включаете в текст сообщения простой URL-адрес ссылки, например http://www.example.com/ , Google Chat использует его в качестве текста ссылки и автоматически связывает этот текст с указанным URL-адресом.

Чтобы предоставить альтернативный текст ссылки, используйте следующий синтаксис:

Пример синтаксиса Текст, отображаемый в Google Chat
<https://example.com|Example website>

Текст канала и ссылки не является обязательным, поэтому <https://www.example.com/> и https://www.example.com/ эквивалентны.

Упоминание пользователей в текстовом сообщении

Приложения чата могут отправлять текстовые сообщения , в которых @упоминается один или все пользователи в чат-группе. Приложения чата не могут упоминать пользователей в пространстве, находящемся в режиме импорта , или пользователей, которые не присоединились к пространству.

@упомяните конкретных пользователей

Чтобы @упомянуть конкретного пользователя, добавьте <users/{user}> в текстовое сообщение, где {user} — это идентификатор пользователя. Например, рассмотрим следующее текстовое сообщение, где 123456789012345678901 представляет собой идентификатор пользователя Mahan S.:

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

Текстовое сообщение отображается следующим образом:

Приложение чата упоминает человека в текстовом сообщении.

Вы можете указать значение users/{user} следующими способами:

  • Если ваше приложение Google Chat отвечает на сообщение, отправленное пользователем, вы можете использовать поле message.sender.name события взаимодействия MESSAGE .
  • Если ваше приложение Google Chat создает асинхронное текстовое сообщение , вы можете указать значение для users/{user} следующими способами:

    • Используйте поле name ресурса « User Google Chat», например users/123456789012345678901 .
    • Используйте адрес электронной почты пользователя в качестве псевдонима для значения {user} . Например, если адрес электронной почты — mahan@example.com , вы можете указать пользователя users/mahan@example.com . Чтобы использовать псевдоним электронной почты, ваше приложение Google Chat должно пройти аутентификацию пользователя .
  • Если вы используете People API, вы также можете использовать метод people.get для идентификации идентификатора пользователя.

@упомяните всех пользователей

Чтобы создать текстовое сообщение, в котором @упоминается каждый в пространстве, замените {user} на all . В следующем примере JSON упоминаются все пользователи в сообщении:

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

Форматирование сообщения карты

Внутри карточек большинство текстовых полей поддерживают базовое форматирование текста с помощью небольшого подмножества HTML-тегов. Текст в сообщениях-карточках форматируется иначе, чем в текстовых сообщениях, поскольку текстовые сообщения форматируются с использованием того же синтаксиса, который используют пользователи чата. Чтобы отформатировать текст, отображаемый в текстовом сообщении, см. Форматирование текстового сообщения .


Используйте конструктор карточек для разработки и предварительного просмотра карточных сообщений JSON для приложений чата:

Откройте конструктор карточек

Поддерживаемые теги и их назначение показаны в следующей таблице:

Формат Пример Отрисованный результат
Смелый "This is <b>bold</b>." Это смело .
Курсив "This is <i>italics</i>." Это курсив .
Подчеркнуть "This is <u>underline</u>." Это подчеркивание .
Зачеркивание "This is <s>strikethrough</s>." Это зачеркивание .
Цвет шрифта "This is <font color=\"#FF0000\">red font</font>." Это красный шрифт .
Гиперссылка "This is a <a href=\"https://www.google.com\">hyperlink</a>." Это гиперссылка .
Время "This is a time format: <time>2023-02-16 15:00</time>." Это формат времени: .
Новая линия "This is the first line. <br> This is a new line. Это первая линия.
Это новая линия.

Добавьте встроенную иконку на карту

Виджеты DecoratedText и ButtonList поддерживают элемент icon , используемый для указания одного из встроенных значков, доступных в чате.

В следующей таблице перечислены встроенные значки, доступные для карточных сообщений:

САМОЛЕТ ЗАКЛАДКА
АВТОБУС МАШИНА
ЧАСЫ CONFIRMATION_NUMBER_ICON
ОПИСАНИЕ ДОЛЛАР
ЭЛЕКТРОННАЯ ПОЧТА EVENT_SEAT
FLIGHT_ARRIVAL FLIGHT_DEPARTURE
ГОСТИНИЦА ОТЕЛЬ_НОМЕР_ТИП
ПРИГЛАШАТЬ MAP_PIN
ЧЛЕНСТВО MULTIPLE_PEOPLE
ЧЕЛОВЕК ТЕЛЕФОН
РЕСТОРАН_ICON КОРЗИНА
ЗВЕЗДА МАГАЗИН
БИЛЕТ ТРЕНИРОВАТЬСЯ
ВИДЕОКАМЕРА ВИДЕО_ВОСПРОИЗВЕДЕНИЕ

Ниже приведен пример карточки со значком электронной почты:

Добавление пользовательского значка на карту

Виджеты DecoratedText и ButtonList позволяют использовать встроенные значки или определять собственные значки. Чтобы добавить на карту собственный значок, включите поле iconUrl и укажите соответствующий URL-адрес значка.

Ниже приведен пример пользовательского значка: