Telegram бот для доски объявлений
Общая информация
Тип проекта: Telegram-бот.
Назначение: Доска объявлений с модерацией, платными услугами и бонусной системой.
Язык интерфейса: русский.
Цель: запуск MVP с возможностью дальнейшего развития.
Основные требования
- Автоматическая модерация объявлений.
- Интеграция платных услуг (премиум-размещение, выделение цветом, поднятие в топ).
- Бонусная система для поощрения активных пользователей.
- Интуитивно понятный интерфейс для администраторов и пользователей.
- Гибкость: архитектура должна позволять легко добавлять новые функции.
Архитектура и инструменты
- Использование фреймворка python-telegram-bot (или другого на Python).
- База данных: PostgreSQL (рекомендуется) или SQLite для MVP.
- Брокеры сообщений (RabbitMQ / Celery) для обработки фоновых задач (рассылки, платные услуги).
- Интеграция платежной системы (ЮKassa / Stripe / Telegram Stars) для приема оплаты.
- Панель администратора (Django / React + FastAPI) для управления объявлениями и настройками.
Функциональные узлы
1. Пользовательская часть
- Регистрация по номеру телефона или через Telegram ID.
- Размещение объявлений с фото и описанием.
- Возможность подключения платных опций при публикации.
- Личный кабинет: просмотр своих объявлений, баланс бонусов, история оплат.
- Поиск и сортировка объявлений по категориям.
2. Административная часть
- Модерация: одобрение/отклонение объявлений с указанием причины.
- Настройка тарифов и бонусов.
- Статистика: количество объявлений, доходность, активные пользователи.
- Управление пользователями (бан / ограничение действий).
3. Финансовое обслуживание
- Прием оплаты за платные услуги.
- Бонусная система: начисление бонусов за активность (рефералы, отзывы).
- Возможность оплаты услуги как бонусами, так и деньгами.
- Логирование всех транзакций.
Пример сценария работы
- Пользователь нажимает «Разместить объявление».
- Бот запрашивает: название, описание, категорию, фото, контактные данные.
- После верификации предлагаются платные опции (например, выделить объявление в списке за 50 RUB).
- Если пользователь оплачивает - вывод работает, иначе объявление помещается в общую ленту.
- Администратор получает уведомление о новом объявлении и модерирует его (как правило, одобрение происходит автоматически, если фото в ч/б формате и нет спама).
- Пользователь получает оповещение о публикации/отклонении.
- При наступлении срока действия объявления бот уведомляет пользователя о необходимости продления статуса (платно).