7.3 KiB
7.3 KiB
Changelog
Все значимые изменения в проекте документируются в этом файле.
[1.1.0] - 2025-11-20
Добавлено
- Многоязычная поддержка: Добавлена поддержка русского и английского языков
- Автоматическое определение языка пользователя при первом использовании бота (на основе
language_codeиз Telegram) - Команда
/set_langдля ручного выбора языка (🇬🇧 English / 🇷🇺 Русский) - Все сообщения бота теперь отображаются на выбранном пользователем языке
- Поле
bot_languageв таблицеtelegram_usersдля хранения предпочтений пользователя
- Автоматическое определение языка пользователя при первом использовании бота (на основе
- Очередь запросов: Добавлена система очереди запросов для периодических уведомлений
- Минимальная задержка 7 секунд между запросами к Lichess API
- Предотвращение rate limiting и блокировок со стороны Lichess
- Асинхронная обработка запросов через
RequestQueue
- Статистика языков в веб-интерфейсе:
- Отображение языка пользователя (🇷🇺 ru / 🇬🇧 en) рядом с именем пользователя
- Процент пользователей с русским языком в статистике веб-интерфейса
Исправлено
- Логика определения "сегодня" и "вчера": Исправлена логика команд
/todayи/yesterday- Правильное определение интервалов активности Lichess API
/todayтеперь показывает только интервалы, которые начинаются сегодня/yesterdayпоказывает интервалы, которые заканчиваются вчера или начинаются вчера и заканчиваются сегодня- Исправлена проблема, когда один интервал попадал под оба условия
Изменено
- База данных: Добавлено поле
bot_languageв таблицуtelegram_usersс миграцией для существующих пользователей - Периодические уведомления: Теперь используют очередь запросов вместо прямых вызовов API
- Веб-интерфейс: Добавлено отображение языка пользователя и статистики по языкам
Технические детали
- Добавлен модуль
request_queue.pyдля управления очередью запросов - Обновлен
i18n.pyс полными переводами на русский язык - Обновлена логика в
stats_service.pyдля правильного определения интервалов активности - Добавлена миграция базы данных для поддержки
bot_language
[1.0.1] - 2025-11-16
Добавлено
- Версионность бота: Добавлена версия бота (BOT_VERSION), отображаемая в команде
/support - Команда
/support: Добавлена команда для связи с разработчиком, включающая контактную информацию и версию бота - Команда
/lastYear_or_1000games: Добавлена команда для получения статистики за последний год или последние 1000 рейтинговых игр - Множественное отслеживание: Команды
/today,/yesterday,/weekтеперь показывают статистику по всем отслеживаемым игрокам с активностью, а не только по активному игроку - Информативные сообщения: Добавлены сообщения о процессе обработки запросов для всех команд статистики
- Автоматическое удаление сообщений: Сообщения "Requesting data for player..." автоматически удаляются после обработки запроса
- Финальные сообщения: Добавлено сообщение "✅ That's all" после завершения обработки всех игроков
Изменено
- Команда
/delgamer: Улучшена логика с информативными сообщениями при удалении активного или последнего игрока - Команда
/setperiod: Улучшено форматирование интервалов времени (отображение в часах для значений >= 60 минут) - Логика команд статистики: Все команды статистики теперь обрабатывают всех игроков пользователя последовательно
- Задержки между запросами:
- Для команд
/today,/yesterday,/week: 1 секунда между запросами - Для команды
/lastYear_or_1000games: 3 секунды между запросами (из-за больших объемов данных)
- Для команд
- Конфигурация токенов: Добавлена поддержка переключения между тестовыми и продакшн токенами через флаг
IS_PROD
Улучшено
- Производительность: Оптимизирована обработка запросов с учетом ограничений API
- Пользовательский опыт: Более информативные сообщения и лучшая обратная связь о процессе обработки
- Документация: Обновлены README.md и about.md с описанием всех новых функций
Технические детали
- Добавлены новые ключи в i18n.py для сообщений о процессе обработки
- Улучшена обработка ошибок в командах статистики
- Оптимизированы задержки между запросами для предотвращения rate limiting
[1.0.0] - Начальная версия
Добавлено
- Базовая функциональность Telegram бота
- Команды для управления отслеживанием игроков
- Статистика за сегодня/вчера/неделю
- Периодические уведомления
- Веб-интерфейс для просмотра пользователей
- REST API для получения статистики