Завдання
Технічне завдання може бути виправлене або доопрацьоване з урахуванням рекомендацій розробника.
Проєкт Telegram Marketing Inviter & Spammer Bot System спрямований на автоматизацію маркетингових процесів у Telegram. Система повинна дозволяти керувати робочими акаунтами, формувати бази даних користувачів, запускати розсилки, інвайтинг у групи та рекламні кампанії. Усі дії здійснюватимуться через одного керуючого чат-бота в приватному чаті з материнським акаунтом, що забезпечує безпеку та контроль операцій.
Архітектура рішення має бути клієнт-серверною. Бот створюється на Telegram Bot API з використанням python-telegram-bot в асинхронному режимі. Бекенд реалізується на Python 3.10+ (asyncio), а база даних — PostgreSQL з ORM SQLAlchemy і міграціями через Alembic. У системі передбачена рольова модель: Super Admin, Employee та Account (з поділом на parser, spammer, inviter). Додавання акаунтів і співробітників відбувається через команди бота з обов’язковим підтвердженням Super Admin.
Функціонал має включати:
керування акаунтами (авторизація, перевірка на бан, ротація);
створення та запуск завдань (спам, інвайтинг, парсинг);
систему логування та звітності.
Логи зберігаються у БД та файлах, для Super Admin формуються щоденні звіти. Особлива увага приділяється безпеці та зниженню ризиків блокувань: підтримка проксі з ротацією, затримки 1–10 сек між діями, автоматична ротація акаунтів, обробка flood-wait та банів з повідомленням адміністратора.
Результат має відповідати вимогам:
продуктивність — до 50 повідомлень/акаунт/год;
масштабованість — необмежене додавання акаунтів та списків;
надійність — резервне копіювання БД, обробка помилок;
зручність управління — inline-кнопки, дашборд у боті, текстові та графічні звіти.
Перевірка готовності проєкту виконуватиметься через тестові сценарії: юніт-тести для парсингу, симуляція розсилок та перевірка роботи ротації акаунтів.