Страница 35 из 193
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 12:58 pm
Eraser
Amarok писал(а):И так не робит:
Код: Выделить всё
include('modules/telegram/telegram.class.php');
$telegram_module = new telegram();
$telegram_module->execCommand(106610876, "weather");
в логе пишет, что нашел команду?
Код: Выделить всё
execCommand => Execute user`s code command
execCommand => Find command
если нет, то надо проверять разрешения для пользователя 106610876
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:01 pm
Eraser
Fantom писал(а):можно как то получить не полный путь загруженного файла а только имя? хочу сделать что то типо такого
Код: Выделить всё
say($user[NAME]." загрузил новый файл");
say("Скачать его можно по ссылке https://server/downloads/telegram/".$chat_id."/".$file_name);
return "";
и еще по поводу webhook, сервер доступен из вне по https, сертификат от StartSSl но webhook включить не могу, пишет Bad Request: can't parse URL. Че ему надо? Пробовал урл по разному писать и все равно ошибка

надо включить webhook, указать ваш адрес https://адрес,
нажать "Обновить", и после этого "Set Webhook"
для работы через webhook необходимо чтобы страница https://адрес/webhook_telegram.php была доступна извне без пароля
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:07 pm
skysilver
Webhook классная тема, но выставлять сервер наружу только ради этого идея, так скажем, не очень.
Есть ли какой-то вариант, например, перенести https://ваш_сервер/webhook_telegram.php на другой порт, чтобы на роутере разрешить проброс порта исключительно для бота?!
Основная веб-морда MjD при этом останется доступной только в локальной сети. Такой принцип реализован в IOBroker.
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:12 pm
Fantom
Eraser писал(а):
надо включить webhook, указать ваш адрес https://адрес, нажать "Обновить", и после этого "Set Webhook"
для работы через webhook необходимо чтобы страница https://адрес/webhook_telegram.php была доступна извне без пароля
Вроде включил но теперь пишет:
Last error: SSL error {336134278, error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed}
Может путь к сертификату не правильно написал, какого формата путь должен быть? у меня щас так /etc/ssl
и что по поводу имени загруженного файла? есть оно где то в переменных?
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:26 pm
Eraser
Fantom писал(а):
Вроде включил но теперь пишет:
Last error: SSL error {336134278, error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed}
Может путь к сертификату не правильно написал, какого формата путь должен быть? у меня щас так /etc/ssl
и что по поводу имени загруженного файла? есть оно где то в переменных?
нужно в "Path to certificate" указать полный путь на диске до файла сертификата, нажать "Обновить", и после этого снова "Set webhook"
у себя я не проверял работу с самоподписанными сертификатами, поэтому за работоспособность не ручаюсь
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:33 pm
Fantom
у меня от startssl сертификат. прописал полный путь до него /etc/ssl/cert.crt и все равно пишет
Last error date: 11 Nov 2016 13:30:34
Last error: SSL error {336134278, error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed}
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:39 pm
Eraser
skysilver писал(а):Webhook классная тема, но выставлять сервер наружу только ради этого идея, так скажем, не очень.
Есть ли какой-то вариант, например, перенести https://ваш_сервер/webhook_telegram.php на другой порт, чтобы на роутере разрешить проброс порта исключительно для бота?!
Основная веб-морда MjD при этом останется доступной только в локальной сети. Такой принцип реализован в IOBroker.
Вот здесь
https://core.telegram.org/bots/api/#setwebhook написано, что порты могут быть только 443, 80, 88, 8443.
Незнаю, получится ли так настроить, чтобы к MJD не было доступа совсем, не силен в данном вопросе.
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:46 pm
skysilver
Тут скорее не MJD надо настраивать, а Апач. Допустим поднять еще один виртуальный хост, который будет слушать на порту 88. Соответственно только этот порт наружу и вытащить.
Вопрос в том, сможет ли приложение телеграмма в MJD работать, когда файл webhook_telegram.php лежит в директории другого виртуального сервера Апач?
Понимаю, что в текущем виде, скорее всего, нет. Но думаю, есть способы этого добиться.
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:56 pm
Eraser
Fantom писал(а):у меня от startssl сертификат. прописал полный путь до него /etc/ssl/cert.crt и все равно пишет
Last error date: 11 Nov 2016 13:30:34
Last error: SSL error {336134278, error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed}
Mожет сертификат не нравится
Вот здесь
https://core.telegram.org/bots/self-signed описывается как создавать сертификат, и еще там указано требование к сертификату
PEM encoded (ASCII BASE64)
Re: Модуль "Telegram"
Добавлено: Пт ноя 11, 2016 1:58 pm
Dark_Veter
skysilver писал(а):
Тут скорее не MJD надо настраивать, а Апач. Допустим поднять еще один виртуальный хост, который будет слушать на порту 88. Соответственно только этот порт наружу и вытащить.
Вопрос в том, сможет ли приложение телеграмма в MJD работать, когда файл webhook_telegram.php лежит в директории другого виртуального сервера Апач?
Понимаю, что в текущем виде, скорее всего, нет. Но думаю, есть способы этого добиться.
Можно наверное через nginx попробовать, повесить на отдельном порту и proxy_pass сделать.