Перейти к содержанию

Запуск proxybot в качестве serverless функции

Вот пример того, как запустить proxybot в Google Cloud Functions с помощью команды gcloud:

TELEGRAM_ID=1234123123
DB_URI="mongodb+srv://***:**********@cluster0._______.mongodb.net/"
REGION=europe-west1
gcloud functions deploy --gen2 --region=$REGION --runtime=python310 \
    --trigger-http --entry-point=entrypoint --allow-unauthenticated \
    --set-env-vars=TELEGRAM_ID=$TELEGRAM_ID,DB_URI=$DB_URI \
    --source=proxybot/ proxybot

Эта команда, запущенная из корневой папки репозитория, загрузит содержимое подпапки proxybot как функцию с именем proxybot.

Регистрация webhook

Для начала получения сообщений от Telegram необходимо вызвать Telegram Bot API метод setWebhook.

CLOUD_URL=https://***********.cloudfunctions.net/proxybot
TOKEN=123456789:NeotobrAfMymceuwackTeunLiudsudjocoi
curl -F "url=${CLOUD_URL}/${TOKEN}" https://api.telegram.org/bot${TOKEN}/setWebhook

Замените значения переменных TELEGRAM_ID, DB_URI, REGION, CLOUD_URL, TOKEN на ваши данные.