> For the complete documentation index, see [llms.txt](https://docs.iexexchanger.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.iexexchanger.com/guide/uvedomleniya/uvedomlenie-v-telegram.md).

# Уведомление в Telegram

Раздел **«Подключения уведомлений»** используется для подключения Telegram-ботов к iEXExchanger.

Telegram работает через общий реестр подключений. Через него настраиваются обычные уведомления, Security-коды и продолжение обмена через Telegram. Каждое подключение создаётся отдельно и имеет собственное назначение.

Через Telegram можно:

* отправлять клиентам уведомления о заявках;
* отправлять рабочие уведомления администраторам;
* отправлять сообщения в Telegram-группу или канал;
* получать Security-коды для входа и защищённых действий;
* продолжать обмен с клиентом через Telegram;
* выбирать отдельные события для каждого обычного бота;
* задавать приоритет обработки уведомлений;
* проверять состояние подключения.

Для разных задач рекомендуется использовать отдельных Telegram-ботов.

## Где находится раздел

В панели управления откройте: **«Настройки» — «Общие настройки» — «Уведомления» — «Подключения»**

<figure><img src="/files/6EsHkuOHbS16DsmZlWWL" alt=""><figcaption></figcaption></figure>

На странице находятся SMTP, Resend и Telegram-подключения.

В этой инструкции рассматривается только Telegram.

Рядом находится страница:

**«Уведомления» — «Общие параметры»**

В ней расположены общие переключатели, которые управляют доставкой уведомлений.

## Права доступа

Доступ к разделу зависит от прав группы пользователя.

В панели управления откройте: **«Пользователи» — «Список групп пользователей»**

Откройте нужную группу. В окне **«Настройка названия и прав доступа группы»** проверьте права, необходимые сотруднику.

<figure><img src="/files/wPid2ZFZ39NjJBKI8n4l" alt=""><figcaption></figcaption></figure>

Для доступа к Telegram-подключениям достаточно одного из следующих прав:

| Группа прав       | Право                       |
| ----------------- | --------------------------- |
| **«Дополнение»**  | **«Telegram-уведомления»**  |
| **«Настройки»**   | **«Настройки уведомлений»** |
| **«Админпанель»** | **«Общие настройки»**       |

Если сотруднику требуется управлять только Telegram-подключениями, достаточно предоставить право **«Telegram-уведомления»** в группе **«Дополнение»**.

Для работы с Security-ботом дополнительно требуется:

| Группа прав        | Право                           |
| ------------------ | ------------------------------- |
| **«Безопасность»** | **«Telegram-бот безопасности»** |

Для изменения параметра **«Где продолжать обмен»** требуется право **«Настройки заявок»** в группе **«Настройки»** или более широкое право **«Общие настройки»**.

После изменения прав нажмите **«Сохранить изменения»** и проверьте доступ под учётной записью нужного сотрудника.

## Как устроены Telegram-подключения

При создании Telegram-подключения сначала выбирается его назначение.

Доступны три варианта:

| Назначение               | Для чего используется                                                |
| ------------------------ | -------------------------------------------------------------------- |
| **«Уведомления»**        | Сообщения клиентам и сотрудникам о заявках и работе обменного пункта |
| **«Security-коды»**      | Коды входа и подтверждения защищённых действий                       |
| **«Продолжение обмена»** | Получение реквизитов и работа клиента с заявкой через Telegram       |

Назначение фиксируется при создании и впоследствии не изменяется.

Если был выбран неправильный вариант, создайте новое подключение.

Для каждого назначения рекомендуется использовать отдельного Telegram-бота. Особенно важно не использовать Security-бот одновременно для обычных уведомлений или продолжения обмена.

## Страница «Подключения»

Каждое подключение отображается отдельной строкой.

{% stepper %}
{% step %}

### Название

Название, которое администратор указывает при создании.

Нажмите на него, чтобы открыть настройки подключения.

Если обязательные параметры ещё не заполнены, подключение отображается как **«Не настроено»**.
{% endstep %}

{% step %}

### Тип

Показывает способ доставки и назначение подключения.

Для Telegram могут отображаться:

* **Telegram — Уведомления**;
* **Telegram — Security-коды**;
* **Telegram — Продолжение обмена**.
  {% endstep %}

{% step %}

### Состояние

Состояние помогает понять результат последней проверки.

| Состояние          | Что означает                                                         |
| ------------------ | -------------------------------------------------------------------- |
| **«Отключено»**    | Подключение сохранено, но выключено                                  |
| **«Не проверено»** | Настройки ещё не проверялись или изменились после последней проверки |
| **«Стабильно»**    | Последняя проверка завершилась успешно                               |
| **«Ошибка»**       | Последняя проверка обнаружила проблему                               |
| **«Не настроено»** | Обязательные параметры ещё не заполнены                              |

{% hint style="info" %}
«Стабильно» означает только то, что последняя проверка подключения завершилась успешно. Это не постоянный мониторинг Telegram и не подтверждение того, что для бота выбраны нужные события.
{% endhint %}
{% endstep %}

{% step %}

### Уведомления

Для обычного подключения отображается: **«Включено: N»**

где `N` — количество включённых событий.

Нажмите на значение, чтобы открыть настройки событий.

Для **«Security-коды»** и **«Продолжение обмена»** отображается:

**«Автоматически»**

Эти назначения не используют обычный ручной список событий.
{% endstep %}
{% endstepper %}

***

## Создание Telegram-бота

Telegram-бот создаётся через официальный `@BotFather`.

<figure><img src="/files/kplQ123XoWeEODuZux3w" alt=""><figcaption></figcaption></figure>

1. Откройте `@BotFather` в Telegram.
2. Создайте нового бота.
3. Укажите его название.
4. Укажите Username.
5. Скопируйте полученный токен.

Username Telegram-бота должен соответствовать требованиям Telegram.

<figure><img src="/files/WfrDcTNQLbR9zn0LIhVm" alt=""><figcaption></figcaption></figure>

Полученный токен имеет формат, похожий на:

```
1234567890:AAExampleTokenValue
```

Если токен стал известен постороннему лицу, отзовите его через `@BotFather`, получите новый и замените значение в iEXExchanger.

## Создание Telegram-подключения

В панели управления откройте: **«Настройки» — «Общие настройки» — «Уведомления» — «Подключения»**

<figure><img src="/files/6EsHkuOHbS16DsmZlWWL" alt=""><figcaption></figcaption></figure>

Нажмите **«Добавить»**.

В поле **«Тип подключения»** выберите **«Telegram»**.

<figure><img src="/files/opnKslu9E5GaHo7QP3ZI" alt="" width="563"><figcaption></figcaption></figure>

Затем:

1. Выберите назначение.
2. Для **«Уведомления»** выберите место отправки.
3. Укажите название.
4. Нажмите **«Создать»**.

В таблице появится новое выключенное подключение.

Нажмите на его название, чтобы продолжить настройку.

## Обычные Telegram-уведомления

Назначение **«Уведомления»** используется для сообщений о заявках, действиях клиентов и других событиях обменного пункта.

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

<table><thead><tr><th width="194.62109375">Вариант</th><th>Для чего используется</th></tr></thead><tbody><tr><td><strong>«В канал»</strong></td><td>Общие сообщения для сотрудников</td></tr><tr><td><strong>«В группу»</strong></td><td>Сообщения в рабочую Telegram-группу</td></tr><tr><td><strong>«В бота»</strong></td><td>Личные сообщения клиентам и администраторам</td></tr></tbody></table>

Место отправки фиксируется при создании.

Если требуется другой вариант, создайте новое подключение.

## Настройки обычного подключения

После открытия подключения доступны:

<figure><img src="/files/eMGZwK92KNoytIG5KXzI" alt=""><figcaption></figcaption></figure>

{% stepper %}
{% step %}

### Название

Используется только внутри административной панели и помогает различать несколько подключений.

Например:

```
Telegram — операторы
Telegram — руководители
Telegram — клиенты
```

{% endstep %}

{% step %}

### Токен доступа Telegram-бота

Вставьте токен, полученный через `@BotFather`.

После сохранения полный токен больше не отображается. В форме показывается только его безопасная часть.

Для замены токена нажмите **«Изменить»** и укажите новое значение.

Если **«Изменить»** не нажимать, сохранённый токен остаётся без изменений.
{% endstep %}

{% step %}

### Куда отправлять

Показывает вариант, выбранный при создании:

* **«В канал»**;
* **«В группу»**;
* **«В бота»**.

Изменить его у существующего подключения нельзя.
{% endstep %}

{% step %}

### Подключение включено

Определяет, может ли iEXExchanger использовать это подключение.

Если переключатель выключен, сохраняются токен, привязка и выбранные события, но подключение не используется для отправки.
{% endstep %}
{% endstepper %}

## Отправка в Telegram-канал

Этот вариант подходит для общего канала сотрудников.

<figure><img src="/files/YNWhrRRjJLuWFR68BBrG" alt="" width="563"><figcaption></figcaption></figure>

1. Добавьте Telegram-бота в нужный канал.
2. Предоставьте ему права для публикации сообщений.
3. После добавления опубликуйте в канале новое сообщение.
4. Вернитесь в настройки подключения.
5. Нажмите **«Найти канал»**.
6. Проверьте найденные **«Название»** и **«ID чата»**.
7. Включите **«Подключение включено»**.
8. Нажмите **«Сохранить»**.

Подключение **«В канал»** предназначено только для уведомлений сотрудников.

Клиентские события через него не отправляются.

## Отправка в Telegram-группу

Этот вариант подходит для рабочей группы операторов или администраторов.

1. Добавьте Telegram-бота в нужную группу.
2. Убедитесь, что бот может отправлять сообщения.
3. Отправьте в группе новое сообщение.
4. Вернитесь в настройки подключения.
5. Нажмите **«Найти группу»**.
6. Проверьте найденные **«Название»** и **«ID чата»**.
7. Включите **«Подключение включено»**.
8. Нажмите **«Сохранить»**.

Поддерживаются обычные группы и супергруппы.

Если группа не определяется, отправьте команду боту непосредственно внутри нужной группы и повторите поиск.

## Отправка в личного бота

Вариант **«В бота»** используется для личных сообщений клиентам и администраторам.

Для привязки административного чата:

1. Откройте Telegram-бота.
2. Нажмите **«Запустить»** или отправьте `/start`.
3. Вернитесь в настройки подключения.
4. Нажмите **«Найти чат»**.
5. Проверьте найденные **«Название»** и **«ID чата»**.
6. Включите **«Подключение включено»**.
7. Нажмите **«Сохранить»**.

Административные события отправляются в найденный личный чат.

Клиентские сообщения работают иначе. Для каждой заявки iEXExchanger определяет Telegram конкретного клиента.

Использоваться может:

* подтверждённая Telegram-привязка пользователя;
* Telegram ID, сохранённый для заявки;
* Telegram ID, полученный при работе через Telegram Mini App.

Если Telegram получателя определить невозможно, сообщение клиенту не отправляется.

{% hint style="info" %}
Клиент должен предварительно открыть Telegram-бота или выполнить предусмотренную Telegram-привязку. Бот не может самостоятельно начать новый личный диалог с пользователем, который ранее с ним не взаимодействовал.
{% endhint %}

Пользователь также может отключить отдельные Telegram-уведомления в доступных ему настройках.

## Как работает поиск получателя

Перед поиском выполните действие именно в том Telegram-чате, который требуется подключить.

Для канала опубликуйте новое сообщение.

Для группы отправьте новое сообщение или команду боту.

Для личного чата откройте бота и отправьте `/start`.

Затем сразу выполните поиск в iEXExchanger.

После успешной привязки кнопка изменится на:

* **«Найти канал заново»**;
* **«Найти группу заново»**;
* **«Найти чат заново»**.

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

Поэтому перед повторным поиском выполните новое действие только в нужном чате.

{% hint style="warning" %}
После замены токена выполните поиск повторно. Новый Telegram-бот может не иметь доступа к ранее сохранённому каналу, группе или чату.
{% endhint %}

## Выбор событий

Для обычного подключения можно отдельно указать, какие уведомления оно должно отправлять.

В колонке **«Уведомления»** нажмите **«Включено: N»**.

<figure><img src="/files/kgneyelHfjHLnoCzhvje" alt=""><figcaption></figcaption></figure>

Откроется окно настройки событий.

В зависимости от типа получателя доступны вкладки:

* **«Клиентам»**;
* **«Администраторам»**.

Также доступны:

* **«Включить все»**;
* **«Отключить все»**;
* выбор приоритета;
* **«Отмена»**;
* **«Сохранить»**.

Нажатие на строку события включает или отключает его.

Приоритет можно изменить только у включённого события.

После настройки обязательно нажмите **«Сохранить»**.

Закрытие окна без сохранения отменяет изменения.

{% hint style="info" %}
«Включить все» и «Отключить все» работают со всем доступным списком событий, а не только с открытой вкладкой. Ранее выбранные приоритеты при этом сохраняются.
{% endhint %}

## Приоритеты уведомлений

Для включённого события доступны:

* **«Низкий»**;
* **«Средний»**;
* **«Высокий»**.

Приоритет определяет очередь обработки сообщения:

```
Высокий — notifications-high
Средний — notifications-normal
Низкий — notifications-low
```

При высокой нагрузке сообщения с высоким приоритетом обрабатываются раньше.

Приоритет не включает событие, не меняет получателя и не гарантирует мгновенную доставку.

## Уведомления клиентам

Клиентские события доступны только для подключения **«В бота»**.

В базовой конфигурации iEXExchanger 11.4 доступны следующие события:

| Событие                           | Что получает клиент                   | Приоритет |
| --------------------------------- | ------------------------------------- | --------- |
| **«Заявка восстановлена»**        | Заявка возвращена в обработку         | Низкий    |
| **«Заявка выполнена»**            | Заявка успешно выполнена              | Высокий   |
| **«Заявка отклонена»**            | Заявка отклонена                      | Высокий   |
| **«Заявка отложена»**             | Обработка заявки временно отложена    | Высокий   |
| **«Заявка создана для клиента»**  | Заявка успешно создана                | Высокий   |
| **«Клиент подтвердил оплату»**    | Отметка клиента об оплате принята     | Высокий   |
| **«Ответ оператора в чате»**      | Оператор ответил в чате заявки        | Низкий    |
| **«Реквизиты для оплаты выданы»** | Для заявки выданы платёжные реквизиты | Низкий    |
| **«Требуется верификация»**       | Требуется дополнительная проверка     | Высокий   |

Для доставки клиентского уведомления должны выполняться дополнительные условия:

* используется подключение **«В бота»**;
* событие включено;
* Telegram клиента известен системе;
* клиент ранее взаимодействовал с ботом;
* подключение и общая Telegram-доставка включены.

## Уведомления администраторам

В базовой конфигурации доступны:

| Событие                              | Что получает сотрудник                      | Приоритет |
| ------------------------------------ | ------------------------------------------- | --------- |
| **«Автовыплата выполнена»**          | Автоматическая выплата успешно завершена    | Низкий    |
| **«Вход в админку»**                 | Выполнен вход в административную панель     | Низкий    |
| **«Действие Google 2FA»**            | Выполнено событие, связанное с Google 2FA   | Низкий    |
| **«Ежедневная статистика»**          | Ежедневная сводка работы обменника          | Низкий    |
| **«Запрос проверки счёта»**          | Получена заявка на проверку счёта или карты | Высокий   |
| **«Заявки на выплаты»**              | Создана заявка на выплату вознаграждения    | Низкий    |
| **«Изменение IP администратора»**    | Изменился IP-адрес администратора           | Низкий    |
| **«Новая заявка»**                   | Клиент создал новую заявку                  | Низкий    |
| **«Новое сообщение клиента в чате»** | Клиент написал в чат заявки                 | Низкий    |
| **«Новые заявки»**                   | Заявка оплачена или принята в обработку     | Низкий    |
| **«Ошибка автовыплаты»**             | Возникла ошибка автоматической выплаты      | Низкий    |
| **«Страховка курса»**                | Сработала страховка курса направления       | Высокий   |

{% hint style="warning" %}
«Новая заявка» и «Новые заявки» — разные события.

«Новая заявка» относится к созданию заявки. «Новые заявки» используется при её переходе в рабочую обработку.
{% endhint %}

Установленные модули могут расширять список событий. В настройках отображаются только события, которые фактически поддерживают Telegram.

## Несколько обычных Telegram-подключений

Можно создать несколько подключений и разделить уведомления между ними.

Например:

```
Telegram — операторы
Telegram — руководители
Telegram — финансовые уведомления
Telegram — клиенты
```

Для каждого подключения отдельно выбираются события и приоритеты.

Если одно событие включено одновременно в нескольких подходящих подключениях, сообщение отправляется через каждое из них.

Это не резервная схема.

Если одно подключение не смогло отправить сообщение, iEXExchanger не перенаправляет его автоматически через другой Telegram-бот.

Чтобы избежать дублей, не включайте одно и то же событие в нескольких подключениях без необходимости.

***

## Security-коды

Подключение **«Security-коды»** используется только для кодов входа и подтверждения защищённых административных действий.

Security-бот не используется для:

* обычных уведомлений о заявках;
* сообщений клиентам;
* Telegram-каналов;
* Telegram-групп;
* продолжения обмена.

В системе может использоваться только один действующий Security-бот.

## Создание Security-бота

Сначала создайте отдельного Telegram-бота через `@BotFather`.

Затем в панели управления откройте: **«Настройки» — «Общие настройки» — «Уведомления» — «Подключения»**

<figure><img src="/files/lGDB0F5NYy1ZMQzltPgn" alt="" width="563"><figcaption></figcaption></figure>

1. Нажмите **«Добавить»**.
2. Выберите **«Telegram»**.
3. В поле назначения выберите **«Security-коды»**.
4. Укажите название.
5. Нажмите **«Создать»**.
6. Откройте созданное подключение.
7. Укажите токен.
8. Включите **«Подключение включено»**.
9. Нажмите **«Сохранить»**.

При первом сохранении система проверяет токен и получает данные Telegram-бота.

Также:

* определяется имя бота;
* определяется ID бота;
* текущий администратор становится владельцем;
* токен сохраняется в защищённом виде;
* на production настраивается защищённый webhook;
* создаётся маршрут для Telegram-кодов.

В блоке **«Бот безопасности»** отображаются данные созданного бота.

В колонке **«Уведомления»** для Security-подключения отображается: **«Автоматически»**

Ручной список событий для него не используется.

## Владелец Security-бота

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

У владельца должен быть действующий E-mail.

E-mail используется для подтверждения:

* изменения названия;
* замены токена;
* включения;
* выключения;
* отвязки Security-бота.

Создание Security-бота не выполняет личную Telegram-привязку автоматически.

Каждый администратор подключает свой Telegram отдельно.

## Привязка администратора к Security-боту

Каждый администратор выполняет привязку самостоятельно.

В панели управления откройте: **«Пользователи» — «Список пользователей»**

<figure><img src="/files/ReTAcfQXWHBuPcpvrffL" alt=""><figcaption></figcaption></figure>

Откройте собственную карточку пользователя и перейдите во вкладку **«Доступ и безопасность»**.

<figure><img src="/files/6ZPNjkIPHdimC5zvbnj8" alt=""><figcaption></figcaption></figure>

Найдите **«Управление доступом»**, затем блок **«Способ подтверждения кодов безопасности»**.

<figure><img src="/files/hPsstCvhhDnskdsMqw7W" alt=""><figcaption></figcaption></figure>

1. Нажмите **«Создать ссылку Telegram»**.
2. Нажмите **«Открыть Telegram»**.
3. Запустите Security-бота.
4. Если автоматический переход не сработал, отправьте указанную в карточке команду вручную.
5. Вернитесь в административную панель.
6. Нажмите **«Проверить привязку»**.
7. После подтверждения выберите **«Telegram»**.
8. Нажмите **«Сохранить»**.

Создать ссылку можно только для собственного аккаунта.

Нельзя открыть пользователя другого администратора и привязать его Telegram вместо него.

Если ссылка истекла, создайте новую.

## Изменение Security-бота

После первоначальной настройки важные изменения подтверждаются кодом, который отправляется на E-mail владельца.

При сохранении откроется окно: **«Подтвердите изменение бота безопасности»**

Введите полученный шестизначный код.

Подтверждение имеет следующие ограничения:

* выполняется в том же браузере;
* выполняется в той же административной сессии;
* код действует 15 минут;
* после пяти неправильных попыток подтверждение блокируется на 10 минут.

Для выполнения операции должна работать административная почта владельца.

## Замена токена Security-бота

Если существуют подтверждённые Telegram-привязки администраторов, заменить токен на токен другого Security-бота сразу нельзя.

Сначала:

1. Переключите администраторов на **«Email»** или **«Google 2FA»**.
2. Отвяжите их Telegram.
3. Укажите новый токен Security-бота.
4. Сохраните изменения.
5. Подтвердите операцию E-mail-кодом владельца.
6. Создайте новые Telegram-привязки.
7. Снова выберите **«Telegram»** как способ подтверждения.

## Отключение и отвязка Security-бота

Security-подключение нельзя удалить обычной кнопкой таблицы.

Откройте его настройки и используйте: **«Отвязать бота безопасности»**

Отвязка подтверждается E-mail-кодом владельца.

Security-бот нельзя выключить или отвязать, пока хотя бы один администратор использует Telegram как текущий способ получения Security-кодов.

Сначала переключите таких пользователей на **«Email»** или **«Google 2FA»**.

Отвязка личного Telegram администратора дополнительно защищена кодами из E-mail и Telegram Security-бота.

## Когда отправляется Security-код

Для отправки должны одновременно выполняться следующие условия:

* Security-бот настроен;
* подключение включено;
* у пользователя есть доступ к административной панели;
* его Telegram подтверждён;
* в карточке пользователя выбран **«Telegram»**;
* включена общая отправка уведомлений;
* включены уведомления Telegram;
* Telegram Bot API доступен.

***

## Продолжение обмена через Telegram

Назначение **«Продолжение обмена»** позволяет клиенту перенести работу с заявкой в личный Telegram-чат.

Через такого бота клиент может:

* перейти из заявки в Telegram;
* получить данные заявки;
* получить платёжные реквизиты;
* подтвердить оплату;
* написать оператору;
* получать ответы оператора.

Переписка синхронизируется с чатом заявки в административной панели.

Обычный список событий и приоритетов для этого назначения не используется.

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

## Создание бота продолжения обмена

Создайте отдельного Telegram-бота через `@BotFather`.

В панели управления откройте: **«Настройки» — «Общие настройки» — «Уведомления» — «Подключения»**

1. Нажмите **«Добавить»**.
2. Выберите **«Telegram»**.
3. Выберите назначение **«Продолжение обмена»**.
4. Укажите название.
5. Нажмите **«Создать»**.
6. Откройте созданное подключение.
7. Укажите токен.
8. Выберите способ получения сообщений.
9. При необходимости укажите **«Публичный URL webhook»**.
10. Включите **«Подключение включено»**.
11. Нажмите **«Сохранить»**.
12. Выполните проверку подключения.

После проверки отображаются Username и ID Telegram-бота.

## Способ получения сообщений

Для продолжения обмена доступны два режима.

{% stepper %}
{% step %}

### Защищённый webhook

Основной режим для production.

Telegram передаёт входящие сообщения на публичный HTTPS-адрес iEXExchanger.

Поле **«Публичный URL webhook»** можно оставить пустым.

В таком случае используется адрес текущего сайта и предусмотренная точка приёма Telegram.

Явный URL требуется для отдельного технического сценария, например тестирования через внешний HTTPS-туннель.

Адрес должен:

* использовать HTTPS;
* быть доступен Telegram из интернета;
* иметь действующий SSL-сертификат;
* вести на текущую установку iEXExchanger.

Локальные адреса, `.test`, `localhost` и обычный HTTP для production не подходят.

Webhook защищается отдельным секретом, который создаётся и проверяется системой.
{% endstep %}

{% step %}

### Локальное polling

Используется только для локальной разработки и тестового окружения без публичного HTTPS-адреса.

Для запуска требуется команда:

```bash
php artisan order-chat:telegram-poll
```

На production используйте **«Защищённый webhook»**.

Не запускайте несколько polling-процессов одновременно для одного Telegram-бота.
{% endstep %}
{% endstepper %}

## Включение продолжения обмена

Одного настроенного Telegram-подключения недостаточно.

В панели управления откройте: **«Настройки» — «Общие настройки» — «Обмен»**

<figure><img src="/files/cYbd51mVINLsoRKz1Vsq" alt=""><figcaption></figcaption></figure>

Найдите раздел **«Продолжение обмена»**.

В поле **«Где продолжать обмен»** доступны:

| Вариант              | Как работает                                                    |
| -------------------- | --------------------------------------------------------------- |
| **«На сайте»**       | Работа с заявкой и платёжными реквизитами продолжается на сайте |
| **«В мессенджерах»** | Клиенту предлагаются доступные способы продолжения обмена       |

Чтобы использовать Telegram, выберите: **«В мессенджерах»** и сохраните настройки.

Telegram будет доступен клиенту только при наличии рабочего подключения.

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

## Как работает продолжение обмена

Когда Telegram доступен:

1. Клиент выбирает Telegram на странице заявки.
2. Открывается персональная ссылка.
3. Клиент запускает Telegram-бота.
4. Бот получает связь с конкретной заявкой.
5. Клиент получает данные заявки и реквизиты.
6. Сообщения клиента появляются в чате заявки.
7. Ответы оператора отправляются обратно в Telegram.
8. Клиент может подтвердить оплату, если это предусмотрено текущим этапом заявки.

Ссылка на продолжение обмена ограничена по времени и предназначена для конкретной заявки.

## Замена или отключение бота продолжения обмена

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

Такие изменения лучше выполнять в период обслуживания.

Перед заменой:

1. Проверьте активные заявки, использующие Telegram.
2. Завершите работу с ними.
3. Сохраните новый токен или новое подключение.
4. Выполните **«Проверить»**.
5. Создайте тестовую заявку.
6. Проверьте переход клиента в Telegram.
7. Проверьте получение реквизитов.
8. Проверьте обмен сообщениями с оператором.

При удалении подключения его webhook отключается.

## Общие параметры уведомлений

Даже полностью настроенный Telegram-бот не будет работать, если глобальная доставка отключена.

В панели управления откройте: **«Настройки» — «Общие настройки» — «Уведомления» — «Общие параметры»**

<figure><img src="/files/Whuo71J9GzzvJ2BvChaw" alt=""><figcaption></figcaption></figure>

Для Telegram используются два основных переключателя.

{% stepper %}
{% step %}

### Отправка уведомлений

Главный переключатель системы уведомлений.

Если он выключен, новые уведомления не отправляются по доступным каналам.
{% endstep %}

{% step %}

### Уведомления в Telegram

Управляет Telegram-доставкой.

Если переключатель выключен, не используются:

* обычные Telegram-подключения;
* Security-бот;
* продолжение обмена.

При этом сами подключения, токены, привязки и выбранные события сохраняются.
{% endstep %}
{% endstepper %}

После изменения общих параметров нажмите **«Сохранить»**.

***

## Что необходимо для обычного Telegram-уведомления

Сообщение будет отправлено только при выполнении всех необходимых условий:

* **«Отправка уведомлений»** включена;
* **«Уведомления в Telegram»** включены;
* подключение полностью настроено;
* **«Подключение включено»** включено;
* нужное событие доступно для этого типа подключения;
* событие включено;
* изменения событий сохранены;
* получатель определён;
* бот имеет доступ к получателю;
* Telegram Bot API доступен;
* работают очереди уведомлений.

Для клиентского сообщения дополнительно должен быть известен Telegram клиента.

## Проверка подключения

После настройки выполните отдельную проверку.

В панели управления откройте: **«Настройки» — «Общие настройки» — «Уведомления» — «Подключения»**

Найдите нужное подключение.

Откройте **«Другие действия»** и выберите: **«Проверить»**

<figure><img src="/files/hiCPT5AmRq7BFiqxJz6P" alt=""><figcaption></figcaption></figure>

Проверка недоступна, пока подключение имеет состояние **«Не настроено»**.

{% stepper %}
{% step %}

### Обычное подключение

Проверяются:

* токен;
* доступность Telegram-бота;
* привязанный чат;
* соответствие типа чата выбранному месту отправки.

Проверка не отправляет реальное уведомление о заявке.
{% endstep %}

{% step %}

### Security-бот

Проверяется действительность токена и доступность Telegram-бота.

Личная привязка администратора проверяется отдельно кнопкой **«Проверить привязку»** в карточке пользователя.
{% endstep %}

{% step %}

### Продолжение обмена

Дополнительно проверяются:

* данные Telegram-бота;
* выбранный способ получения сообщений;
* webhook или polling;
* параметры защищённого webhook.

После успешной проверки состояние подключения изменяется на **«Стабильно»**.

При обнаружении проблемы отображается **«Ошибка»**.
{% endstep %}
{% endstepper %}

## После добавления бота или замены токена

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

Если после изменения:

* Telegram-уведомления не отправляются;
* новый канал, группа или чат не определяются;
* бот продолжает работать со старой конфигурацией;
* сообщения не появляются после правильной настройки,

перезапустите серверные процессы и повторите проверку подключения. Этот порядок также использовался в предыдущей схеме Telegram и остаётся полезным при диагностике работы фоновых процессов.

После перезапуска снова выполните **«Проверить»**.

Если проблема связана с задержкой сообщений, дополнительно необходимо проверить очереди и Redis.

## Замена Telegram-токена

Чтобы заменить токен обычного подключения:

<figure><img src="/files/CSaRwcwl1pBEJIhqRjUx" alt="" width="563"><figcaption></figcaption></figure>

1. Откройте подключение.
2. Нажмите **«Изменить»** рядом с токеном.
3. Вставьте новое значение.
4. Нажмите **«Сохранить»**.
5. Повторно найдите канал, группу или чат.
6. Выполните **«Проверить»**.

Если токен был скомпрометирован, сначала отзовите его через `@BotFather`.

Не передавайте старый или новый токен в техническую поддержку без необходимости.

***

## Отключение и удаление

<details>

<summary>Временно остановить одно подключение</summary>

Откройте его и выключите:

**«Подключение включено»**

Настройки подключения сохранятся.

</details>

<details>

<summary>Остановить все Telegram-сообщения</summary>

Откройте **«Общие параметры»** и выключите:

**«Уведомления в Telegram»**

</details>

<details>

<summary>Остановить всю систему уведомлений</summary>

Выключите:

**«Отправка уведомлений»**

</details>

<details>

<summary>Удалить обычное подключение</summary>

Используйте кнопку удаления в строке подключения и подтвердите действие.

Удаление подключения из iEXExchanger не удаляет Telegram-бота из `@BotFather` и не удаляет сам Telegram-канал или группу.

</details>

<details>

<summary>Удалить бот продолжения обмена</summary>

Перед удалением проверьте активные заявки, использующие Telegram.

После удаления подключение перестаёт использоваться и его webhook отключается.

</details>

<details>

<summary>Удалить Security-бот</summary>

Обычная кнопка удаления недоступна.

Откройте подключение и используйте:

**«Отвязать бота безопасности»**

Операция подтверждается кодом владельца.

</details>

***

## Решение проблем

<details>

<summary>Раздел «Подключения» не отображается</summary>

Проверьте права группы пользователя.

Для обычной работы с Telegram используются:

* **«Telegram-уведомления»**;
* **«Настройки уведомлений»**;
* **«Общие настройки»**.

Для Security-бота дополнительно требуется:

**«Telegram-бот безопасности»**

После изменения группы сохраните настройки и повторно проверьте доступ под учётной записью сотрудника.

</details>

<details>

<summary>Подключение показывает «Не настроено»</summary>

Откройте его и проверьте:

* указан ли токен;
* выполнены ли обязательные настройки;
* найден ли канал, группа или чат, если он требуется;
* сохранены ли изменения.

</details>

<details>

<summary>Подключение показывает «Отключено»</summary>

Откройте запись и включите: **«Подключение включено»**

После этого проверьте общие параметры уведомлений.

</details>

<details>

<summary>Подключение показывает «Не проверено»</summary>

Такое состояние появляется после создания или изменения параметров.

Выполните: **«Проверить»**

</details>

<details>

<summary>Подключение показывает «Ошибка»</summary>

Проверьте:

* действителен ли токен;
* не был ли он отозван в `@BotFather`;
* имеет ли бот доступ к нужному чату;
* соответствует ли тип чата выбранному варианту;
* доступен ли Telegram;
* корректно ли настроен webhook для продолжения обмена.

После исправления снова выполните **«Проверить»**.

</details>

<details>

<summary>Канал не находится</summary>

Проверьте, что:

* бот добавлен в нужный канал;
* бот имеет право публиковать сообщения;
* после его добавления опубликовано новое сообщение;
* выбран вариант **«В канал»**;
* в настройках используется токен именно этого бота.

После проверки снова опубликуйте сообщение и нажмите **«Найти канал заново»**.

</details>

<details>

<summary>Группа не находится</summary>

Проверьте:

* бот добавлен в группу;
* бот может отправлять сообщения;
* после добавления отправлено новое сообщение;
* выбран вариант **«В группу»**.

При необходимости отправьте боту команду непосредственно внутри группы и повторите поиск.

</details>

<details>

<summary>Личный чат не находится</summary>

Проверьте:

* выбран вариант **«В бота»**;
* открыт правильный Telegram-бот;
* пользователь нажал **«Запустить»** или отправил `/start`;
* используется токен этого же бота.

После этого выполните **«Найти чат заново»**.

</details>

<details>

<summary>Привязался не тот канал или группа</summary>

Перед повторным поиском выполните новое действие только в нужном чате.

После этого сразу нажмите соответствующую кнопку повторного поиска и проверьте **«Название»** и **«ID чата»** перед сохранением.

</details>

<details>

<summary>«Стабильно», но уведомления не приходят</summary>

Состояние **«Стабильно»** подтверждает только техническую проверку подключения.

Дополнительно проверьте:

* включено ли нужное событие;
* сохранены ли настройки событий;
* включено ли подключение;
* включена ли **«Отправка уведомлений»**;
* включены ли **«Уведомления в Telegram»**;
* правильно ли выбран получатель.

</details>

<details>

<summary>Администраторы не получают уведомления</summary>

Проверьте:

* включено ли событие на вкладке **«Администраторам»**;
* правильно ли привязан канал, группа или личный чат;
* может ли бот отправлять сообщения;
* не был ли бот удалён из группы или канала;
* не заблокирован ли бот пользователем.

</details>

<details>

<summary>Клиенты не получают сообщения</summary>

Проверьте:

* подключение создано как **«В бота»**;
* событие включено на вкладке **«Клиентам»**;
* клиент запускал Telegram-бота;
* Telegram клиента связан с заявкой или учётной записью;
* клиент не заблокировал бота;
* пользовательские настройки клиента не запрещают это уведомление.

Канал и группа не используются для клиентских уведомлений.

</details>

<details>

<summary>Одно сообщение приходит несколько раз</summary>

Проверьте другие Telegram-подключения.

Если одно событие включено одновременно в нескольких подходящих подключениях, iEXExchanger отправляет его через каждое из них.

Отключите лишние копии события.

</details>

<details>

<summary>Security-коды не приходят</summary>

Проверьте:

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

</details>

<details>

<summary>Не приходит код изменения Security-бота</summary>

Код отправляется владельцу Security-бота.

Проверьте:

* E-mail владельца;
* работу почтовых уведомлений;
* папку со спамом;
* не истёк ли срок действия кода.

</details>

<details>

<summary>Код изменения Security-бота не принимается</summary>

Проверьте:

* введены ли шесть цифр;
* не прошло ли 15 минут;
* используется ли тот же браузер;
* используется ли та же административная сессия;
* не было ли пяти неправильных попыток.

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

</details>

<details>

<summary>Security-бот нельзя выключить</summary>

Хотя бы один администратор продолжает использовать Telegram как способ получения Security-кодов.

Сначала переключите его на **«Email»** или **«Google 2FA»**, сохраните пользователя и при необходимости отвяжите Telegram.

</details>

<details>

<summary>Нельзя заменить Security-бота</summary>

Существуют подтверждённые Telegram-привязки администраторов.

Сначала переключите пользователей на другой способ подтверждения и удалите старые привязки.

</details>

<details>

<summary>Telegram не показывается для продолжения обмена</summary>

Проверьте:

* создан ли бот с назначением **«Продолжение обмена»**;
* включено ли подключение;
* показывает ли проверка **«Стабильно»**;
* включены ли общие Telegram-параметры;
* выбрано ли **«В мессенджерах»** в настройках обмена;
* настроен ли production webhook;
* доступен ли публичный HTTPS-адрес.

</details>

<details>

<summary>Локальное polling не принимает сообщения</summary>

Проверьте:

* используется локальное или тестовое окружение;
* выбран режим **«Локальное polling»**;
* запущена команда:

```bash
php artisan order-chat:telegram-poll
```

* для этого же бота не работает другой polling-процесс;
* у бота не остался активный webhook.

</details>

<details>

<summary>Сообщения отправляются с задержкой</summary>

Если настройки Telegram корректны, проблема может находиться в обработке фоновых задач.

Попросите технического администратора проверить:

* Laravel Horizon;
* очередь `notifications-high`;
* очередь `notifications-normal`;
* очередь `notifications-low`;
* Redis;
* планировщик Laravel;
* журнал ошибок Telegram и очередей.

</details>

***

## Проверка обычного Telegram-подключения

Настройка обычного Telegram-подключения выполнена правильно, если:

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

## Проверка Security-бота

Настройка выполнена правильно, если:

* создан отдельный Telegram-бот;
* выбрано назначение **«Security-коды»**;
* токен принят системой;
* подключение включено;
* проверка показывает **«Стабильно»**;
* у владельца работает E-mail;
* каждый администратор самостоятельно привязал Telegram;
* **«Проверить привязку»** завершилась успешно;
* в карточке пользователя выбран **«Telegram»**;
* настройки пользователя сохранены;
* включены общие Telegram-параметры;
* тестовый Security-код приходит нужному администратору.

## Проверка продолжения обмена

Настройка выполнена правильно, если:

* используется отдельный Telegram-бот;
* выбрано назначение **«Продолжение обмена»**;
* для production выбран **«Защищённый webhook»**;
* подключение включено;
* проверка показывает **«Стабильно»**;
* общая Telegram-доставка включена;
* в разделе **«Продолжение обмена»** выбрано **«В мессенджерах»**;
* тестовая заявка предлагает переход в Telegram;
* клиент открывает бота по персональной ссылке;
* клиент получает данные заявки и реквизиты;
* сообщение клиента появляется в чате заявки;
* ответ оператора приходит клиенту;
* подтверждение оплаты из Telegram обрабатывается корректно.

## Рекомендации

Для стабильной и безопасной работы Telegram-подключений:

* используйте отдельный бот для каждого назначения;
* не используйте Security-бот для обычных уведомлений;
* не публикуйте Telegram-токены;
* после утечки токена немедленно замените его;
* после замены токена повторно выполните поиск получателя и проверку;
* не выдавайте Security-права сотрудникам, которым они не требуются;
* не включайте одинаковые события в нескольких подключениях без необходимости;
* для production продолжения обмена используйте **«Защищённый webhook»**;
* не заменяйте бот продолжения обмена во время активных заявок без необходимости;
* после важных изменений выполняйте тестовую проверку;
* при проблемах с применением новых настроек проверяйте серверные процессы и очереди.

Актуальная система iEXExchanger 11.4 объединяет обычные Telegram-уведомления, Security-коды и продолжение обмена в одном реестре подключений, но каждое назначение работает независимо и требует собственной настройки.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.iexexchanger.com/guide/uvedomleniya/uvedomlenie-v-telegram.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
