# Дизайн и контент для сценария в каналах

В этом разделе мы поговорим про самую главную составляющую чат-бота в мессенджерах — дизайн сценариев (узлов). Будет рассмотрено, так же, рекомендуемое составление и размещение контента для поддерживаемых каналов (мессенджеров) на платформе Fasttrack.

Быстрая навигация:

* Официальные требования к контенту
  * Telegram
  * Вконтакте (VK)
  * Viber
  * WhatsApp Business API (WABA-шаблоны)
  * Одноклассники (ОК)
  * Веб-чат на сайте
  * Канал через API Fasttrack
* Советы и рекомендации по созданию контента
  * Общие рекомендации (подойдут для всех каналов)
  * Telegram
  * Вконтакте (VK)
  * Viber
  * WhatsApp (регулярные узлы)
  * WhatsApp Business API (WABA-шаблоны)
  * Веб-чат на сайте

### Официальные требования к контенту

У каждого канала (мессенджера) есть перечень требований к отправляемому пользователю контенту. Это может касаться: формата фотографий, количества символов в одном сообщении, размера отправляемого PDF файла, соотношению сторон видео и так далее и тому подобное.

> **Примечание:** Обратите внимание! Требования, которые будут описаны ниже, необходимо строго соблюдать, иначе ваш контент будет или выглядеть плохо, или быть заблокированным самим мессенджером при отправке.

#### Telegram

Официальная страница документации: <https://core.telegram.org/bots/api>

| Объект      | Допустимое значение (на одно сообщение)                                                                            |
| ----------- | ------------------------------------------------------------------------------------------------------------------ |
| Текст       | от 1 до 4096 символов                                                                                              |
| Изображение | Размер: до 10 000 пикселей в сумме (ширина + высота)Расширение файла: любоеВес файла: до 10 Мб (для iOS и Android) |
| Видео       | Продолжительность: любаяРасширение файла: любоеФормат видео: любойВес файла: до 50 Мб (для iOS и Android)          |
| Документ    | Имя файла: любой длинныРасширение файла:.gif,.pdf,.zipВес файла: до 20 Мб (для iOS и Android)                      |
| Аудио       | Расширение файла: -Формат аудио: -Вес файла: до - Мб (для iOS и Android)                                           |

