/telegram-giveaway-bot

Telegram bot for creating and managing giveaways

Primary LanguagePython

GiveawayBot

Основной функционал:

  • Создание розыгрыша: бот может создавать розыгрыши с различными параметрами, такими как количество победителей, продолжительность розыгрыша, тип розыгрыша, текст для розыгрыша, добавление капчи и фото/видео.

    2023-05-21-183002.png

  • Участие в розыгрыше: пользователи могут участвовать в розыгрыше, отправляя сообщение с указанием ключевого слова в комментарии к посту с розыгрышем или нажимая на кнопку.

    2023-05-21-183546.png

    2023-05-21-183520.png

  • Выбор победителей: импрессивная анимация при подведении итогов, позволяющая проводить розыгрыши в прямом эфире и подтверждать их честность, чтобы участники были уверены.

    2023-05-21-183729.png

    2023-05-21-183833.png

  • Оповещение: оповещения для пользователей, предупреждающие об окончании конкурса, чтобы они могли поспешить принять участие.

  • Публикация результатов: в каждом посте с итогами конкурса имеется ссылка "проверить результаты", ведущая в бота, где можно узнать список победителей и другую полезную информацию о конкурсе.

    2023-05-21-183950.png

  • Проверка подлинности участников: розыгрыш с типом "по кнопке" имеет возможность включить капчу (защита от ботов) при создании розыгрыша.

  • Каналы для розыгрышей: после добавления каналов, они автоматически будут использоваться для всех розыгрышей. В случае розыгрыша "по комментариям" к каналу нужно будет добавить группу.

    2023-05-25-165444.png

    2023-05-25-165506.png

  • Редактирование: возможность редактирования даты завершения гива, чтобы гибко управлять его продолжительностью.

    2023-05-25-182535.png

  • Ошибки: в случае возникновения непредвиденных ошибок, бот автоматически отправит детали владельцам, которые указанные в конфиге.

    2023-05-25-194722.png

Установка

Для корректной работы требуется python версии 3.10 - 3.11

Config (path - config/py_config.py):

  OWNERS = [] # список ID
  bot_token = '' 
  database_url = '' # пример: postgres://postgres:jammer@localhost:5432/postgres
  timezone_info = pytz.timezone('Europe/Moscow')
  start_text = 'Главное меню: '
  text_for_participation_in_comments_giveaways = 'Участвую'

Установка зависимостей:

  pip install -r requirements.txt

Запуск:

  python app.py

Support

TG - https://t.me/Jaammerr

Email - andlolkek@gmail.com

Пожалуйста, обращайтесь только в случае возникновения неизвестных багов или ошибок, все остальные просьбы будут проигнорированы.