> For the complete documentation index, see [llms.txt](https://docs.graspil.com/ru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.graspil.com/ru/app/broadcast/create-msg.md).

# Инструкция по оформлению расслки в боте

В graspil при создании рассылки вы видите обычное текстовое поле. Но это не значит, что ваши сообщения нельзя красиво оформить! Вы можете делать текст **жирным**, *курсивным*, вставлять [ссылки](https://www.google.com/search?q=http://google.com), ~~зачеркивать текст~~ и т.д.

Для этого нужно выбрать **режим форматирования** (поле `parse_mode`) и использовать специальные символы.

Всего есть два основных режима:

1. **HTML** (Рекомендуем для новичков — проще и надежнее)
2. **MarkdownV2** (Быстрее писать, но требует внимательности к знакам препинания)

### Рассылка на нескольких языках

Если среди получателей рассылки есть пользователи с разным языком Telegram, не обязательно делать отдельную рассылку под каждый язык. Над полем текста (или подписи к фото/видео) есть переключатель языков:

1. Нажмите **«+»** рядом с вкладкой **«По умолчанию»** и выберите язык — список собирается автоматически по языкам, которые встречаются у пользователей вашего бота.
2. На вкладке этого языка впишите свой текст — это отдельный вариант сообщения, а не копия основного.
3. Так можно добавить сколько угодно языков. Остальные настройки (кнопки, медиа, файл) при этом общие для всех языков — переключается только текст/подпись.

При отправке каждый получатель увидит вариант на своём языке Telegram; если для его языка вариант не задан — он получит текст с вкладки «По умолчанию». Если вы не пользуетесь переключателем языков вообще — рассылка ведёт себя как раньше и уходит всем одинаковым текстом.

### Способ 1: HTML (Самый простой)

Если вы выберете в поле `parse_mode` значение **HTML**, ваш текст будет работать как конструктор. Вы "оборачиваете" нужные слова специальными тегами.

{% hint style="info" %}
**Главное правило:** Если вы открыли тег (например, `<b>`), его обязательно нужно закрыть (`</b>`).
{% endhint %}

#### Шпаргалка по HTML

| Что нужно сделать       | Как написать в поле                          | Как это увидит клиент            |
| ----------------------- | -------------------------------------------- | -------------------------------- |
| **Жирный текст**        | `<b>Важный текст</b>`                        | **Важный текст**                 |
| *Курсив*                | `<i>Наклонный текст</i>`                     | *Наклонный текст*                |
| \~\~Зачеркнутый\~\~     | `<s>Старая цена</s>`                         | ~~Старая цена~~                  |
| Ссылка в слове          | `<a href="https://graspil.com">Жми сюда</a>` | [Жми сюда](https://graspil.com/) |
| Спойлер (скрытый текст) | `<tg-spoiler>Секрет</tg-spoiler>`            | (Скрытый шум)                    |

**Пример готового сообщения для вставки:**

{% code overflow="wrap" fullWidth="true" expandable="true" %}

```html
Привет! Сегодня у нас <b>большая распродажа</b>.
Мы снизили цены на <i>всю летнюю коллекцию</i>.

<s>Цена: 5000 руб.</s>
<b>Новая цена: 2990 руб.</b>

Скорее переходи на сайт: <a href="[https://myshop.ru](https://myshop.ru)">Открыть каталог</a>
```

{% endcode %}

### Полный список доступных HTML тегов

<table data-full-width="true"><thead><tr><th>Что нужно сделать</th><th>Как написать в поле</th></tr></thead><tbody><tr><td>Подчеркнутый</td><td><code>&#x3C;u>Подчеркнуто&#x3C;/u></code></td></tr><tr><td>Спойлер</td><td><p><code>&#x3C;span class="tg-spoiler">spoiler&#x3C;/span></code><br><strong>или</strong></p><p><code>&#x3C;tg-spoiler>spoiler&#x3C;/tg-spoiler></code></p></td></tr><tr><td>Кастомные эмоджи</td><td><code>&#x3C;tg-emoji emoji-id="5368324170671202286"></code>👍<code>&#x3C;/tg-emoji></code></td></tr><tr><td>Код</td><td><code>&#x3C;code>Код&#x3C;/code></code></td></tr><tr><td>Предварительное отформатирование</td><td><code>&#x3C;pre>Форматирование&#x3C;/pre></code></td></tr><tr><td>Цитата</td><td><code>&#x3C;blockquote>Цитата&#x3C;/blockquote></code></td></tr><tr><td>Свернутая цитата</td><td><code>&#x3C;blockquote expandable>Свернутая цитата&#x3C;/blockquote></code></td></tr></tbody></table>

**На схеме изображенно как отображается тот или иной тег**

<img src="/files/HGupi0F6I2v6xXGk4OFL" alt="" class="gitbook-drawing">

#### Эмоджи и кастомные эмоджи

Обычные эмоджи вы можете просто копировать и вставлять прямо в текст, но если вы хотите использовать кастомные эмоджи то вам нужно использовать этот тег:

```html
<tg-emoji emoji-id="5368324170671202286">👍</tg-emoji>
```

Воспользуйтесь ботом [@AdsMarkdownBot](https://t.me/AdsMarkdownBot) чтобы получить ID эмоджи. Просо запустите бот и отправьте ему ваш эмоджи, в ответ вы получите код в котором будет ID

### Тестирование

Обязательно тестируйте ваше сообщение перед отправкой. Воспользуйтесь функцией "отправить себе". Если в сообщении будет ошибка телеграм сообщит об этом, просто прочтите ошибку, переведите, посоветуйтесь с нейросетью или обратитесь в поодержку, мы всегда поможем разобратся с проблемой.

### Способ 2: MarkdownV2 (Для тех, кто любит символы)

Если вы выберете `MarkdownV2`, форматирование делается с помощью спецсимволов (звездочек, нижних подчеркиваний и тильд). Это быстрее, но есть **очень важный нюанс** (о нем ниже).

#### Шпаргалка по MarkdownV2

| Что нужно сделать   | Как написать в поле           | Как это увидит клиент                                                                     |
| ------------------- | ----------------------------- | ----------------------------------------------------------------------------------------- |
| **Жирный текст**    | `*Жирный текст*`              | **Жирный текст**                                                                          |
| *Курсив*            | `_Наклонный текст_`           | *Наклонный текст*                                                                         |
| \~\~Зачеркнутый\~\~ | `~Старая цена~`               | ~~Старая цена~~                                                                           |
| Ссылка в слове      | `[Жми сюда](https://сайт.ру)` | [Жми сюда](https://www.google.com/search?q=https://%D1%81%D0%B0%D0%B9%D1%82.%D1%80%D1%83) |

#### ⛔ ВАЖНО: Проблема с восклицательным знаком (Ошибка Bad Request)

В режиме **MarkdownV2** многие знаки препинания считаются "служебными". Телеграм думает, что это часть кода. Если вы просто напишете:

❌ `Привет!` или `Скидки до 50%.`

**Сообщение НЕ отправится**, и вы получите ошибку:

> *Bad Request: can't parse entities: Character '!' is reserved...*

**Что делать?** Нужно ставить "защиту" перед знаками препинания. Этим щитом служит обратная косая черта: `\` . Это называется "экранирование".

✅ Правильно писать так: `Привет\!` `Скидки до 50%\.` `Мы открылись\.`

**Список знаков, перед которыми ОБЯЗАТЕЛЬНО нужно ставить `\`:**

1. Точка `.`
2. Восклицательный знак `!`
3. Минус (дефис) `-`
4. Скобки `(` `)` `[` `]` `{` `}`
5. Плюс `+`
6. Равно `=`
7. Решетка `#`
8. Вертикальная черта `|`

**Пример правильного сообщения в MarkdownV2:**

```
Привет\! 👋
У нас *отличные новости*\!

Мы запустили акцию: скидка \-20% на всё\.
Поторопись, предложение ограничено\.

[Забрать скидку](https://myshop.ru)
```

*(Обратите внимание: перед восклицательными знаками, точками и минусом стоит косая черта)*.

#### Полный список команд MarkdownV2

| Наименование            | Как писать (Синтаксис)           |
| ----------------------- | -------------------------------- |
| **Жирный**              | `*Жирный текст*`                 |
| *Курсив*                | `_Курсив_`                       |
| \~\~Зачеркнутый\~\~     | `~Зачеркнуто~`                   |
| \<u>Подчеркнутый\</u>   | `__Подчеркнуто__`                |
| Спойлер (Скрытый)       | \`                               |
| Ссылка                  | `[Текст ссылки](http://сайт.ру)` |
| Код (строка)            | `` `Код` ``                      |
| Блок кода (много строк) | текст                            |
| Цитата                  | `>Текст цитаты`                  |
| Свернутая цитата        | \`>Текст цитаты                  |
| Кастомный эмодзи        | `![👍](tg://emoji?id=123456)`    |

#### Эмоджи и кастомные эмоджи

Обычные эмоджи вы можете просто копировать и вставлять прямо в текст, но если вы хотите использовать кастомные эмоджи то вам нужно использовать этот тег:

```html
![👍](tg://emoji?id=123456)
```

Воспользуйтесь ботом [@AdsMarkdownBot](https://t.me/AdsMarkdownBot) чтобы получить ID эмоджи. Просо запустите бот и отправьте ему ваш эмоджи, в ответ вы получите код в котором будет ID

### Тестирование

Обязательно тестируйте ваше сообщение перед отправкой. Воспользуйтесь функцией "отправить себе". Если в сообщении будет ошибка телеграм сообщит об этом, просто прочтите ошибку, переведите, посоветуйтесь с нейросетью или обратитесь в поодержку, мы всегда поможем разобратся с проблемой.
