Общее описание проекта
Требуется разработать Telegram-бота для геймеров - аналог сайта знакомств, но для поиска тиммейтов в игре. Пользователи создают анкеты с основной и дополнительной информацией, просматривают профили других игроков и ставят лайки. При совпадении взаимных лайков контакты раскрываются. Бот также должен управлять рекламными постами и стрим-оповещениями.
Функциональные требования
1. Регистрация и создание анкеты
- Загрузка аватарки
- Обязательное указание игрового ранга (настраиваемый список)
- Дополнительные пункты: играет с микрофоном или нет, игровой стаж, любимые режимы - настраивается через админку
- Возможность добавить текст о себе свободной форме
2. Проверка подписок
- Пользователь должен быть подписан на телеграм-канал и чат (автоматическая проверка)
- По желанию можно подключить проверку подписки на Twitch и YouTube (код будущего расширения или опционально)
3. Функционал анкеты-знакомств
- Просмотр анкет случайных игроков
- Возможность поставить лайк или дизлайк без возможности узнать кто это
- При взаимном лайке - контакты раскрываются: выводится имя/ник телеграм и сообщение, что они хотят играть вместе
4. Рекламные/новостные механики
- Вставка новостного поста (реестр конкурсный пост или реклама нового видео) - выводится между 5-й и 10-й ответами бота
- Разовое уведомление всем пользователям о старте стрима
5. Админ-панель
- Через нее добавляются новости
- Запуск стрим-уведомления
- Отправка репорта / жалобы на скам-пользователей
- Блокировка нарушителей в боте
Технические требования
- Язык программирования: Python (aiogram 3.x)
- База данных: PostgreSQL или SQLite (на усмотрение разработчика)
- Архитектура микросервисов или monolithic на взаимодействии API Telegram
- Просмотр анкет - чистая логика +/- лайков, без шихтенных данных о непрочитанных/без ущерба безопасности
- Деплой выполнить
Пожалуйста, рассчитайте стоимость и сроки выполнения проекта. Заказчик на стадии концепта, жду предложения.