Telegram модуль - работа через прокси-сервер

Пишите ваши предложения здесь.
Ответить
DorlasUfa
Сообщения: 9
Зарегистрирован: 09 июн 2017, 13:36
Имя: Egor Vershinin
Откуда: UFA
Организация: Synergy Soft
Контактная информация:

Telegram модуль - работа через прокси-сервер

Сообщение DorlasUfa »

Доброго дня!

С мая 2018 года в других системах, где используется связка с Telegram, использую для работы уведомлений через бота проксированный канал (Socks либо HTTP прокси-сервера, установленные за бугром).

Можно запланировать добавление возможности работы модуля уведомления Telegram через прокси-сервера (HTTP и Socks).

Если это поможет, для работы я использую Curl и следующую конструкцию:

Вариант с Socks5-прокси:

Код: Выделить всё

/usr/local/bin/curl --socks5 172.21.12.1:4444 --silent --output /dev/null \
    --data-urlencode "chat_id=${TELEGRAM_CHAT_ID}" \
    --data-urlencode "text=${template}" \
    --data-urlencode "parse_mode=HTML" \
    --data-urlencode "disable_web_page_preview=true" \
    "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage"
Вариант с классическим HTTP-прокси:

Код: Выделить всё

/usr/local/bin/curl --proxy http://10.2.214.7:9988 --silent --output /dev/null \
    --data-urlencode "chat_id=${TELEGRAM_CHAT_ID}" \
    --data-urlencode "text=${template}" \
    --data-urlencode "parse_mode=HTML" \
    --data-urlencode "disable_web_page_preview=true" \
    "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage"
Соответственно если получится функционал расширить, должен быть выбор типа прокси, указание IP и порта.

Заранее большое спасибо!!!
mnhtnn
Спонсор
Спонсор
Сообщения: 79
Зарегистрирован: 15 июн 2017, 08:36
Имя: Дмитрий Кирсанов
Откуда: Уфа

Re: Telegram модуль - работа через прокси-сервер

Сообщение mnhtnn »

Очень хорошее предложение. Ждем ответа:)
DorlasUfa
Сообщения: 9
Зарегистрирован: 09 июн 2017, 13:36
Имя: Egor Vershinin
Откуда: UFA
Организация: Synergy Soft
Контактная информация:

Re: Telegram модуль - работа через прокси-сервер

Сообщение DorlasUfa »

В PHP не силен, но посмотрев содержимое модуля telegram.php понял, что он как раз и использует Curl.

По идее, добавить параметры указания Proxy серверов (HTTP/SOCKS) нужно вот сюда:

Код: Выделить всё

       curl_setopt($ch, CURLOPT_HEADER, false);
                        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
                        curl_setopt($ch, CURLOPT_POST, 1);
                        curl_setopt($ch, CURLOPT_POSTFIELDS, ($params));
                        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
                        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
Ну и поля в форму для ввода данных.

К сожалению, сам не осилю быстро - программер из меня аховый (((
DorlasUfa
Сообщения: 9
Зарегистрирован: 09 июн 2017, 13:36
Имя: Egor Vershinin
Откуда: UFA
Организация: Synergy Soft
Контактная информация:

Re: Telegram модуль - работа через прокси-сервер

Сообщение DorlasUfa »

Попробовал погуглить и отредактировать руками данный PHP-файл.

Получилось ))))

Вот что добавил:

Код: Выделить всё

curl_setopt($ch, CURLOPT_PROXYPORT, '9988');
curl_setopt($ch, CURLOPT_PROXYTYPE, 'HTTP');
curl_setopt($ch, CURLOPT_PROXY, '10.2.214.7');
С Sock5 по идее аналогично должно быть.
Ответить