Skip to content

Конфигурация событий

RUSEON Core публикует асинхронные системные уведомления и AI-телеметрию через HTTP Вебхуки и MQTT. Настройка выполняется в секции events файла config.yaml.


Вебхуки (Webhooks)

Вебхуки позволяют RUSEON Core отправлять HTTP POST запросы с телом JSON при наступлении системных событий.

ПараметрТипОписание
urlstringЦелевой HTTP/HTTPS адрес получателя.
topics[]stringСписок отслеживаемых топиков (или ["*"] для всех).
secretstringСекретный ключ HMAC-SHA256 для подписи запросов в заголовке X-Signature.

Поддерживаемые топики событий

  • camera_online: Срабатывает при успешном подключении RTSP и получении видеокадров.
  • camera_offline: Срабатывает при разрыве связи с камерой (содержит причину error).
  • archive_segment_ready: Срабатывает при завершении записи часового fMP4 сегмента архива.
  • recording_failed: Срабатывает при ошибках ввода-вывода (I/O) на диске.
  • storage_warning: Срабатывает при заполнении диска свыше 90%.

Пример конфигурации вебхука

yaml
events:
  webhooks:
    - url: "https://vms.company.local/api/hooks"
      topics:
        - "camera_online"
        - "camera_offline"
        - "archive_segment_ready"
        - "recording_failed"
        - "storage_warning"
      secret: "super-secret-hmac-key"

MQTT

RUSEON Core транслирует AI-метаданные и телеметрию в реальном времени брокеру MQTT через неблокирующую lock-free очередь.

ПараметрТипОписание
enabledboolВключает фонового издателя MQTT.
brokerstringАдрес брокера (например, tcp://localhost:1883 или ssl://mqtt.company.local:8883).
usernamestringЛогин для авторизации на брокере (опционально).
passwordstringПароль для авторизации на брокере (опционально).
topicstringБазовый топик для публикации (например, ruseon/metadata).

Пример конфигурации MQTT

yaml
events:
  mqtt:
    enabled: true
    broker: "tcp://localhost:1883"
    username: "ruseon_publisher"
    password: "mqtt_password_123"
    topic: "ruseon/metadata"

Released under the MIT License.