Serverless telegram bot shows your ID in reply message (Yandex.Cloud Functions & API Gateway)
Беcсерверный бот для Telegram, который в ответном сообщении выводит ваш ID. Работает в яндекс.облаке
Yandex.Cloud -> https://console.cloud.yandex.ru/
- создайте бота и получите токен для него через @BotFather
- в разделе
Cloud Functions
создайте функцию (имя произвольное) - в качесвте среды ввыполнения выберите
nodejs12
- в редакторе кода создайте файл
index.js
- скопируйте содержимое
index.js
из github-репозитария в редактор кода на Yandex.Cloud - замените занчение константы
botToken
на токен полученный от BotFather в шаге №1 - укажите точку входа:
index.handler
- сохраните результат нажав кнопку
Создать версию
- сделайте активным пункт
Публичная функция
- скопируйте поле
Идентифиактор
, он потребуется на следующем шаге
- в разделе
API Gateway
создайте новый шлюз - используйте содержимое
specification.yaml
в качестве шаблона для поляСпецификация
- замените в тексте спецификации
<function_id>
на идентификатор своей функции, полученный в прошлом шаге - сохраните шлюз и перейдите в просмотр его детальной информации
- скопируйте значение поля
Служебный домен
, его мы будем использовать в качесвтве адреса для вебхука
Установите вебхук, чтобы Telegram знал куда отправлять запросы от бота.
- используйте
setWebHook.html
для установки вебхука или другой удобный вам способ
Подробное описание методов для установки хуков можно найти здесь -> https://core.telegram.org/bots/api#setwebhook на официальном сайте Telegram. Для формирования POST-запросов рекомендую использовать программу Postman