pepsi-man
@pepsi-man
Тыж программист!

Как запустить Telegram бота HellowBot?

Мои действия:
1. Установил сертификат домена LetsEncrypt;
2. Получил token у @FatherBot'а;
3. Скачал бота из примера API Telegram (самый простой HellowBot);
4. Установил webhook (запуск бота из консоли php);
5. Написал боту в личку /start.

Результат:
Ожидалось, что бот ответит хоть что-нибудь, а в результате пусто: никаких сообщений в ответ, ни каких обращений к боту (в логах пусто).

Собственно вопрос: Что я делаю не так? Может есть какие-то неявные ограничения на домен\сертификат\хостинг?
  • Вопрос задан
  • 2822 просмотра
Решения вопроса 1
pepsi-man
@pepsi-man Автор вопроса
Тыж программист!
Ура! Вопрос решен!
Проблема была в неправильной установке сертификата.
Помогла статья habrahabr.ru/post/270273 и онлайн сервис https://www.ssllabs.com/ssltest/index.html

Вкратце, в файле /etc/httpd/conf.d/ssl.conf были исправлены строки на:
SSLProtocol TLSv1.2
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!SEED:!IDEA:!RC4
SSLCertificateFile /etc/letsencrypt/live/mydomain.tk/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mydomain.tk/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/mydomain.tk/chain.pem
SSLCACertificateFile /etc/letsencrypt/live/mydomain.tk/fullchain.pem

После чего ssllabs.com показал рейтинг A- и бот тут же заработал!

Жаль, что Telegram ни как не сообщает об этой ошибке и в руководстве я этого не нашел. Хотя могли бы через своего бота @FatherBot сообщать владельцу о проблемах...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
Я не знаю что за пример Вы скачивали и откуда, работает оно следующим образом.
1) webhook: когда кто то - что то пишет боту, на указанный через FatherBot url приходит запрос в теле которого содержатся id пользователей и их сообщения
2) после этого Ваш скрипт должен отправить может отправлять контент юзеру используя стандартное http апи.

Проблема соответственно может быть только в 2х местах, дебажьте)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы