Техническое задание: Telegram-бот для розыгрышей
Основная цель
Создание автоматизированной системы для проведения розыгрышей в Telegram с обязательной проверкой подписки участников на заданные каналы.
Функциональные требования
1. Команда /start
- При старте бот предлагает администратору выбрать тип канала для публикации розыгрыша (открытый или закрытый).
2. Создание поста
- После выбора канала бот запрашивает текст для розыгрыша.
- Текст должен поддерживать активные гиперссылки на каналы.
- В пост автоматически добавляется интерактивная кнопка "Участвую".
- Счетчик на кнопке должен обновляться в реальном времени после каждого нажатия пользователем.
3. Настройка проверки подписок
- Бот запрашивает у администратора список каналов (открытых и закрытых), на которые необходимо подписаться для участия.
- Реализовать механизм проверки статуса подписки пользователя на эти каналы.
4. Предпросмотр и публикация
- Бот отправляет администратору черновик поста для проверки.
- Предоставить выбор: опубликовать немедленно или отложить публикацию на указанное время.
5. Финальный пост в канале
- Пост содержит изображение, форматированный текст с гиперссылками и кнопку "Участвую".
6. Логика для участников
- При нажатии на кнопку "Участвую" пользователь видит:
- Сообщение "Вы участвуете в розыгрыше", если подписка на все требуемые каналы подтверждена.
- Список каналов для подписки с соответствующими ссылками, если условие не выполнено.
7. Дополнительные требования
- Счетчик участников на кнопке должен отображаться в реальном времени.
- Определение победителей должно проводиться через личные сообщения от бота.