Macros configuration is described in the LogicService.proto file.
Each macro consists of:
mode contains the general information:
time_zone − time zone id, if the macro should be launched on time;
"time_zone": {
"timezone_id": "6fb68cf4-ca6a-46a1-b2e3-ab4cfdaa0444"
} |
autorule
Contains the general information for launching the automatic rules:
|
continuous
Contains the general information for launching the continuous macros:
|
The following are available (see Configuring filters for event-driven macros, Triggering macros by statistical data):
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": {
"relay": "hosts/Server1/DeviceIpint.10/StateControl.relay0:0",
"state": "ON"
} |
volume_health
"volume_health": {
"storage": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage",
"volume": "",
"health": "VH_CORRUPTED"
} |
server_state
observer − a server from which the macro is launched; subject − a server from which the state should be received.
|
text
The Event Source object should be created (see Event source object).
|
arm
Arming the camera.
|
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 contains the actions that should be run in the macro (see Settings specific to actions).
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": {}
} |