Files
security-alert-center/docs/seaca-fcm.md
T

2.1 KiB
Raw Blame History

FCM (push) для Seaca

Настраивается только на сервере SAC и в Firebase; в веб-UI — индикатор и тест push на устройство.

1. Firebase

  1. Firebase Console → создать проект (или использовать существующий).
  2. Добавить Android-приложение с package name ru.kalinamall.seaca (как в APK Seaca).
  3. Скачать google-services.json — файл для сборки Seaca, в git не коммитить.
  4. Project settings → Service accounts → Generate new private key — JSON для сервера SAC.

2. Сервер SAC

sudo install -o sac -g sac -m 600 /path/to/firebase-key.json \
  /etc/security-alert-center/fcm-service-account.json

В /opt/security-alert-center/config/sac-api.env:

SAC_FCM_ENABLED=true
SAC_FCM_PROJECT_ID=your-firebase-project-id
SAC_FCM_SERVICE_ACCOUNT_JSON=/etc/security-alert-center/fcm-service-account.json

Перезапуск API:

sudo systemctl restart sac-api

3. Политика оповещений

Настройки → Правило оповещений → канал Seaca (push).

Действуют те же min_severity, cooldown и dedup, что для Telegram/email.

4. Проверка

  1. Телефон привязан (enroll), в списке устройств FCM: да.
  2. Настройки → Мобильные устройства → Тест push на строке устройства.
  3. Либо сгенерировать событие с severity выше порога policy.

5. Ограничения

  • FCM доставляет через инфраструктуру Google; payload формирует SAC (заголовок, id, deep link).
  • Без SAC_FCM_ENABLED=true push не отправляется; приложение и REST API работают.
  • google-services.json нужен приложению; service account JSON — только серверу.