Уведомления команды
В панели откройте Телеграм-бот → Уведомления команды.
- Добавьте бота сервиса в рабочую группу и разрешите отправку сообщений.
- Отправьте
/chatidв группе. В группе с темами отправьте команду в нужной теме: бот покажет оба ID. Если Telegram не передал команду, используйте/chatid@имя_вашего_бота. - Вставьте отрицательный ID группы и, при необходимости, положительный ID темы. Пустая тема означает общий чат.
- Включите уведомления, выберите категории и сохраните настройки.
- Нажмите Отправить тест. При ошибке панель подскажет проверить ID, тему или права бота.
Категории независимы:
- Оплаты и возвраты — успешные платежи за тарифы и докупки, возвраты. Неоплаченные счета не создают шум.
- Новые клиенты — новые клиентские записи, в том числе регистрации через бота и Mini App.
- Тикеты — новое обращение и последующие ответы клиента. Первое сообщение не дублирует уведомление о новом тикете; ответы сотрудников не рассылаются.
- Проблемы сервиса — отсутствие отчётов ноды более 3 минут, ошибка VPN-движка, CPU или память от 95%; ошибки фоновых задач: статусы подписок, сброс трафика, счета, очистка и обслуживание БД, напоминания, рассылки, автопродление. После устранения приходит восстановление. Для нагрузки восстановление фиксируется ниже 85%.
У новой ноды без первого отчёта есть 10 минут на подключение. Выключенные ноды и ноды с отключёнными уведомлениями не проверяются. Повторный одинаковый сбой не создаёт сообщение каждый цикл. Полная недоступность самого сервера, базы или Telegram требует внешнего мониторинга.
Доставка
События сохраняются в БД в одной транзакции с действием. sn-worker проверяет очередь каждые 10 секунд и использует токен основного бота. При временных ошибках Telegram доставка повторяется с увеличением паузы; максимум 8 попыток. Ошибки ID/прав/токена сразу видны как недоставленные. Кнопка Повторить недоставленные возвращает ошибки последних суток для текущей группы/темы в очередь.
При выключении категории или смене получателя её старые ожидающие сообщения отменяются. История завершённых попыток хранится 30 дней. Повторная бизнес-операция не создаёт дубль события. При аварии процесса между ответом Telegram и фиксацией доставки возможна повторная отправка (доставка с повторными попытками).
Текст содержит идентификатор объекта, краткие данные и ссылку на раздел панели. Полный текст переписки, VPN-ключи, подписочные ссылки и платёжные секреты в уведомления не включаются. Настройки группы не отдаются публичному Mini App.
Проверка разработки
Миграция: 040_team_notifications.sql.
cargo test -p sn-core alert_destination_validation— формат настроек.SN_TEST_DATABASE_URL=… cargo test -p sn-core team_alert_delivery_lifecycle -- --ignored— изолированная БДsn_audit_*, локальный mock Telegram: события, дедупликация, два обработчика, повторы, права, смена назначения, выключение, ноды и пороги нагрузки.SN_TEST_DATABASE_URL=… cargo test -p sn-bot bot_addon_checkout_and_stars_receipt -- --ignored— бот, докупки и/chatidс темой без регистрации группового чата как клиента.
Рабочие сообщения и тестовая отправка в реальную группу выполняются только после настройки владельцем. Проверки разработки не отправляют сообщения реальным клиентам.