Skip to content

veenrokdalv/aiogram-telegram-bot-template

Repository files navigation

Aiogram telegram bot template

Обо мне

Шаблон для написания телеграмм ботов с помощью aiogram 3.x.

Зависимости

Троттлинг

Настройка

В config.settings.THROTTLES определите ключ с значением (кол-во сообщений)/(время)

Например 5/1s 5 сообщений в секунду

Например 1/1min 1 сообщение в минуту

После чего оберните handler в декоратор rate_limit и укажите ключ, определенный в config.settings.THROTTLES

В bot.middlewares.MessageThrottlingMiddleware._process_message_throttling вы можете определить поведение бота на флуд, например замутить пользователя в чате.

При исчерпании лимитов update не дойдет до handlers, а "прибьется на уровне middleware"

Использование

Оберните свой хендлер в декоратор rate_limit

Переменные окружения

TELEGRAM_BOT_TOKENS

Токены бота Telegram, разделенные запятыми

Примеры:

  • TELEGRAM_BOT_TOKENS=1:qwerty
  • TELEGRAM_BOT_TOKENS=1:qwerty,2:qwerty

Использование

Установка

Создайте файл .env и заполните его по примеру из файла .env.example. Так же вы можете просто пробросить эти переменные через переменные окружения.

poetry install && poetry shell
python main.py

Разворачивание при помощи Docker

Создайте файл .env и заполните его по примеру из файла .env.example. Так же вы можете просто пробросить эти переменные через переменные окружения.

docker build -t telegram-bot .
docker run telegram-bot

FAQ

About

Шаблон для разработки телеграм ботов на Aiogram

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published