# Telegram

[Telegram](http://telegram.org) — мессенджер, имеющий веб версию, десктоп версию, а также версию для мобильных устройств. Имеет встроенный функционал чат-ботов.

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

### 1. Создание бота на стороне Telegram

В первую очередь нужно произвести конфигурацию на стороне Telegram.

1. Откройте Telegram и авторизуйтесь.
2. Найдите в поиске бота “BotFather”.
3. ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-q6F1WpdXAP/60539a011c5af4ffad126b869c271825e528bf0221715fb8e51cae8b2ae31b7984fdf13e5fda83e3b1d5ca5d8477ebd93b02a6faed37458ca7f96b58a7bafaaaa68fda6ffa59624c237ebbac77206e02ff7a6ee1d7fa8d620332478cfe3cc9f2057881b6).
4. Создайте бота в Telegram:
5. 1. Отправьте боту BotFather команду /newbot.
   2. В ответ на сообщение бота введите желаемое имя вашего бота.
   3. ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-kFtzyl9SZ2/f84ebc5a62c8cf6a327e023bd68dd9aa14b550297eb6d2a5d0c99d45e6e5b7de70461f536f2b378273714d1b5c768b2e08447a9241dc15ddb98b5fbf8798d2265e275d4cfd5368c652c62d5651804ad14cca8bb513e66965b775429316a574c9931cc574)
   4. Отправьте желаемый идентификатор бота. Он должен быть уникальным среди всех существующих ботов в Telegram и заканчиваться на “bot”. Например, My\_new\_telegram\_bot\_username\_bot.
   5. ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-QAPAueGFU0/8ca0b1196c59ef0631821cdcfebb6247b59c58af5d7169f1bd73062f31b7ca16b16d91df0bb8cf0dd94f6c75884ba594ea59f418fa0c43eab58413224c12cd2a6c524b3c00fed5aa371d3709a3e51526f97cabf006a346040a77077045fd76ee0d549e21)
   6. Если отправленный идентификатор бота соответствует требованиям, вы получите сообщение об успешном создании бота. В сообщении будет указана ссылка на вашего бота в Telegram и токен доступа к боту.
   7. ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-Zba33q6BA5/326170bb53354dbfbbb2ddd32f1039249ef953df361d15c6c7cc8dc6189fb8b44875c5fbec5ee1fd2c778f9e1f79cc620fd678d2fcf6cb5e25e07d4cbdc7d7b6cc460f4f5211b76295bb3d184ab6f357f73258376512a92454fc52add9b0119bba3480ca)
   8. Скопируйте в удобное место токен доступа.
   9. ![tempsnip.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-u5v0t7Ow6l/a77372c4ad7fe7591521954258bee5725f967a749a7cf8ce45e89a05873eabd52d1140903771363f22a8bea524fe150531221bf37904f112dd487807965eccf0bf2b6a298318ba5c12b37d9d23919f094c1caef2b379e12b7cd2784bbe83e9c4bebd0cd2)
   10. Настроить аватар, описание, и прочие параметры бота вы можете через бота BotFather.

\
На этом конфигурация Бота в Telegram завершена.

### 2. Конфигурация канала агента в Платформе

Агенту необходимо создать и настроить Канал Проекта с коннектором “Telegram”.

