ТЗ на разработку юзер-бота «MaxBot» для мессенджера MAX
1. Назначение
- Автономный бот, имитирующий живого пользователя.
- Автоматический поиск собеседников, отправка первых сообщений, ведение диалога по сценариям, сбор статистики.
2. Особенности платформы (влияние на бота)
- Регистрация только по номеру телефона (SMS-код) → нужен ввод кода (ручной или через API SMS).
- Общение только с контактами из телефонной книги → требуется эмуляция добавления номеров.
- Нет публичного API → используем MasterBot или reverse engineering мобильного клиента.
- Поддержка медиа (стикеры, голосовые) – опционально.
- География 40+ стран – настраиваемые фильтры и номера.
- Отсутствие сквозного шифрования – упрощает мониторинг трафика.
3. Функциональные требования
- Авторизация: вход по номеру, приём SMS, установка имени, загрузка фото (опционально). Хранение JWT-сессии, автоматическое обновление. Мультиаккаунтность (10–15 аккаунтов).
- Управление контактами: доступ к телефонной книге (эмуляция на Android через ADB/ContentProvider, на iOS – ручное или эмулятор). Автоматическое добавление номеров перед отправкой. Альтернатива – через ботов знакомств (TINDMEET) по мэтчу.
- Поиск собеседников: сканирование контактов или свайп в ботах знакомств. Фильтры: пол, возраст, гео, категории.
- Отправка первого сообщения: по шаблонам (с переменными) или через ChatGPT API. Поддержка стикеров.
- Обработка ответов: два режима – простой (завершающее сообщение) и продвинутый (сценарий с ключевыми словами). Отложенные ответы – возможность задать таймер (например, «напиши через 2 месяца»).
- Администрирование: Telegram-бот с командами `/start`, `/stop`, `/status`, `/stats`, `/add_contact`. Опционально веб-панель. Поддержка прокси (HTTP/SOCKS).
4. Технические требования
- Стек: Python 3.10+ (asyncio + aiohttp) или Node.js. Хранение – SQLite/PostgreSQL (история, контакты, настройки, отложенные задачи).
- Взаимодействие с MAX: через MasterBot или reverse engineering (эмуляция запросов, заголовков, jitter-задержки).
- Антидетект: случайные паузы (30 сек – 5 мин), ротация User-Agent и прокси, эмуляция чтения сообщений, лимит новых чатов (30–50/сутки на аккаунт).
- Логирование: JSON-логи с уровнями, интеграция с Sentry, метрики (отправленные/ответы/активные диалоги).
5. Сценарии работы (основные)
- Запуск → авторизация, загрузка настроек.
- Поиск кандидата (контакты или боты знакомств).
- Добавление контакта (эмуляция).
- Отправка первого сообщения (шаблон/ИИ) → запись в историю.
- Ожидание ответа (WebSocket/polling).
- Обработка входящего – по сценарию (немедленно или отложенно).
- Циклическая пауза для имитации человека.
6. Интерфейс управления
- Telegram-бот с командами для запуска/остановки, просмотра статуса, статистики, ручного добавления контактов.
7. Критерии приёмки
- Авторизация и поддержка сессии.
- Корректное добавление контактов.
- Отправка не чаще 1 раза в 30 мин.
- Обработка входящих и отложенных ответов.
- Полное логирование.
- Работа через Telegram-команды.
- Стабильность при 10–15 аккаунтах одновременно.
8. План (ориентировочно 6–7 недель)
1. Reverse engineering / MasterBot, клиент авторизации – 2 нед.
2. Управление контактами – 1 нед.
3. Отправка/приём сообщений – 1 нед.
4. Шаблоны и ИИ-генерация – 3 дня.
5. Таймеры, фильтры, логирование – 1 нед.
6. Telegram-бот управления – 3 дня.
7. Тестирование, антидетект, прокси – 1 нед.
9. Риски и митигация
- Бан аккаунтов → резидентские прокси, паузы, лимиты.
- Изменение API → выделить слой API, легко обновляемый.
- Сложность с контактами (iOS) → для MVP использовать Android-эмуляторы или ручное добавление.
- Перегрузка → асинхронность, ограничение параллельных задач.
- Недостаток валюты (если нужна) → мониторинг баланса и уведомление администратора.
Опубликован 19.08.2026 в 07:57
Заказ находится в архиве