Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Reverted from v. 1

...

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

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

Code Block
{
    "method":"ITVaxxonsoft.bl.logic.LogicService.ListMacros",
    "data": {
        "view": "VIEW_MODE_FULL"
            }
}


Info
titleПримечание

VIEW_MODE_FULL - полная информация;

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

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

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

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

...

Создание:

Code Block
{
"method": "ITVaxxonsoft.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_writeconditions": {
        "camera": "hosts/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0",
        "state0": "ON"{
     }
    },
     "1": {
     "path": "/C:0",
     "archive_write": {
      "camera": "hosts/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0",
        "statearchive_write": "ON"{
     }
    }
   },
   "rules": {
    "0": {
     "pathcamera": "/Ehosts/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0",
     "action": {
        "timeout_ms": 60000,
      "cancel_conditions": {},
      "actionstate": {"ON"
        "raise_alert": {
        "zone": "",
  }
      "archive": "",
        "offset_ms": 0 },
        "mode": "RAM_AlwaysIfNoActiveAlert"
       }
    "1": {
 }
     }
    },
    "1": {
     "path": "/EC:0",
     "action": {
        "timeout_ms": 60000,
      "cancelarchive_conditionswrite": {},
       "action": {
       "raise_alert": {
        "zonecamera": "",
  hosts/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0",
      "archive": "",
        "offset_ms": 0,
        "modestate": "RAM_AlwaysIfNoActiveAlertON"
                    }
      }
     } 
    }
            },
   }
 }
}

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

Info
titleПримечание

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

Code Block
{
 "method": "ITV.bl.logic.LogicService.ChangeMacros",
 "data         "rules": {
            "modified_macros    "0": {
   "guid": "3303abb2-181e-4183-8987-8a06c309a741",
     "mode": {
    "common": {}
   },
   "conditionspath": {
"/E:0",
     "0": {}
   },   
   "rules": {
    "1action": {}
   }
    }
 }
}

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

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

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

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

Примеры

Получение информации об автоматическом правиле
Image Removed
Ответ:

                 "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"
                            }
                        }
                    }    
                }
            }
        }
    }
}

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

Info
titleПримечание

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


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

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

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

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

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

Примеры

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

    Expand


    Code Block
    {
        "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. Создание макрокоманды.
Expand


Code Block
{
    "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.",
        

...

 

...

       

...

      

...

     

...

    

...

   

...

  

...

Expand
Code Block
{
 "method":"ITV.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",
        "msg_text": "На сервере: {cameraNode} по камере {cameraName}  проблемы с записью в архив.\nДата: {dateTime}",
                                            "timezoneatach_idvideo": "00000000-0000-0000-0000-000000000000"false,
       "heartbeat_ms": 0,
           "random": true
    }
   },
   "conditions": {},
   "rules": {
    "0": {
     "pathexport_agent": "/E:0"",
             "check": {
      "check": {
       "camera": "99f72952-d8b8-4590-90e8-7e0e78bcd719",
       "archive": "",
       "depthspan_ms": 54000000,
       "type": "CT_CHECK_RECORD"
      },
      "success_rules": {},
      "failure_rules": {
       "0": {
        "pathcamera": "/E:0/T:0",
        "action": {
                "timeout_ms": 0,
         "cancel_conditions": {},
         "actionarchive": {""
          "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": "" }
          }
          }
         }
       }
       }
     }
    }
    }
   }
 }
}


Info
titleПримечание

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


...