Настройка 1C Сервер взаимодействия и телеграмм бота на локальном сервере Linux в подсети.

1. UserObychnyi 12.08.21 11:59 Сейчас в теме
Здравствуйте помогите пожалуйста связать 1С сервер взаимодействия с ботом Телеграмм.
Есть 1С СВ стоящий на виртуальной машине (Linux server) ip 172.20.10.10 он настроен и сейчас работает благополучно с 1С. Сама сетка в которой 1С и СВ находится в подсети 172.20. С основной сеткой 10.0.0.0 идет соединение через Mikrotik. Также у меня есть выделенный внешний ip оператора c портом 80.10.10.10:77777 (для проброса/соединения чего-либо с инетом). Прошу вас помочь мне с настройкой (подключить СВ к Телеграмм боту). Знаю, что в настройке СВ сервера есть параметр integration
«integrationendpoint на 0.0.0.0:8443»
но как его правильно настроить точно не знаю. Заранее спасибо.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. serg33rus 32 12.08.21 13:15 Сейчас в теме
Смысл очень простой. Телега работает только с портами 443 и 8443, если мне память не изменяет. И исключительно по https, т.е. нужен не просто IP, а домен с сертификатом.
А потом на шлюзе обращения по https на внешний IP надо пробрасывать на внутренний IP СВ, причем уже просто http. В nginx решается элементарно.
В интеграции указываешь внешний домен и порт.
У меня такая связка работает без проблем.
Т.е. СВ внутри, а для телеги поднят домен третьего уровня с SSL. Запросы на него транслируются внутрь.
9. Tripi 27.09.21 13:08 Сейчас в теме
(2) У нас на внешке по DNS через https прилетает запрос, который nginx перебрасывает по правилу proxy_pass http://10.0.0.1:59800/; на микротик, тот в свою очередь направляет его на СВ, но ничего не происходит, ошибка Java не вываливается, телега не интегрируется. Где какие логи можно посмотреть или что ещё проверить?
3. serg33rus 32 12.08.21 13:40 Сейчас в теме
Внутри порт интеграции тоже 8443 по умолчанию. Но никаких SSL не надо. Обычный http, если иное явно не указать. Но если хочется и внутри ssl, то это надо сертификаты в яву прислюнявивать. Тот еще геморрой.
4. uno-c 265 12.08.21 14:39 Сейчас в теме
(3) https://core.telegram.org/bots/api#setwebhook
Whenever there is an update for the bot, we will send an HTTPS POST request to the specified url, containing a JSON-serialized Update
Notes
...
2. To use a self-signed certificate, you need to upload your public key certificate using certificate parameter.
3. Ports currently supported for Webhooks: 443, 80, 88, 8443.

Только HTTPS, без вариантов. Т.е. чтобы от серверов телеги приходили обновления - нужен SSL сертификат.
Или Вы что-то другое подразумевали под "внутри" ?
5. serg33rus 32 12.08.21 17:21 Сейчас в теме
(4) внутри я подразумеваю СВ с внутренним IP. Шлюз транслирует https запросы на порт интеграции в http запросы на локальный IP СВ.
Т.е. для телеги я выгляжу как внешний домен с SSL. А уже на своем шлюзе я все это пересылаю в локалку на СВ.
6. UserObychnyi 18.08.21 13:29 Сейчас в теме
(5) Здравствуйте, спасибо всем что откликнулись,
можете привести пример работающего конфига просто не очень понял.

Уточню что сетка где СВ на 3 уровне, сетка работает по принципу
https://cv.un.ru (на него приходит все) далее идет проброс на
http://10.0.0.1:56566 дальше идет СВ (172.20.0.1:8443), проброс прямой на mikrotik

Если не сложно можете скинуть конфиг чтобы по примеру посмотреть как куда что кидается и соединяется. Заранее спасибо.
7. UserObychnyi 24.09.21 09:27 Сейчас в теме
Здравствуйте, эта тему "проблема" еще актуальна
8. Tripi 24.09.21 11:02 Сейчас в теме
Аналогичная проблема, тоже пытаемся разобраться и решить. Также будем признательны за подсказку.
10. user873172 01.06.22 12:34 Сейчас в теме
Коллеги, получилось у кого сертификат добавить? Чтобы бота запустить в телеграмм?
11. serg33rus 32 01.06.22 18:07 Сейчас в теме
(10) А куда хочется добавить сертификат? Бот телеги работает через webhook и исключительно через https.Т.е. это должен быть ВНЕШНИЙ адрес.
Если самому устанавливать бота, то через setwebhook можно передать и самоподписанный сертификат.
А вот в СВ этот как-то по другому реализовано.
Могу рассказать про работающий вариант. СВ внутри. Наружу не смотрит. На роутере через nginx запросы пробрасываются внутрь уже по http. На nginx есть домен с сертификатом. В integration.yml прописывается ВНЕШНИЙ адрес, типа public-url: https://int.что-то.ru. Таким образом телега стучится на внешний адрес по https, на внешке сертификат есть и все ОК. А СВ внутри получает от nginx транслируемые запросы. и все работает.
Если СВ смотрит наружу и на ней нет ssl-сертификата, то вроде бы можно воткнуть самоподписанный. Но это надо делать уже в яве, а не в СВ. Сам такого не делал, поэтому поручится, что сработает не могу.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот