1С:Сервер взаимодействия. Подключение Telegram.

Когда вы поставили сервер взаимодействия и он заработал, тогда можно переходить на подключение внешний интеграций. Пока меня интересует только Telegram. По этому опишу по «горячим следам» как это было.

Что то взято из официального источника: https://its.1c.ru/db/cs20doc#bookmark:cs:TI000000042

Пост натолкнул на мысли:
https://forum.infostart.ru/forum15/topic249060/

С нюансами описание процесса ниже.

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

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

Мне показалось удобнее использовать прокси сервер. Так же использовался белый IP и приобретенное доменное имя. Не забываем получить на доменное имя сертификат т.к. они работают на 443 порту.

Порты, которые поддерживает Telegram это: 80, 43, 443, 8443. На других портах работать не будет. (а у меня не стал работать на 80 порту. Использовал 443. Так же если не будет получен SSL сертификат, Telegram не будет посылать хуки).

Схема такая Telegram стучится на ваше доменное имя, в котором уже прописан ваш белый внешний IP. Белый IP транслируется proxy на IP внутренней сети. Возможно указать дополнительно нужный порт внутри сети.

$ring cs --instance <cs_instance> integration set-params --public-url https://<ваше доменное имя>
$ring cs --instance <cs_instance> integration set-params --port <внутренний порт>

<cs_instance> ‑ имя экземпляра сервера взаимодействия, к которому будет подключена внешняя система.

<ваше доменное имя> — URL

<внутренний порт> — порт, который будет использован во время переадресации запроса

БОТ

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

https://api.telegram.org/bot<Токен>/getWebhookInfo

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

https://api.telegram.org/bot<Токен>/setWebhook

БАЗА

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

Добавить комментарий