- Introduced a new helper function `_parse_setting_response` to streamline the parsing of settings responses from the API.
- Updated the `get_settings`, `get_setting`, `set_setting`, and `toggle_setting` endpoints to utilize the new parsing function, enhancing code readability and maintainability.
- Improved handling of settings data formats, allowing for both detailed metadata and simple values.
1. Traffic (Трафик) - статистика трафика, топ пользователей по трафику, последние нарушения
2. Reports (Отчёты) - отчёты за период (6h, 12h, 24h, 48h, 72h), статистика активных пользователей и IP, топ нарушителей
3. Settings (Настройки) - управление настройками системы банов, группировка по категориям, переключатели для bool, ввод для int
4. Health (Здоровье) - статус системы (healthy/degraded/unhealthy), аптайм, статус компонентов
- Added logging for Ban System API status checks, including whether the system is enabled and its configured URL.
- Introduced a new endpoint `/stats/raw` to fetch raw statistics from the Ban System API for debugging purposes.
- Enhanced logging to capture raw stats response for better monitoring.
- Реализован режим SHOW_ACTIVATION_PROMPT_AFTER_TOPUP для яркого уведомления пользователей
- При пополнении баланса отправляется внимание-привлекающее сообщение с восклицательными знаками
- Динамические кнопки в зависимости от статуса подписки:
* Активная платная подписка: "🔄 Продлить" + "📱 Изменить устройства"
* Нет подписки/истекла/триал: "🔥 Активировать подписку"
- Убраны дублирующие уведомления из yookassa.py (строка 851)
- Убраны дублирующие уведомления из subscription_auto_purchase_service.py (строки 755, 918)
- Режим включается через SHOW_ACTIVATION_PROMPT_AFTER_TOPUP=true в .env
Файлы:
- app/services/payment/common.py: добавлена логика яркого промпта
- app/services/payment/yookassa.py: отключено старое уведомление для корзины
- app/services/subscription_auto_purchase_service.py: отключены 2 блока старых уведомлений