1. Кликните по кнопке настроек Агента.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-m_bL4GvN1_/de0e6c51b47058d8e7854370e44e3e29e8d1195855e34484c55e0ba55e6f4cbc2f103ac4ebcc2b78bf606d6b02118303275d07760b64f89e5ea954cd86466379ab9850814435bbe8d5ab7d3e80e7ac68c8a471b3ba0022e97fb3209a771f11a86b6c817e)
2. Нажмите кнопку Add channel.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-KJ7zJqauLN/e76804ae1c32c84507914bcbac89b59e5fa7160e857084643655c65f3192dbec4709a2cd8abae87edc6a858acbd80d17c3296d23c47a2c39eccf56433201a9779ccf4ea2580c347508e5f68b0ee94654585fa349ceadd2e6587a4bdebd6c5d9715835322)
3. Откроется панель выбора Конечный канал.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-OaJek0tQXe/ea78cd0e09c4f4e41f667c4bbf21133a41fd0585cd3299069657b62307d1bb587ab3d0e52ec6914a9798b6d3913106977fa56c5f1be72ed0ec513f353a9580470a582474b635249d26a3b4b8c59492bf63662a9c2a10e317d552aed52e5b7128615c7841)
4. Выберите Telegram.
5. Откроется панель создания Канал Проекта.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-9yvZxF7CZt/ce54bf93a323f73d91296f8dcc1e031bd60289ee17e08f67cf80a22c0e636d8ff10929f4266a5a811a753574981e8e2e782221be100566485fec8bbfad3b203c6994795f6225c9cf27b97a67c49d39f09738874e0ac88a61357ec4cb11d422b8a9fd3278)
6. По необходимости пропишите заголовок для данного Канал Проекта в поле названия с плейсхолдером New channel.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-v035n69dsV/fc7b3bd75d8a2bb8e9534a73fd72fbc98fa421d42cdb5a54048303a405989bb6d2d22e9ad64cbffd3aa9b6eab97636fa098b8e65a6eb002ed1d3419d0457bfc98dc72f1937569ce44515a7dfc565ddbdb148643ebbe34f542a6aed8fd92b46961dc3793e)
7. Вставьте скопированный ранее токен в полеTelegram bot token.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-FZifAQLg7U/d0d8cee3955a689e47e7d106fa2840ff7f100020b45087729b7d189684eb377bc4d76ef7032eb62f6f620c6b4b6f431b72d7be683224db539fcb3c80c117a98563bd471f0704ce300e5e6673758326aaec4af3cc2f1142cad59af6c89bd552c6972bcb59)
8. По необходимости переключите тумблер Receive service messages, чтобы получать Сервисные сообщения канала.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-_o9HpC8uZP/01e77cce8b84dc0e99e01bc7b447c4e8f284a08d1246b248ac1143884e3775fd35d958653bdd46f314280d8d69d6ba208f970b86c73004a7a01be38fecab4f5693a3b0219e9491c70caad1ac6d73b03015651e0e37ea7216c9c9249ff5ca8c8cd4c7f504)
9. Для сохранения Канал Проекта без его активации, нажмите кнопку CREATE.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-5qNYmviuKT/e34a832326b1dada0664c734d9e46dc5c3bea4e59bc80fcf75ee4b1e4ce25a910e5eb82adc47dfd4b00938efbae32a14eceb28e009f88c26442f17a44fee7ab48943d646480b08a05d2efee8abbd0e34b9356033a0cebf0557dc400f10283f8732fe908f)
10. Для сохранения и активации Канал Проекта, нажмите кнопку CREATE & ACTIVATE.\
    ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-HCF6_5K1Zf/b75ae0855420c8bbc8cc3f1ffe7ed5399dbc641cb7cf656b4ec77c5b9aff1b9e8241c7ce9c653c9c5e78ac0c9ac2ce637c04ddbe111c339be65ef4603803b4ac67715d7995aa3a9a40f513a7a7d540fd2476ec410d41ae2293aea6360ec04c435ee2208f)
11. 1. Канал Проекта будет сохранен и активирован, если:
    2. 1. Агент обучен;
       2. токен в поле Telegram bot token уникален (нет ли активных Канал Проекта того же типа с тем же значением в поле);
       3. будет доступен адрес Канал Проекта;
       4. удастся зарегистрировать вебхук канала.
    3. Канал Проекта будет сохранен, но не активирован, если одно или больше условий не будут выполнены.
12. Для отмены создания Канал Проекта нажмите кнопку CANCEL.\
    ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-Y_mHS23rKn/eb907f19099ba5785c2efe73e64b1fc092bc8cc98e320fc11801e6fcbf3bb2ccf2e51900f28080b3ce8cfb7f12d8b7b3d5fef78df226c542fe48b1562f4f957da3ab53c8be4d5da18a4cb32bca9e4d6238d3ba8c802e63f4a6af80fd932a24a2a657dcfd)

## Редактирование и удаление Канала Агента

Для редактирования Канал Проекта, необходимо кликнуть по его иконке на карточке Агента.\
![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-4VWnkabb3_/1eef308ec7d70be8159bb2fd42fc70f8942930de56b266f12bf2e5c2ada83788f255974d316d1f2795bbb168e649d027874dc1d2693301f4349570720cc38f495d8a2cd8b140c8e486c7bf1847c7e27314974c84f73f2012d57b21e71e209ab5145a2a65)

1. Чтобы отредактировать значение в любом поле, кликните по полю и впишите новое значение.
2. Чтобы применить изменения к активированному Канал Проекта, нажмите кнопку APPLY.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-tJZV017Nsl/49040188edabe1fcac4a9df380756d9197221462d5d6135ef5fd00b45b26fe9a01bbf2089030cf3de19c9e181f97b77595241f76b4887872399d3807564a99c333aaabc48e273a46f4f5850aad3c05bc9bfa7edcabe923dbbe5869c2c4f510e21846270b)
3. 1. Изменения будут применены, если:
   2. 1. Агент обучен;
      2. токен в поле Telegram bot token уникален (нет ли активных Канал Проекта того же типа с тем же значением в поле);
      3. будет доступен адрес Канал Проекта;
      4. удастся зарегистрировать вебхук канала.
   3. Изменения не будут применены, если одно или больше условий не будут выполнены.
