Seaca

Seaca (Security Event Alert Center App) — нативный мобильный клиент Security Alert Center (SAC) для Android.

Оператор видит те же данные, что и в веб-интерфейсе SAC: обзор, события, отчёты, проблемы и хосты. Push-уведомления приходят по тем же правилам severity и cooldown, что Telegram/email/webhook на сервере. Управление пользователями, каналами оповещений и привязкой устройств — только в веб-SAC (раздел «Настройки»).

Связанные репозитории

Репозиторий Роль
security-alert-center Сервер SAC: API, UI, оповещения, управление мобильными устройствами
ssh-monitor Агент Linux
RDP-login-monitor Агент Windows
Репозиторий URL
security-alert-center https://git.kalinamall.ru/PapaTramp/security-alert-center
ssh-monitor https://git.kalinamall.ru/PapaTramp/ssh-monitor
RDP-login-monitor https://git.kalinamall.ru/PapaTramp/RDP-login-monitor
## Стек
Слой Технология
UI Kotlin, Jetpack Compose, Material 3
Сеть Retrofit / OkHttp, Kotlin Serialization
Хранение DataStore + Android Keystore (токены, URL сервера)
Push Firebase Cloud Messaging (FCM)
Минимум SDK Android 8.0 (API 26)

Что есть в приложении

  • Обзор, события, отчёты, проблемы, хосты (списки и карточки с читаемыми полями)
  • Pull-to-refresh на обзоре и в списках
  • Фильтры событий и проблем (severity, status)
  • Формат даты/времени на выбор (слэш, дефис, точка или системный локаль)
  • Ack / Resolve для роли operator и выше
  • Push с переходом в карточку события или problem; режимы: со звуком, без звука, выключено
  • Выбор звука уведомления: системный или свой (ringtone picker)
  • Биометрическая блокировка при запуске и при возврате в приложение
  • Экран «Моё устройство»: сервер, пользователь, роль, версия, настройки push, выход
  • Первичная привязка к серверу по коду регистрации, который выдаёт администратор в веб-SAC

Чего нет в приложении (только веб)

  • Управление пользователями SAC
  • Настройки каналов (Telegram, SMTP, webhook), severity, policy
  • Выдача и отзыв кодов регистрации, список устройств, способ входа на устройство — всё это в Настройки → Мобильные устройства на сервере

Привязка телефона к серверу

  1. Администратор в веб-SAC включает «Разрешать подключение мобильных устройств».
  2. Создаёт код регистрации для пользователя (срок действия, одноразовый или с лимитом использований).
  3. Оператор в Seaca: URL API SAC (выдаёт администратор) + код + логин/пароль (если код не привязан к предварительной сессии).
  4. Приложение регистрирует FCM-токен; устройство появляется в списке на сервере.
  5. Администратор может отключить устройство, сменить разрешённый способ входа, переименовать.

Подробный план — docs/ROADMAP.md.

Статус

Версия: 0.5.7 (Android: Kotlin, Compose; enroll, UI, ack/resolve, FCM, биометрия, звук push, форматы даты)

Документация

Документ Назначение
docs/operator-guide.md Инструкция для оператора
docs/ROADMAP.md План разработки

Сборка

Требуется JDK 17+ (Android Studio JBR или отдельная установка) и Android SDK (local.properties с sdk.dir=…).

# Опционально: конфиг Firebase в app/ (шаблон *.example, рабочий файл не в git) — для FCM
./gradlew assembleDebug
# Windows:
gradlew.bat assembleDebug

APK: app/build/outputs/apk/debug/app-debug.apk

Без конфига Firebase приложение собирается, но FCM не инициализируется (просмотр данных работает).

Лицензия

Как у остальных репозиториев семейства SAC (уточняется владельцем проекта).

S
Description
Seaca - Android mobile client for Security Alert Center
Readme 640 KiB
Languages
Kotlin 98.1%
Shell 1.9%