На странице:

Получение списка всех макрокоманд

POST http://IP-адрес:порт/префикс/grpc

Тело запроса:

{
    "method":"axxonsoft.bl.logic.LogicService.ListMacros",
    "data": {
        "view": "VIEW_MODE_FULL"
            }
}

Примечание

  • VIEW_MODE_FULL полная информация;
  • VIEW_MODE_STRIPPED только базовая информация о макрокомандах без условий запуска и действия.

Получение полной информации по одной/нескольким макрокомандам

{
    "method":"axxonsoft.bl.logic.LogicService.BatchGetMacros",
    "data":{
        "macros_ids" : ["cfd41b18-c983-4a48-aaa1-ca7e666e6e49"]
            }
}

Создание/удаление/изменение макрокоманды

Внимание!

Запросы на создание и изменение макрокоманды должны содержать всю ее структуру.

Создание:

{
"method": "axxonsoft.bl.logic.LogicService.ChangeMacros",
"data": {
        "added_macros": {
           "guid": "3303abb2-181e-4183-8987-8a06c309a741",
           "name": "TEST_MACRO",
           "mode": {
                "enabled": true,
                "user_role": "",
                "is_add_to_menu": true,
                "common": {}
            },
            "conditions": {
                "0": {
                    "path": "/C:0",
                    "archive_write": {
                        "camera": "hosts/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0",
                        "state": "ON"
                    }
                },
                    "1": {
                    "path": "/C:0",
                    "archive_write": {
                        "camera": "hosts/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0",
                        "state": "ON"
                    }
                }
            },
            "rules": {
                "0": {
                    "path": "/E:0",
                    "action": {
                        "timeout_ms": 60000,
                        "cancel_conditions": {},
                        "action": {
                            "raise_alert": {
                                "zone": "",
                                "archive": "",
                                "offset_ms": 0,
                                "mode": "RAM_AlwaysIfNoActiveAlert"
                            }
                        }
                    }
                },
                "1": {
                    "path": "/E:0",
                    "action": {
                        "timeout_ms": 60000,
                        "cancel_conditions": {},
                        "action": {
                            "raise_alert": {
                                "zone": "",
                                "archive": "",
                                "offset_ms": 0,
                                "mode": "RAM_AlwaysIfNoActiveAlert"
                            }
                        }
                    }    
                }
            }
        }
    }
}

Изменение (удаление правил и условий):

Примечание

В группах conditions и rules необходимо оставить пустые фигурные скобки { }.

{
    "method": "axxonsoft.bl.logic.LogicService.ChangeMacros",
    "data": {
            "modified_macros": {
            "guid": "3303abb2-181e-4183-8987-8a06c309a741",
            "mode": {
                "common": {}
            },
            "conditions": {
                "0": {}
            },            
            "rules": {
                "1": {}
            }
        }
    }
}

Удаление всей макрокоманды:

{
    "method":"axxonsoft.bl.logic.LogicService.ChangeMacros",
    "data":{
        "removed_macros" : ["3303abb2-181e-4183-8987-8a06c309a741"]
            }
}

Запуск макрокоманды

{
    "method":"axxonsoft.bl.logic.LogicService.LaunchMacro",
    "data":{
        "macro_id" : "caef76f0-37e9-43b0-aba6-c2a2f32ccd2f"
            }
}

Примеры

  1. Получение информации об автоматическом правиле.

    Ответ:

    {
        "items": [
            {
                "guid": "4932bbc7-c702-4a18-b050-2898b1b61738",
                "name": "534k_1.Camera. Детектор движения",
                "mode": {
                    "enabled": true,
                    "user_role": "",
                    "is_add_to_menu": false,
                    "autorule": {
                        "zone_ap": "hosts/Server1/DeviceIpint.6/SourceEndpoint.video:0:0",
                        "only_if_armed": false,
                        "timezone_id": "00000000-0000-0000-0000-000000000000"
                    }
                },
                "conditions": {
                    "0": {
                        "path": "/C:0",
                        "detector": {
                            "event_type": "MotionDetected",
                            "source_ap": "hosts/Server1/AVDetector.4/EventSupplier",
                            "state": "BEGAN",
                            "details": []
                        }
                    }
                },
                "rules": {
                    "1": {
                        "path": "/E:1",
                        "action": {
                            "timeout_ms": 0,
                            "cancel_conditions": {
                                "0": {
                                    "path": "/E:1/C:0",
                                    "detector": {
                                        "event_type": "MotionDetected",
                                        "source_ap": "hosts/Server1/AVDetector.4/EventSupplier",
                                        "state": "ENDED",
                                        "details": []
                                    }
                                }
                            },
                            "action": {
                                "raise_alert": {
                                    "zone": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
                                    "archive": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage",
                                    "offset_ms": 0,
                                    "mode": "RAM_AlwaysIfNoActiveAlert"
                                }
                            }
                        }
                    },
                    "0": {
                        "path": "/E:0",
                        "action": {
                            "timeout_ms": 0,
                            "cancel_conditions": {
                                "0": {
                                    "path": "/E:0/C:0",
                                    "detector": {
                                        "event_type": "MotionDetected",
                                        "source_ap": "hosts/Server1/AVDetector.6/EventSupplier",
                                        "state": "BEGAN",
                                        "details": []
                                    }
                                }
                            },
                            "action": {
                                "write_archive": {
                                    "camera": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
                                    "archive": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage",
                                    "min_prerecord_ms": 0,
                                    "post_event_timeout_ms": 0
                                }
                            }
                        }
                    }
                }
            }
        ]
    }
  2. Создание макрокоманды.

    {
        "method":"axxonsoft.bl.logic.LogicService.ChangeMacros",
        "data":{
            "added_macros" : {
                "guid": "b55c118a-f902-43ec-b55a-67ee062640b2",
                "name": "MacroEmail",
                "mode": {
                    "enabled": true,
                    "user_role": "",
                    "is_add_to_menu": false,
                    "continuous": {
                        "server": "Server1",
                        "timezone_id": "00000000-0000-0000-0000-000000000000",
                        "heartbeat_ms": 0,
                        "random": true
                    }
                },
                "conditions": {},
                "rules": {
                    "0": {
                        "path": "/E:0",
                        "check": {
                            "check": {
                                "camera": "99f72952-d8b8-4590-90e8-7e0e78bcd719",
                                "archive": "",
                                "depth_ms": 5400000,
                                "type": "CT_CHECK_RECORD"
                            },
                            "success_rules": {},
                            "failure_rules": {
                                "0": {
                                    "path": "/E:0/T:0",
                                    "action": {
                                        "timeout_ms": 0,
                                        "cancel_conditions": {},
                                        "action": {
                                            "email_notification": {
                                                "notifier": "hosts/Server1/EMailModule.1",
                                                "recipients": [
                                                    "mail@server.com"
                                                ],
                                                "subject": "Notification: Attention, automatic rule is triggered.",
                                                "msg_text": "На сервере: {cameraNode} по камере {cameraName}  проблемы с записью в архив.\nДата: {dateTime}",
                                                "atach_video": false,
                                                "export_agent": "",
                                                "span_ms": 0,
                                                "camera": "",
                                                "archive": ""
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    Примечание

    "camera": "99f72952-d8b8-4590-90e8-7e0e78bcd719" – это id группы камер.


  • No labels