> **Примечание:** Обратите внимание! Кодировка вашего текста должна быть в [UTF-8](https://ru.wikipedia.org/wiki/UTF-8).

Поддержка оформления для текста:

| Ссылка(Link)         | Текст, в формате[название](https://www...)   | -           |
| -------------------- | -------------------------------------------- | ----------- |
| Жирный(Bold)         | Текст, обрамлённый звездочками\*             | *жирный*    |
| Курсив(Italics)      | Текст, обрамлённый нижними подчеркиваниями\_ | *курсив*    |
| Для кода(Mono)       | Текст, обрамлённый апострофами\`             | `код`       |
| Для блока кода(Mono) | Текст, обрамлённый тремя апострофами\`\`\`   | `блок кода` |

#### Вконтакте (VK)

Официальная страница документации: <https://vk.com/dev/manuals>

| Объект      | Допустимое значение (на одно сообщение)                                                      |
| ----------- | -------------------------------------------------------------------------------------------- |
| Текст       | От 1 до 9000 символов                                                                        |
| Изображение | Размер: до - пикселейРасширение файла: -Вес файла: до - Мб (для iOS и Android)               |
| Видео       | Продолжительность: -Расширение файла: -Формат видео: -Вес файла: до - Мб (для iOS и Android) |
| Документ    | Имя файла: -Расширение файла: -Вес файла: до - Мб (для iOS и Android)                        |
| Аудио       | Расширение файла: -Формат аудио: -Вес файла: до - Мб (для iOS и Android)                     |

#### Viber

Официальная страница документации: <https://developers.viber.com/docs/api/rest-bot-api/>

| Объект      | Допустимое значение (на одно сообщение)                                                                                                |
| ----------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| Текст       | От 1 до 7000 символов                                                                                                                  |
| Изображение | Размер: от 400x400 пикселейРасширение файла:.jpeg,.pngили.gifВес файла: до 1 Мб (для iOS); до 3 Мб (для Android)                       |
| Видео       | Продолжительность: не более 180 секундРасширение файла:.mp4Формат видео:MP4,H.264Вес файла: до 26 Мб (для iOS и Android)               |
| Документ    | Имя файла (включая расширение): до 256 символовРасширение файла: любое, кромезапрещенныхканаломВес файла: до 50 Мб (для iOS и Android) |

> **Примечание:** Обратите внимание! Кодировка вашего текста должна быть в [UTF-8](https://ru.wikipedia.org/wiki/UTF-8).

Поддержка оформления для текста:

| Жирный(Bold)        | Текст, обрамлённый звездочками\*             | *жирный*       |
| ------------------- | -------------------------------------------- | -------------- |
| Курсив(Italics)     | Текст, обрамлённый нижними подчеркиваниями\_ | *курсив*       |
| Для кода(Mono)      | Текст, обрамлённый тремя апострофами\`\`\`   | `код`          |
| Зачеркнутый(Strike) | Текст, обрамлённый тильдами\~                | ~~зачёркнуто~~ |

#### WhatsApp Business API (WABA-шаблоны)

Требования к элементам шаблона:

* Не более 3-х кнопок в одном шаблоне;
* Нельзя комбинировать кнопки-ссылки на внешние веб-страницы и обычные кнопки, ведущие в другие сценарии (узлы) чат-бота;
* Следить за тем, чтобы тема шаблона (тот сценарий, который этим шаблоном должен будет решаться) была выбрана, в соответствии с контентом и действиями кнопок (если они есть);

#### Одноклассники (ОК)

Официальная страница документации: <https://apiok.ru/dev/graph_api/bot_api>

| Объект      | Допустимое значение (на одно сообщение)                                                      |
| ----------- | -------------------------------------------------------------------------------------------- |
| Текст       | от 1 до - символов                                                                           |
| Изображение | Размер: до - пикселейРасширение файла: -Вес файла: до - Мб (для iOS и Android)               |
| Видео       | Продолжительность: -Расширение файла: -Формат видео: -Вес файла: до - Мб (для iOS и Android) |
| Документ    | Имя файла: -Расширение файла: -Вес файла: до - Мб (для iOS и Android)                        |
| Аудио       | Расширение файла: -Формат аудио: -Вес файла: до - Мб (для iOS и Android)                     |

#### Веб-чат на сайте

| Объект      | Допустимое значение (на одно сообщение)    |
| ----------- | ------------------------------------------ |
| Текст       | От 1 до 5000 символов                      |
| Изображение | Прямая ссылка на файл во внешнем хранилище |
| Документ    | Прямая ссылка на файл во внешнем хранилище |

Поддерживаемые элементы:

1. Сообщение;
2. Сообщение с кнопкой;
3. Медиафайл;
4. Витрина из карточек с кнопками;

#### Канал через API Fasttrack

Официальная страница документации: [https://dashboard.fstrk.io/api/partners/docs/#/1. Методы для интеграции/connector\_create](https://dashboard.fstrk.io/api/partners/docs/#/1.%20%D0%9C%D0%B5%D1%82%D0%BE%D0%B4%D1%8B%20%D0%B4%D0%BB%D1%8F%20%D0%B8%D0%BD%D1%82%D0%B5%D0%B3%D1%80%D0%B0%D1%86%D0%B8%D0%B8/connector_create)

| Объект      | Допустимое значение (на одно сообщение)    |
| ----------- | ------------------------------------------ |
| Текст       | От 1 до 7000 символов                      |
| Изображение | Прямая ссылка на файл во внешнем хранилище |
| Документ    | Прямая ссылка на файл во внешнем хранилище |

### Советы и рекомендации по созданию контента

А теперь, давайте рассмотрим типовые советы и полезные рекомендации по созданию качественных сценариев в чат-боте для каждого из каналов.

> **Примечание:** Кстати! Данный раздел был составлен, на основании реального опыта команды Fasttrack, за более чем 4-х летний период разработки чат-ботов различной степени сложности и применения.

#### Общие рекомендации (подойдут для всех каналов)

При создании контента для отдельно взятого сценария (экрана), всегда помните:

1. Текст должен быть читаем;
2. Если текста много, то разделите его на смысловые абзацы;
3. Не бойтесь сделать дополнительный перенос текста, если это заголовок к абзацу;
4. Текст должен помещаться в 1 (максимум 1.5) экрана среднего смартфона, чтобы не заставлять пользователя прокручивать сообщение («скроллить»);
5. Медиафайлы (изображения, видео, аудио) и документы (PDF, Excel, Word, …) должны быть хорошего качества и не слишком большими по весу;
6. Ваш пользователь не всегда находится в Wi-Fi сети с быстрым интернетом, поэтому старайтесь держать вес ваших медиафайлов до 250 Кб, а документов — до 1 Мб;
7. При этом, не допускайте откровенно «пиксельных» (сильно сжатых) изображений (видео или аудио), максимальный процент сжатия не должен быть ниже 60%;
8. Выбирайте для отправки только поддерживаемые каналом (мессенджером) форматы медиафайлов и документов, указанные в таблицах выше;

#### Telegram

\[тут описание]

#### Вконтакте (VK)

\[тут описание]

#### Viber

\[тут описание]

#### WhatsApp (регулярные узлы)

> **Примечание:** Важно! Регулярные узлы для канала (мессенджера) WhatsApp могут быть получены пользователем, только если он находится внутри 24-х часового окна с этим чат-ботом. В противном случае — отправка такого сценария (узла) будет вызывать ошибку.

Внутри регулярных узлов допускается создавать (практически) любые последовательности объектов WhatsApp. Вы легко можете создать, например, вот такой сценарий в одном узле:

* Картинка;
* Текст;
* Блок «Текст с кнопкой»;
* Картинка;
* И так далее…

Тут вы ограничены только своей фантазией и здравым смыслом. Следуйте общим рекомендациям для построения контента, которые были описаны выше.

#### WhatsApp Business API (WABA-шаблоны)

В зависимости от WABA-провайдера (EDNA или SMS Traffic), есть ограничения по контенту, с которым будет зарегистрирован шаблон без ошибок. Самые часто встречающиеся:

* В описании кнопок не должны присутствовать emoji (или спец. символы), только текст;
* В контенте шаблона избегать прямых призывов отправить свои персональные (контактные) данные чат-боту (WABA очень сильно следит за этим);

Отдельно хочу выделить, что необходимо тщательно выбирать контент и аудиторию для рассылки WABA-шаблона, чтобы не допустить жалоб на push-уведомление от чат-бота.

> **Примечание:** В противном случае WABA-провайдеру придется сделать блокировку отправки шаблонов с этого номера телефона (чат-бота) на неопределенное время.

Главные критерии удачной рассылки шаблона:

1. Аудитория, которая получит данный шаблон, его ожидает и/или потенциально заинтересована в его контенте/дальнейшем сценарии/прикрепленных материалах (то есть, это не СПАМ-рассылка «на холодную»);
2. Шаблон решает конкретную задачу аудитории (информирование о заказе, новости сервиса, начисление бонусов, «брошенная корзина», приглашение на вебинар, промокод после покупки акционного товара в вашем интернет-магазине, и так далее и тому подобное);

#### Веб-чат на сайте

В рамках данного канала можно реализовать, практически, такой же внешний вид и функционал, как в мессенджере Вконтакте (VK) или Viber. По этой причине, вы можете следовать рекомендациям, описанным для этих мессенджеров.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fstrk.io/knowledge_base/instructions/old/vizualnyi-konstruktor-chat-botov/konstruktor/dizain-i-kontent-dlya-scenariya-v-kanalakh.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
