HTML-разметка
В некоторых каналах вы можете использовать HTML-разметку, чтобы форматировать текст ответов бота: например, выделить часть сообщения курсивом или оформить перечисление при помощи списка.
HTML-разметка поддерживается в каналах:
Использование в сценарии
Использовать HTML-разметку можно несколькими способами:
-
Тег реакции
a
. После тега укажите параметрыhtmlEnabled = true
иhtml
с размеченным текстом:a: Это статья про HTML. || htmlEnabled = true, html = "Это статья про <b>HTML</b>."
-
Метод
$reactions.answer
. Передайте как аргумент метода объект с полемhtml
, которое должно содержать размеченный текст:script:
$reactions.answer({
"value": "HTML — язык разметки гипертекста для просмотра веб-страниц в браузере.",
"html": "HTML — язык разметки <i>гипертекста</i> для просмотра веб-страниц в браузере."
}); -
Ответы с типом
text
. Передайте в полеmarkup
объекта с ответом значениеhtml
, а в полеtext
— размеченный текст:script:
$response.replies = $response.replies || [];
$response.replies.push({
"type": "text",
"text": "Его изобрел <strike>американский</strike> британский ученый Тим Бернерс-Ли.",
"markup": "html"
}); -
Ответы с типами
image
иvideo
для разметки текста в описании изображения или видео. Передайте в полеmarkup
объекта с ответом значениеhtml
, а вimageName
илиvideoName
— размеченный текст:script:
$response.replies = $response.replies || [];
$response.replies.push({
"type": "image",
"imageUrl": "https://example.com/tim-berners-lee.png",
"imageName": "Создатель HTML — <u>Тим Бернерс-Ли</u>",
"markup": "html"
});
Ограничения каналов
Все каналы, кроме Chat API, поддерживают ограниченный набор HTML-тегов.
Тег | Чат-виджет | Telegram |
---|---|---|
<a> (ссылка) | Да | Да |
<b> (полужирный текст) | Да | Да |
<i> (курсив) | Да | Да |
<ol> (нумерованный список) | Да | Нет |
<pre> (предварительно отформатированный текст) | Да | Да |
<strike> (перечеркнутый текст) | Да | Да |
<u> (подчеркнутый текст) | Да | Да |
<ul> (маркированный список) | Да | Нет |
<code> (код) | Да | Да |