Commit Graph

8 Commits

Author SHA1 Message Date
MpakobecEx 8fb7fe5dd9 Расписания рассылок переехали из кода в админку
В админке появился раздел «Расписания»: время, дни недели, таймзона, шаблон и вкл/выкл, с историей изменений и удалением. Бот раз в минуту читает активные строки из БД, поэтому правки применяются без перезапуска; при сбое базы он переживает его на последнем прочитанном наборе или на расписании из кода. Стартовые рассылки перенесены миграцией V16, так что поведение не меняется. Заодно в зависимости добавлен tzdata: в slim-образах без него падает ZoneInfo на Europe/Moscow.
2026-10-19 03:41:07 +05:00
MpakobecEx 1e4e905f24 Бот берёт тексты из админки, не дожидаясь перезапуска
Шаблоны из message_templates читаются через кеш на 45 секунд (TEMPLATE_CACHE_TTL), поэтому правка в админке доезжает до следующего сообщения или рассылки сама. Если база недоступна или таблицы ещё нет, бот работает на текстах из кода, а неудачный запрос не повторяется на каждом сообщении — админка не может уронить бота. Расписания рассылок теперь ссылаются на ключи шаблонов, а не на строки, так что тексты рассылок тоже редактируются.
2026-10-19 03:37:58 +05:00
MpakobecEx 2031133538 Уведомления в чат логов и ежечасный пинг
- единая отправка уведомлений через bot/services/alerts.py, ошибки не ломают обработку
- вход и выход участников и успешные очищения уходят в ALERT_CHAT_ID
- ежечасный пинг «бот живой» перенесён в heartbeat, дублирующий пинг из рассылок убран
- событие bot_alive в ClickHouse для графиков доступности
- служебные теги chat_title, version и uptime в реестре тегов
- версия 0.3.3
2026-10-16 15:26:56 +05:00
MpakobecEx 6ec8de88b4 Логирование действий бота в ClickHouse
- middleware пишет события message и command по основному чату, текст сообщений не сохраняется
- сервисы экономики, магазина, подписок и участников пишут события своих операций
- bot.purification возвращает уровень до и после, чтобы отличать повышение уровня
- добавлены события bot_start, bot_stop, access_denied и error
- аналитика инициализируется и закрывается вместе с ботом, её сбой не влияет на работу
- версия 0.3.2
2026-10-16 15:24:24 +05:00
MpakobecEx aafb9c9e3b Доработки контуров, тесты конфига и CI
CI / lint-test (push) Successful in 7s Details
CI / build-push (push) Successful in 12s Details
2026-10-16 15:00:08 +05:00
MpakobecEx 9f33831971 Единый CHAT_ID и доступ только участникам чата
CI / lint-test (push) Successful in 8s Details
CI / build-push (push) Successful in 11s Details
2026-10-16 02:05:37 +05:00
MpakobecEx a96793e755 Обёртка в Docker
CI / lint-test (push) Successful in 7s Details
CI / build-push (push) Successful in 8s Details
2026-10-16 01:48:28 +05:00
MpakobecEx 10b48c77a7 Первоначальная версия 2026-10-16 01:00:57 +05:00