# 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 для получения статистики