Конфигурирование макрокоманд описывается в файле LogicService.proto.
Каждая макрокоманда состоит из:
mode содержит общую информацию:
time_zone - id временной зоны, если макрокоманда должна запускаться по времени;
"time_zone": { "timezone_id": "6fb68cf4-ca6a-46a1-b2e3-ab4cfdaa0444" } |
autorule
Содержит общую информацию для запуска автоматических правил:
|
continuous
Содержит общую информацию для запуска циклических макрокоманд:
|
Доступны следующие (см. Задание фильтров для событийных макрокоманд, Запуск событийных макрокоманд на основе данных статистики):
detector
"detector": { "event_type": "sitDown", "source_ap": "hosts/Server1/HumanBoneDetector.1/EventSupplier", "state": "BEGAN", "details": [] } |
timezone
"timezone": { "timezone_id": "6fb68cf4-ca6a-46a1-b2e3-ab4cfdaa0444", "boundary_case": "TB_BEGINING" } |
alert
"alert": { "zone_ap": "hosts/Server1/DeviceIpint.10/SourceEndpoint.video:0:0", "alert_case": "AC_ALERT_DANGEROUS" } |
device
"device": { "device": "hosts/Server1/DeviceIpint.69", "state": "IPDS_CONNECTED", "threshold": 0 } |
archive_write
"archive_write": { "camera": "hosts/Server1/DeviceIpint.28/SourceEndpoint.video:0:0", "state": "ON" } |
"relay": { "relay": "hosts/Server1/DeviceIpint.10/StateControl.relay0:0", "state": "ON" } |
"volume_health": { "storage": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage", "volume": "", "health": "VH_CORRUPTED" } |
server_state
observer - с которого запускается макрокоманда; subject - сервер, с которого должен придти статус.
|
text
Должен быть создан Источник событий (см. Объект Источник событий).
|
arm
Постановка камеры на охрану.
|
recognition
"recognition": { "camera": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0", "list": "797703ea-6917-4341-888b-b6f0579f5d91", "type": "DT_Plate", "objects": [ "53502573-a985-4198-a5b6-69db476cc755" ] } |
statistics
"statistics": { "point": "archive_usage", "item": "hosts/Server1/MultimediaStorage.AntiqueWhite/MultimediaStorage", "value": 100, "delta": 0, "trend": "ET_RISING" } |
rules содержит действия, которые необходимо запускать в макрокоманде (см. Особенности настройки и выполнения действий).
action
"action": { "timeout_ms": 0, "cancel_conditions": {}, "action": { "goto_ptz": { "telemetry": "hosts/Server1/DeviceIpint.71/TelemetryControl.0", "preset_number": 1, "speed": 1 } } } |
wait
"wait": { "timeout_ms": 30000, "cancel_conditions": { "0": { "path": "/E:0/C:0", "server_state": { "observer": "Server1", "subject": "Server2", "state": "SS_ONLINE" } } }, |
timeout
"timeout": { "timeout_ms": 5000 } |
check
"check": { "check": { "camera": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0", "archive": "hosts/Server1/MultimediaStorage.AntiqueWhite/MultimediaStorage", "depth_ms": 60000, "type": "CT_CHECK_RECORD_SAFETY" }, "success_rules": {}, "failure_rules": {} } |