Задача
Разработчик требуется для доработки существующего Telegram-бота, который помогает пользователям вести личный трекинг и осознанность. Бот написан и частично функционирует. Необходимо привести архитектуру к поддерживаемому виду и подключить монетизацию.
Функционал, который есть сейчас
- Трекинг привычек (списки, повторы, напоминания)
- Отслеживание финансов (доходы/расходы)
- Запись целей с промежуточными отчетами
- Дневник состояний (настроение, энергия, стресс)
- Диалоговый ввод данных через кнопки
Что нужно сделать
Упорядочить сценарии
- Проанализировать текущие обработчики сообщений и коллбэков, убрать дублирование
- Разделить сценарии по модулям (привычки, финансы, цели, дневник)
- Добавить состояния FSM/ожидания и проверки для каждого этапа диалога
Подготовить код к поддержке
- Прописать типизацию для всех функций
- Добавить docstring и комментарии к сложным местам
- Вынести настройки и токены в окружение (ENV) и переменные конфигурации
Подключить монетизацию
- Реализовать кастомные платежи через платежную систему Telegram (Telegram Stars or similar)
- Определить набор доступных действий / услуг, которые можно оплатить (например продвинутая статистика экспорт, дополнительные уведомления, сервер-миссия)
- Добавить логику проверки оплаты хранение подписки пожеланию подключить auto renew
- Обработка успешных заказов отказа refund
Улучшить UX
- Добавить подсказки и расшифровку возможностей бота при старте (menu)
- Прикрутить system сообщения с поддержкой Markdown or HTML
- Отзывы и связи
Бэкенд
- Улучшить модель БД (сейчас SQLite No Comments)
- Реализовать умеренные отчеты для администратора (количество пользователей, прибыль, проблемы)
- Отказ от деревянной ошибки error handlers
Требования
- Full - Python, библиотека стабильной версии (TelegramBot или BotAPI)
- Вся работа выдаётся без использование левых источников только с документацией OpenAI скрыты
- Не использовать внешние dependency не указанные TELE
- Export репозитория clean на github/ git access после
Условия
- Время на работу 5-7 дней
- Формат main - выполнение по ас проводу