4. Чтобы деактивировать  Канал Проекта, нажмите кнопку DEACTIVATE.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-uiGAALI5ue/e76edc85360ccc1a0d6a0ab8277f14ff5dcdf5dc4125e9cd5d91cacddeef9a8ffe5cc53500d79dac087fa749e0f6fbb6a722cce1fcc781fad77c0ccf328c70e0ebea7c6b17a5e8c73d87c2646812668a046c2a9e6fbe269af9f56683591329b83d15d87c)
5. Чтобы применить изменения к деактивированному Канал Проекта, нажмите кнопку SAVE.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-p-Pkx1zpFM/b3d4dd73ed9724df77a3c85faf2a66b21fdbac0e3f9c0b4f0c31c76abcff8716297f408388eb14ae871d3ef2b13614ce52d3291a122cf64fec23a6493c44195f66d85b58db917a1245d395b0b7d4ebb27ac10a3e44d8711bdabc91e2c0ced4ae87362455)
6. Чтобы применить изменения и активировать Канал Проекта, нажмите кнопку SAVE & ACTIVATE.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-eYJE2IPpfK/20607fda9b62d31a04d91a33a88d3ba88372e3ec7ffd51287afc94b85695682349c85eccc15a257ecd549003ab7f987937dca8993fa152ea9c4f376d5e178d8378234861a1c9bace317c4a05eb3c1b6a39a3937fe222cf441ee77ced4c626edb7d698fa7)
7. 1. Изменения будут применены и Канал Проекта будет активирован, если:
   2. 1. Агент обучен;
      2. токен в поле Telegram bot token уникален (нет ли активных Канал Проекта того же типа с тем же значением в поле);
      3. будет доступен адрес Канал Проекта;
      4. удастся зарегистрировать вебхук канала.
   3. Изменения будут применены, но Канал Проекта не будет активирован, если одно или больше условий не будут выполнены.
