Настройка ngrok для отладки telegram-bota

16 Февраля 2018

При создании ботов для telegram основная проблема - это, разумеется не сам API мессенджера( с этим как раз все в порядке), а тот факт, что при отладке бота, все-таки необходим внешний адрес. Если же речь идет о разработке на локальной машине, то перед деплоем нам, разумеется, нужно проверить работоспособность системы. В этом случае на помощь приходит ngrok

Переходим по ссылке, скачиваем exe файл, запускаем его. Дальше для создания http-туннеля необходимо, убедиться в том, что ваш openserver уже запущен, и ввести следующую команду:
 

ngrok http 80 --host-header=site.local

после этого, если все прошло нормально, вы увидите примерное следующее:
 

Работа ngrok

Из скриншота виден адрес, по которому теперь будет доступен ваш сайт на локальном хосте. Для удобства может перейти по адресу http://127.0.0.1:4040 и увидеть отображаемые запросы( что весьма удобно, к примеру в случае возникновения ошибок). 

Теперь переходим ко второму этапу. Нужно уведомить telegram о том, что наш бот будет использовать вебхуки(webhook). Для этого формируем запрос, где укажем ссылку, через которую будет организовано взаимодействие бота и вашего API.

https://api.telegram.org/bot{BOT_KEY}/setWebhook?url={NGROK_URL}
// или так
https://api.telegram.org/bot{BOT_KEY}/setWebhook?url=https://2673331a.ngrok.io/api-telegram/some-token

Не забудьте, что telegram требует ипользование защищенного протокола, поэтому предлагаю в ссылке использовать токен, дабы никто и недобросовестных пользователей не терзал лишний раз ваш API.

На сегодня все, удачи вашим ботам.) 

0
Комментарии

комментариев еще нету

Для того, чтобы выразить экспертное мнение, нужно авторизироваться