Техническое задание: Telegram-бот с функциями самосохранения и клонирования
Описание задачи
Необходимо разработать Telegram-бота, который будет эксплуатироваться в условиях регулярных блокировок со стороны администрации мессенджера (в среднем раз в 2-3 недели). Главное - сохранить всю хранимую информацию и функционал даже после удаления основной учетной записи бота.
Ключевые требования
- Защита информации: Данные внутри бота не должны исчезать при удалении его аккаунта администрацией Telegram.
- Система клонов: Автоматическое создание копии (бота-клона) для восстановления всех функций после удаления основного.
- Не русскоязычный сервер: Все данные и сам серверный код должны размещаться на серверах вне юрисдикции РФ для предотвращения принудительного удаления.
- Частота блокировок: Предусмотреть нагрузочное тестирование и стабильную работу в условиях, когда бот удаляется каждые 2-3 недели.
Архитектура бота
1. Модуль хранения данных
- База данных на зарубежном хосте.
- Автобэкап и репликация на удаленные сервера.
2. Модуль клонирования
- Обнаружение блокировки бота.
- Авторегистрация нового бота через BotFather.
- Перенос всех настроек и данных в клон.
3. Восстановление пользователей
- Автоматические уведомления для подписчиков о новом адресе бота-клона.
- Сохранение пользовательских настроек и истории.
Стек технологий (уточнить с исполнителем)
- Python (предпочтительно)
- Любая СУБД (PostgreSQL/целом)
- HTTPS, webhooks
- Работа с Bot API Telegram
Пожелание: Желателен опыт работы с зарубежными VPS и понимание рисков при создании “серых” проектов в Telegram (после блокировки нет гарантий, важен механизм клонирования).
Тестирование
Перед сдачей провести тест-кейсы полного цикла: блокировка - эмоциональный запуск клона - работа с данными исходного бота.