8. Чтобы отменить внесение изменений, нажмите кнопку CANCEL.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-syxh_mEGmV/e5c1a29e97748e11ca804c9eafde7304562b7f9eb0cececd9a4f892e6e6d7deea4f34922b6994828762b15d7dc03ae3911e43ecb227a7f6853da4245498acd0acb2f3bc900a3ba2ed9f687faa5b29e7f365ab8c8d3d51cedc40a5deb087c4de42741c7af)
9. Чтобы удалить Канал Проекта, нажмите кнопку DELETE.\
   ![image.png](https://codahosted.io/docs/_pM7PjYCmj/blobs/bl-19Ve2TAiHB/cda502d493dc38b2142b70adfa6229b24b1b30433e3968f2f74fe23b1a9bf12f153a9b167bd0c695b2a3484cbfeeb5bfeedfcc1d3e2a61f2dce07432a9ba07b42ba07ea24bbfb4637e571c061dedeada752e90e1f8318c924c0338358e42940ce652b5f4)

## Общение

### Общение в групповых чатах Telegram

1. Бот может быть добавлен в групповой чат Telegram и обрабатывать сообщения и события этого чата.
2. Чтобы Бот обрабатывал все сообщения, отправляемые в группу, необходимо обеспечить ему доступ ко всем сообщениям, выключив настройку Group Privacy:
3. 1. Перейти в BotFather;
   2. Написать команду /mybots;
   3. Выбрать нужного Бота;
   4. Перейти в Bot Settings → Group Privacy;
   5. Выбрать Turn off.
4. При включенной настройке Group Privacy, чтобы отправить сообщение, которое будет обработано Агентом и записано в client\_message, нужно либо ответить на сообщение Бота (reply), либо написать свое сообщение после символа / .
5. После каждого обработанного сообщения, в Канальные переменные будут установлены данные участника группы, отправившего сообщение.
6. Также, Агент обрабатывает события о добавлении в групповой чат новых пользователей. При этом в переменную client\_message будет записана строка вида “telegram\_chat\_new\_member: telegram\_user\_id|telegram\_username|telegram\_first\_name|telegram\_last\_name” .
7. При обновлении группы до супергруппы генерируется новый идентификатор группы и Агент не может отправить сообщение.

| Сообщение                                           | Конечный канал | Client message                                                                         | Описание                                                                                                                                 |
| --------------------------------------------------- | -------------- | -------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| Пользователь группы телеграм присоединился в группу | Telegram       | Строка: telegram\_chat\_new\_member: {user.id}\|{user.first\_name}\|{user.last\_name}  | При присоединении пользователя к группе Telegram в Контекстная переменная client\_message передается сообщение в соответствии с шаблоном |
| Пользователь группы телеграм покинул в группу       | Telegram       | Строка: telegram\_member\_left\_chat: {user.id}\|{user.first\_name}\|{user.last\_name} | При выходе пользователя из группы Telegram в Контекстная переменная client\_message передается сообщение в соответствии с шаблоном       |

О том, что такое сервисные сообщения и как активировать их передачу из Конечный канал: Принцип вывода Агента в различные каналы

| Переменная                  | Конечный канал | Переменная в запросе из канала | Примечания                                                                                                         |
| --------------------------- | -------------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| channel\_visitor\_id        | Telegram       | <p>id<br></p>                  | При ответе на сообщение бота в групповом чате, в переменную записывается id ответившего юзера                      |
| channel\_conversation\_id   | Telegram       | <p>id<br></p>                  |                                                                                                                    |
| channel\_visitor\_firstname | Telegram       | first\_name                    |                                                                                                                    |
| channel\_visitor\_lastname  | Telegram       | last\_name                     |                                                                                                                    |
| channel\_visitor\_phone     | Telegram       |                                |                                                                                                                    |
| channel\_visitor\_email     | Telegram       |                                |                                                                                                                    |
| channel\_visitor\_account   | Telegram       | username                       |                                                                                                                    |
| channel\_visitor\_auth      | Telegram       |                                |                                                                                                                    |
| channel\_visitor\_source    | Telegram       |                                |                                                                                                                    |
| channel\_message\_id        | Telegram       |                                |                                                                                                                    |
| channel\_reply\_to          | Telegram       | reply\_to\_message.text        | Если Сообщение собеседника не является ответом (Reply) на сообщение Бота в Telegram, то переменная остается пустой |

| Функционал общения                                                             | Конечный канал | Доступность в канале | Примечания                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ------------------------------------------------------------------------------ | -------------- | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| channel\_chat\_id                                                              | Telegram       | Да                   | Формат: channel\_visitor\_id\|telegram                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Сообщения дойдут до собеседника, если агент напишет первый в существующем чате | Telegram       | Да                   |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Перевод на оператора                                                           | Telegram       | Нет                  | В мессенджере нет такого функционала                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Кнопки                                                                         | Telegram       | Да                   |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Передача файлов в виде ссылок от Агента (Attachment)                           | Telegram       | Да                   | Файл будет передан ссылкой, если он не удовлетворяет требованиям Telegram к файлам данного типа.                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Передача файлов в виде файлов от Агента (Attachment)                           | Telegram       | Да                   | [Telegram может принимать и предавать собеседникам вложения типа “file” только форматов gif, pdf и zip. Возможна поддержка других форматов, но Telegram её не гарантирует.](https://core.telegram.org/bots/api#sending-files)При попытке передать изображение в слоте Attachment, если указана ссылка на файл из Telegram, то файл придет в виде ссылки, а не изображения                                                                                                                                             |
| Получение файла от Собеседника в сценарий                                      | Telegram       | Да                   | В client\_message записывается строка вида file:Тип файла\|ID файла\|Ссылка на файл, например, file:photo\|HgYjJJGYuxkBAAMNYK1eZR1fbZv-KQ09Omcsz9A8AjwAAsSzMRtug3FJ079jiwXcvo-egdKiLgADAQADAgADeAADE7gCAAEfBA\|<https://api.telegram.org/file/bot1815753186:AAH\\_LtRWy\\_FSDAGFgstlTaQdkHHIFHV3xGI/photos/file\\_0.jpg> . При этом, файл будет доступен по ссылке в течение 24 часов. Для получения файла в дальнейшем потребуется обновить ссылку на файл, используя [Telegram API](https://core.telegram.org/api). |
| Получение геолокации от собеседника в сценарии                                 | Telegram       | Да                   | В client\_message записывается строка вида location:Широта\|Долгота, например, location:83.000000\|54.000000                                                                                                                                                                                                                                                                                                                                                                                                          |
| Доставка сообщений более 1000 символов от Агента до Собеседника                | Telegram       | Да                   | Допускаются сообщения до 4096 символов                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Использование маркдауна                                                        | Telegram       | Да                   | Работает в соответствии с [документацией](https://core.telegram.org/bots/api#markdownv2-style)                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Рассылки с помощью Notification                                                | Telegram       | Нет                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

\ <br>


---

# 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://chatme-ai-4.gitbook.io/docs/kak-vyvesti-agenta-v-konechnye-kanaly/vyvod-agenta-v-messendzhery/telegram.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.
