Разработать телеграмм бота Quiz
Задача | |
Необходимо реализовать телеграмм бота Quiz на python + aiogram3 + админ панель в Django. 1 часть Есть при начале боте приветствие с просьбой подписаться на канал Перейти к использованию бота без подписки нельзя Когда пользователь подписан, то выводим сообщение "Спасибо за подписку, выберите по какой теме проходить квиз." В меню 2 кнопки "Поддержка" и "Про бот". При нажатии "Поддержка" - отправляется сообщение Напиши нам в чат, если вы нашли ошибку: *ссылка на чат*, Если нажать "Про бот", то описание бота. Меню сохраняется 2 часть (квиз) Перед использованием квиза предлагается 2 варианта. 2.1 - это с вариантами ответа (есть возможность множественного выбора). После выбора 4 варианта квиза. Описание: Есть 4 вида квиза, т.е. 4е темы (алгебра, литература, физика, химий) Когда начался квиз по одной из тем, то в меню появляется ещё одна кнопка самая первая. Сменить тему. Ответы в квизе сначала спрятаны. Т.е. виден вопрос, затем по нажатию открываются потенциальные ответы и можно выбрать Каждый раз порядок ответов меняется. Вопросы берутся из БД Если ответ правильный - переход к следующему автоматом Если неправильный ответ, то появляется кнопка “Посмотреть ответ” в которой правильный ответ и ссылка на ресурсы, что можно почитать, где есть эта информация (но тут можно замокать, я сам всё заполню) + кнопка “далее” при нажатии переходим на следующий вопрос 2.2. Второй вариант прохождения квиза - это возможность отвечать на вопрос текстом или голосовым. С вопросами всё тоже самое, как описано выше. Текст (Голосовые переходят в текст) -> и затем согласно промту дается ответ от бота, верно отвечено или нет (интегерация с AI) Общий: По завершению показывается текст сколько правильных и неправильных ответов. Если пользователь прервал прохождение, то при возвращение квиз проходится с начала, порядок вопросов другой. Админ панель: - Просмотр списка пользователей - Статистика активности - Анализ статистики правильных/неправильных ответов. - По пользователю (последнее взаимодействие с ботом, сколько решил тестов, телеграмм) - Статистика сколько уникальных (день, неделя, промежуток месяца) и сколько пользователей (каждый день, неделю, временной промежуток) заходят. - Статистику правильных и неправильных по каждому вопросу - Возможность добавлять вопросы и ответы + в случае со свободным ответом писать промт для ответа |