0% found this document useful (0 votes)
3 views

ISAPI - Facial

The Intelligent Security API (Facial) Developer Guide provides comprehensive instructions for configuring and utilizing facial recognition features, including managing face picture libraries and handling alarms/events. It outlines various API endpoints for searching and managing facial data, as well as legal disclaimers regarding the use of the document. The guide is structured into chapters covering an overview, configuration, event management, request URIs, and response messages.

Uploaded by

carrider
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

ISAPI - Facial

The Intelligent Security API (Facial) Developer Guide provides comprehensive instructions for configuring and utilizing facial recognition features, including managing face picture libraries and handling alarms/events. It outlines various API endpoints for searching and managing facial data, as well as legal disclaimers regarding the use of the document. The guide is structured into chapters covering an overview, configuration, event management, request URIs, and response messages.

Uploaded by

carrider
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 308

Intelligent Security API (Facial)

Developer Guide
Intelligent Security API (Facial) Developer Guide

Legal Information
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THE DOCUMENT IS PROVIDED "AS IS"
AND “WITH ALL FAULTS AND ERRORS”. OUR COMPANY MAKES NO REPRESENTATIONS OR
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. IN NO EVENT
WILL OUR COMPANY BE LIABLE FOR ANY SPECIAL, CONSEQUENTIAL, INCIDENTAL, OR INDIRECT
DAMAGES, INCLUDING, AMONG OTHERS, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS
INTERRUPTION OR LOSS OF DATA, CORRUPTION OF SYSTEMS, OR LOSS OF DOCUMENTATION,
WHETHER BASED ON BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE), OR OTHERWISE, IN
CONNECTION WITH THE USE OF THE DOCUMENT, EVEN IF OUR COMPANY HAS BEEN ADVISED OF
THE POSSIBILITY OF SUCH DAMAGES OR LOSS.

i
Intelligent Security API (Facial) Developer Guide

Contents
Chapter 1 Overview .................................................................................................................... 1
1.1 Introduction ........................................................................................................................... 1
1.2 Update History ....................................................................................................................... 1
Chapter 2 Configure Face Picture Library .................................................................................... 6
Chapter 3 Search by Face Picture .............................................................................................. 10
Chapter 4 Search by Appearance .............................................................................................. 11
Chapter 5 Alarm or Event .......................................................................................................... 13
5.1 Facial Alarm/Event and Details ............................................................................................ 13
5.2 Configure Face Capture Alarm ............................................................................................. 14
5.3 Configure Face Picture Comparison Alarm for Front-End Device ......................................... 16
5.4 Configure Face Picture Comparison Alarm for Rear-End Device .......................................... 19
5.5 Configure Stranger Detection Alarm for Rear-End Device ................................................... 22
5.6 Frequently Appeared Person Alarm ..................................................................................... 25
5.6.1 Configure Frequently Appeared Person Alarm ........................................................... 25
5.6.2 Search for Frequently Appeared Person Alarm ........................................................... 27
5.6.3 Export Frequently Appeared Person Alarm ................................................................ 29
5.7 Low Frequency Person Alarm .............................................................................................. 30
5.7.1 Configure Low Frequency Person Alarm ..................................................................... 30
5.7.2 Search for Low Frequency Person Alarm .................................................................... 32
5.7.3 Export Low Frequency Person Alarm .......................................................................... 33
5.8 Receive Alarm/Event in Arming Mode ................................................................................. 34
5.9 Receive Alarm/Event in Listening Mode .............................................................................. 36
5.10 Subscribe Alarm/Event in Arming Mode ............................................................................ 38
Chapter 6 Request URIs ............................................................................................................ 40
6.1 http://<ipAddress>:<portNo>/<url> .................................................................................... 40
6.2 /ISAPI/Event/capabilities ..................................................................................................... 40

ii
Intelligent Security API (Facial) Developer Guide

6.3 /ISAPI/Event/notification/alertStream ................................................................................. 41


6.4 /ISAPI/Event/notification/httpHosts .................................................................................... 41
6.5 /ISAPI/Event/notification/httpHosts/<ID>/test ................................................................... 43
6.6 /ISAPI/Event/notification/httpHosts/capabilities ................................................................ 43
6.7 /ISAPI/Event/notification/subscribeEvent ........................................................................... 44
6.8 /ISAPI/Event/notification/subscribeEvent/<ID> .................................................................. 44
6.9 /ISAPI/Event/notification/subscribeEventCap ..................................................................... 45
6.10 /ISAPI/Event/notification/unSubscribeEvent ..................................................................... 45
6.11 /ISAPI/Event/schedules/faceContrast ................................................................................ 46
6.12 /ISAPI/Event/schedules/faceContrast/<ID> ....................................................................... 46
6.13 /ISAPI/Event/schedules/faceLib/<ID>/<FDID> ................................................................... 47
6.14 /ISAPI/Event/schedules/faceSnap ...................................................................................... 48
6.15 /ISAPI/Event/schedules/faceSnap/<ID> ............................................................................. 48
6.16 /ISAPI/Event/schedules/HFPD ........................................................................................... 49
6.17 /ISAPI/Event/schedules/whiteListFaceContrast ................................................................. 50
6.18 /ISAPI/Event/schedules/whiteListFaceContrast/<ID> ........................................................ 50
6.19 /ISAPI/Event/triggers ......................................................................................................... 51
6.20 /ISAPI/Event/triggersCap ................................................................................................... 51
6.21 /ISAPI/Event/triggers/<eventType>-<ID> ........................................................................... 52
6.22 /ISAPI/Event/triggers/<ID>/<FDID> ................................................................................... 53
6.23 /ISAPI/Intelligent/capabilities ............................................................................................ 54
6.24 /ISAPI/Intelligent/analysisEngines ..................................................................................... 54
6.25 /ISAPI/Intelligent/analysisEngines/<ID> ............................................................................ 55
6.26 /ISAPI/Intelligent/analysisEngines/capabilities .................................................................. 55
6.27 /ISAPI/Intelligent/analysisImage/face ................................................................................ 56
6.28 /ISAPI/Intelligent/channels/<ID>/AlgParam ...................................................................... 56
6.29 /ISAPI/Intelligent/channels/<ID>/AlgParam/Capabilities .................................................. 57
6.30 /ISAPI/Intelligent/channels/<ID>/faceContrast ................................................................. 57

iii
Intelligent Security API (Facial) Developer Guide

6.31 /ISAPI/Intelligent/channels/<ID>/faceContrast/capabilities .............................................. 58


6.32 /ISAPI/Intelligent/channels/<ID>/faceContrast/faceScore/capabilities?format=json ....... 58
6.33 /ISAPI/Intelligent/channels/<ID>/faceContrast/faceScore?format=json ........................... 59
6.34 /ISAPI/Intelligent/channels/<ID>/faceRule ........................................................................ 60
6.35 /ISAPI/Intelligent/channels/<ID>/faceRule/Capabilities .................................................... 60
6.36 /ISAPI/Intelligent/channels/<ID>/intelliResource .............................................................. 61
6.37 /ISAPI/Intelligent/channels/<ID>/intelliResource/capabilities .......................................... 61
6.38 /ISAPI/Intelligent/faceContrast/faceScore/capabilities?format=json ................................ 62
6.39 /ISAPI/Intelligent/faceContrast/faceScore/default?format=json ....................................... 62
6.40 /ISAPI/Intelligent/faceContrast/faceScore?format=json ................................................... 63
6.41 /ISAPI/Intelligent/FDLib ..................................................................................................... 63
6.42 /ISAPI/Intelligent/FDLib/asyncImportDatas?format=json ................................................. 65
6.43 /ISAPI/Intelligent/FDLib/format?format=json ................................................................... 65
6.44 /ISAPI/Intelligent/FDLib/<FDID> ........................................................................................ 66
6.45 /ISAPI/Intelligent/FDLib/<FDID>/data?checkCode= .......................................................... 67
6.46 /ISAPI/Intelligent/FDLib/<FDID>/importFrom/FDLibSource .............................................. 68
6.47 /ISAPI/Intelligent/FDLib/<FDID>/picture ........................................................................... 69
6.48 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID> ................................................................ 71
6.49 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/imageData ............................................. 72
6.50 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData/<ID>?format=json ....... 73
6.51 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData?format=json ................ 74
6.52 /ISAPI/Intelligent/FDLib/<FDID>/picture/coverNumber .................................................... 75
6.53 /ISAPI/Intelligent/FDLib/<FDID>/picture/surplusCapacity ................................................ 76
6.54 /ISAPI/Intelligent/FDLib/<FDID>/progress ......................................................................... 76
6.55 /ISAPI/Intelligent/FDLib/capabilities .................................................................................. 77
6.56 /ISAPI/Intelligent/FDLib/FCSearch ..................................................................................... 77
6.57 /ISAPI/Intelligent/FDLib/FCSearch/dataPackage ............................................................... 78
6.58 /ISAPI/Intelligent/FDLib/FDSearch ..................................................................................... 79

iv
Intelligent Security API (Facial) Developer Guide

6.59 /ISAPI/Intelligent/FDLib/manualModeling/progressState?taskID= ................................... 79


6.60 /ISAPI/Intelligent/FDLib/manualModeling?FDID=&PID= ................................................... 80
6.61 /ISAPI/Intelligent/FDLib/manualModeling?range=&FDID= ............................................... 81
6.62 /ISAPI/Intelligent/FDLib/manualModelingRangeTask ........................................................ 82
6.63 /ISAPI/Intelligent/FDLib/modelingStatus?FDID=&PID= ..................................................... 82
6.64 /ISAPI/Intelligent/FDLib/modelingStatus?status= ............................................................. 83
6.65 /ISAPI/Intelligent/FDLib/modelingStatusRang ................................................................... 84
6.66 /ISAPI/Intelligent/FDLib/pictureUpload ............................................................................. 84
6.67 /ISAPI/SDT/HFPD/capabilities?format=json ....................................................................... 86
6.68 /ISAPI/SDT/HFPD/search/dataPackage/<taskID>?format=json ......................................... 86
6.69 /ISAPI/SDT/HFPD/search/dataPackage?format=json ......................................................... 87
6.70 /ISAPI/SDT/HFPD/searchTask/eventRecordData?format=json .......................................... 87
6.71 /ISAPI/SDT/HFPD/searchTask/result/recordData/<ID>?format=json ................................ 88
6.72 /ISAPI/SDT/HFPD/searchTask/result?format=json ............................................................. 88
6.73 /ISAPI/SDT/HFPD?format=json .......................................................................................... 89
6.74 /ISAPI/SDT/LFPD/capabilities?format=json ........................................................................ 89
6.75 /ISAPI/SDT/LFPD/search/dataPackage/<taskID>?format=json .......................................... 90
6.76 /ISAPI/SDT/LFPD/search/dataPackage?format=json ......................................................... 90
6.77 /ISAPI/SDT/LFPD/searchTask/eventRecordData?format=json ........................................... 91
6.78 /ISAPI/SDT/LFPD/searchTask/result/recordData?format=json .......................................... 91
6.79 /ISAPI/SDT/LFPD/searchTask/result?format=json .............................................................. 92
6.80 /ISAPI/SDT/LFPD?format=json ........................................................................................... 92
6.81 /ISAPI/SDT/Management/capabilities?format=json .......................................................... 93
6.82 /ISAPI/SDT/Management/IntelligentSearch/capabilities?format=json ............................. 93
6.83 /ISAPI/SDT/Management/IntelligentSearch/export/progress?format=json&taskID= ....... 94
6.84 /ISAPI/SDT/Management/IntelligentSearch/export/stop?format=json ............................. 94
6.85 /ISAPI/SDT/Management/IntelligentSearch/export?format=json ..................................... 94
6.86 /ISAPI/SDT/Management/IntelligentSearch?format=json ................................................. 95

v
Intelligent Security API (Facial) Developer Guide

6.87 /ISAPI/SDT/Management/Task/<taskID>?format=json ...................................................... 95


6.88 /ISAPI/SDT/Management/Task/cancel/<taskID>?format=json .......................................... 96
6.89 /ISAPI/SDT/Management/Task/pause/<taskID>?format=json .......................................... 96
6.90 /ISAPI/SDT/Management/Task/progress/<taskID>?format=json ...................................... 97
6.91 /ISAPI/SDT/Management/Task/resume/<taskID>?format=json ........................................ 97
6.92 /ISAPI/Smart/capabilities ................................................................................................... 97
6.93 /ISAPI/System/algorithmsVersion ...................................................................................... 98
6.94 /ISAPI/System/capabilities ................................................................................................. 98
6.95 /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap ............................................ 99
6.96 /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap/capabilities ......................... 99
Chapter 7 Request and Response Messages ............................................................................ 101
7.1 JSON_AsyncImportDatas ................................................................................................... 101
7.2 JSON_Cap_FaceScore_Channel .......................................................................................... 101
7.3 JSON_Cap_FaceScore_Device ............................................................................................ 103
7.4 JSON_Cap_IntelliManagement .......................................................................................... 106
7.5 JSON_EpidemicControlCap ................................................................................................ 108
7.6 JSON_EventNotificationAlert_Alarm/EventInfo ................................................................. 108
7.7 JSON_EventNotificationAlert_FaceCaptureMsg ................................................................ 109
7.8 JSON_EventNotificationAlert_FacePicComparisonMsg ..................................................... 117
7.9 JSON_EventNotificationAlert_HFPD .................................................................................. 131
7.10 JSON_EventNotificationAlert_LFPD ................................................................................. 135
7.11 JSON_EventRecord_LFPDSearchResult ............................................................................ 136
7.12 JSON_ExportProgressAndURL .......................................................................................... 136
7.13 JSON_FaceScore_Channel ................................................................................................ 137
7.14 JSON_FaceScore_Device .................................................................................................. 138
7.15 JSON_GetTaskProgress .................................................................................................... 139
7.16 JSON_HFPD ...................................................................................................................... 140
7.17 JSON_HFPDCap ................................................................................................................ 140

vi
Intelligent Security API (Facial) Developer Guide

7.18 JSON_HFPDDataPackageCond ......................................................................................... 143


7.19 JSON_HFPDEventRecordDataDescription ........................................................................ 144
7.20 JSON_HFPDPagingCond ................................................................................................... 144
7.21 JSON_HFPDRecordData ................................................................................................... 144
7.22 JSON_HFPDSearchResult ................................................................................................. 146
7.23 JSON_IntelligentSearchCap .............................................................................................. 147
7.24 JSON_IntelligentSearchCondition .................................................................................... 152
7.25 JSON_IntelliSearchExportCond ........................................................................................ 156
7.26 JSON_IntelliSearchExportProgress ................................................................................... 160
7.27 JSON_IntelligentSearchResult .......................................................................................... 160
7.28 JSON_LFPD ....................................................................................................................... 167
7.29 JSON_LFPDCap ................................................................................................................. 167
7.30 JSON_LFPDDataPackageCond .......................................................................................... 168
7.31 JSON_LFPDEventRecordDataDescription ......................................................................... 169
7.32 JSON_LFPDPagingCond .................................................................................................... 169
7.33 JSON_LFPDRecordData .................................................................................................... 170
7.34 JSON_LFPDSearchResult .................................................................................................. 171
7.35 JSON_OccurrenceDataList ............................................................................................... 172
7.36 JSON_OccurrenceData ..................................................................................................... 174
7.37 JSON_ResponseStatus ...................................................................................................... 175
7.38 JSON_StopTaskCond ........................................................................................................ 176
7.39 JSON_TaskInfo .................................................................................................................. 176
7.40 XML_AlgorithmsVersion .................................................................................................. 176
7.41 XML_AlgParam ................................................................................................................. 177
7.42 XML_AlgParamCap ........................................................................................................... 180
7.43 XML_AnalysisEngine ........................................................................................................ 183
7.44 XML_AnalysisEngineList ................................................................................................... 184
7.45 XML_AnalysisEnginesCap ................................................................................................. 184

vii
Intelligent Security API (Facial) Developer Guide

7.46 XML_Cap_faceRule .......................................................................................................... 185


7.47 XML_Cap_PicInfoOverlap ................................................................................................ 185
7.48 XML_CreateFDLibList ....................................................................................................... 186
7.49 XML_DeviceCap ............................................................................................................... 187
7.50 XML_EventCap ................................................................................................................. 196
7.51 XML_EventNotificationAlert_AlarmEventInfo ................................................................. 198
7.52 XML_EventNotificationAlert_HeartbeatInfo .................................................................... 198
7.53 XML_EventNotificationAlert_SubscriptionHeartbeat ...................................................... 199
7.54 XML_EventTrigger ............................................................................................................ 200
7.55 XML_EventTriggerCapType .............................................................................................. 201
7.56 XML_EventTriggerList ....................................................................................................... 202
7.57 XML_EventTriggerNotification ......................................................................................... 206
7.58 XML_EventTriggerNotificationList .................................................................................... 207
7.59 XML_EventTriggersCap .................................................................................................... 207
7.60 XML_FaceAppendData ..................................................................................................... 210
7.61 XML_FaceContrast ........................................................................................................... 211
7.62 XML_FaceContrastCap ..................................................................................................... 212
7.63 XML_FaceContrastList ...................................................................................................... 214
7.64 XML_FaceContrastScheduleList ....................................................................................... 214
7.65 XML_FaceContrastTargetsList .......................................................................................... 214
7.66 XML_faceRule .................................................................................................................. 215
7.67 XML_FaceSnapScheduleList ............................................................................................. 215
7.68 XML_FCSearchDescription ............................................................................................... 215
7.69 XML_FCSearchResult ....................................................................................................... 217
7.70 XML_FDCoverInfo ............................................................................................................ 220
7.71 XML_FDLibBaseCfg .......................................................................................................... 220
7.72 XML_FDLibBaseCfgList ..................................................................................................... 221
7.73 XML_FDLibCap ................................................................................................................. 222

viii
Intelligent Security API (Facial) Developer Guide

7.74 XML_FDLibInfoList ........................................................................................................... 230


7.75 XML_FDlibProgress .......................................................................................................... 231
7.76 XML_FDLibSource ............................................................................................................ 232
7.77 XML_FDModelingStatusSearchDescription ..................................................................... 232
7.78 XML_FDModelingStatusSearchResult .............................................................................. 232
7.79 XML_FDSearchDescription ............................................................................................... 233
7.80 XML_FDSearchResult ....................................................................................................... 235
7.81 XML_HFPDScheduleList ................................................................................................... 240
7.82 XML_HttpHostNotification ............................................................................................... 240
7.83 XML_HttpHostNotificationCap ......................................................................................... 241
7.84 XML_HttpHostNotificationList ......................................................................................... 242
7.85 XML_HttpHostTestResult ................................................................................................. 243
7.86 XML_ImageData ............................................................................................................... 244
7.87 XML_IntelliCap ................................................................................................................. 244
7.88 XML_IntelliResource ........................................................................................................ 247
7.89 XML_IntelliResourceCap .................................................................................................. 249
7.90 XML_MaskInfo ................................................................................................................. 251
7.91 XML_ModelingRangeList ................................................................................................. 251
7.92 XML_ModelingRangeTaskState ........................................................................................ 252
7.93 XML_ModelingStatus ....................................................................................................... 252
7.94 XML_ModelingStatusList ................................................................................................. 253
7.95 XML_PersonInfoExtend .................................................................................................... 253
7.96 XML_PersonInfoExtendList .............................................................................................. 254
7.97 XML_PicInfoOverlap ........................................................................................................ 254
7.98 XML_PictureUploadData .................................................................................................. 255
7.99 XML_PictureUploadDataList ............................................................................................ 255
7.100 XML_ResponseStatus ..................................................................................................... 256
7.101 XML_Schedule ............................................................................................................... 256

ix
Intelligent Security API (Facial) Developer Guide

7.102 XML_SmartCap .............................................................................................................. 257


7.103 XML_SubscribeEvent ...................................................................................................... 258
7.104 XML_SubscribeEventCap ............................................................................................... 259
7.105 XML_SubscribeEventResponse ...................................................................................... 260
7.106 XML_SurplusCapacity .................................................................................................... 261
7.107 WhiteListFaceContrastScheduleList ............................................................................... 262
Appendix A. Response Codes of Text Protocol ......................................................................... 263

x
Intelligent Security API (Facial) Developer Guide

Chapter 1 Overview
This manual provides the integration methods and flows based on ISAPI protocol for facial
applications.

1.1 Introduction
Face applications developed by ISAPI protocol includes the functions of face capture, face picture
comparison, face picture library management, and so on. The captured face pictures and
comparison results can be triggered as face picture alarms and uploaded by devices, and then you
can receive them via the central management system. For face picture library and face picture
comparison results, you can also upload a local face picture and search face pictures by picture.

Note
The front-end devices and rear-end-devices referred in this manual mainly refer to DeepinView
series cameras and DeepinMind series NVRs. For different product lines, the integration methods
of face picture comparison function are different, so this manual provides the corresponding alarm
configurations by differing from front-end and rear-end devices.

1.2 Update History

Summary of Changes in Version 2.6_June, 2020


Related Product: DS-2TD1217B series and DS-2TD2636B series Thermal & Optical Bi-spectrum
Network Camera
1. Extended the intelligent resource configuration capability XML_IntelliResourceCap (related URI:
GET /ISAPI/Intelligent/channels/<ID>/intelliResource/capabilities ) and intelligent resource
parameters XML_IntelliResource (related URI: /ISAPI/Intelligent/channels/<ID>/
intelliResource ):
added one sub node <backgroundIntervalUpload> (upload interval of the captured face
picture) to <FaceCaptureInfo>.
2. Extended the message about details of face capture and recognition event
JSON_EventNotificationAlert_FaceCaptureMsg (eventType: "faceCapture"):
when picture is uploaded in URL format, added six sub nodes to faceCapture:
faceSnapThermometryEnabled (whether to enable uploading captured face picture with
temperature information), currTemperature (face temperature), isAbnomalTemperature
(whether the temperature is abnormal or not), thermometryUnit (temperature unit),
alarmTemperature (temperature threshold to trigger alarm), and thermalURL (thermal picture
URL);

1
Intelligent Security API (Facial) Developer Guide

when picture is uploaded in binary format, added five sub nodes to faceCapture:
faceSnapThermometryEnabled (whether to enable uploading captured face picture with
temperature information), currTemperature (face temperature), isAbnomalTemperature
(whether the temperature is abnormal or not), thermometryUnit (temperature unit), and
alarmTemperature (temperature threshold to trigger alarm).

Summary of Changes in Version 2.0_Sept., 2019


Related Product: PanoVu PT Series Target Capture Camera in Version 5.5.23
1. Extended algorithm parameters message XML_AlgParam and algorithm configuration capability
message XML_AlgParamCap (related URIs: /ISAPI/Intelligent/channels/<ID>/AlgParam and /
ISAPI/Intelligent/channels/<ID>/AlgParam/Capabilities ):
added one node <RemoveDuplicate> (remove duplicates of captured face pictures).

Summary of Changes in Version 2.0_Aug., 2019


Related Product: DeepinMind NVR in Version 4.1.70
1. Extended the face picture library capability XML_FDLibCap (related URI: GET /ISAPI/Intelligent/
FDLib/capabilities ):
added three nodes <StrangerLibFaceAppendData> (additional information of face pictures in
stranger library), <StrangerLibFDSearchDescription> (face picture search condition), and
<isSupportOccurrencesData> (whether device supports getting face picture frequency directly);
added one sub node <strangerLibNum> (number of stranger libraries) to node <CreateFDLib> of
<CreateFDLibList>;
added one sub node <maxResultNum> (the maximum number of returned results) to node
<FaceModeCap> of <FDSearchDescription>;
added two sub nodes <occurrences> (frenquency) and <occurrencesSearchType> (frequency
search type) to node <FDSearchDescription>;
added two event types "faceCapture" (capture face picture) and "faceContrastFailure" (face
picture comparison failed) to node <eventType> of <FCSearchDescription>;
added one sub node <maxResultNum> (the maximum number of returned results) to node
<FaceModeCap> of <FCSearchDescription>.
2. Extended the information of face picture library XML_FDLibBaseCfg :
added one face picture library type "stranger" (stranger library) to node <faceLibType>.
3. Extended the condition of searching for face picture in face picture library
XML_FDSearchDescription :
added two nodes <StrangerLibFaceAppendData> (additional information of face pictures in
stranger library) and <OccurrencesInfo> (frequency information).
4. Extended result of searching for face picture in face picture library XML_FDSearchResult :
added one node <progress> (search progress);
added one sub node <occurrences> (frequency) to node <MatchElement> of <MatchList>.
5. Extended the condition of searching for face picture comparison results
XML_FCSearchDescription :
added two event types "faceCapture" (capture face picture) and "faceContrastFailure" (face
picture comparison failed) to node <eventType>.

2
Intelligent Security API (Facial) Developer Guide

6. Extended the result of searching for face picture comparison results XML_FCSearchResult :
added one node <progress> (search progress).
7. Added the function of getting or deleting frequency information of all face pictures in the face
picture library:
Get: GET /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData?format=json ;
Delete: DELETE /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData?format=json .
8. Added the function of getting or deleting the frequency information of a specified face pictures
in the face picture library:
Get: GET /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData/<ID>?format=json ;
Delete: DELETE /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData/<ID>?
format=json .
9. Extended the configuration capability message of analysis engine XML_AnalysisEnginesCap and
the analysis engine parameters message XML_AnalysisEngine :
added one engine status "lib_ver_err_abnorma" (incorrect remote engine version) to node
<mode>.
10. Extended capability of frequently appeared person detection JSON_HFPDCap (related URI:
GET /ISAPI/SDT/HFPD/capabilities?format=json ):
added one sub node "isSupportStrangerFaceLib" (whether device supports stranger library
configuration) to node "FaceLibrary";
added one node "BlackListFaceLibrary" (face picture library in blacklist for frequently appeared
person detection).
11. Extended configuration parameters of frequently appeared person detection JSON_HFPD
(related URI: /ISAPI/SDT/HFPD?format=json ):
added one node "BlackListFaceLibrary" (face picture library in blacklist for frequently appeared
person detection).
12. Extended the uploaded message of frequently appeared person alarm
JSON_EventNotificationAlert_HFPD :
added three nodes: "channelName" (channel name), "targetId" (target ID), and "FaceInfo"
(matched face picture information);
added a sub node "faceExpression" (face expression).
13. Extended the condition message of searching for frequently appeared person alarm
JSON_HFPDEventRecordDataDescription :
added one node "lowestOccurrences" (the minimum frequency).
14. Extended the search result message of frequently appeared person alarm
JSON_HFPDSearchResult :
added two sub nodes "targetId" (target ID) and "FaceInfo" (matched face picture information)
to node "targetInfo".
15. Extended the search result details message of frequently appeared person alarm
JSON_HFPDRecordData :
added three sub nodes "range" (age deviation), "value" (age), and "faceExpression" (face
expression) to node "targets".

3
Intelligent Security API (Facial) Developer Guide

16. Extended the condition of packaging frequently appeared person alarm


JSON_HFPDDataPackageCond (related URI: POST /ISAPI/SDT/HFPD/search/dataPackage?
format=json ):
added one node "lowestOccurrences" (the minimum frequency).
17. Added the function of low frequency person alarm, see Low Frequency Person Alarm for
details.

Summary of Changes in Version 2.0_May, 2019


Related Products: DS-2CD50 Series and DS-2CD70 Series Box Camera with Software Version 5.6.0;
DS-2CD51 Series, DS-2CD55 Series, DS-2CD71 Series, and DS-2CD75 Series Dome Camera with
Software Version 5.6.0; DS-2CD7A Series and DS-2CD5A Series Bullet Camera with Software Version
5.6.0
1. Extended intelligent resource configuration capability message ( XML_IntelliResourceCap ) and
intelligent resource parameter message ( XML_IntelliResource ) (related URIs: /ISAPI/
Intelligent/channels/<ID>/intelliResource/capabilities and /ISAPI/Intelligent/channels/<ID>/
intelliResource ):
added three values to the image resolution (<imgResolutionWidth> and
<imgResolutionHeight>), i.e., 2560 × 1440, 3072 × 1720, and 3840 × 2160.
2. Extended algorithm parameter message ( XML_AlgParam ) and algorithm configuration
capability message ( XML_AlgParamCap ) (related URIs: /ISAPI/Intelligent/channels/<ID>/
AlgParam and /ISAPI/Intelligent/channels/<ID>/AlgParam/Capabilities ):
added two nodes, i.e., <invalCapFilterEnable> (whether to filter invalid captured picture) and
<invalCapFilterThreshold> (threshold for filtering invalid captured picture).
3. Extended picture information overlay configuration capability ( XML_Cap_PicInfoOverlap ) and
overlay parameter message ( XML_PicInfoOverlap ) (related URIs: /ISAPI/System/Video/
inputs/channels/<ID>/picInfoOverlap/capabilities and /ISAPI/System/Video/inputs/channels/
<ID>/picInfoOverlap ):
added an information type "GPS" (device longitude and latitude information) to the sub node
<item> of node <OverlapItem> for being overlaid on picture.
4. Extended face capture alarm message with picture URL
( JSON_EventNotificationAlert_FaceCaptureMsg ) :
added four sub nodes, i.e., "blockingState" (target face shielding status), "swingAngle" (panning
angle of target face posture), "tiltAngle" (tilting angle of target face posture), and
"pupilDistance" (pupil distance of target face), to the node "faces" (human face information);
added a node "uid" (ID for event uploading).
5. Extended face capture alarm message with binary picture data
( JSON_EventNotificationAlert_FaceCaptureMsg ):
added a sub node "pId" (internal ID of captured background picture) to the node "targetAttrs"
(target attributes);
added five sub nodes, i.e., "blockingState" (target face shielding status), "swingAngle" (panning
angle of target face posture), "tiltAngle" (tilting angle of target face posture), "pupilDistance"
(pupil distance of target face), and "pId" (face thumbnail ID), to the node "faces" (human face
information);

4
Intelligent Security API (Facial) Developer Guide

added a node "uid" (ID for event uploading).

Summary of Changes in Version 2.0_July, 2018


1. Added face picture comparison function: Configure Face Picture Library , Configure Face
Picture Comparison Alarm for Front-End Device , Configure Face Picture Comparison Alarm for
Rear-End Device , and Configure Stranger Detection Alarm for Rear-End Device .
2. Added search face picture by picture function: Search by Face Picture .
3. Edited face capture function: Configure Face Capture Alarm .
4. Added independent topics and detailed description for receiving alarm in arming mode and
listening mode: Receive Alarm/Event in Arming Mode and Receive Alarm/Event in Listening
Mode .

Summary of Changes in Version 2.0_12/2017


New document.

5
Intelligent Security API (Facial) Developer Guide

Chapter 2 Configure Face Picture Library


The face picture library is a data center product, which groups the captured face pictures, person
information, lists, and so on, for management and comparison.
Steps

Figure 2-1 Programming Flow of Configuring Face Picture Library


1. Call /ISAPI/Intelligent/FDLib/capabilities by GET method to get the face picture library
capability to check whether the device supports face picture library configurations.
- If the face picture library capability XML_FDLibCap is returned, perform the following steps
to continue.
- If getting the capability failed, end the task as setting face picture library is not supported.
2. Call /ISAPI/Intelligent/FDLib by POST method to create face picture libraries.

Note
• After creating the face picture libraries, you can call the above URI by PUT, GET, or DELETE
method to edit, search, or delete the libraries.
• To delete or configure one face picture library, the following URI is available: /ISAPI/
Intelligent/FDLib/<FDID> .

3. Call the following URI(s) to import the face pictures with linked person information to the library
for front-end device (here mainly refer to the DeepinView series cameras), or rear-end device
(here mainly refer to the DeepinMind series NVRs).
- (Default) For front-end device: POST /ISAPI/Intelligent/FDLib/<FDID>/picture .

6
Intelligent Security API (Facial) Developer Guide

Note
If you want to modeling the imported face pictures manually, you can add the query
parameter to the above URI as "/ISAPI/Intelligent/FDLib/<FDID>/picture?type=concurrent"
to enable concurrency mode.
- For rear-end device: POST /ISAPI/Intelligent/FDLib/pictureUpload .

Note
If you want to modeling the imported face pictures manually, you can add the query
parameter to the above URI as "/ISAPI/Intelligent/FDLib/pictureUpload?type=concurrent" to
enable concurrency mode.

Note
• Only the face pictures with JPEG format can be imported and the maximum picture size
should be no larger than 300 KB.
• When importing, the structured face information and the picture data should be in a one-to-
one correspondence.

4. Optional: Perform the following operation(s) after configuring the face picture library.
Delete a Face Picture in Library DELETE /ISAPI/Intelligent/FDLib/<FDID>/picture/
<PID>
Add Linked Information for a Face PUT /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>
Picture
Import Face Pictures by Library PUT /ISAPI/Intelligent/FDLib/<FDID>/importFrom/
FDLibSource

Note
You can directly add a specific face picture library to
another library and the face pictures in the specific
library will be imported.

Get Number of Face Pictures in a GET /ISAPI/Intelligent/FDLib/<FDID>/picture/


Library surplusCapacity
Get Number of Overwritten Face GET /ISAPI/Intelligent/FDLib/<FDID>/picture/
Pictures in a Library coverNumber
Import/Export Data to/from a face POST/GET /ISAPI/Intelligent/FDLib/<FDID>/data?
Picture Library checkCode=

7
Intelligent Security API (Facial) Developer Guide

Note
You can call /ISAPI/Intelligent/FDLib/<FDID>/
progress by GET method to get the importing or
exporting progress.

Get/Delete Frequency Information GET or DELETE /ISAPI/Intelligent/FDLib/<FDID>/


of All Face Pictures in Face Picture picture/<PID>/occurrenceData?format=json
Library
Get/Delete Frequency Information GET or DELETE /ISAPI/Intelligent/FDLib/<FDID>/
of A Face Picture in Face Picture picture/<PID>/occurrenceData/<ID>?format=json
Library
Asynchronously Import Data to POST /ISAPI/Intelligent/FDLib/asyncImportDatas?
Face Picture Library format=json
Format All Face Picture Libraries PUT /ISAPI/Intelligent/FDLib/format?format=json
Update Face Picture of Face Picture POST /ISAPI/Intelligent/FDLib/<FDID>/picture/
Library <PID>/imageData
5. Optional: Call /ISAPI/Intelligent/FDLib/FDSearch by POST method to search the pictures in the
library by setting search conditions.

Note
You can also search the pictures by uploading a local face pictures, refer to Search by Face
Picture for details.
6. Check whether the concurrency mode is enabled according to query parameter ?
type=concurrent in the URI of step 3.

Note
• If the concurrency mode is enabled, when importing pictures to the library, the pictures will
only be stored without modeling, which can fasten the importing speed, but make the
integration process more complex, so the pictures must be modeled by manually calling the
modeling APIs. Enabling concurrency mode is only supported by front-end devices.
• By default, the concurrency mode is disabled, the pictures will be stored and modeled
automatically at same time when importing.

- If the URI of step 3 contains the query parameter ?type=concurrent, perform the following
step to continue.
- If the URI of step 3 does not contain the query parameter ?type=concurrent, the modeling
will be performed automatically and the face picture library configuration is completed.
7. Optional: Perform the following operation(s) if the concurrency mode is enabled.
Specify a Face Picture Library to GET /ISAPI/Intelligent/FDLib/manualModeling?
Model in Batch range=&FDID=

8
Intelligent Security API (Facial) Developer Guide

Get Modeling Status of a Face GET /ISAPI/Intelligent/FDLib/modelingStatus?


Picture FDID=&PID=
Model a Face Picture GET /ISAPI/Intelligent/FDLib/manualModeling?
FDID=&PID=
Search for Face Pictures by POST /ISAPI/Intelligent/FDLib/modelingStatus?
Modeling Status status=
Model Unmodeled Face Pictures of POST /ISAPI/Intelligent/FDLib/
Different Libraries manualModelingRangeTask
Get Modeling Statuses of Face GET /ISAPI/Intelligent/FDLib/manualModeling/
Pictures in Different Libraries progressState?taskID=
Search for All Modeling Statuses GET /ISAPI/Intelligent/FDLib/modelingStatusRang

9
Intelligent Security API (Facial) Developer Guide

Chapter 3 Search by Face Picture


For the configured face picture library and face picture comparison results, you can search for the
face pictures by upload a local face picture.
Before You Start
Configure face picture library, and configure face picture comparison alarm and trigger the alarm.
For the configurations, please refer to Configure Face Picture Library , Configure Face Picture
Comparison Alarm for Front-End Device , Configure Face Picture Comparison Alarm for Rear-End
Device , and Configure Stranger Detection Alarm for Rear-End Device .
Steps

Figure 3-1 API Calling Flow of Searching by Face Picture


1. Call /ISAPI/Intelligent/analysisImage/face by POST method to upload a local face picture for
search.
The uploaded face picture is modeled, and the modeling data is returned.
2. Perform one of the following operations to search for face pictures in face picture library or face
picture comparison results by the uploaded face picture.
- Call /ISAPI/Intelligent/FDLib/FDSearch by POST method to start searching for face pictures
in the library.
- Call /ISAPI/Intelligent/FDLib/FCSearch by POST method to start searching for face pictures
of comparison results.

10
Intelligent Security API (Facial) Developer Guide

Chapter 4 Search by Appearance


For the configured face picture library and face picture comparison results, you can search for the
face pictures by the face appearances, such as gender, age, glasses, tops color, baggage, and
bicycle.
Before You Start
Configure face picture library, and configure face picture comparison alarm and trigger the alarm.
For the configurations, please refer to Configure Face Picture Library , Configure Face Picture
Comparison Alarm for Front-End Device , Configure Face Picture Comparison Alarm for Rear-End
Device , and Configure Stranger Detection Alarm for Rear-End Device .
Steps

Figure 4-1 API Calling Flow of Searching by Appearance


1. Call /ISAPI/SDT/Management/capabilities?format=json by GET method to get the intelligent
management capability.
The intelligent management capability is returned in JSON_Cap_IntelliManagement .
2. Check whether the device supports searching for face pictures by appearance.

11
Intelligent Security API (Facial) Developer Guide

- It supports and continue to perform the following steps if the node isSuportIntelligentSearch
is returned in the message JSON_Cap_IntelliManagement and its value is "true".
- It does not support and please end this task if the message JSON_Cap_IntelliManagement
does not contain the node isSuportIntelligentSearch.
3. Optional: Call /ISAPI/SDT/Management/IntelligentSearch/capabilities?format=json by GET
method to get the intelligent search capability for reference.
4. Call /ISAPI/SDT/Management/IntelligentSearch?format=json by POST method to start
searching for face pictures by appearance.

Note
You should repeatedly call this URI until the value of "progress" returned in the message
JSON_IntelligentSearchResult is "100", which indicates the search is completed.
5. Optional: Export the search results.
1) Call /ISAPI/SDT/Management/IntelligentSearch/export?format=json by POST method to
export the search results.
2) Call /ISAPI/SDT/Management/IntelligentSearch/export/progress?format=json&taskID= by
GET method to get the progress of exporting search result.

Note
Only when the value of "progress" returned in the message is "100", it indicates that
exporting is completed.
3) Call /ISAPI/SDT/Management/IntelligentSearch/export/stop?format=json by PUT method
to stop exporting the search result.

12
Intelligent Security API (Facial) Developer Guide

Chapter 5 Alarm or Event


When the alarm is triggered or the event occurred, if you have configured alarm/event uploading
parameters, you can receive and process the alarm/event information in the third-party platform
or system. Two modes are available for receiving alarms, including arming mode and listening
mode.
Arming Mode
When the alarm is triggered or event occurred, the third-party platform or system can send the
request URL to the device for getting the alarm/event stream, and then the device uploads the
response message with alarm/event information.
Listening Mode
When alarm is triggered or event occurred, the device uploads the alarm information
automatically, and then the third-party platform or system can receives the alarm/event by
configuring listening port of HTTP host server.

Note
Currently, for traffic camera or capture camera, receiving alarm or event in arming mode is not
supported.

5.1 Facial Alarm/Event and Details


The facial related alarm or event types includes face capture, face picture comparison (including
stranger detection), frequently appeared detection, and low frequency person detection. Here
shows the macro definitions of each event types and the corresponding event details.

eventType Description Details


faceCapture Face capture alarm, refer to Configure JSON_EventNotificationAlert_FaceCa
Face Capture Alarm for alarm ptureMsg
configurations.
alarmResult Face picture comparison alarm JSON_EventNotificationAlert_FacePic
(including stranger detection alarm), ComparisonMsg
refer to Configure Face Picture
Comparison Alarm for Front-End
Device , Configure Face Picture
Comparison Alarm for Rear-End
Device , and Configure Stranger
Detection Alarm for Rear-End Device
for alarm configurations.

13
Intelligent Security API (Facial) Developer Guide

eventType Description Details


HFPD Frequently appeared person alarm, JSON_EventNotificationAlert_HFPD
refer to Configure Frequently
Appeared Person Alarm for alarm
configurations.
LFPD Low frequency person alarm, refer to JSON_EventNotificationAlert_LFPD
Configure Low Frequency Person
Alarm

5.2 Configure Face Capture Alarm


If a human face appears in the monitoring image during a certain time period, and the capture
rules are configured, the mounted capture camera captures the face picture automatically and you
can receive alarm with face pictures.
Steps

Figure 5-1 Programming Flow of Configuring Face Capture Alarm

14
Intelligent Security API (Facial) Developer Guide

1. Call /ISAPI/Event/capabilities by GET method to get the event capability set to check whether
the device supports face capture.
- If the event capability XML_EventCap is returned, and the node isSupportFaceSnap exists in
the capability, perform the following steps to continue.
- If getting capability failed or the node isSupportFaceSnap does not exist in the capability, end
this task as the face picture comparison function is not supported.
2. Optional: Call the following URI(s) to get the configuration capabilities of face capture, including
picture, algorithm, and rule configuration.
Picture configuration GET /ISAPI/Intelligent/channels/<ID>/intelliResource/
capability capabilities
Algorithm configuration GET /ISAPI/Intelligent/channels/<ID>/AlgParam/
capability Capabilities
Rule configuration capability GET /ISAPI/Intelligent/channels/<ID>/faceRule/
Capabilities
3. Call the following URI(s) to set face capture configurations, including picture, algorithm, and rule
configurations.

Note
Before setting the configurations, you'd better call the URI by GET method to get default or
configured parameters for reference.

Set picture parameters PUT /ISAPI/Intelligent/channels/<ID>/intelliResource


Set algorithm PUT /ISAPI/Intelligent/channels/<ID>/AlgParam
parameters
Note
The algorithm parameters of face capture is referred in the node
<FaceParam> of XML_AlgParam .

Set rule parameters PUT /ISAPI/Intelligent/channels/<ID>/faceRule


4. Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method to set linkage actions for face
capture alarm.

Note
• To receive the alarm from the central management system, the linkage action must be set to
"center" (upload alarm to alarm center).
• Before setting the linkage action, you'd better call the URI by GET method to get default or
configured parameters for reference.

5. Call /ISAPI/Event/schedules/faceSnap/<ID> by PUT to set arming schedule for face capture.

15
Intelligent Security API (Facial) Developer Guide

Note
Before setting the arming schedule, you'd better call the URIs by GET method to get default or
configured parameters for reference.
6. Optional: Set eventType to "faceCapture" and receive the captured face picture and related
alarm information in arming mode (see Receive Alarm/Event in Arming Mode for details).
The face capture alarm information and captured face picture are returned in
JSON_EventNotificationAlert_FaceCaptureMsg .

5.3 Configure Face Picture Comparison Alarm for Front-End Device


The face picture comparison alarm feature enables the system to trigger alarm if the similarity of
detected face picture and the face picture in the library reaches a threshold. To trigger and receive
the face picture comparison alarm of front-end devices (here mainly refers to DeepinView series
cameras), you should configure the alarm parameters, such as set alarm rule, alarm linkage
actions, and arming schedule.
Before You Start
Configure the face picture library for comparison, see Configure Face Picture Library for details.

16
Intelligent Security API (Facial) Developer Guide

Steps

Figure 5-2 Programming Flow of Configuring Face Picture Comparison Alarm for Front-End Device
1. Call /ISAPI/Event/capabilities by GET method to get the device event capability to check
whether the face picture comparison function is supported.
- If the event capability XML_EventCap is returned, and the node isSupportFaceContrast exists
in the capability, perform the following steps to continue.
- If getting event capability failed or the node isSupportFaceContrast does not exist in the
capability, end this task as the face picture comparison function is not supported.
2. Optional: Call /ISAPI/System/algorithmsVersion by GET method to get the algorithm library
version information of face picture comparison.
3. Call /ISAPI/Intelligent/channels/<ID>/faceContrast/capabilities by GET method to get the rule
configuration capability of face picture comparison to check whether the rule configurations of
face picture comparison is supported.
- If the capability XML_FaceContrastCap is returned, get the supported configuration fields
and perform the following steps to continue.
- If getting capability failed, end the task as setting face picture comparison rule is not
supported.
4. Call /ISAPI/Intelligent/channels/<ID>/faceContrast by PUT method to set the face picture
comparison rules, such as similarity threshold.

17
Intelligent Security API (Facial) Developer Guide

Note
The similarity threshold is between 0 and 100, the higher the threshold, the more accurate the
comparison is.
5. Optional: Display the capture information or analysis results on the face picture linked to the
face picture comparison alarm.
1) Call /ISAPI/System/capabilities by GET method to get the device capability set to check
whether the picture information overlay is supported according to
<isSupportPicInfoOverlap> in XML_DeviceCap .
2) Call /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap/capabilities by GET
method to get the capability of face picture information overlay.
3) Call /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap by PUT method to set the
configurations of face picture information overlay.
6. Call /ISAPI/Event/triggersCap by GET method to get the linkage action capability to check
whether the face picture comparison alarm supports setting linkage actions and get the
supported linkage actions.
- If the capability XML_EventTriggersCap is returned, and the node FaceLibTriggerCap exists in
the capability, get the supported linkage actions and perform the following steps to continue.
- If getting capability failed or the node FaceLibTriggerCap does not exist in the capability, end
the task as setting linkage actions is not supported.
7. Perform one of the following operations to set the linkage action(s) for face picture comparison
alarm(s).
- Call /ISAPI/Event/triggers/<ID>/<FDID> by PUT method to set linkage action for one video
channel's face picture comparison alarm.
- Call /ISAPI/Event/triggers by PUT method to set linkage actions in batch for multiple video
channels' face picture comparison alarm.
- Set linkage action by accessing the device via web browser, refer to the user manual of the
corresponding device for details.

Note
• To receive the alarm from the central management system, the linkage action must be set to
"center" (upload alarm to alarm center).
• Before setting the linkage action, you'd better call the URI by GET method to get the default
or configured parameters for reference.

8. Perform one of the following operations to set the arming schedule for face picture comparison
alarm.
- Call /ISAPI/Event/schedules/faceLib/<ID>/<FDID> by PUT method to set arming schedule
for one video channel's face picture comparison alarm.
- Set the arming schedule by accessing the device via web browser, refer to the user manual of
the corresponding device for details.

18
Intelligent Security API (Facial) Developer Guide

Note
Before setting the arming schedule, you'd better call the URI by GET method to get the existing
configurations for reference.
9. Optional: Perform the following operation(s) after configuring face picture comparison alarm
for front-end device.
Receive Alarm Set eventType to "alarmResult" and receive the captured face pictures
and related alarm information in arming mode or listening. See Receive
Alarm/Event in Arming Mode and Receive Alarm/Event in Listening
Mode for details.

Note
The face picture comparison alarm information is returned in
JSON_EventNotificationAlert_FacePicComparisonMsg .

Search for Call /ISAPI/Intelligent/FDLib/FCSearch by POST method to search for


Comparison the face picture comparison results in the face picture library.
Results
Export Call /ISAPI/Intelligent/FDLib/FCSearch/dataPackage by POST method
Comparison to export the matched results to the local storage.
Results

5.4 Configure Face Picture Comparison Alarm for Rear-End Device


The face picture comparison alarm feature enables the system to trigger alarm if the similarity of
detected face picture and the face picture in the library reaches a threshold. To trigger and receive
the face picture comparison alarm of rear-end devices (here mainly refers to DeepinMind series
NVRs), you should configure the alarm parameters, such as set alarm rule, alarm linkage actions,
and arming schedule.
Before You Start
Configure the face picture library for comparison, see Configure Face Picture Library for details.

19
Intelligent Security API (Facial) Developer Guide

Steps

Figure 5-3 Programming Flow of Configuring Face Picture Comparison Alarm for Rear-End Device
1. Call /ISAPI/Event/capabilities by GET method to get the device event capability to check
whether the face picture comparison function is supported.
- If the event capability XML_EventCap is returned, and the node isSupportFaceContrast exists
in the capability, perform the following steps to continue.
- If getting event capability failed or the node isSupportFaceContrast does not exist in the
capability, end this task as the face picture comparison function is not supported.
2. Optional: Call /ISAPI/System/algorithmsVersion by GET method to get the algorithm library
version information of face picture comparison.
3. Call /ISAPI/Intelligent/channels/<ID>/faceContrast/capabilities by GET to get the rule
configuration capability of face picture comparison to check whether the rule configurations of
face picture comparison is supported.
- If the capability XML_FaceContrastCap is returned, get the supported configuration fields
and perform the following steps to continue.
- If getting capability failed, end the task as setting face picture comparison rule is not
supported.
4. Call /ISAPI/Intelligent/channels/<ID>/faceContrast by PUT method to set the face picture
comparison rules, such as similarity threshold.

20
Intelligent Security API (Facial) Developer Guide

Note
The similarity threshold is between 0 and 100, the higher the threshold, the more accurate the
comparison is.
5. Optional: Display the capture information or analysis results on the face picture linked to the
face picture comparison alarm.
1) Call /ISAPI/System/capabilities by GET method to get the device capability to check whether
the picture information overlay is supported according to <isSupportPicInfoOverlap> in
XML_DeviceCap .
2) Call /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap/capabilities by GET
method to get the capability of face picture information overlay.
3) Call /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap by PUT method to set the
configurations of face picture information overlay.
6. Call /ISAPI/Event/triggersCap by GET method to get the linkage action capability to check
whether the face picture comparison alarm supports setting linkage actions and get the
supported linkage actions.
- If the capability XML_EventTriggersCap is returned, and the node FaceContrastTriggerCap
exists in the capability, get the supported linkage actions and perform the following steps to
continue.
- If getting capability failed or the node FaceContrastTriggerCap does not exist in the
capability, end the task as setting linkage actions is not supported.
7. Perform one of the following operations to set the linkage action(s) for face picture comparison
alarm(s).
- Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method to set linkage action for one
video channel's face picture comparison alarm.
- Call /ISAPI/Event/triggers by PUT method to set linkage actions in batch for multiple video
channels' face picture comparison alarm.
- Set linkage action by accessing the device via web browser, refer to the user manual of the
corresponding device for details.

Note
• To receive the alarm from the central management system, the linkage action must be set to
"center" (upload alarm to alarm center).
• Before setting the linkage action, you'd better call the URI by GET method to get the default
or configured parameters for reference.

8. Perform one of the following operations to set the arming schedule(s) for face picture
comparison alarm(s).
- Call /ISAPI/Event/schedules/faceContrast/<ID> by PUT method to set arming schedule for
one video channel's face picture comparison alarm.
- Call /ISAPI/Event/schedules/faceContrast by PUT method to set arming schedule in batch
for multiple video channels' face picture comparison alarm.

21
Intelligent Security API (Facial) Developer Guide

- Set the arming schedule by accessing the device via web browser, refer to the user manual of
the corresponding device for details.

Note
Before setting the arming schedule, you'd better call the URI by GET method to get the existing
configurations for reference.
9. Optional: Perform the following operation(s) after configuring face picture comparison alarm
for rear-end device.
Receive Alarm Set eventType to "alarmResult" and receive the captured face pictures
and related alarm information in arming mode. See Receive Alarm/
Event in Arming Mode for details.

Note
The face picture comparison alarm information is returned in
JSON_EventNotificationAlert_FacePicComparisonMsg .

Search for Call /ISAPI/Intelligent/FDLib/FCSearch by POST method to search for


Comparison the face picture comparison results in the face picture library.
Results
Export Call /ISAPI/Intelligent/FDLib/FCSearch/dataPackage by POST method
Comparison to export the matched results to the local storage.
Results

5.5 Configure Stranger Detection Alarm for Rear-End Device


If the similarity is low and does not reach a threshold after comparing the captured face picture
with the face picture library, the stranger detection alarm will be triggered, and this alarm is only
available for rear-end devices (here mainly refers to DeepinMind series NVRs). To trigger and
receive the stranger detection alarm, you should configure the alarm parameters, such as set alarm
rule, alarm linkage actions, and arming schedule.
Before You Start
Configure the face picture library for comparison, see Configure Face Picture Library for details.

22
Intelligent Security API (Facial) Developer Guide

Steps

Figure 5-4 Programming Flow of Configuring Stranger Detection Alarm for Rear-End Device
1. Call /ISAPI/Event/capabilities by GET method to get the device event capability to check
whether the face picture comparison function is supported.
- If the event capability XML_EventCap is returned, and the node isSupportFaceContrast exists
in the capability, perform the following steps to continue.
- If getting capability failed or the node isSupportFaceContrast does not exist in the capability,
end this task as the face picture comparison function is not supported.
2. Optional: Call /ISAPI/System/algorithmsVersion by GET method to get the algorithm library
version information of face picture comparison.
3. Call /ISAPI/Intelligent/channels/<ID>/faceContrast/capabilities by GET method to get the rule
configuration capability of face picture comparison to check whether the rule configurations of
face picture comparison is supported.
- If the capability XML_FaceContrastCap is returned, get the supported configuration fields
and perform the following steps to continue.
- If getting capability failed, end the task as setting face picture comparison rule is not
supported.
4. Call /ISAPI/Intelligent/channels/<ID>/faceContrast by PUT to set the face picture comparison
rules, such as similarity threshold.

23
Intelligent Security API (Facial) Developer Guide

Note
The similarity threshold is between 0 and 100, the higher the threshold, the more accurate the
comparison is.
5. Optional: Display the capture information or analysis results on the face picture linked to the
face picture comparison alarm.
1) Call /ISAPI/System/capabilities by GET method to get the device capability to check whether
the picture information overlay is supported according to <isSupportPicInfoOverlap> in
XML_DeviceCap .
2) Call /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap/capabilities by GET
method to get the capability of face picture information overlay.
3) Call /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap by PUT to set the
configurations of face picture information overlay.
6. Call /ISAPI/Event/triggersCap by GET method to get the linkage action capability to check
whether the stranger detection alarm supports setting linkage actions and get the supported
linkage actions.
- If the capability XML_EventTriggersCap is returned, and the node
WhiteListFaceContrastTriggerCap exists in the capability, get the supported linkage actions
and perform the following steps to continue.
- If getting capability failed or the node WhiteListFaceContrastTriggerCap does not exist in the
capability, end the task as setting linkage actions is not supported.
7. Perform one of the following operations to set the linkage action(s) for stranger detection
alarm(s).
- Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method to set linkage action for one
video channel's stranger detection alarm.
- Call /ISAPI/Event/triggers by PUT method to set linkage actions in batch for multiple video
channels' stranger detection alarm.
- Set linkage action by accessing the device via web browser, refer to the user manual of the
corresponding device for details.

Note
• To receive the alarm from the central management system, the linkage action must be set to
"center" (upload alarm to alarm center).
• Before setting the linkage action, you'd better call the URI by GET method to get the default
or configured parameters for reference.

8. Perform one of the following operations to set the arming schedule(s) for stranger detection
alarm(s).
- Call /ISAPI/Event/schedules/whiteListFaceContrast/<ID> by PUT method to set arming
schedule for one video channel's stranger detection alarm.
- Call /ISAPI/Event/schedules/whiteListFaceContrast by PUT method to set arming schedule
in batch for multiple video channels' stranger detection alarm.

24
Intelligent Security API (Facial) Developer Guide

- Set the arming schedule by accessing the device via web browser, refer to the user manual of
the corresponding device for details.

Note
Before setting the arming schedule, you'd better call URI by GET method to get the existing
configurations for reference.
9. Optional: Perform the following operation(s) after configuring stranger detection alarm for rear-
end device.
Receive Alarm Set eventType to "alarmResult" and receive the captured face pictures
and related alarm information in arming mode. See Receive Alarm/
Event in Arming Mode for details.

Note
The face picture comparison alarm information is returned in
JSON_EventNotificationAlert_FacePicComparisonMsg .

Search for Call /ISAPI/Intelligent/FDLib/FCSearch by POST method to search for


Comparison the face picture comparison results in the face picture library.
Results
Export Call /ISAPI/Intelligent/FDLib/FCSearch/dataPackage by POST method
Comparison to export the matched results to the local storage.
Results

5.6 Frequently Appeared Person Alarm


Frequently appeared person detection can calculate the frequency of person appearing in the
monitoring scene during a certain time period, and triggers an alarm if the frequency reaches the
configured threshold. It is widely applied to enterprise buildings, banks, hospitals, and so on, and
helps to find out the suspicious person.

5.6.1 Configure Frequently Appeared Person Alarm


To trigger and receive the frequently appeared person alarm, you should configure the alarm
parameters, such as setting alarm rule, alarm linkage actions, and arming schedule.
Before You Start
Make sure you have created and configured a face picture library, see Configure Face Picture
Library for details.

25
Intelligent Security API (Facial) Developer Guide

Steps

Figure 5-5 Programming Flow of Configuring Frequently Appeared Person Alarm

26
Intelligent Security API (Facial) Developer Guide

1. Call /ISAPI/Smart/capabilities by GET method to get the smart configuration capability to check
whether the device supports frequently appeared person detection.
The smart configuration capability is returned in the message XML_SmartCap .
If supports, the node <isSupportHFPD> is returned in the message and its value is "true", and
then you can perform the following steps.
Otherwise, frequently appeared person detection is not supported by device, please end this
task.
2. Optional: Call /ISAPI/SDT/HFPD/capabilities?format=json by GET method to get capabilities of
frequently appeared person detection to check the supported parameters.
3. Optional: Call /ISAPI/SDT/HFPD?format=json by GET method to get default or configured
parameters of frequently appeared person detection for reference.
4. Call /ISAPI/SDT/HFPD?format=json by PUT method to set frequently appeared person
detection.
5. Optional: Call /ISAPI/Event/triggersCap by GET method to get linkage action capability to check
whether the frequently appeared person detection supports setting linkage actions and get the
supported parameters.
6. Optional: Call /ISAPI/Event/triggers/<eventType>-<ID> by GET and set <ID> to "HFPD" (i.e., /
ISAPI/Event/Trigger/HFPD) for getting default or configured linkage action of frequently
appeared person detection for reference.
7. Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method and set <ID> to "HFPD" (i.e., /
ISAPI/Event/Trigger/HFPD) for setting linkage action for frequently appeared person detection.
8. Optional: Call /ISAPI/Event/schedules/HFPD by GET method to get default or configured
arming schedule of frequently appeared person detection for reference.
9. Call /ISAPI/Event/schedules/HFPD by PUT method to set arming schedule for frequently
appeared person detection.
10. Optional: Set the alarm category (Type) in the message XML_SubscribeEvent to "HFPD" and
subscribe or receive the frequently appeared person alarm in arming mode (see Receive
Alarm/Event in Arming Mode or Subscribe Alarm/Event in Arming Mode for details).
The alarm details are returned in the message JSON_EventNotificationAlert_HFPD .

5.6.2 Search for Frequently Appeared Person Alarm


You can search for frequently appeared person alarm and get the alarm details.

27
Intelligent Security API (Facial) Developer Guide

Steps

Figure 5-6 Programming Flow of Searching for Frequently Appeared Person Alarm
1. Optional: Call /ISAPI/SDT/HFPD/capabilities?format=json by GET method to get the capability
of frequently appeared person detection to check if device supports searching for frequently
appeared person alarm.
The capability of frequently appeared person detection is returned in the message
JSON_HFPDCap .
If supports, the node <eventRecordDataSearch> is returned in the message and its value is
"true", and then you can perform the following steps.
Otherwise, searching for frequently appeared person alarm is not supported by device, please
end this task.
2. Call /ISAPI/SDT/HFPD/searchTask/eventRecordData?format=json by POST method to set the
condition of searching for frequently appeared person alarm and submit the task.
The task information (task ID) is returned in the message JSON_TaskInfo .
3. Optional: Perform the following operation(s) after submitting the search task.
Pause Task GET /ISAPI/SDT/Management/Task/pause/<taskID>?format=json
Resume Task GET /ISAPI/SDT/Management/Task/resume/<taskID>?format=json
Delete Task DELETE /ISAPI/SDT/Management/Task/<taskID>?format=json
Cancel Task GET /ISAPI/SDT/Management/Task/cancel/<taskID>?format=json
4. Call /ISAPI/SDT/Management/Task/progress/<taskID>?format=json by GET method to get the
search progress.

28
Intelligent Security API (Facial) Developer Guide

Note
Only when the progress equals to "100", you can perform the following steps.
5. Call /ISAPI/SDT/HFPD/searchTask/result?format=json by POST method to get search result of
frequently appeared person alarm when the progress equals to "100".
6. Call /ISAPI/SDT/HFPD/searchTask/result/recordData/<ID>?format=json by GET method to get
search result details of frequently appeared person alarm.

5.6.3 Export Frequently Appeared Person Alarm


You can export the searched records of frequently appeared person alarm and get the URL of
exported data.
Steps

Figure 5-7 Programming Flow of Exporting Frequently Appeared Person Alarm


1. Optional: Call /ISAPI/SDT/HFPD/capabilities?format=json by GET method to get the capability
of frequently appeared person detection to check if device supports exporting frequently
appeared person alarm.
The capability of frequently appeared person detection is returned in the message
JSON_HFPDCap .
If supports, the node <isSupportDataPackage> is returned in the message and its value is
"true", and then you can perform the following steps.
Otherwise, frequently appeared person detection is not supported by device, please end this
task.
2. Call /ISAPI/SDT/HFPD/search/dataPackage?format=json by POST to set the condition of
exporting frequently appeared person alarm and submit the task.

29
Intelligent Security API (Facial) Developer Guide

The task information (task ID) is returned in the message JSON_TaskInfo .


3. Optional: Perform the following operation(s) after submitting the exporting task.
Pause Task GET /ISAPI/SDT/Management/Task/pause/<taskID>?format=json
Resume Task GET /ISAPI/SDT/Management/Task/resume/<taskID>?format=json
Delete Task DELETE /ISAPI/SDT/Management/Task/<taskID>?format=json
Cancel Task GET /ISAPI/SDT/Management/Task/cancel/<taskID>?format=json
4. Call /ISAPI/SDT/Management/Task/progress/<taskID>?format=json by GET method to get the
exporting progress.

Note
Only when the progress equals to "100", you can perform the following steps.
5. Call /ISAPI/SDT/HFPD/search/dataPackage/<taskID>?format=json by GET method to get
exported frequently appeared person alarm information when the progress equals to "100".

5.7 Low Frequency Person Alarm


Low frequency person detection can calculate the person appearing frequency of a specified time
period, and trigger an alarm if the frequency does not reach the configured threshold. It can be
applied to the community for paying attention on the elderly person without family, when the
appearing frequency of an old person is lower than the configured frequency, an alarm will be
triggered to notify the community staff to visit the person.

5.7.1 Configure Low Frequency Person Alarm


To trigger and receive the low frequency person alarm, you should configure the alarm parameters,
such as setting alarm rule and alarm linkage actions.
Before You Start
Make sure you have created and configured a face picture library, see Configure Face Picture
Library for details.

30
Intelligent Security API (Facial) Developer Guide

Steps

Figure 5-8 Programming Flow of Configuring Low Frequency Person Alarm


1. Call /ISAPI/Smart/capabilities by GET method to get the smart configuration capability to check
whether the device supports low frequency person detection.
The smart configuration capability is returned in the message XML_SmartCap .
If supports, the node <isSupportLFPD> is returned in the message and its value is "true", and
then you can perform the following steps.
Otherwise, low frequency person detection is not supported by device, please end this task.
2. Optional: Call /ISAPI/SDT/LFPD/capabilities?format=json by GET method to get capabilities of
low frequency person detection to check the supported parameters.
3. Optional: Call /ISAPI/SDT/LFPD?format=json by GET method to get default or configured
parameters of low frequency person detection for reference.
4. Call /ISAPI/SDT/LFPD?format=json by PUT method to set low frequency person detection.
5. Optional: Call /ISAPI/Event/triggersCap by GET method to get linkage action capability to check
whether the low frequency person detection supports setting linkage actions and get the
supported parameters.
6. Optional: Call /ISAPI/Event/triggers/<eventType>-<ID> by GET method and set <ID> to "LFPD"
(i.e., /ISAPI/Event/Trigger/LFPD) for getting default or configured linkage action of low
frequency person detection for reference.
7. Call /ISAPI/Event/triggers/<eventType>-<ID> by PUT method and set <ID> to "LFPD" (i.e., /
ISAPI/Event/Trigger/LFPD) for setting linkage action for low frequency person detection.

31
Intelligent Security API (Facial) Developer Guide

8. Optional: Set the alarm category (Type) in the message XML_SubscribeEvent to "LFPD" and
subscribe the low frequency person alarm in arming mode (see Subscribe Alarm/Event in
Arming Mode for details) for receiving the alarm information when it triggered.
The alarm details are returned in the message JSON_EventNotificationAlert_LFPD .

5.7.2 Search for Low Frequency Person Alarm


You can search for the low frequency person alarm and get alarm details.
Steps

Figure 5-9 Programming Flow of Searching for Low Frequency Person Alarm
1. Optional: Call /ISAPI/SDT/LFPD/capabilities?format=json by GET to get the capability of low
frequency person detection to check if device supports searching for low frequency person
alarm.
The capability of low frequency person detection is returned in the message JSON_LFPDCap .
If supports, the node <isSupportEventRecordDataSearch> is returned in the message and its
value is "true", and then you can perform the following steps.
Otherwise, searching for low frequency person alarm is not supported by device, please end
this task.
2. Call /ISAPI/SDT/LFPD/searchTask/eventRecordData?format=json by POST method to set the
condition of searching for low frequency person alarm and submit the task.
3. Call /ISAPI/SDT/LFPD/searchTask/result?format=json by POST method to get search result of
low frequency person alarm.
4. Call /ISAPI/SDT/LFPD/searchTask/result/recordData?format=json by GET method to get search
result details of low frequency person alarm when the progress equals to "100".

32
Intelligent Security API (Facial) Developer Guide

5.7.3 Export Low Frequency Person Alarm


You can export the searched records of low frequency person alarm and get the URL of exported
data.
Steps

Figure 5-10 Programming Flow of Exporting Low Frequency Person Alarm


1. Optional: Call /ISAPI/SDT/LFPD/capabilities?format=json by GET to get the capability of low
frequency person detection to check if device supports exporting low frequency person alarm.
The capability of low frequency person detection is returned in the message JSON_LFPDCap .
If supports, the node <isSupportDataPackage> is returned in the message and its value is
"true", and then you can perform the following steps.
Otherwise, exporting low frequency person alarm is not supported by device, please end this
task.
2. Call /ISAPI/SDT/LFPD/search/dataPackage?format=json by POST method to set the condition
of exporting low frequency person alarm and submit the task.
The task information (task ID) is returned in the message JSON_TaskInfo .
3. Optional: Perform the following operation(s) after submitting the exporting task.
Pause Task GET /ISAPI/SDT/Management/Task/pause/<taskID>?format=json
Resume Task GET /ISAPI/SDT/Management/Task/resume/<taskID>?format=json
Delete Task DELETE /ISAPI/SDT/Management/Task/<taskID>?format=json
Cancel Task GET /ISAPI/SDT/Management/Task/cancel/<taskID>?format=json
4. Call /ISAPI/SDT/Management/Task/progress/<taskID>?format=json by GET method to get the
exporting progress.

33
Intelligent Security API (Facial) Developer Guide

Note
Only when the progress equals to "100", you can perform the following steps.
5. Call /ISAPI/SDT/LFPD/search/dataPackage/<taskID>?format=json by GET to get exported low
frequency person alarm information when the progress equals to "100".

5.8 Receive Alarm/Event in Arming Mode


When alarm is triggered or event occurred, and the alarm/event linkage is configured, you can
send request message to device for getting the alarm/event stream, and then the device uploads
the corresponding response message, which contains alarm/event information.
Before You Start
Make sure you have configured alarm/event and triggered the alarm/event. For configuring alarm/
event parameters, refer to the some typical applications of alarm/event configuration.
Steps

Figure 5-11 API Calling Flow of Receiving Alarm/Event in Arming Mode


1. Call /ISAPI/Event/notification/alertStream by GET to get the alarm/event stream.
2. Check if the heartbeat receiving timed out or network disconnected.
- If the heartbeat keeps alive and the network still connected, perform the following step to
continue.
- If the heartbeat receiving timed out or network disconnected, perform the above step
repeatedly until reconnected.
3. Receive and process the alarm/event information.

34
Intelligent Security API (Facial) Developer Guide

Example
Sample Code of Receiving Alarm/Event in Arming Mode (without Binary Picture Data)
GET /ISAPI/Event/notification/alertStream HTTP/1.1
Host: data_gateway_ip
Connection: Keep-Alive

HTTP/1.1 401 Unauthorized


Date: Sun, 01 Apr 2018 18:58:53 GMT
Server:
Content-Length: 178
Content-Type: text/html
Connection: keep-alive
Keep-Alive: timeout=10, max=99
WWW-Authenticate: Digest qop="auth",
realm="IP Camera(C2183)",
nonce="4e5468694e7a42694e7a4d364f4449354d7a6b354d54513d",
stale="FALSE"

GET /ISAPI/Event/notification/alertStream HTTP/1.1


Authorization: Digest username="admin",
realm="IP Camera(C2183)",
nonce="4e5468694e7a42694e7a4d364f4449354d7a6b354d54513d",
uri="/ISAPI/Event/notification/alertStream",
cnonce="3d183a245b8729121ae4ca3d41b90f18",
nc=00000001,
qop="auth",
response="f2e0728991bb031f83df557a8f185178"
Host: 10.6.165.192

HTTP/1.1 200 OK
MIME-Version: 1.0
Connection: close
Content-Type: multipart/mixed; boundary=<frontier>

--<frontier>
Content-Type: application/xml; charset="UTF-8"
Content-Length: text_length

<EventNotificationAlert/>
--<frontier>

Note
Some alarm data is in JSON format, so the Content-Type may be "application/xml" or "application/
json".

35
Intelligent Security API (Facial) Developer Guide

5.9 Receive Alarm/Event in Listening Mode


When alarm is triggered or event occurred, and the alarm/event linkage is configured, the device
uploads the alarm/event information automatically, you can receive the alarm/event by
configuring the listening port of HTTP host server.
Before You Start
Make sure you have configured alarm/event and triggered the alarm/event. For configuring alarm/
event parameters, refer to the some typical applications of alarm/event configuration.
Steps

Figure 5-12 API Calling Flow of Receiving Alarm/Event in Listening Mode


1. Optional: Call /ISAPI/Event/notification/httpHosts/capabilities by GET method to get the
capability of HTTP listening server.
2. Call /ISAPI/Event/notification/httpHosts by PUT method to set the parameters (including
listening address and listening port) of HTTP listening server.

Note
Before setting the listening server, you'd better call the URI by GET method to get the default or
configured parameters for reference.
3. Call /ISAPI/Event/notification/httpHosts/<ID>/test by POST method to check if the listening
server is working normally.
4. Call http://<ipAddress>:<portNo>/<url> by POST method to receive the alarm/event
information from the listening server.
Example
Sample Code of Receiving Alarm/Event in Listening Mode

36
Intelligent Security API (Facial) Developer Guide

• with Binary Picture Data


//Request
POST requestUrl HTTP/1.1
Host: data_gateway_ip:port
Accept-Language: en-US
Date: YourDate
Content-Type: multipart/form-data;boundary=<frontier>
Content-Length: body_length
Connection: keep-alive

--<frontier>
Content-Disposition: form-data; name="Event_Type"
Content-Type: text/xml
Content-Length: xml_length

<EventNotificationAlert/>
--<frontier>
Content-Disposition: form-data; name="Picture_Name"
Content-Length: image_length
Content-Type: image/pjpeg

[binary picture data]


--<frontier>--

//Response
HTTP/1.1 HTTP statusCode
Date: YourDate
Connection: close
• without Binary Picture Data
//Request
POST requestUrl HTTP/1.1
Host: data_gateway_ip:port
Accept-Language: en-US
Date: YourDate
Content-Type: text/xml;
Content-Length: text_length
Connection: Close

<EventNotificationAlert/>

//Response
HTTP/1.1 HTTP statusCode
Date: YourDate
Connection: close

Note
• The Host is the HTTP server domain name or IP address and port No.
• Some alarm data is in JSON format, so the Content-Type may be "text/xml" or "text/json".

37
Intelligent Security API (Facial) Developer Guide

5.10 Subscribe Alarm/Event in Arming Mode


For arming mode, the platform will connect to the devices automatically and send commands to
the devices for uploading alarm/event information when the alarm is triggered or event occurred.
To reduce the CPU and bandwidth usage of platform, and improve the device processing
performance, the platform can subscribe alarm/event types to receive alarm/event information as
required.
Before You Start
Configure alarm/event and trigger the alarm/event. For configuring alarm/event parameters, refer
to the some typical applications of alarm/event configuration.
Steps

Figure 5-13 Programming Flow of Subscribing Alarm/Event in Arming Mode


1. Call /ISAPI/System/capabilities by GET method to get device capability to check whether the
alarm/event subscription is supported.
The device capability is returned in the message XML_DeviceCap .

38
Intelligent Security API (Facial) Developer Guide

If the node <isSupportSubscribeEvent> is also returned in the message and its value is "true", it
indicates that alarm/event subscription is supported by device, and you can continue to
perform the following steps;
Otherwise, alarm/event subscription is not supported, please end the task.
2. Call /ISAPI/Event/notification/subscribeEventCap by GET method to get subscription capability
to get supported alarm/event types.
The alarm/event subscription capability is returned in the message XML_SubscribeEventCap .
3. Call /ISAPI/Event/notification/subscribeEvent by POST method to enable alarm/event
uploading.

Note
The sub node <type> of event type list (EventList) in the request message XML_SubscribeEvent
can be set to different values (refer to Supported Alarm/Event Types for details) to subscribe
different types of alarm/event information.
4. Optional: Call /ISAPI/Event/notification/subscribeEvent/<ID> by GET method to get subscribed
alarm/event types for reference.
5. Call /ISAPI/Event/notification/subscribeEvent/<ID> by PUT to set alarm/event type to
subscribe.

Note
The sub node <type> of event type list (EventList) in the request message XML_SubscribeEvent
can be set to different values (refer to Supported Alarm/Event Types for details) to subscribe
different types of alarm/event information.
6. Call /ISAPI/Event/notification/alertStream by GET method to receive the alarm/event
information.
7. Check if the heartbeat receiving timed out or network disconnected.
- If the heartbeat keeps alive and the network still connected, perform the following step to
continue.
- If the heartbeat receiving timed out or network disconnected, perform the above step
repeatedly until reconnected.
8. Call /ISAPI/Event/notification/unSubscribeEvent by PUT method to cancel subscribing alarm/
event.

39
Intelligent Security API (Facial) Developer Guide

Chapter 6 Request URIs

6.1 http://<ipAddress>:<portNo>/<url>
HTTP listening sever sends alarm information to alarm center.

Request URL Definition


Table 6-1 POST http://<ipAddress>:<portNo>/<url>
Method POST
Description HTTP listening sever sends alarm information to alarm center.
Query None
Request None
Response Succeeded: XML_EventNotificationAlert_AlarmEventInfo or
JSON_EventNotificationAlert_Alarm/EventInfo
Failed: XML_ResponseStatus

Remarks
• The <ipAddress> in the request URL refers to the IP address or domain name of HTTP listening
server, the <portNo> is the port No. of HTTP listening server, and the <url> represents the
streaming URL, which is configured via the HTTP listening server.
• The default port No. is 80, so the request URL without port No. is also valid.

6.2 /ISAPI/Event/capabilities
Get the device event capability.

Request URI Definition


Table 6-2 GET /ISAPI/Event/capabilities
Method GET
Description Get the device event capability set.
Query None.
Request None.
Response Succeeded: XML_EventCap
Failed: XML_ResponseStatus

40
Intelligent Security API (Facial) Developer Guide

6.3 /ISAPI/Event/notification/alertStream
Get the uploaded heartbeat or alarm/event information.

Request URI Definition


Table 6-3 GET /ISAPI/Event/notification/alertStream
Method GET
Description Get the heartbeat or uploaded alarm/event information.
Query None.
Request None.
Response Option 1: XML_EventNotificationAlert_AlarmEventInfo or
XML_EventNotificationAlert_HeartbeatInfo
Option 2: JSON_EventNotificationAlert_Alarm/EventInfo

Note
The messages here only show the format of alarm/event
information to be uploaded. For details, refer to the corresponding
alarm/event configuration chapters.

Remarks
• After calling this URI, a persistent connection is set up between the device and the platform, and
the alarm or event information will be uploaded from device continuously once the alarm is
triggered or event occurred.
• You can check if the XML response message is the heartbeat information according to the nodes
<eventType> and <eventState>. If the values of these two node are "videoloss" and "inactive",
respectively, the returned message is the heartbeat information.

6.4 /ISAPI/Event/notification/httpHosts
Get or set parameters of all HTTP listening servers, add a HTTP listening server, and delete all HTTP
listening servers.

Request URI Definition


Table 6-4 GET /ISAPI/Event/notification/httpHosts
Method GET
Description Get parameters of all HTTP listening servers.

41
Intelligent Security API (Facial) Developer Guide

Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request None
Response Succeeded: XML_HttpHostNotificationList
Failed: XML_ResponseStatus
Table 6-5 PUT /ISAPI/Event/notification/httpHosts
Method PUT
Description Set parameters of all HTTP listening servers.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request XML_HttpHostNotificationList
Response XML_ResponseStatus
Table 6-6 POST /ISAPI/Event/notification/httpHosts
Method POST
Description Add a HTTP listening server.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
Request XML_HttpHostNotification
Response XML_ResponseStatus
Table 6-7 DELETE /ISAPI/Event/notification/httpHosts
Method DELETE
Description Delete all HTTP listening servers.

42
Intelligent Security API (Facial) Developer Guide

Query None
Request None
Response XML_ResponseStatus

6.5 /ISAPI/Event/notification/httpHosts/<ID>/test
Check whether the HTTP listening server is working normally.

Request URI Definition


Table 6-8 POST /ISAPI/Event/notification/httpHosts/<ID>/test
Method POST
Description Check whether the HTTP listening server is working normally.
Query None
Request XML_HttpHostNotification
Response Succeeded: XML_HttpHostTestResult
Failed: XML_ResponseStatus

Remarks
The <ID> in the request URI refers to the HTTP listening server ID.

6.6 /ISAPI/Event/notification/httpHosts/capabilities
Get the configuration capabilities of all HTTP listening servers.

Request URI Definition


Table 6-9 GET /ISAPI/Event/notification/httpHosts/capabilities
Method GET
Description Get the configuration capabilities of all HTTP listening servers.
Query None
Request None
Response Succeeded: XML_HttpHostNotificationCap
Failed: XML_ResponseStatus

43
Intelligent Security API (Facial) Developer Guide

6.7 /ISAPI/Event/notification/subscribeEvent
Subscribe events/alarms in arming mode.

Request URI Definition


Table 6-10 POST /ISAPI/Event/notification/subscribeEvent
Method POST
Description Subscribe events/alarms in arming mode.
Query None.
Request XML_SubscribeEvent
Response Succeeded: XML_SubscribeEventResponse or
XML_EventNotificationAlert_SubscriptionHeartbeat and alarm/
event details message
Failed: XML_ResponseStatus

Remarks
The XML_EventNotificationAlert_SubscriptionHeartbeat and alarm/event details message is
uploaded repeatedly. The default time interval of uploading heartbeat information is 30s.

6.8 /ISAPI/Event/notification/subscribeEvent/<ID>
Get or set alarm/event subscription parameters.

Request URI Definition


Table 6-11 GET /ISAPI/Event/notification/subscribeEvent/<ID>
Method GET
Description Get alarm/event subscription parameters.
Query None.
Request None.
Response Succeeded: XML_SubscribeEvent
Failed: XML_ResponseStatus
Table 6-12 PUT /ISAPI/Event/notification/subscribeEvent/<ID>
Method PUT
Description Set alarm/event subscription parameters.

44
Intelligent Security API (Facial) Developer Guide

Query None.
Request XML_SubscribeEvent
Response XML_ResponseStatus

Remarks
The <ID> in the request URI refers to the subscription No. which is returned by the device. After
the persistent connection for receiving events or alarms in arming mode is closed, the device will
release the resource used by the <ID>.

6.9 /ISAPI/Event/notification/subscribeEventCap
Get event/alarm subscription capability.

Request URI Definition


Table 6-13 GET /ISAPI/Event/notification/subscribeEventCap
Method GET
Description Get event/alarm subscription capability.
Query None.
Request None.
Response Succeeded: XML_SubscribeEventCap
Failed: XML_ResponseStatus

6.10 /ISAPI/Event/notification/unSubscribeEvent
Cancel subscribing alarm/event.

Request URI Definition


Table 6-14 PUT /ISAPI/Event/notification/unSubscribeEvent
Method PUT
Description Cancel subscribing alarm/event.
Query None.
Request None.
Response XML_ResponseStatus

45
Intelligent Security API (Facial) Developer Guide

6.11 /ISAPI/Event/schedules/faceContrast
Get or set arming schedule of multiple face picture comparison alarms.

Request URI Definition


Table 6-15 GET /ISAPI/Event/schedules/faceContrast
Method GET
Description Get the arming schedule of multiple face picture comparison alarms.
Query None.
Request None.
Response XML_FaceContrastScheduleList
Table 6-16 PUT /ISAPI/Event/schedules/faceContrast
Method PUT
Description Set the arming schedule of multiple face picture comparison alarms.
Query None.
Request XML_FaceContrastScheduleList
Response XML_ResponseStatus

6.12 /ISAPI/Event/schedules/faceContrast/<ID>
Get or set arming schedule of a face picture comparison alarm.

Request URI Definition


Table 6-17 GET /ISAPI/Event/schedules/faceContrast/<ID>
Method GET
Description Get the arming schedule of a face picture comparison alarm.
Query None.
Request None.
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus

46
Intelligent Security API (Facial) Developer Guide

Table 6-18 PUT /ISAPI/Event/schedules/faceContrast/<ID>


Method PUT
Description Set the arming schedule of a face picture comparison alarm.
Query None.
Request XML_Schedule
Response XML_ResponseStatus

Remarks
The <ID> in the URI is defined as the ID of alarm triggered video input channel. For example, if the
video input channel No. with face picture comparison alarm triggered is 1, the ID is
"faceContrast-1".

6.13 /ISAPI/Event/schedules/faceLib/<ID>/<FDID>
Get or set arming schedule of a face picture comparison alarm.

Request URI Definition


Table 6-19 GET /ISAPI/Event/schedules/faceLib/<ID>/<FDID>
Method GET
Description Get the arming schedule of a face picture comparison alarm.
Query None.
Request None.
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus
Table 6-20 PUT /ISAPI/Event/schedules/faceLib/<ID>/<FDID>
Method PUT
Description Set the arming schedule of a face picture comparison alarm
Query None.
Request XML_Schedule
Response XML_ResponseStatus

47
Intelligent Security API (Facial) Developer Guide

Remarks
• The <ID> in the URI is the video channel ID.
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the corresponding URI should be /ISAPI/Event/schedules/
faceLib/<ID>/<FDID>?FDType=custom.

6.14 /ISAPI/Event/schedules/faceSnap
Get or set arming schedule of face capture

Request URI Definition


Table 6-21 GET /ISAPI/Event/schedules/faceSnap
Method GET
Description Get the arming schedule of face capture.
Query None.
Request None.
Response XML_FaceSnapScheduleList
Table 6-22 PUT /ISAPI/Event/schedules/faceSnap
Method PUT
Description Set the arming schedule of face capture.
Query None.
Request XML_FaceSnapScheduleList
Response XML_ResponseStatus

6.15 /ISAPI/Event/schedules/faceSnap/<ID>
Get or set arming schedule configurations of face capture of a device.

Request URI Definition


Table 6-23 GET /ISAPI/Event/schedules/faceSnap/<ID>
Method GET
Description Get the arming schedule of face capture of a device.

48
Intelligent Security API (Facial) Developer Guide

Query None.
Request None.
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus
Table 6-24 PUT /ISAPI/Event/schedules/faceSnap/<ID>
Method PUT
Description Set the arming schedule of face capture of a device.
Query None.
Request XML_Schedule
Response XML_ResponseStatus

Remarks
• The <ID> in the URI is defined by the video input channel No. with face capture alarm triggered.
For example, if the alarm triggered channel No. is 1, the <ID> is "faceSnap-1".
• You can also get the number of arming schedules can be configured by this URI via GET method.

6.16 /ISAPI/Event/schedules/HFPD
Get or set arming schedule of frequently appeared person detection.

Request URI Definition


Table 6-25 GET /ISAPI/Event/schedules/HFPD
Method GET
Description Get the arming schedule of frequently appeared person detection.
Query None.
Request None.
Response XML_HFPDScheduleList
Table 6-26 PUT /ISAPI/Event/schedules/HFPD
Method PUT
Description Set the arming schedule of frequently appeared person detection.
Query None.
Request XML_HFPDScheduleList
Response XML_ResponseStatus

49
Intelligent Security API (Facial) Developer Guide

6.17 /ISAPI/Event/schedules/whiteListFaceContrast
Get or set arming schedule of multiple stranger detection alarms.

Request URI Definition


Table 6-27 GET /ISAPI/Event/schedules/whiteListFaceContrast
Method GET
Description Get the arming schedule of multiple stranger detection alarms.
Query None.
Request None.
Response WhiteListFaceContrastScheduleList
Table 6-28 PUT /ISAPI/Event/schedules/whiteListFaceContrast
Method PUT
Description Set the arming schedule of multiple stranger detection alarms.
Query None.
Request WhiteListFaceContrastScheduleList
Response XML_ResponseStatus

6.18 /ISAPI/Event/schedules/whiteListFaceContrast/<ID>
Get or set arming schedule of a stranger detection alarm.

Request URI Definition


Table 6-29 GET /ISAPI/Event/schedules/whiteListFaceContrast/<ID>
Method GET
Description Get the arming schedule of a stranger detection alarm.
Query None.
Request None.
Response Succeeded: XML_Schedule
Failed: XML_ResponseStatus

50
Intelligent Security API (Facial) Developer Guide

Table 6-30 PUT /ISAPI/Event/schedules/whiteListFaceContrast/<ID>


Method PUT
Description Set the arming schedule of a stranger detection alarm.
Query None.
Request XML_Schedule
Response XML_ResponseStatus

Remarks
The <ID> in the URI is defined as the ID of alarm triggered video input channel. For example, if the
video input channel No. with stranger detection alarm triggered is 1, the ID is
"whiteListFaceContrast-1".

6.19 /ISAPI/Event/triggers
Get linkage actions of multiple alarms.

Request URI Definition


Table 6-31 GET /ISAPI/Event/triggers
Method GET
Description Get linkage actions of multiple alarms.
Query None.
Request None.
Response Succeeded: XML_EventTriggerList
Failed: XML_ResponseStatus

6.20 /ISAPI/Event/triggersCap
Get alarm linkage capability.

Request URI Definition


Table 6-32 GET /ISAPI/Event/triggersCap
Method GET
Description Get alarm linkage capability.
Query None

51
Intelligent Security API (Facial) Developer Guide

Request None
Response Succeeded: XML_EventTriggersCap
Failed: XML_ResponseStatus

6.21 /ISAPI/Event/triggers/<eventType>-<ID>
Get, set, or delete the alarm linkage action by channel.

Request URI Definition


Table 6-33 GET /ISAPI/Event/triggers/<eventType>-<ID>
Method GET
Description Get the alarm linkage action by channel.
Query None
Request None
Response Succeeded: XML_EventTrigger
Failed: XML_ResponseStatus
Table 6-34 PUT /ISAPI/Event/triggers/<eventType>-<ID>
Method PUT
Description Set the alarm linkage action by channel.
Query None
Request XML_EventTrigger
Response XML_ResponseStatus
Table 6-35 DELETE /ISAPI/Event/triggers/<eventType>-<ID>
Method DELETE
Description Delete the alarm linkage action by channel.
Query None
Request None
Response XML_ResponseStatus

Remarks
The <eventType> in the request URI refers to the predefined event or alarm type name, and the
<ID> is the No. of the event detection channel. For example, if the No. of the face capture channel
is 101, the "<eventType>-<ID>" is "faceSnap-101".

52
Intelligent Security API (Facial) Developer Guide

6.22 /ISAPI/Event/triggers/<ID>/<FDID>
Get, set, or delete the linkage action parameters of a face picture comparison alarm.

Request URI Definition


Table 6-36 GET /ISAPI/Event/triggers/<ID>/<FDID>
Method GET
Description Get the linkage action parameters of a face picture comparison
alarm.
Query FDType (optioanl)
Request None.
Response Succeeded: XML_EventTrigger
Failed: XML_ResponseStatus
Table 6-37 PUT /ISAPI/Event/triggers/<ID>/<FDID>
Method PUT
Description Set the linkage action of a face picture comparison alarm.
Query FDType (optioanl)
Request XML_EventTrigger
Response XML_ResponseStatus
Table 6-38 DELETE /ISAPI/Event/triggers/<ID>/<FDID>
Method DELETE
Description Delete the linkage action of a face picture comparison alarm.
Query FDType (optioanl)
Request None
Response XML_ResponseStatus

Remarks
• The <ID> in the URI is the video channel ID.
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the corresponding URI should be /ISAPI/Event/triggers/
<ID>/<FDID>?FDType=custom.

53
Intelligent Security API (Facial) Developer Guide

6.23 /ISAPI/Intelligent/capabilities
Get the intelligent capability set.

Request URI Definition


Table 6-39 GET /ISAPI/Intelligent/capabilities
Method GET
Description Get the intelligent capability.
Query None.
Request None.
Response Succeeded: XML_IntelliCap
Failed: XML_ResponseStatus

6.24 /ISAPI/Intelligent/analysisEngines
Get or set parameters of all analysis engines.

Request URI Definition


Table 6-40 GET /ISAPI/Intelligent/analysisEngines
Method GET
Description Get the parameters of all analysis engine.
Query None.
Request None.
Response Succeeded: XML_AnalysisEngineList
Failed: XML_ResponseStatus
Table 6-41 PUT /ISAPI/Intelligent/analysisEngines
Method PUT
Description Set the parameters of all analysis engines.
Query None.
Request XML_AnalysisEngineList
Response XML_ResponseStatus

54
Intelligent Security API (Facial) Developer Guide

6.25 /ISAPI/Intelligent/analysisEngines/<ID>
Get or set parameters of an analysis engine.

Request URI Definition


Table 6-42 GET /ISAPI/Intelligent/analysisEngines/<ID>
Method GET
Description Get the parameters of an analysis engine.
Query None.
Request None.
Response Succeeded: XML_AnalysisEngine
Failed: XML_ResponseStatus
Table 6-43 PUT /ISAPI/Intelligent/analysisEngines/<ID>
Method PUT
Description Set the parameters of an analysis engine.
Query None.
Request XML_AnalysisEngine
Response XML_ResponseStatus

Remarks
The <ID> in the request URI refers to the analysis engine No.

6.26 /ISAPI/Intelligent/analysisEngines/capabilities
Get configuration capability of analysis engine.

Request URI Definition


Table 6-44 GET /ISAPI/Intelligent/analysisEngines/capabilities
Method GET
Description Get configuration capability of analysis engine.
Query None.
Request None.
Response Succeeded: XML_AnalysisEnginesCap

55
Intelligent Security API (Facial) Developer Guide

Failed: XML_ResponseStatus

6.27 /ISAPI/Intelligent/analysisImage/face
Import a local face picture for searching by picture.

Request URI Definition


Table 6-45 POST /ISAPI/Intelligent/analysisImage/face
Method POST
Description Import a local face picture for searching by picture.
Query None.
Request Binary picture data
Response Succeeded: XML_FaceContrastTargetsList
Failed: XML_ResponseStatus

Remarks
You can check whether the device supports this function according to the node
<isSuportAnalysisFace> in the capability XML_FDLibCap returned by the URI /ISAPI/Intelligent/
FDLib/capabilities .

6.28 /ISAPI/Intelligent/channels/<ID>/AlgParam
Operations about algorithm library configurations of a device.

Request URI Definition


Table 6-46 GET /ISAPI/Intelligent/channels/<ID>/AlgParam
Method GET
Description Get the algorithm library configurations of a device.
Query None.
Request None.
Response XML_AlgParam
Table 6-47 PUT /ISAPI/Intelligent/channels/<ID>/AlgParam
Method PUT
Description Set the algorithm library configurations of a device.

56
Intelligent Security API (Facial) Developer Guide

Query None.
Request XML_AlgParam
Response XML_ResponseStatus

Remarks
The <ID> in the URI refers to the intelligent channel ID.

6.29 /ISAPI/Intelligent/channels/<ID>/AlgParam/Capabilities
Get the capability of algorithm library configurations of a device.

Request URI Definition


Table 6-48 GET /ISAPI/Intelligent/channels/<ID>/AlgParam/Capabilities
Method GET
Description Get the capability of algorithm library configurations of a device.
Query None
Request None
Response XML_AlgParamCap

Remarks
The <ID> in the URI refers to the intelligent channel ID.

6.30 /ISAPI/Intelligent/channels/<ID>/faceContrast
Get or set face picture comparison parameters.

Request URI Definition


Table 6-49 GET /ISAPI/Intelligent/channels/<ID>/faceContrast
Method GET
Description Get the face picture comparison parameters.
Query None
Request None
Response XML_FaceContrastList

57
Intelligent Security API (Facial) Developer Guide

Table 6-50 PUT /ISAPI/Intelligent/channels/<ID>/faceContrast


Method PUT
Description Set the face picture comparison parameters.
Query None
Request XML_FaceContrastList
Response XML_ResponseStatus

Remarks
The <ID> in the URI refers to the intelligent channel ID.

6.31 /ISAPI/Intelligent/channels/<ID>/faceContrast/capabilities
Get the capability of face picture comparison.

Request URI Definition


Table 6-51 GET /ISAPI/Intelligent/channels/<ID>/faceContrast/capabilities
Method GET
Description Get the capability of face picture comparison.
Query None
Request None
Response Succeeded: XML_FaceContrastCap
Failed: XML_ResponseStatus

Remarks
The <ID> in the URI refers to the intelligent channel ID.

6.32 /ISAPI/Intelligent/channels/<ID>/faceContrast/faceScore/
capabilities?format=json
Get the face score capability of a channel.

58
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-52 GET /ISAPI/Intelligent/channels/<ID>/faceContrast/faceScore/capabilities?
format=json
Method GET
Description Get the face score capability of a channel.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_Cap_FaceScore_Channel
Failed: JSON_ResponseStatus

Remarks
The <ID> in the URI refers to channel ID.

6.33 /ISAPI/Intelligent/channels/<ID>/faceContrast/faceScore?
format=json
Get or set face score parameters of a channel.

Request URI Definition


Table 6-53 GET /ISAPI/Intelligent/channels/<ID>/faceContrast/faceScore?format=json
Method GET
Description Get face score parameters of a channel.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_FaceScore_Channel
Failed: JSON_ResponseStatus
Table 6-54 PUT /ISAPI/Intelligent/channels/<ID>/faceContrast/faceScore?format=json
Method PUT
Description Set face score parameters of a channel.
Query format: determine the format of request or response message.
Request JSON_FaceScore_Channel
Response JSON_ResponseStatus

59
Intelligent Security API (Facial) Developer Guide

Remarks
The <ID> in the URI refers to channel ID.

6.34 /ISAPI/Intelligent/channels/<ID>/faceRule
Get or set face capture rule parameters of a channel.

Request URI Definition


Table 6-55 GET /ISAPI/Intelligent/channels/<ID>/faceRule
Method GET
Description Get the face capture rule parameters of a device.
Query None.
Request None
Response Succeeded: XML_faceRule
Failed: XML_ResponseStatus
Table 6-56 PUT /ISAPI/Intelligent/channels/<ID>/faceRule
Method PUT
Description Set the face capture rule parameters of a device.
Query None.
Request XML_faceRule
Response XML_ResponseStatus

Remarks
The <ID> in the URI refers to the channel ID.

6.35 /ISAPI/Intelligent/channels/<ID>/faceRule/Capabilities
Get the configuration capability of face capture rule of a channel.

Request URI Definition


Table 6-57 GET /ISAPI/Intelligent/channels/<ID>/faceRule/Capabilities
Method GET
Description Get the configuration capability of face capture rule of a channel.

60
Intelligent Security API (Facial) Developer Guide

Query None
Request None
Response Succeeded: XML_Cap_faceRule
Failed: XML_ResponseStatus

Remarks
The <ID> in the URI refers to the channel ID.

6.36 /ISAPI/Intelligent/channels/<ID>/intelliResource
Get or set intelligent resource parameters by channel.

Request URI Definition


Table 6-58 GET /ISAPI/Intelligent/channels/<ID>/intelliResource
Method GET
Description Get the intelligent resource parameters by channel.
Query None
Request None
Response Succeeded: XML_IntelliResource
Failed: XML_ResponseStatus
Table 6-59 PUT /ISAPI/Intelligent/channels/<ID>/intelliResource
Method PUT
Description Set the intelligent resource parameters by channel.
Query None
Request XML_IntelliResource
Response XML_ResponseStatus

Remarks
The <ID> in the URI refers to the channel ID.

6.37 /ISAPI/Intelligent/channels/<ID>/intelliResource/capabilities
Get the configuration capability of intelligent resources by channel.

61
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-60 GET /ISAPI/Intelligent/channels/<ID>/intelliResource/capabilities
Method GET
Description Get the configuration capability of intelligent resources by channel.
Query None
Request None
Response Succeeded: XML_IntelliResourceCap
Failed: XML_ResponseStatus

Remarks
The <ID> in the URI refers to the channel ID.

6.38 /ISAPI/Intelligent/faceContrast/faceScore/capabilities?format=json
Get the face score capability.

Request URI Definition


Table 6-61 GET /ISAPI/Intelligent/faceContrast/faceScore/capabilities?format=json
Method GET
Description Get the face score capability.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_Cap_FaceScore_Device
Failed: JSON_ResponseStatus

6.39 /ISAPI/Intelligent/faceContrast/faceScore/default?format=json
Get the default face score parameters.

Request URI Definition


Table 6-62 GET /ISAPI/Intelligent/faceContrast/faceScore/default?format=json
Method GET
Description Get the default face score parameters.

62
Intelligent Security API (Facial) Developer Guide

Query format: determine the format of request or response message.


Request None
Response Succeeded: JSON_FaceScore_Device
Failed: JSON_ResponseStatus

6.40 /ISAPI/Intelligent/faceContrast/faceScore?format=json
Get or set face score parameters.

Request URI Definition


Table 6-63 GET /ISAPI/Intelligent/faceContrast/faceScore?format=json
Method GET
Description Get face score parameters.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_FaceScore_Device
Failed: JSON_ResponseStatus
Table 6-64 PUT /ISAPI/Intelligent/faceContrast/faceScore?format=json
Method PUT
Description Set face score parameters.
Query format: determine the format of request or response message.
Request JSON_FaceScore_Device
Response JSON_ResponseStatus

6.41 /ISAPI/Intelligent/FDLib
Get or set face picture library parameters, create a face picture library, or delete all face picture
libraries of the device.

Request URI Definition


Table 6-65 GET /ISAPI/Intelligent/FDLib
Method GET
Description Get the face picture library parameters.

63
Intelligent Security API (Facial) Developer Guide

Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None.
Response Succeeded: XML_FDLibBaseCfgList
Failed: XML_ResponseStatus
Table 6-66 PUT /ISAPI/Intelligent/FDLib
Method PUT
Description Set the face picture library parameters.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_FDLibBaseCfgList
Response XML_ResponseStatus
Table 6-67 POST /ISAPI/Intelligent/FDLib
Method POST
Description Create a face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_CreateFDLibList
Response Succeeded: XML_FDLibInfoList
Failed: XML_ResponseStatus

64
Intelligent Security API (Facial) Developer Guide

Table 6-68 DELETE /ISAPI/Intelligent/FDLib


Method DELETE
Description Delete all face picture libraries of the device.
Query None
Request None
Response XML_ResponseStatus

6.42 /ISAPI/Intelligent/FDLib/asyncImportDatas?format=json
Asynchronously import the data to the face picture library.

Request URI Definition


Table 6-69 POST /ISAPI/Intelligent/FDLib/asyncImportDatas?format=json
Method POST
Description Asynchronously import the data to the face picture library.
Query format: determine the format of request or response message.
Request JSON_AsyncImportDatas
Response JSON_ResponseStatus

6.43 /ISAPI/Intelligent/FDLib/format?format=json
Format all face picture libraries (including normal and private libraries).

Request URI Definition


Table 6-70 PUT /ISAPI/Intelligent/FDLib/format?format=json
Method PUT
Description Format all face picture libraries (including normal and private
libraries).
Query format: determine the format of request or response message.
Request None.
Response JSON_ResponseStatus

65
Intelligent Security API (Facial) Developer Guide

Remarks
After formatting, all face picture libraries will be emptied and the device will reboot.

6.44 /ISAPI/Intelligent/FDLib/<FDID>
Get or set the basic parameters of a face picture library, or delete a library.

Request URI Definition


Table 6-71 GET /ISAPI/Intelligent/FDLib/<FDID>
Method GET
Description Get the basic parameters of a face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
FDType (optional)
Request None
Response Succeeded: XML_FDLibBaseCfg
Failed: XML_ResponseStatus
Table 6-72 PUT /ISAPI/Intelligent/FDLib/<FDID>
Method PUT
Description Set the basic parameters of a face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
FDType (optional)
Request XML_FDLibBaseCfg
Response XML_ResponseStatus

66
Intelligent Security API (Facial) Developer Guide

Table 6-73 DELETE /ISAPI/Intelligent/FDLib/<FDID>


Method DELETE
Description Delete a face picture library.
Query FDType (optional)
Request None
Response XML_ResponseStatus

Remarks
The <FDID> in the URI is the face picture library ID, which is returned by device via the URI /ISAPI/
Intelligent/FDLib . But the user can also define the library ID and apply the custom ID to the
device, and then the device will link the <FDID> with the custom ID, so you can configure and
manage the library via the custom ID. If the face picture library ID is customized, the corresponding
URI should be /ISAPI/Intelligent/FDLib/<FDID>?FDType=custom.

6.45 /ISAPI/Intelligent/FDLib/<FDID>/data?checkCode=
Import or export data to or from a specific face picture library.

Request URI Definition


Table 6-74 POST /ISAPI/Intelligent/FDLib/<FDID>/data?checkCode=
Method POST
Description Import the face picture data to a specific face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
checkCode: verification code
mode (optional)
FDType (optional)
Request Opaque data (binary face picture data)
Response XML_ResponseStatus

67
Intelligent Security API (Facial) Developer Guide

Table 6-75 GET /ISAPI/Intelligent/FDLib/<FDID>/data?checkCode=


Method GET
Description Export the face picture data from a specific face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
checkCode: verification code
mode (optional)
FDType (optional)
Request None
Response Succeeded: Opaque data (binary face picture data)
Failed: XML_ResponseStatus

Remarks
• The checkCode in the URI is the verification code, and should be encrypted for transmission. It
must be same when importing and exporting.
• To import data by overwriting the existing data, the URI must be /ISAPI/Intelligent/FDLib/
<FDID>/data?checkCode=?mode=cover.
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the URI should be /ISAPI/Intelligent/FDLib/<FDID>/data?
checkCode=?FDType=custom.

6.46 /ISAPI/Intelligent/FDLib/<FDID>/importFrom/FDLibSource
Add a specific face picture library to another library for importing all the pictures in the specific
library to another library.

68
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-76 PUT /ISAPI/Intelligent/FDLib/<FDID>/importFrom/FDLibSource
Method PUT
Description Add a specific face picture library to another library for importing all
the pictures in the specific library to another library.
Query FDType (optional)
Request XML_FDLibSource
Response XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library is customized, the corresponding URI should be /ISAPI/Intelligent/FDLib/
<FDID>/importFrom/FDLibSource?FDType=custom.
• You can check whether the device supports this function according to the node
<isSupportFDLibEachImport> in the capability , and get the related capability node
<FDLibEachImportCap> by /ISAPI/Intelligent/FDLib/capabilities .

6.47 /ISAPI/Intelligent/FDLib/<FDID>/picture
Import importing pictures and additional information to list library (available for front-end device).

Request URI Definition


Table 6-77 POST /ISAPI/Intelligent/FDLib/<FDID>/picture
Method POST
Description Import importing pictures and additional information to list library.
Query type (optional)
mode (optional)
FDType (optional)
Request XML_FaceAppendData
Response Succeeded: XML_MaskInfo
Failed: XML_ResponseStatus

69
Intelligent Security API (Facial) Developer Guide

Remarks
• The <FDID> in the URI is the list library ID, which is returned by device. But the user can also
define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
list library ID is customized, the corresponding URI should be /ISAPI/Intelligent/FDLib/<FDID>/
picture/<PID>?FDType=custom.
• To modeling the imported face pictures in the library, the concurrent mode must be enabled, so
the corresponding URI should be /ISAPI/Intelligent/FDLib/<FDID>/picture?type=concurrent.
• To import the face pictures by overwriting existing data, the URI must be /ISAPI/Intelligent/
FDLib/<FDID>/picture?mode=cover.
• The URI interaction is in form format, see details below:
POST /ISAPI/Intelligent/FDLib/1/imageInfoData
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US
Content-Type: multipart/form-data; boundary=---------------------------7e13971310878
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Accept-Encoding: gzip, deflate
Host: 10.10.36.29:8080
Content-Length: 9907
Connection: Keep-Alive
Cache-Control: no-cache

-----------------------------7e13971310878
Content-Disposition: form-data; name="FaceAppendData";
Content-Type: text/xml
Content-Length: 9907

<FaceAppendData/>
-----------------------------7e13971310878
Content-Disposition: form-data; name="importImage";
Content-Type: image/jpeg
Content-Length: 9907

......JFIF.....`.`.....C........... .
..
................. $.' ",#..(7),01444.'9=82<.342...C. ....
-----------------------------7e13971310878--

Example
Interaction Example
POST http://10.17.112.200/ISAPI/Intelligent/FDLib/3/picture?type=concurrent HTTP/1.1
If-Modified-Since: 0
Accept: */*
X-Requested-With: XMLHttpRequest
Content-Type: multipart/form-data; boundary=---------------------------7e232b37d1dba
Referer: http://10.17.112.200/doc/page/config.asp
Accept-Language: en-US
Accept-Encoding: gzip, deflate

70
Intelligent Security API (Facial) Developer Guide

User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)


Connection: Keep-Alive
Content-Length: 8249
DNT: 1
Host: 10.17.112.200
Pragma: no-cache
Cookie: language=zh; sdMarkMenu=22%3AfaceSnapLib; szLastPageName=faceSnapLib;
sdMarkTab_1_0=0%3AsettingBasic; WebSession=1d99be788a6aef920d79

-----------------------------7e232b37d1dba
Content-Disposition: form-data; name="FaceAppendData"

<?xml version='1.0' encoding='UTF-8'?><FaceAppendData><name>SnapPic[20180208202307290]</name></


FaceAppendData>
-----------------------------7e232b37d1dba
Content-Disposition: form-data; name="importImage"; filename="SnapPic[20180208202307290].jpg"
Content-Type: image/jpeg

m[ID:37]
[face rect:0.2656(0), 0.1667(0), 0.0344(0), 0.0611(0)]
[faceScore:100]
[curIdx:0]
[JpegQuality:95]
JFIF

6.48 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>
Get, set, or delete linked information of a picture in the face picture library.

Request URI Definition


Table 6-78 PUT /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>
Method PUT
Description Add the linked information to a picture in the face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
FDType (optional)
Request XML_FaceAppendData
Response XML_ResponseStatus

71
Intelligent Security API (Facial) Developer Guide

Table 6-79 GET /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>


Method GET
Description Get the linked information of a picture in the face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
FDType (optional)
Request None.
Response Succeeded: XML_FaceAppendData
Failed: XML_ResponseStatus
Table 6-80 DELETE /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>
Method DELETE
Description Delete the linked information of a picture in the face picture library.
Query FDType (optional)
Request None.
Response XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the corresponding URI should be /ISAPI/Intelligent/FDLib/
<FDID>/picture/<PID>?FDType=custom.
• The <PID> in the URI refers to ID of the face picture in the library. The face picture ID can also be
defined by user and applied to the device, and then the device will link the <PID> with custom
face picture ID, so you can perform the following operations via the custom face picture ID.

6.49 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/imageData
Update the specified face picture of a face picture library. Update the face picture only (the related
information will not be updated).

72
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-81 POST /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/imageData
Method POST
Description Update the specified face picture of a face picture library.
Query FDType (optional): determine the face picture library type, when
FDType is custom, it indicates operations of a custom face picture
library.
identityKey (optional): unique interaction command, used for
sensitive information encryption. The maximum length is 64 bytes.
Request XML_ImageData
Response XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the corresponding URI should be: /ISAPI/Intelligent/FDLib/
<FDID>/picture/<PID>/imageData?FDType=custom.
• The <PID> in the URI refers to ID of the face picture in the library.

6.50 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData/
<ID>?format=json
Get or delete frequency information of a face picture in the face picture library

Request URI Definition


Table 6-82 GET /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData/<ID>?
format=json
Method GET
Description Get the frequency information of a face picture in the face picture
library.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_OccurrenceData
Failed: JSON_ResponseStatus

73
Intelligent Security API (Facial) Developer Guide

Table 6-83 DELETE /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData/<ID>?


format=json
Method DELETE
Description Delete the frequency information of a face picture in the face picture
library.
Query format: determine the format of request or response message.
Request None
Response JSON_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the corresponding URI should be /ISAPI/Intelligent/FDLib/
<FDID>/picture/<PID>?FDType=custom.
• The <PID> in the URI refers to ID of the face picture in the library. The face picture ID can also be
defined by user and applied to the device, and then the device will link the <PID> with custom
face picture ID, so you can perform the following operations via the custom face picture ID.
• The <ID> in the URI refers to the id in message JSON_OccurrenceDataList returned by the URI:
GET /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData?format=json.

6.51 /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData?
format=json
Get or delete frequency information of all face pictures in the face picture library

Request URI Definition


Table 6-84 GET /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData?format=json
Method GET
Description Get frequency information of all face pictures in the face picture
library.
Query format: determine the format of request or response message.
Request None
Response JSON_OccurrenceDataList

74
Intelligent Security API (Facial) Developer Guide

Table 6-85 DELETE /ISAPI/Intelligent/FDLib/<FDID>/picture/<PID>/occurrenceData?format=json


Method DELETE
Description Delete frequency information of all face pictures in the face picture
library.
Query format: determine the format of request or response message.
Request None
Response JSON_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the corresponding URI should be /ISAPI/Intelligent/FDLib/
<FDID>/picture/<PID>?FDType=custom.
• The <PID> in the URI refers to ID of the face picture in the library. The face picture ID can also be
defined by user and applied to the device, and then the device will link the <PID> with custom
face picture ID, so you can perform the following operations via the custom face picture ID.

6.52 /ISAPI/Intelligent/FDLib/<FDID>/picture/coverNumber
Get the number of overwritten face pictures in a face picture library.

Request URI Definition


Table 6-86 GET /ISAPI/Intelligent/FDLib/<FDID>/picture/coverNumber
Method GET
Description Get the number of overwritten face pictures in a face picture library.
Query FDType (optional)
Request None.
Response Succeeded: XML_FDCoverInfo
Failed: XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the

75
Intelligent Security API (Facial) Developer Guide

face picture library ID is customized, the URI should be /ISAPI/Intelligent/FDLib/<FDID>/


picture/coverNumber?FDType=custom.
• You can check whether the device supports this function according to the node
<isSupportFDCoverInfo> in the capability XML_FDLibCap which is returned by calling /ISAPI/
Intelligent/FDLib/capabilities .

6.53 /ISAPI/Intelligent/FDLib/<FDID>/picture/surplusCapacity
Get the number of remaining face pictures in a face picture library.

Request URI Definition


Table 6-87 GET /ISAPI/Intelligent/FDLib/<FDID>/picture/surplusCapacity
Method GET
Description Get the number of remaining face pictures in a face picture library.
Query FDType (optional)
Request None
Response Succeeded: XML_SurplusCapacity
Failed: XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the URI should be /ISAPI/Intelligent/FDLib/<FDID>/
picture/surplusCapacity?FDType=custom.
• You can check whether the device supports this function according to the node
<isSupportSurplusCapacity> in the capability XML_FDLibCap which is returned by calling /ISAPI/
Intelligent/FDLib/capabilities .

6.54 /ISAPI/Intelligent/FDLib/<FDID>/progress
Get the progress of importing or exporting face picture data.

Request URI Definition


Table 6-88 GET /ISAPI/Intelligent/FDLib/<FDID>/progress
Method GET
Description Get the progress of importing or exporting face picture data.

76
Intelligent Security API (Facial) Developer Guide

Query FDType (optional)


Request XML_FDlibProgress
Response XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
<FDID> with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the URI should be /ISAPI/Intelligent/FDLib/<FDID>/
progress?FDType=custom.
• You can check whether the device supports this function according to the node
<isSupportFDlibProgress> in the capability XML_FDLibCap which is returned by calling /ISAPI/
Intelligent/FDLib/capabilities .

6.55 /ISAPI/Intelligent/FDLib/capabilities
Get configuration capability of face picture library.

Request URI Definition


Table 6-89 GET /ISAPI/Intelligent/FDLib/capabilities
Method GET
Description Get the configuration capability of face picture library.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request None
Response XML_FDLibCap

6.56 /ISAPI/Intelligent/FDLib/FCSearch
Search for face picture comparison results.

77
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-90 POST /ISAPI/Intelligent/FDLib/FCSearch
Method POST
Description Search for face picture comparison results.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_FCSearchDescription
Response XML_FCSearchResult

Remarks
• You can check whether the device supports this function according to the node
<isSuportFCSearch> in the capability XML_FDLibCap returned by calling /ISAPI/Intelligent/
FDLib/capabilities .
• This URI is only available for admin user, and the exported comparison result consists of
captured face picture+URI and matched face picture in library+URI.

6.57 /ISAPI/Intelligent/FDLib/FCSearch/dataPackage
Export the face picture comparison results to the local storage.

Request URI Definition


Table 6-91 POST /ISAPI/Intelligent/FDLib/FCSearch/dataPackage
Method POST
Description Export the face picture comparison results to the local storage.
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.

78
Intelligent Security API (Facial) Developer Guide

Request XML_FCSearchDescription
Response Opaque data (in XLSX format)

Remarks
• You can check whether the device supports this function according to the node
<isSupportFCSearchDataPackage> in the capability XML_FDLibCap returned by calling /ISAPI/
Intelligent/FDLib/capabilities .
• This URI is only available for admin user, and the exported comparison result consists of
captured face picture+URI and matched face picture in library+URI.
• To export the comparison results of a specific face picture library, the URI: "/ISAPI/Intelligent/
FDLib/FCSearch/channels/<ID>/dataPackage" is available. The <ID> in the URI is the channel ID.

6.58 /ISAPI/Intelligent/FDLib/FDSearch
Search for face pictures in the face picture library (support fuzzy search).

Request URI Definition


Table 6-92 POST /ISAPI/Intelligent/FDLib/FDSearch
Method POST
Description Search for face pictures in the face picture library (support fuzzy
search).
Query security: the version No. of encryption scheme. When security does
not exist, it indicates that the data is not encrypted; when security is
1, it indicates that the nodes of sensitive information in the message
are encrypted in AES128 CBC mode; when security is 2, it indicates
that the nodes of sensitive information in the message are encrypted
in AES256 CBC mode.
iv: the initialization vector, and it is required when security is 1 or 2.
Request XML_FDSearchDescription
Response XML_ResponseStatus

6.59 /ISAPI/Intelligent/FDLib/manualModeling/progressState?taskID=
Get the status of a modeling task when model unmodeled face pictures in different libraries.

79
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-93 GET /ISAPI/Intelligent/FDLib/manualModeling/progressState?taskID=
Method GET
Description Get the status of a modeling task when model unmodeled face
pictures in different libraries.
Query taskID: modeling task ID
Request XML_ModelingRangeTaskState
Response XML_ResponseStatus

Remarks
• You can check whether the device supports this function according to the node
<isSupportRangeManualModeling> in the capability XML_FDLibCap which is returned by
calling /ISAPI/Intelligent/FDLib/capabilities .
• The taskID is the modeling task ID when modeling unmodeled face pictures in different
libraries., which is returned by calling /ISAPI/Intelligent/FDLib/manualModelingRangeTask .

6.60 /ISAPI/Intelligent/FDLib/manualModeling?FDID=&PID=
Model an unmodeled face picture in a specific face picture library.

Request URI Definition


Table 6-94 GET /ISAPI/Intelligent/FDLib/manualModeling?FDID=&PID=
Method GET
Description Model an unmodeled face picture in a specific face picture library.
Query FDID: face picture library ID
PID: ID of the face picture in the library
Request None.
Response Succeeded: XML_ModelingStatus
Failed: XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
FDID with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the URI should be "/ISAPI/Intelligent/FDLib/

80
Intelligent Security API (Facial) Developer Guide

manualModeling?FDID=<customFaceLibID>&PID=&FDType=custom", otherwise, the URI is "/


ISAPI/Intelligent/FDLib/manualModeling?FDID=<FDID>&PID=".
• The <PID> in the URI refers to ID of the face picture in the library. The face picture ID can also be
defined by user and applied to the device, and then the device will link the PID with custom face
picture ID, so you can perform the following operations via the custom face picture ID. If the face
picture ID is customized, the URI should be "/ISAPI/Intelligent/FDLib/manualModeling?
FDID=&PID=<customHumanID>", otherwise, the URI is "/ISAPI/Intelligent/FDLib/
manualModeling?FDID=&PID=<PID>".
• You can check whether the device supports this function according to the node
<isSupportSingleManualModeling> in the capability XML_FDLibCap which is returned by
calling /ISAPI/Intelligent/FDLib/capabilities .

6.61 /ISAPI/Intelligent/FDLib/manualModeling?range=&FDID=
Specify a face picture library to start model the face pictures in batch.

Request URI Definition


Table 6-95 GET /ISAPI/Intelligent/FDLib/manualModeling?range=&FDID=
Method GET
Description Specify a face picture library to start model the face pictures in batch.
Query range
FDID: face picture library ID
FDType (optional)
Request None
Response XML_ResponseStatus

Remarks
• To model the unmodeled face pictures in the library, the query parameter range should be
"unmodeled", so the URI must be /ISAPI/Intelligent/FDLib/manualModeling?
range=unmodeled&FDID=; if the device upgrades, all pictures stored in the device should be
modeled again, the corresponding URI should be /ISAPI/Intelligent/FDLib/manualModeling?
range=all&FDID=.
• The FDID in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
FDID with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the URI should be /ISAPI/Intelligent/FDLib/

81
Intelligent Security API (Facial) Developer Guide

manualModeling?range=&FDID=<customFaceLibID>&FDType=custom, otherwise, the URI is /


ISAPI/Intelligent/FDLib/manualModeling?range=&FDID=<FDID>.
• You can check whether the device supports this function according to the node
<isSupportManualModeling> in the capability XML_FDLibCap which is returned by the URI /
ISAPI/Intelligent/FDLib/capabilities .

6.62 /ISAPI/Intelligent/FDLib/manualModelingRangeTask
Model unmodeled face pictures of different face picture libraries.

Request URI Definition


Table 6-96 POST /ISAPI/Intelligent/FDLib/manualModelingRangeTask
Method POST
Description Model unmodeled face pictures of different face picture libraries.
Query None
Request XML_ModelingRangeList
Response XML_ResponseStatus

Remarks
• You can check whether the device supports this function according to the node
<isSupportRangeManualModeling> in the capability XML_FDLibCap which is returned by
calling /ISAPI/Intelligent/FDLib/capabilities .
• The value of <id> in the XML_ResponseStatus message is the modeling task ID (taskID).

6.63 /ISAPI/Intelligent/FDLib/modelingStatus?FDID=&PID=
Get the modeling status of a face picture in a specific face picture library.

Request URI Definition


Table 6-97 GET /ISAPI/Intelligent/FDLib/modelingStatus?FDID=&PID=
Method GET
Description Get the modeling status of a face picture in a specific face picture
library.
Query FDID: face picture library ID
PID: ID of the face picture in the library

82
Intelligent Security API (Facial) Developer Guide

Request None
Response Succeeded: XML_ModelingStatus
Failed: XML_ResponseStatus

Remarks
• The <FDID> in the URI is the face picture library ID, which is returned by device. But the user can
also define the library ID and apply the custom ID to the device, and then the device will link the
FDID with the custom ID, so you can configure and manage the library via the custom ID. If the
face picture library ID is customized, the URI should be "/ISAPI/Intelligent/FDLib/
modelingStatus?FDID=<customFaceLibID>&PID=&FDType=custom", otherwise, the URI is "/
ISAPI/Intelligent/FDLib/modelingStatus?FDID=<FDID>&PID=".
• The <PID> in the URI refers to ID of the face picture in the library. The face picture ID can also be
defined by user and applied to the device, and then the device will link the PID with custom face
picture ID, so you can perform the following operations via the custom face picture ID. If the face
picture ID is customized, the URI should be "/ISAPI/Intelligent/FDLib/modelingStatus?
FDID=&PID=<customHumanID>", otherwise, the URI is "/ISAPI/Intelligent/FDLib/
modelingStatus?FDID=&PID=<PID>".
• You can check whether the device supports this function according to the node
<isSupportSingleManualModelingSearch> in the capability XML_FDLibCap which is returned by
calling /ISAPI/Intelligent/FDLib/capabilities .

6.64 /ISAPI/Intelligent/FDLib/modelingStatus?status=
Search for face pictures by modeling status.

Request URI Definition


Table 6-98 POST /ISAPI/Intelligent/FDLib/modelingStatus?status=
Method POST
Description Search for face pictures by modeling status.
Query status
Request XML_FDModelingStatusSearchDescription
Response XML_FDModelingStatusSearchResult

Remarks
• To search for modeled face pictures, the URI should be "/ISAPI/Intelligent/FDLib/
modelingStatus?status=success"; to search for modeling failed face pictures, the URI should be

83
Intelligent Security API (Facial) Developer Guide

"/ISAPI/Intelligent/FDLib/modelingStatus?status=failed"; to search for unmodeled face pictures,


the URI should be "/ISAPI/Intelligent/FDLib/modelingStatus?status=none".
• You can check whether the device supports this function according to the node
<isSuportFDModelingStatusSearch> in the capability XML_FDLibCap which is returned by
calling /ISAPI/Intelligent/FDLib/capabilities .

6.65 /ISAPI/Intelligent/FDLib/modelingStatusRang
Search for all modeling statuses of the device.

Request URI Definition


Table 6-99 POST /ISAPI/Intelligent/FDLib/modelingStatusRang
Method POST
Description Search for all modeling statuses of the device.
Query None
Request XML_ModelingRangeList
Response Succeeded: XML_ModelingStatus
Failed: XML_ResponseStatus

Remarks
You can check whether the device supports this function according to the node
<isSupportRangeManualModelingSearch> in the capability XML_FDLibCap which is returned by
calling /ISAPI/Intelligent/FDLib/capabilities .

6.66 /ISAPI/Intelligent/FDLib/pictureUpload
Import face pictures and the additional information to a specific face picture library (available for
rear-end device).

Request URI Definition


Table 6-100 POST /ISAPI/Intelligent/FDLib/pictureUpload
Method POST
Description Import face pictures and the additional information to a specific face
picture library.
Query type

84
Intelligent Security API (Facial) Developer Guide

Request XML_PictureUploadData
Response XML_ResponseStatus

Remarks
• To modeling the imported face pictures in the library, the concurrent mode must be enabled,so
the corresponding URI should be "/ISAPI/Intelligent/FDLib/pictureUpload/picture?
type=concurrent".
• The interaction is in form format, see details below:
POST /ISAPI/Intelligent/FDLib/pictureUpload
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US
Content-Type: multipart/form-data; boundary=---------------------------7e13971310878
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Accept-Encoding: gzip, deflate
Host: 10.10.36.29:8080
Content-Length: 9907
Connection: Keep-Alive
Cache-Control: no-cache

-----------------------------7e13971310878
Content-Disposition: form-data; name="PictureUploadData";
Content-Type: text/xml
Content-Length: 123456

<PictureUploadData/>
-----------------------------7e13971310878
Content-Disposition: form-data; name="importImage";
Content-Type: image/jpeg
Content-Length: 123467

......JFIF.....`.`.....C........... .
..
................. $.' ",#..(7),01444.'9=82<.342...C. ....
-----------------------------7e13971310878--

Example
Interaction Example
POST http://10.17.112.200/ISAPI/Intelligent/FDLib/3/picture?type=concurrent HTTP/1.1
If-Modified-Since: 0
Accept: */*
X-Requested-With: XMLHttpRequest
Content-Type: multipart/form-data; boundary=---------------------------7e232b37d1dba
Referer: http://10.17.112.200/doc/page/config.asp
Accept-Language: en-US
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
Connection: Keep-Alive
Content-Length: 8249

85
Intelligent Security API (Facial) Developer Guide

DNT: 1
Host: 10.17.112.200
Pragma: no-cache
Cookie: language=zh; sdMarkMenu=22%3AfaceSnapLib; szLastPageName=faceSnapLib;
sdMarkTab_1_0=0%3AsettingBasic; WebSession=1d99be788a6aef920d79

-----------------------------7e232b37d1dba
Content-Disposition: form-data; name="FaceAppendData"

<?xml version='1.0' encoding='UTF-8'?><FaceAppendData><name>SnapPic[20180208202307290]</name></


FaceAppendData>
-----------------------------7e232b37d1dba
Content-Disposition: form-data; name="importImage"; filename="SnapPic[20180208202307290].jpg"
Content-Type: image/jpeg

m[ID:37]
[face rect:0.2656(0), 0.1667(0), 0.0344(0), 0.0611(0)]
[faceScore:100]
[curIdx:0]
[JpegQuality:95]
JFIF

6.67 /ISAPI/SDT/HFPD/capabilities?format=json
Get the capabilities of frequently appeared person detection.

Request URI Definition


Table 6-101 GET /ISAPI/SDT/HFPD/capabilities?format=json
Method GET
Description Get the capabilities of frequently appeared person detection.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_HFPDCap
Failed: JSON_ResponseStatus

6.68 /ISAPI/SDT/HFPD/search/dataPackage/<taskID>?format=json
Get the exported frequently appeared person alarm information.

86
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-102 GET /ISAPI/SDT/HFPD/search/dataPackage/<taskID>?format=json
Method GET
Description Get the exported frequently appeared person alarm information.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_ExportProgressAndURL
Failed: JSON_ResponseStatus

Remarks
The <taskID> in the URI refers to the task ID, which is returned in the message JSON_TaskInfo
when submitting the task by calling /ISAPI/SDT/HFPD/search/dataPackage?format=json with
POST method.

6.69 /ISAPI/SDT/HFPD/search/dataPackage?format=json
Set the condition of exporting frequently appeared person alarm and submit the task.

Request URI Definition


Table 6-103 POST /ISAPI/SDT/HFPD/search/dataPackage?format=json
Method POST
Description Set the condition of exporting frequently appeared person alarm and
submit the task.
Query format: determine the format of request or response message.
Request JSON_HFPDDataPackageCond
Response Succeeded: JSON_TaskInfo
Failed: JSON_ResponseStatus

6.70 /ISAPI/SDT/HFPD/searchTask/eventRecordData?format=json
Set the condition of searching for records of frequently appeared person alarm and submit the
task.

87
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-104 POST /ISAPI/SDT/HFPD/searchTask/eventRecordData?format=json
Method POST
Description Set the condition of searching for records of frequently appeared
person alarm and submit the task.
Query format: determine the format of request or response message.
Request JSON_HFPDEventRecordDataDescription
Response Succeeded: JSON_TaskInfo
Failed: JSON_ResponseStatus

6.71 /ISAPI/SDT/HFPD/searchTask/result/recordData/<ID>?format=json
Get search result details of frequently appeared person alarm.

Request URI Definition


Table 6-105 GET /ISAPI/SDT/HFPD/searchTask/result/recordData/<ID>?format=json
Method GET
Description Get search result details of frequently appeared person alarm.
Query format: determine the format of request or response message.
Request None
Response JSON_HFPDRecordData

Remarks
The <ID> in the URI refers to the ID of searched record detailed information, it is the value of
recordDataIndex in message JSON_HFPDSearchResult , which is returned by calling POST /
ISAPI/SDT/HFPD/searchTask/result?format=json .

6.72 /ISAPI/SDT/HFPD/searchTask/result?format=json
Get search result of frequently appeared person alarm.

88
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-106 POST /ISAPI/SDT/HFPD/searchTask/result?format=json
Method POST
Description Get search result of frequently appeared person alarm.
Query format: determine the format of request or response message.
Request JSON_HFPDPagingCond
Response JSON_HFPDSearchResult

6.73 /ISAPI/SDT/HFPD?format=json
Get or set parameters of frequently appeared person detection.

Request URI Definition


Table 6-107 GET /ISAPI/SDT/HFPD?format=json
Method GET
Description Get default or configured parameters of frequently appeared person
detection.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_HFPD
Failed: JSON_ResponseStatus
Table 6-108 PUT /ISAPI/SDT/HFPD?format=json
Method PUT
Description Set frequently appeared person detection.
Query format: determine the format of request or response message.
Request JSON_HFPD
Response JSON_ResponseStatus

6.74 /ISAPI/SDT/LFPD/capabilities?format=json
Get the capability of low frequency person detection.

89
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-109 GET /ISAPI/SDT/LFPD/capabilities?format=json
Method GET
Description Get the capability of low frequency person detection.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_LFPDCap
Failed: JSON_ResponseStatus

6.75 /ISAPI/SDT/LFPD/search/dataPackage/<taskID>?format=json
Get the exported low frequency person alarm information.

Request URI Definition


Table 6-110 GET /ISAPI/SDT/LFPD/search/dataPackage/<taskID>?format=json
Method GET
Description Get the exported low frequency person detection alarm information.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_ExportProgressAndURL
Failed: JSON_ResponseStatus

Remarks
The <taskID> in the URI refers to the task ID, which is returned in the message JSON_TaskInfo
when submitting the task by calling /ISAPI/SDT/LFPD/search/dataPackage?format=json with
POST method.

6.76 /ISAPI/SDT/LFPD/search/dataPackage?format=json
Set the condition of exporting low frequency person alarm and submit the task.

90
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-111 POST /ISAPI/SDT/LFPD/search/dataPackage?format=json
Method POST
Description Set the condition of exporting low frequency person alarm and
submit the task.
Query format: determine the format of request or response message.
Request JSON_LFPDDataPackageCond
Response Succeeded: JSON_TaskInfo
Failed: JSON_ResponseStatus

6.77 /ISAPI/SDT/LFPD/searchTask/eventRecordData?format=json
Set the condition of searching for low frequency person alarm and submit the task.

Request URI Definition


Table 6-112 POST /ISAPI/SDT/LFPD/searchTask/eventRecordData?format=json
Method POST
Description Set the condition of searching for low frequency person alarm and
submit the task.
Query format: determine the format of request or response message.
Request JSON_LFPDEventRecordDataDescription
Response JSON_EventRecord_LFPDSearchResult
Failed: JSON_ResponseStatus

6.78 /ISAPI/SDT/LFPD/searchTask/result/recordData?format=json
Get search result details of low frequency person alarm.

Request URI Definition


Table 6-113 POST /ISAPI/SDT/LFPD/searchTask/result/recordData?format=json
Method POST
Description Get search result details of low frequency person alarm.
Query format: determine the format of request or response message.

91
Intelligent Security API (Facial) Developer Guide

Request JSON_LFPDPagingCond
Response Succeeded: JSON_LFPDRecordData
Failed: JSON_ResponseStatus

6.79 /ISAPI/SDT/LFPD/searchTask/result?format=json
Get search result of low frequency person alarm.

Request URI Definition


Table 6-114 POST /ISAPI/SDT/LFPD/searchTask/result?format=json
Method POST
Description Get search result of low frequency person alarm.
Query format: determine the format of request or response message.
Request JSON_LFPDPagingCond
Response Succeeded: JSON_LFPDSearchResult
Failed: JSON_ResponseStatus

6.80 /ISAPI/SDT/LFPD?format=json
Get or set parameters of low frequency person detection

Request URI Definition


Table 6-115 GET /ISAPI/SDT/LFPD?format=json
Method GET
Description Get default or configured parameters of low frequency person
detection.
Query format: determine the format of request or response message.
Request None.
Response JSON_LFPD
Table 6-116 PUT /ISAPI/SDT/LFPD?format=json
Method PUT
Description Set low frequency person detection.
Query format: determine the format of request or response message.

92
Intelligent Security API (Facial) Developer Guide

Request JSON_LFPD
Response JSON_ResponseStatus

6.81 /ISAPI/SDT/Management/capabilities?format=json
Get the intelligent management capability of the device.

Request URI Definition


Table 6-117 GET /ISAPI/SDT/Management/capabilities?format=json
Method GET
Description Get the intelligent management capability of the device to check the
intelligent functions supported by the device.
Query format: determine the format of request or response message.
Request None.
Response Succeeded: JSON_Cap_IntelliManagement
Failed: JSON_ResponseStatus

6.82 /ISAPI/SDT/Management/IntelligentSearch/capabilities?
format=json
Get intelligent search capability.

Request URI Definition


Table 6-118 GET /ISAPI/SDT/Management/IntelligentSearch/capabilities?format=json
Method GET
Description Get intelligent search capability.
Query format: determine the format of request or response message.
Request None
Response Succeeded: JSON_IntelligentSearchCap
Failed: JSON_ResponseStatus

93
Intelligent Security API (Facial) Developer Guide

6.83 /ISAPI/SDT/Management/IntelligentSearch/export/progress?
format=json&taskID=
Get the progress of exporting intelligent search results.

Request URI Definition


Table 6-119 GET /ISAPI/SDT/Management/IntelligentSearch/export/progress?
format=json&taskID=
Method GET
Description Get the progress of exporting intelligent search results.
Query format: determine the format of request or response message.
taskID: the task ID of exporting the search results.
Request None
Response Succeeded: JSON_IntelliSearchExportProgress
Failed: JSON_ResponseStatus

6.84 /ISAPI/SDT/Management/IntelligentSearch/export/stop?
format=json
Stop exporting intelligent search results.

Request URI Definition


Table 6-120 PUT /ISAPI/SDT/Management/IntelligentSearch/export/stop?format=json
Method PUT
Description Stop exporting intelligent search results.
Query format: determine the format of request or response message.
Request JSON_StopTaskCond
Response JSON_ResponseStatus

6.85 /ISAPI/SDT/Management/IntelligentSearch/export?format=json
Start exporting the intelligent search results.

94
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-121 POST /ISAPI/SDT/Management/IntelligentSearch/export?format=json
Method POST
Description Start exporting the intelligent search results.
Query format: determine the format of request or response message.
Request JSON_IntelliSearchExportCond
Response Succeeded: task ID + JSON_ResponseStatus
Failed: JSON_ResponseStatus

6.86 /ISAPI/SDT/Management/IntelligentSearch?format=json
Start intelligent search.

Request URI Definition


Table 6-122 POST /ISAPI/SDT/Management/IntelligentSearch?format=json
Method POST
Description Start intelligent search.
Query format: determine the format of request or response message.
Request JSON_IntelligentSearchCondition
Response Succeeded: JSON_IntelligentSearchResult
Failed: JSON_ResponseStatus

6.87 /ISAPI/SDT/Management/Task/<taskID>?format=json
Delete the task according to task ID.

Request URI Definition


Table 6-123 DELETE /ISAPI/SDT/Management/Task/<taskID>?format=json
Method DELETE
Description Delete the task according to task ID.
Query format: determine the format of request or response message.

95
Intelligent Security API (Facial) Developer Guide

Request None
Response JSON_ResponseStatus

Remarks
The <taskID> in the URI refers to the task ID, which is returned when submitting task.

6.88 /ISAPI/SDT/Management/Task/cancel/<taskID>?format=json
Cancel the task according to task ID.

Request URI Definition


Table 6-124 GET /ISAPI/SDT/Management/Task/cancel/<taskID>?format=json
Method GET
Description Cancel the task according to task ID.
Query format: determine the format of request or response message.
Request None
Response JSON_ResponseStatus

Remarks
The <taskID> in the URI refers to the task ID, which is returned when submitting task.

6.89 /ISAPI/SDT/Management/Task/pause/<taskID>?format=json
Pause the task according to task ID.

Request URI Definition


Table 6-125 GET /ISAPI/SDT/Management/Task/pause/<taskID>?format=json
Method GET
Description Pause the task according to task ID.
Query format: determine the format of request or response message.
Request None
Response JSON_ResponseStatus

Remarks
The <taskID> in the URI refers to the task ID, which is returned when submitting task.

96
Intelligent Security API (Facial) Developer Guide

6.90 /ISAPI/SDT/Management/Task/progress/<taskID>?format=json
Obtain the task progress.

Request URI Definition


Table 6-126 GET /ISAPI/SDT/Management/Task/progress/<taskID>?format=json
Method GET
Description Obtain the task progress.
Query None
Request None
Response Succeeded: JSON_GetTaskProgress
Failed: JSON_ResponseStatus

Remarks
The <taskID> in the URI refers to the task ID, which is returned when submitting task.

6.91 /ISAPI/SDT/Management/Task/resume/<taskID>?format=json
Resume the task according to task ID.

Request URI Definition


Table 6-127 GET /ISAPI/SDT/Management/Task/resume/<taskID>?format=json
Method GET
Description Resume the task according to task ID.
Query format: determine the format of request or response message.
Request None
Response JSON_ResponseStatus

Remarks
The <taskID> in the URI refers to the task ID, which is returned when submitting task.

6.92 /ISAPI/Smart/capabilities
Get the capability of smart devices.

97
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-128 GET /ISAPI/Smart/capabilities
Method GET
Description Get the capability of smart devices.
Query None
Request None
Response Succeeded: XML_SmartCap
Failed: XML_ResponseStatus

6.93 /ISAPI/System/algorithmsVersion
Get the version information of algorithm library.

Request URI Definition


Table 6-129 GET /ISAPI/System/algorithmsVersion
Method GET
Description Get the version information of algorithm library.
Query None
Request None
Response Succeeded: XML_AlgorithmsVersion
Failed: XML_ResponseStatus

6.94 /ISAPI/System/capabilities
Get device capability.

Request URI Definition


Table 6-130 GET /ISAPI/System/capabilities
Method GET
Description Get device capability.
Query None

98
Intelligent Security API (Facial) Developer Guide

Request None.
Response Succeeded: XML_DeviceCap
Failed: XML_ResponseStatus

6.95 /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap
Get or set picture information overlay configurations of a device.

Request URI Definition


Table 6-131 GET /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap
Method GET
Description Get the picture information overlay configurations of a device.
Query None
Request None
Response Succeeded: XML_PicInfoOverlap
Failed: XML_ResponseStatus
Table 6-132 PUT /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap
Method PUT
Description Set the picture information overlay configurations of a device.
Query None
Request XML_PicInfoOverlap
Response XML_ResponseStatus

Remarks
The <ID> in the URI refers to the video input channel ID.

6.96 /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap/
capabilities
Get the capability of picture information overlay.

99
Intelligent Security API (Facial) Developer Guide

Request URI Definition


Table 6-133 GET /ISAPI/System/Video/inputs/channels/<ID>/picInfoOverlap/capabilities
Method GET
Description Get the capability of picture information overlay.
Query None
Request None
Response Succeeded: XML_PicInfoOverlap
Failed: XML_ResponseStatus

Remarks
The <ID> in the URI refers to the video input channel ID.

100
Intelligent Security API (Facial) Developer Guide

Chapter 7 Request and Response Messages

7.1 JSON_AsyncImportDatas
JSON message about data file to be imported to face picture library
{
"AsyncImportDatas":{
"customFaceLibID": "",
/*required, string, ID of custom face picture library; the maximum length is 64 bytes*/
"taskID": "",
/*required, string, task ID; the maximum length is 64 bytes. Only the following characters are supported: "0-9" "A-Z"
"a-z" and "-" */
"URL": "",
/*required, string, data file URL; the maximum length is 255 bytes*/
"type": 0,
/*optional, int, data file type: 0-XML (default)*/
"URLCertificationType": "AWS2_0",
/*required, string, authentication mode of picture URL: "CEOSSToken", "AWS2_0"; the maximum length is 32 bytes*/
"accessKey":"",
/*dependent, string, cloud storage access key, it is valid when the value of node URLCertificationType is "AWS2_0"*/
"secretKey":"",
/*dependent, string, cloud storage encryption key, it is valid when the value of node URLCertificationType is
"AWS2_0"*/
"token":"",
/*dependent, string, token, it is valid when the value of node URLCertificationType is "CEOSSToken"*/
}
}

Remarks
For the data file in URL format to be imported, see XML_PictureUploadDataList for details.

7.2 JSON_Cap_FaceScore_Channel
FaceScore message in JSON format
{
"FaceScore":{
/*face grading parameters*/
"enable": "",
/*required, enable face grading or not, boolean*/
"featureSimilarity":{
/*optional, feature similarity*/
"medium":{
/*optional, medium value*/
"leftInterval":{
/*required, left interval, [0.0,1.0],float type, corrects to one decimal*/

101
Intelligent Security API (Facial) Developer Guide

"@min": 0.0,
"@max": 1.0,
"#text": 0.5
},
"rightInterval":{
/*required, right interval, [0.0,1.0],float type, corrects to one decimal*/
"@min": 0.0,
"@max": 1.0,
"#text": 0.5
},
}
},
"pupillaryDistance":{
/*optional, pupil distance*/
"medium":{
/*optional, medium value*/
"leftInterval":{
/*required, left interval, integer type*/
"@min": 100,
"@max": 1000,
"#text": 400
},
"rightInterval":{
/*required, right interval, integer type*/
"@min": 100,
"@max": 1000,
"#text": 400
},
}
},
"pitchAngle":{
/*optional, pitch angle*/
"medium":{
/*optional, medium value*/
"leftInterval":{
/*required, left interval, integer type, unit: degree*/
"@min": 0,
"@max": 90,
"#text": 45
},
"rightInterval":{
/*required, right interval, integer type, unit: degree*/
"@min": 0,
"@max": 90,
"#text": 45
},
}
},
"yawAngle":{
/*optional, yaw angle*/
"medium":{
/*optional, medium value*/

102
Intelligent Security API (Facial) Developer Guide

"leftInterval":{
/*required, left interval, integer type, unit: degree*/
"@min": 0,
"@max": 90,
"#text": 45
},
"rightInterval":{
/*required, right interval, integer type, unit: degree*/
"@min": 0,
"@max": 90,
"#text": 45
},
}
}
}
}

7.3 JSON_Cap_FaceScore_Device
JSON message about capability of face score
{
"FaceScore": {
/*face grading parameters*/
"enable": "",
/*required, enable face grading or not, boolean*/
"type": ,
/*required, filter type: "0"-all type, "1"-filter face captured picture library, "2"-name list library*/
"FDID": {
/*optional, string type, face picture library ID; multiple libraries are separated by commas, it is invalid when the value
of type is "1"*/
"@min": 4,
"@max": 64
},
"featureConfidence": {
/*optional, feature confidence*/
"@min": 0.0,
"@max": 1.0
},
"pupillaryDistance": {
/*optional, pupil distance*/
"@min": 100,
"@max": 1000
},
"pitchAngle": {
/*optional, pitch angle*/
"@min": 0,
"@max": 90
},
"yawAngle": {

103
Intelligent Security API (Facial) Developer Guide

/*optional, yaw angle*/


"@min": 0,
"@max": 90
},
"faceRect": {
/*optional, integer, face frame, range: [0,N], 0-non-face frame, 1-largest face frame, N-smallest face frame*/
"@min": 0,
"@max": N
},
"colorConfidence": {
/*optional, float, color confidence, range: [0,1], the higher the value, the larger the possibility of color picture; "0"-
black and white picture, "1"-color picture*/
"@min": 0,
"@max": 1
},
"grayScale": {
/*optional, gray scale, integer, range: [1,256]*/
"@min": 1,
"@max": 256
},
"grayMean": {
/*optional, integer, gray average value, the larger the white area is, the larger the gray average value, the larger the
black area is, the smaller the value, range: [0,255]*/
"@min": 0,
"@max": 255
},
"grayVariance": {
/*optional, integer, gray variance, range: [0,255]*/
"@min": 0,
"@max": 255
},
"clearityScore": {
/*optional, float, sharpness, range: [0,1]*/
"@min": 0,
"@max": 1
},
"rollAngle": {
/*optional, roll angel, left is negative, right is positive, "0"-frontal face*/
"@min": 0,
"@max": 90
},
"poseConfidence": {
/*optional, float, pose confidence, range: [0,1]; the larger the value, the higher the reliability*/
"@min": 0,
"@max": 1
},
"frontalScore": {
/*optional, float, range: [0,1], frontal score, the value is to evaluate the face position*/
"@min": 0,
"@max": 1
},
"visibleScore": {

104
Intelligent Security API (Facial) Developer Guide

/*optional, float, visibility score, range: [0,1]*/


"@min": 0,
"@max": 1
},
"totalScore": {
/*optional, float, face overall score, range: [0,1]; the larger the value, the higher the face picture quality*/
"@min": 0,
"@max": 1
"algorithm":
/*optional, algorithm information*/
{
"algorithmID": {
/*optional, string, algorithm package ID, either algorithmID or classificationID is required, the maximum size is 64
bytes*/
"@min": 0,
"@max": 64
},
"classificationID": {
/*optional, string, algorithm classification ID, either algorithmID or classificationID is required*/
"@min": 0,
"@max": 64
},
"version": {
/*optional, string, algorithm version, this field is valid only when classificationID exists*/
"@min": 0,
"@max": 64
},
"vendor": {
/*optional, string, algorithm manufacturer, this field is valid only when classificationID exists*/
"@min": 0,
"@max": 64
},
"targetType": {
/*optional, string, target type, the maximum size is 64 bytes*/
"@min": 0,
"@max": 64
},
"modelVerison": {
/*optional, string, model version information*/
"@min": 0,
"@max": 64
},
},
"isSupportConvertScores": true,
/*optional, boolean, whether it supports switch between total face score and detailed face score; each time before
switching score mode, you should get the score configuration capability, true-support, false(false)-not support*/
}
}

105
Intelligent Security API (Facial) Developer Guide

7.4 JSON_Cap_IntelliManagement
JSON message about capability of intelligent management
{
"requestURL":"",
"statusCode": ,
"statusString":"",
"subStatusCode":"",
"errorCode": ,
"errorMsg":"",
/*see the description of this node and the above nodes in the message of JSON_ResponseStatus*/
"isSuportTask":true,
/*optional, boolean type, whether it supports task: "true"-yes, "false"-no*/
"isSupportCtrlCenter":true,
/*optional, boolean type, whether it supports control center: "true"-yes, "false"-no*/
"isSuportIntelligentSearch":true,
/*optional, boolean type, whether it supports intelligent search: "true"-yes, "false"-no*/
"isSuportExecuteControl":true,
/*optional, boolean type, whether it supports arming: "true"-yes, "false"-no*/
"isSuportDataStatistics":true,
/*optional, boolean type, whether it supports statistics: "true"-yes, "false"-no*/
"isSupportIntelligentStorage":true,
/*optional, boolean type, whether it supports intelligent storage: "true"-yes, "false"-no*/
"isSupportServer":true,
/*optional, boolean type, whether it supports service configuration: "true"-yes, "false"-no*/
"isSuportAlgorithmModel":true,
/*optional, boolean type, whether it supports algorithm model configuration: "true"-yes, "false"-no*/
"isSupportCluster":true,
/*optional, boolean type, whether it supports cluster: "true"-yes, "false"-no*/
"isSupportSearchResultDisplay":true,
/*optional, boolean type, whether it supports display configuration: "true"-yes, "false"-no*/
"isSuportTranscodeAnalysisUnit":true,
/*optional, boolean type, whether it supports transcoding analysis unit: "true"-yes, "false"-no*/
"isSuportFactoryReset":true,
/*optional, boolean type, whether it supports restoring to factory settings: "true"-yes, "false"-no*/
"isSupportUPS":true,
/*optional, boolean type, whether it supports UPS: "true"-yes, "false"-no*/
"isSuportCity":true,
/*optional, boolean type, whether it supports city: "true"-yes, "false"-no*/
"isSuportClusterEnableStatus":true,
/*optional, boolean type, whether it supports enabling cluster status: "true"-yes, "false"-no*/
"isSupportSensitivity":true,
/*optional, boolean type, whether it supports sensitivity configuration: "true"-yes, "false"-no*/
"isSupportConfidence":true,
/*optional, boolean type, whether it supports confidence configuration: "true"-yes, "false"-no*/
"isSuportEventSearch":true,
/*optional, boolean, whether it supports event search: "true"-yes, "false"-no*/
"isSupportAudioFileUpload":true,
/*optional, boolean type, whether it supports importing audio file: "true"-yes, "false"-no*/
"isSupportIntelligentMode":true,

106
Intelligent Security API (Facial) Developer Guide

/*optional, boolean type, whether it supports intelligent mode configuration: "true"-yes, "false"-no*/
"saveCapturedDataMaxDays":90,
/*optional, int*, the captured pictures can be saved in local HDD up to 90 days by default, when the number of days
reaches the limit, the records will be overwritten by day./
"isSupportAlgorithmTraining": true,
/*optional, boolean, whether it supports algorithm training, "true"-yes, "false"-no*/
"isSupportDataResync":true,
/*optional, boolean, whether it supports data resynchronization: "true"-yes, "false"-no*/
"isSupportCertificateImport":true,
/*optional, boolean, whether it supports importing software license certificate: "true"-yes, "false"-no*/
"isSupportFingerprint":true,
/*optional, boolean, whether it supports exporting hardware fingerprint: "true"-yes, "false"-no*/
"isSupportAuthorization":true,
/*optional, boolean, whether it supports authorization configuration of the algorithm center: "true"-yes, "false"-no*/
"isSupportLicensingDongle":true,
/*optional, boolean, whether it supports dongle: "true"-yes, "false"-no*/
"isSupportAlgorithmUpdate":true,
/*optional, boolean, whether it supports updating algorithm: "true"-yes, "false"-no*/
"isSupportModellingMode":true,
/*optional, boolean, whether it supports modeling mode configuration*/
"isSupportListLoading":true,
/*optional, boolean, whether it supports list library loading configuration*/
"isSupportTasksStatistics": true,
/*optional, boolean, whether it supports analysis task statistics*/
"isSupportTargetsStatistics": true,
/*optional, boolean, whether it supports analysis target statistics*/
"isSupportAuthAddress":true,
/*optional, boolean, whether it supports authorizing address*/
"isSupportCertificateStatus": true,
/*optional, boolean, whether it supports getting status of software authorization certificate*/
"certificateImportProductID": 555,
/*optional, int, product ID of software authorization, corresponding URI: /ISAPI/SDT/Management/certificateImport/
<productID>?format=json and /ISAPI/SDT/Management/fingerprint/<productID>?format=json*/
"algorithmAuthProductID": 556,
/*optional, int, product ID of algorithm authorization*/
"isSupportAnalysisResult":true,
/*optional, boolean, whether it supports searching for and counting the number of behavior analysis events: "true"-
yes, "false"-no*/
"isShowCenterComputing":true
/*optional, boolean, whether to display the configuration interface of algorithm resources: "true"-yes, "false"-no. The
configuration interface of algorithm resources will be displayed only when this field is "true" in the single smart
mode*/
"isSupportVehicleRegion": true,
/*optional, boolean, whether it supports vehicle region configuration*/
"isSupportStorageParam":true,
/*optional, boolean, whether it supports storage parameters configuration*/
"isSupportFingerprintByName": true,
/*optional, boolean, whether it supports exporting hardware fingerprint*/
"isSupportAnalysisResultPerimeter": true,
/*optional, boolean, whether it supports perimeter protection (including line crossing detection, intrusion detection,
region entrance detection, and region exiting detection); if this node is not returned, it indicates that the events are

107
Intelligent Security API (Facial) Developer Guide

not classified as perimeter protection and behavior analysis*/


}

See Also
JSON_ResponseStatus

7.5 JSON_EpidemicControlCap
JSON message about face thermography capability
{
"EpidemicControlCap":{
"reportType":{
/*required, string, report type: "daily,weekly,monthly,yearly"*/
"@opt":[
"daily",
"weekly",
"monthly",
"yearly"
]
},
"startTime":{
/*required, string, start time*/
"@min":0,
"@max":0
},
"endTime":{
/*required, string, end time*/
"@min":0,
"@max":0
},
"channel":{
/*optional, array of strings, channel No., multiple channels can be separated by comma*/
"@min":0,
"@max":0
}
}
}

7.6 JSON_EventNotificationAlert_Alarm/EventInfo
EventNotificationAlert message with alarm or event information in JSON format.
{
"ipAddress": "",
/*required, device IPv4 address , string, the maximum size is 32 bytes*/
"ipv6Address": "",
/*optional, device IPv6 address, string, the maximum size is 128 bytes*/

108
Intelligent Security API (Facial) Developer Guide

"portNo": ,
/*optional, device port No., integer32*/
"protocol": "",
/*optional, protocol type, "HTTP, HTTPS", string, the maximum size is 32 bytes*/
"macAddress": "",
/*optional, MAC address, string, the maximum size is 32 bytes, e.g., 01:17:24:45:D9:F4*/
"channelID": "",
/*optional, device channel No., integer32*/
"dateTime": "",
/*optional, string, alarm/event triggered or occurred time based on ISO8601, the maximum size is 32 bytes, e.g.,
2009-11-14T15:27Z*/
"activePostCount": "",
/*required, alarm/event frequency, integer32*/
"eventType": "",
/*required, alarm/event type, "captureResult, faceCapture,...", string, the maximum size is 128 bytes*/
"eventState": "",
/*required, string, the maximum size is 32 bytes, durative alarm/event status: "active"-valid, "inactive"-invalid*/
"eventDescription": "",
/*required, event description, string, the maximum size is 128 bytes*/
"deviceID":"",
/*string type, device ID*/
"uuid":"",
/*string type, event UUID, which is used to uniquely identify an event, the standard UUID format is xxxxxxxx-xxxx-xxxx-
xxxx-xxxxxxxxxxxx*/
...
/*optional, for different alarm/event types, the nodes are different, see the message examples in different
applications*/
}

7.7 JSON_EventNotificationAlert_FaceCaptureMsg
JSON message about details of face capture and recognition event

Picture Uploaded in URL Format


{
"ipAddress": "",
/*required, string, IPv4 address of alarm device, the maximum value size is 32 bytes, e.g., 172.6.64.7*/
"ipv6Address": "",
/*required, string, IPv6 address of alarm device, the maximum value size is 128 bytes*/
"portNo": ,
/*optional, integer32, port No. of alarm device*/
"protocol": "",
/*optional, string, protocol type: "HTTP"-for device network SDK, "HTTPS", "EHome"-for ISUP SDK; the maximum
value size is 32 bytes*/
"macAddress": "",
/*optional, string, MAC address, the maximum value size is 32 bytes, e.g., 01:17:24:45:D9:F4*/
"channelID": ,
/*optional, integer32, No. of alarm triggered channel*/
"dateTime": "",

109
Intelligent Security API (Facial) Developer Guide

/*required, string, alarm triggered time (ISO 8601 format), the maximum value size is 32 bytes, e.g.,
2004-05-03T17:30:08+08:00*/
"activePostCount": ,
/*required, integer32, uploaded times of one alarm*/
"eventType": "",
/*required, string, occurred event type, here it should be set to "faceCapture"; the maximum value size is 128 bytes*/
"eventState": "",
/*required, string, event status: "active"-occurred, "inactive"-unoccurred (heartbeat data); the maximum value size is
32 bytes*/
"eventDescription": "",
/*required, event description, the maximum value size is 128 bytes*/
"channelName": "",
/*required, string, channel or camera name*/
"deviceID": "",
/*optional, string, device ID, it must be returned during the integration of ISUP SDK*/
"isDataRetransmission":,
/*optional, boolean, data retransmission mark*/
"faceCapture": [{
/*array, face capture and recognition results, one result can contain multiple pictures and one picture can contains
multiple faces*/
"errorCode": ,
/*optional, int, error code returned when analyzing face picture failed*/
"errorMsg": "",
/*optional, string, error information returned when analyzing face picture failed*/
"taskid": "",
/*optional, string, task ID*/
"faceTime": "",
/*optional, string, capture time, the maximum value size is 64 bytes, e.g., 2016-09-10 00:00:00.000*/
"traceUuid": "",
/*optional, string, target ID, the same person in multiple capture results corresponds to same target ID, the maximum
value size is 32 bytes*/
"traceIdx": 1,
/*optional, integer32, No. of picture with highest comparison similarity*/
"targetAttrs":{
/*face attributes*/
"deviceId": "",
/*optional, string, device ID, the maximum size is 64 bytes*/
"deviceChannel": ,
/*optional, integer32, device channel No.*/
"deviceName": "",
/*optional, string, device name, the maximum size is 128 bytes*/
"faceTime": "",
/*optional, string, captured time based on ISO8601, the maximum size is 64 bytes*/
"bkgUrl": "",
/*optional, background picture URL, multiple face thumbnails may exist in one background picture, string, the
maximum size is 256 bytes, e.g., http://10.6.39.103:80/picture/Streaming/tracks/203/?
name=ch0002_00000000120019076352000475812&size=475812*/
"thermalURL": ""
/*optional, string, thermal picture URL, e.g., http://absddsdfsdfsdk.jpg*/
},
"faces": [{
/*face picture information array, which contains recognition results, face attributes, matched picture list, and so on*/

110
Intelligent Security API (Facial) Developer Guide

"faceId": ,
/*optional, face thumbnail ID, the ID should be unique in one background picture, integer32*/
"faceRect":{
/*optional, rectangle frame to mark the face thumbnail on the background picture*/
"height": ,
/*optional, float, rectangle frame height*/
"width": ,
/*optional, float, rectangle frame width*/
"x": ,
/*optional, float, X-coordinate of rectangle frame*/
"y":
/*optional, float, Y-coordinate of rectangle frame*/
},
"age": {
/*optional, age*/
"range": 5,
/*optional, integer32, age deviation*/
"value": 23,
/*optional, integer32, age*/
"ageGroup": "old"
/*optional, string, age group, the maximum size is 32 bytes*/
},
"gender": {
/*optional, gender*/
"confidence": 99.99990,
/*optional, float, confidence*/
"value": "male"
/*optional, string, gender, "male", "female", "unknown", the maximum size is 32 bytes*/
},
"glass": {
/*optional, wear glasses or not*/
"confidence": 99.94499999999999,
/*optional, float, confidence*/
"value": "yes"
/*optional, string, "no", "yes", the maximum size is 32 bytes*/
},
"mask":{
/*optional, wear mask or not*/
"confidence": ,
"value": ""
},
"smile": {
/*optional, smile or not*/
"confidence": 99.94499999999999,
/*optional, float, confidence*/
"value": "yes"
/*optional, string, "no", "yes", the maximum size is 32 bytes*/
},
"faceExpression": {
"value": ""
/*optional, face expression, "unknow", "surprised", "panic", "disgusted", "happy", "sad", "angry", "poker-faced"-no
expression*/

111
Intelligent Security API (Facial) Developer Guide

},
"value": ""
/*optional, string, "no", "yes", "unknown", the maximum size is 32 bytes*/
},
"hat": {
/*with hat or not*/
"value": ""
/*optional, string, wear hat or not, "no", "yes", "known", the maximum size is 32 bytes*/
},
"URL": "",
/*optional, face picture URL, string, the maximum size is 256 bytes, e.g., http://10.6.39.103:80/picture/Streaming/
tracks/203/?name=ch0002_00000000120019069900800063652&size=63652*/
"stayDuration": ,
/*dwell duration, integer32 type, unit: millisecond*/
"faceScore": ,
/*required, integer32 type, face picture quality, value range: [0,100]*/
"captureEndMark": ,
/*required, boolean type, end flag of capture, true (ended), false (not ended)*/
"targetID": ""
/*optional, string, face and human body linkage ID*/
"FacePictureRect": {
/*optional, frame to mark face on picture*/
"height": ,
"width": ,
"x": ,
"y":
},
"blockingState": "",
/*optional, string type, target face shielding status: "noBlocking" (unshielded), "instantaneousInsignificantBlocking"
(lightly shielded), "continuousInsignificantBlocking" (keep shielding), "significantBlocking" (seriously shielded)*/
"swingAngle": ,
/*optional, integer type, panning angle, value range: [-90,90]*/
"tiltAngle": ,
/*optional, integer type, tilting angle, value range: [-90,90]*/
"pupilDistance":
/*optional, integer type, pupil distance of target face, the maximum value is 10 bytes, and the maximum value is
(resolution width/1.6), unit: pixel*/
"livenessDetectionStatus": "",
/*optional, string, face anti-spoofing detection status: "liveFace"-live face, "notLiveFace"-the face is not real,
"detectionFailed"-detection failed, "notEnabled"-disabled*/
"enterTime": "",
/*optional, optimal capture time of entrance, the time is in ISO 8601 format, e.g., 2004-05-03T17:30:08+08:00*/
"exitTime": ""
/*optional, optimal capture time of exiting, the time is in ISO 8601 format, e.g., 2004-05-03T17:30:08+08:00*/
"perClassify":0,
/*optional, int, face data presorting*/
"faceSnapThermometryEnabled": ,
/*optional, boolean, whether to enable uploading captured face picture with temperature information*/
"currTemperature": "",
/*optional, float, face temperature, which is accurate to one decimal place, value range [-20.0,150.0]*/
"isAbnomalTemperature": ,
/*optional, boolean, whether the temperature is abnormal or not: true, false*/

112
Intelligent Security API (Facial) Developer Guide

"thermometryUnit": "",
/*optional, string, temperature unit: "celsius", "fahrenheit", "kelvin"*/
"alarmTemperature":
/*optional, float, temperature threshold to trigger alarm, which is accurate to one decimal place*/
}]
"uid ": ""
/*event ID for uploading, the maximum length is 64 bytes, it can consist of time (accurate to millisecond) and random
numerics*/
}],
"URLCertificationType": ""
/*optional, authentication mode of picture URL: "no"-not authenticate, "digest"-digest authentication, string, the
maximum size is 32 bytes*/
}

Picture Uploaded in Binary Format


Content-Type: multipart/form-data; boundary=MIME_boundary
--MIME_boundary
Content-Type: application/json
Content-Length: 480
{
"ipAddress": "",
/*required, string, IPv4 address of alarm device, the maximum value size is 32 bytes, e.g., 172.6.64.7*/
"ipv6Address": "",
/*required, string, IPv6 address of alarm device, the maximum value size is 128 bytes*/
"portNo": ,
/*optional, integer32, port No. of alarm device*/
"protocol": "",
/*optional, string, protocol type: "HTTP"-for device network SDK, "HTTPS", "EHome"-for ISUP SDK; the maximum
value size is 32 bytes*/
"macAddress": "",
/*optional, string, MAC address, the maximum value size is 32 bytes, e.g., 01:17:24:45:D9:F4*/
"channelID": ,
/*optional, integer32, No. of alarm triggered channel*/
"dateTime": "",
/*required, string, alarm triggered time (ISO 8601 format), the maximum value size is 32 bytes, e.g.,
2004-05-03T17:30:08+08:00*/
"activePostCount": ,
/*required, integer32, uploaded times of one alarm*/
"eventType": "",
/*required, string, occurred event type, here it should be set to "faceCapture"; the maximum value size is 128 bytes*/
"eventState": "",
/*required, string, event status: "active"-occurred, "inactive"-unoccurred (heartbeat data); the maximum value size is
32 bytes*/
"eventDescription": "",
/*required, event description, the maximum value size is 128 bytes*/
"channelName": "",
/*required, string, channel or camera name*/
"deviceID": "",
/*optional, string, device ID, it must be returned during the integration of ISUP SDK*/
"isDataRetransmission":,
/*optional, boolean, data retransmission mark*/

113
Intelligent Security API (Facial) Developer Guide

"faceCapture": [{
/*array, face capture results, one result can contain multiple pictures and one picture can contains multiple faces*/
"errorCode": ,
/*optional, int, error code returned when analyzing face picture failed*/
"errorMsg": "",
/*optional, string, error information returned when analyzing face picture failed*/
"taskid": "",
/*optional, string, task ID*/
"faceTime": "",
/*optional, string, capture time, the maximum value size is 64 bytes, e.g., 2016-09-10 00:00:00.000*/
"traceUuid": "",
/*optional, string, target ID, the same person in multiple capture results corresponds to same target ID, the maximum
value size is 32 bytes*/
"traceIdx": 1,
/*optional, integer32, No. of picture with highest comparison similarity*/
"targetAttrs":{
/*face attributes*/
"deviceId": "",
/*optional, string, device ID, the maximum size is 64 bytes*/
"deviceChannel": ,
/*optional, integer32, device channel No.*/
"deviceName": "",
/*optional, string, device name, the maximum size is 128 bytes*/
"faceTime": "",
/*optional, string, captured time based on ISO8601, the maximum size is 64 bytes*/
"contentID": "",
/*optional, background picture ID*/
"pId": ""
/*optional, string, captured background picture ID (for internal use), the maximum value size is 32 bytes*/
},
"faces": [{
/*face picture information array, which contains recognition results, face attributes, matched picture list, and so on*/
"faceId": ,
/*optional, face thumbnail ID, the ID should be unique in one background picture, integer32*/
"faceRect":{
/*optional, rectangle frame to mark the face thumbnail on the background picture*/
"height": ,
/*optional, float, rectangle frame height*/
"width": ,
/*optional, float, rectangle frame width*/
"x": ,
/*optional, float, X-coordinate of rectangle frame*/
"y":
/*optional, float, Y-coordinate of rectangle frame*/
},
"age": {
/*optional, age*/
"range": 5,
/*optional, integer32, age deviation*/
"value": 23,
/*optional, integer32, age*/
"ageGroup": "old"

114
Intelligent Security API (Facial) Developer Guide

/*optional, string, age group, the maximum size is 32 bytes*/


},
"gender": {
/*optional, gender*/
"confidence": 99.99990,
/*optional, float, confidence*/
"value": "male"
/*optional, string, gender, "male", "female", "unknown", the maximum size is 32 bytes*/
},
"glass": {
/*optional, wear glasses or not*/
"confidence": 99.94499999999999,
/*optional, float, confidence*/
"value": "yes"
/*optional, string, "no", "yes", the maximum size is 32 bytes*/
},
"mask":{
/*optional, wear mask or not*/
"confidence": ,
"value": ""
},
"smile": {
/*optional, smile or not*/
"confidence": 99.94499999999999,
/*optional, float, confidence*/
"value": "yes"
/*optional, string, "no", "yes", the maximum size is 32 bytes*/
},
"faceExpression": {
"value": ""
/*optional, face expression, "unknow", "surprised", "panic", "disgusted", "happy", "sad", "angry", "poker-faced"-no
expression*/
},
"value": ""
/*optional, string, "no", "yes", "unknown", the maximum size is 32 bytes*/
},
"hat": {
/*with hat or not*/
"value": ""
/*optional, string, wear hat or not, "no", "yes", "known", the maximum size is 32 bytes*/
},
"contentID": "",
/*optional, face picture ID*/
"stayDuration": ,
/*dwell duration, integer32 type, unit: millisecond*/
"faceScore": ,
/*required, integer32 type, face picture quality, value range: [0,100]*/
"captureEndMark": ,
/*required, boolean type, end flag of capture, true (ended), false (not ended)*/
"FacePictureRect": {
/*optional, frame to mark face on picture*/
"height": ,

115
Intelligent Security API (Facial) Developer Guide

"width": ,
"x": ,
"y":
},
"blockingState": "",
/*optional, string type, target face shielding status: "noBlocking" (unshielded), "instantaneousInsignificantBlocking"
(lightly shielded), "continuousInsignificantBlocking" (keep shielding), "significantBlocking" (seriously shielded)*/
"swingAngle": ,
/*optional, integer type, panning angle, value range: [-90,90]*/
"tiltAngle": ,
/*optional, integer type, tilting angle, value range: [-90,90]*/
"pupilDistance":
/*optional, integer type, pupil distance of target face, the maximum value is 10 bytes, and the maximum value is
(resolution width/1.6), unit: pixel*/
"livenessDetectionStatus": "",
/*optional, string, face anti-spoofing detection status: "liveFace"-live face, "notLiveFace"-the face is not real,
"detectionFailed"-detection failed, "notEnabled"-disabled*/
"pId": "",
/*optional, string, face picture ID, the maximum value size is 32 bytes*/
"enterTime": "",
/*optional, optimal capture time of entrance, the time is in ISO 8601 format, e.g., 2004-05-03T17:30:08+08:00*/
"exitTime": ""
/*optional, optimal capture time of exiting, the time is in ISO 8601 format, e.g., 2004-05-03T17:30:08+08:00*/
"faceSnapThermometryEnabled": ,
/*optional, boolean, Whether to enable temperature measurement during face capture*/
"currTemperature": "",
/*optional, float, face temperature, which is accurate to one decimal place, value range [-20.0,150.0]*/
"isAbnomalTemperature": ,
/*optional, boolean, whether the temperature is abnormal: true, false*/
"thermometryUnit": "",
/*optional, string, temperature unit: "celsius", "fahrenheit", "kelvin"*/
"alarmTemperature":
/*optional, float, temperature threshold to trigger alarm, which is accurate to one decimal place*/
}]
"uid ": ""
/*event ID for uploading, the maximum length is 64 bytes, it can consist of time (accurate to millisecond) and random
numerics*/
}],
}
--MIME_boundary
Content-Disposition: form-data; name="F4F665D6A18E41308CE9934DCDDD1111";
filename="faceCapturePicture.jpg";
Content-Type: image/jpeg
Content-Length: 516876
Content-ID: backgroundImage

fefefwageegfqaeg…
--MIME_boundary
Content-Disposition: form-data; name="F4F665D6A18E41308CE9934DCDDD2222"; filename="facePicture.jpg";
Content-Type: image/jpeg
Content-Length: 4385
Content-ID: faceImage

116
Intelligent Security API (Facial) Developer Guide

fefefwageegfqaeg…
--MIME_boundary
Content-Disposition: form-data; name="F4F665D6A18E41308CE9934DCDDD2223"; filename="thermalPicture.jpg";
Content-Type: image/jpeg
Content-Length: 4385
Content-ID: thermalPicture

fefefwageegfqaeg…
--MIME_boundary--

7.8 JSON_EventNotificationAlert_FacePicComparisonMsg
JSON message about alarm details of face picture comparison

Picture Uploaded in Binary Format


{
"ipAddress": "",
/*required, string, IPv4 address of alarm device, the maximum value size is 32 bytes, e.g., 172.6.64.7*/
"ipv6Address": "",
/*required, string, IPv6 address of alarm device, the maximum value size is 128 bytes*/
"portNo": ,
/*optional, integer32, port No. of alarm device*/
"protocol": "",
/*optional, string, protocol type: "HTTP"-for device network SDK, "HTTPS", "EHome"-for ISUP SDK; the maximum
value size is 32 bytes*/
"macAddress": "",
/*optional, string, MAC address, the maximum value size is 32 bytes, e.g., 01:17:24:45:D9:F4*/
"channelID": ,
/*optional, integer32, No. of alarm triggered channel*/
"dateTime": "",
/*required, string, alarm triggered time (ISO 8601 format), the maximum value size is 32 bytes, e.g.,
2004-05-03T17:30:08+08:00*/
"activePostCount": ,
/*required, integer32, uploaded times of one alarm*/
"eventType": "",
/*required, string, occurred event type, here it should be set to "alarmResult"; the maximum value size is 128 bytes*/
"eventState": "",
/*required, string, event status: "active"-occurred, "inactive"-unoccurred (heartbeat data); the maximum value size is
32 bytes*/
"eventDescription": "",
/*required, event description, the maximum value size is 128 bytes*/
"channelName": "",
/*required, string, channel or camera name*/
"deviceID": "",
/*optional, string, device ID, it must be returned during the integration of ISUP SDK*/
"isDataRetransmission":,
/*optional, boolean, data retransmission mark*/
"alarmResult": [{

117
Intelligent Security API (Facial) Developer Guide

"errorCode": ,
/*optional, int, error code returned when analyzing face picture failed*/
"errorMsg": "",
/*optional, string, error information returned when analyzing face picture failed*/
"modelData": "",
/*optional, string, modeling data of background picture, which is encoded by Base64, and the maximum value size is
2048 bytes*/
"traceUuid": "",
/*optional, string, target ID, the maximum value size is 32 bytes*/
"traceIdx": ,
/*optional, integer32, picture No., one person can correspond to multiple pictures*/
"targetAttrs":{
/*target properties*/
"deviceId": "",
/*optional, string, device UUID, the maximum value size is 64 bytes*/
"deviceChannel": ,
/*optional, integer32, device channel No.*/
"deviceName": "",
/*optional, string, device name, the maximum value size is 128 bytes*/
"faceTime": "",
/*optional, string, capture time, the maximum value size is 64 bytes, e.g., 2016-09-10 00:00:00.000*/
"rect":{
/*optional, background picture frame information of face*/
"height": ,
/*optional, float, frame height*/
"width": ,
/*optional, float, frame width*/
"x": ,
/*optional, float, x-coordinate*/
"y":
/*optional, float, Y-coordinate*/
},
"contentID": "",
/*optional, background picture ID*/
"pId": ""
/*optional, string, captured background picture ID (for internal use), the maximum value size is 32 bytes*/
},
"faces": [{
/*array, face information, including detection results, properties, modeling data, and matched list, one picture can
contains multiple faces*/
"faceId": ,
/*optional, integer32, face ID*/
"faceRect":{
/*optional, face picture frame information*/
"height": ,
/*optional, float, frame height*/
"width": ,
/*optional, float, frame width*/
"x": ,
/*optional, float, x-coordinate*/
"y":
/*optional, float, Y-coordinate*/

118
Intelligent Security API (Facial) Developer Guide

},
"faceMark":{
/*optional, face features in the picture, both the faceRect and faceMark must be configured*/
"leftEye":{
/*optional, left eye's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"rightEye":{
/*optional, right eye's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"noseTip":{
/*optional, nose tip's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"leftMouth":{
/*optional, left mouth corner's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"rightMouth":{
/*optional, right mouth corner's position*/
"x":,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
}
},
"recommendFaceRect":{
/*optional, recommended face frame*/
"x": ,
"y": ,
"width": ,
"height":
},
"facePose":{
/*optional, face posture*/
"pitch": ,
/*optional, float, face raising or bowing angle, range: [-90,90], face raising is regarded as positive, correct to three
decimals. This node does not exists if it is invalid*/
"roll": ,

119
Intelligent Security API (Facial) Developer Guide

/*optional, float, face tilting clockwise or anticlockwise angle, range: [-90,90], face tilting clockwise is regarded as
positive, correct to three decimals. This node does not exists if it is invalid*/
"yaw":
/*optional, float, face siding left or right angle, range: [-90,90], face siding left is regarded as positive, correct to three
decimals. This node does not exists if it is invalid*/
},
"age":{
"range": ,
/*optional, age error, if the age error already exists, the age is required, integer32*/
"value": ,
"ageGroup":""
/*optional, age range: "unknown", "child", "young", "middle", "old", string, the maximum size is 32 bytes*/
},
"gender":{
/*optional, gender*/
"confidence": ,
/*optional, confidence, float*/
"value":""
},
"glass":{
/*optional, wear glasses or not*/
"confidence": ,
/*optional, confidence, float*/
"value":""
},
"smile":{
/*optional, smile or not*/
"confidence": ,
"value":""
},
"faceExpression":{
/*optional, face expression*/
"confidence": ,
"value": ""
/*optional, string, face expression: "unknown", "poker-faced", "happy", "surprised", "panic","sad", "angry",
"contemptuous", "disgusted"; the maximum size is 32 bytes*/
},
"mask": {
/*optional, wearing mask or not*/
"confidence": ,
"value": ""
/*optional, string, wearing mask or not: no, yes; the maximum size is 32 bytes*/
},
"hat": {
/*optional, whether it wearing a hat*/
"confidence": ,
/*optional, float, confidence*/
"value": ""
/*optional, string, wearing hat or not: "no, yes, unknown"; the maximum size is 32 bytes*/
},
"score": {
/*optional, face score*/

120
Intelligent Security API (Facial) Developer Guide

"confidence": ,
/*optional, float, confidence*/
"value":
}
"modeldata": "",
/*optional, face model data (encoded by base64)*/
"AbsoluteHigh":{
/*absolute PTZ position*/
"elevation": ,
/*optional, integer type, tilting angle, value range: -900 to 2700*/
"azimuth": ,
/*optional, integer type, panning angle, value range: 0 to 3600*/
"absoluteZoom":
/*optional, integer type, zooming rate, value range: 1 to 1000*/
},
"identify": [{
/*optional, features*/
"relationId": "",
/*optional, string, arming linkage ID, the maximum value size is 64 bytes*/
"maxsimilarity": ,
/*optional, float, maximum similarity in the matched results, the similarity is between 0 and 1, and it corrects to two
decimals*/
"similarityRange": ,
/*optional, int, similarity range: 0-smaller than the minimum value, 1-between the minimum value and maximum
value, 2-larger than the maximum value. If the similarity is smaller than the minimum value, the person will be
marked*/
"candidate": [{
/*array, matched face picture information*/
"alarmId": ,
/*optional, integer32, alarm ID*/
"blacklist_id": "",
/*optional, face picture list ID, which corresponds to the FDID in the face picture library, string, the maximum size is 64
bytes*/
"human_data": [{
/*array, person information of matched face pictures*/
"face_id": "",
/*optional, string, face ID, the maximum value size is 32 bytes*/
"face_rect": {
"height": ,
/*required, float type, frame height*/
"width": ,
/*required, float type, frame width*/
"x": ,
/*required, float type, x-coordinate*/
"y":
/*required, float type, y-coordinate*/
}
"similarity": ,
/*optional, float, face picture similarity, it is between 0 and 1*/
"isNoSaveFDPicture": ,
/*boolean, whether to save the picture of face picture library: true-do not save, if this node is not returned, it
indicates that saving the picture*/

121
Intelligent Security API (Facial) Developer Guide

"contentID": "",
/*optional, picture ID in face picture library*/
"pId": ""
/*optional, string, picture ID in face picture library (for internal use), the maximum value size is 32 bytes*/
}],
"human_id": "",
/*optional, string, person ID, string, person ID in the list, which corresponds to FPID in the face picture library, the
maximum size is 64 bytes*/
"reserve_field": {
/*optional, reserved, the maximum size is 256 bytes*/
"name": "",
/*required, string, person name, the maximum value size is 96 bytes*/
"gender": "",
/*optional, string, gender: "male", "female", "unknown"; the maximum value size is 10 bytes*/
"bornTime": "",
/*required, string, birth date in ISO 8601 format, the maximum value size is 32 bytes*/
"city": "",
/*optional, string, born city code, the maximum value size is 32 bytes*/
"certificateType ": "",
/*optional, string, certificate type: "officerID", "ID"-identity card, "passport", "other"; the maixmum size is 10 bytes*/
"certificateNumber": "",
/*optional, string, certificate number, the maximum value size is 32 bytes*/
"ageGroup": "",
/*optional, string, age group: "unknown", "child", "young", "middle", "old"; the maximum value size is 32 bytes*/
"phoneNumber": ""
/*optional, string, phone number, the maximum value size is 64 bytes*/
},
"similarity": ,
/*optional, float, highest similarity in matched results, the value is between 0 and 1, and it is accurate to two dicimal
places*/
"listType": "",
/*optional, string, list type: "blacklist", "whitelist", the maximum value size is 20 bytes*/
"extendData": [{
/*optional, person extension information*/
"extendID": ,
/*optional, int, person extension information ID, which starts from 1*/
"enable": ,
/*optional, boolean, whether to enable person information extension*/
"name": "",
/*optional, string, extension name of person tag, the maximum value size is 96 bytes*/
"value": "",
/*optional, string, extension contents of person tag, the maximum value size is 64 bytes*/
}],
"FDLibName": "",
/*optional, face picture library name*/
"FDLibThreshold": ,
/*optional, detection threshold of face picture library, the value range is [0,100]*/
"customFaceLibID": "",
/*optional, string, custom face picture library ID*/
"customHumanID": ""
/*optional, string, custom person ID*/
}],

122
Intelligent Security API (Facial) Developer Guide

"alarmRecordID": "",
/*optional, string, alarm record ID*/
"libAttribute": "general"
/*optional, string, library type: "general"-normal library, "blackList"-blacklist library, "VIP"-VIP library, "passerby"-
whitelist library*/
}],
"contentID": "",
/*string, face picture ID*/
"pId": "",
/*string, face picture ID, the maximum value size is 64 bytes*/
"stayDuration": ,
/*optional, integer32, dwell time duration in the image, unit: millisecond*/
"prompt": "",
/*optional, string, prompt contents of face picture comparison, the maximum value size is 16 bytes*/
"contrastStatus": ,
/*optional, boolean, comparison result*/
"realTimeContrast": ,
/*optional, boolean, whether to enable real-time face picture comparison*/
"UUPID": "",
/*optional, string, picture ID of face picture library, which consists of device serial No., imported time, and random
digits; the maximum value size is 64 bytes*/
"frontMatchType": ,
/*optional, int, library type: 1-cluster library, 0-normal library*/
"isImportFD":
/*optional, boolean, whether to import the captured face data to the library: true (yes), false (no)*/
}],
"alarmRecordID": "",
/*optional, string, alarm record ID*/
"uid": "",
/*string, event uploading ID, which can consists of time (accurate to millisecond) and random digits, the maximum
value size is 64 bytes*/
"remainReportNum": ,
/*optional, int, the remaining times of uploading the comparison alarm of the current target*/
"ctrlID":"",
/*optional, string32, arming ID*/
"algorithmInfo": {
/*algorithm version information, this node is required for secondary analysis*/
"algorithmId": "",
/*optional, string, algorithm package ID*/
"algoVendorId": "",
/*optional, string, manufacturer ID*/
"algoVersionId": "",
/*optional, string, algorithm version ID*/
"algoChipType": "",
/*optional, string, chip type*/
"algoModelVersion": "",
/*optional, string, model version*/
}
}
}]
}
--MIME_boundary

123
Intelligent Security API (Facial) Developer Guide

Content-Disposition: form-data; name="F4F665D6A18E41308CE9934DCDDD1111";


filename="faceCapturePicture.jpg";
Content-Type: image/jpeg
Content-Length: 124209
Content-ID: backgroundImage

<Background Picture Data>


--MIME_boundary
Content-Disposition: form-data; name="F4F665D6A18E41308CE9934DCDDD766F"; filename="faceMatchPicture.jpg";
Content-Type: image/jpeg
Content-Length: 51051
Content-ID: faceLibImage

<Picture Data of Face Picture Library>


--MIME_boundary
Content-Disposition: form-data; name="F4F665D6A18E41308CE9934DCDDD2222"; filename="facePicture.jpg";
Content-Type: image/jpeg
Content-Length: 124209
Content-ID: faceImage

<Face Picture Data>


--MIME_boundary--

Picture Uploaded in URL Format


{
"ipAddress": "",
/*required, string, IPv4 address of alarm device, the maximum value size is 32 bytes, e.g., 172.6.64.7*/
"ipv6Address": "",
/*required, string, IPv6 address of alarm device, the maximum value size is 128 bytes*/
"portNo": ,
/*optional, integer32, port No. of alarm device*/
"protocol": "",
/*optional, string, protocol type: "HTTP"-for device network SDK, "HTTPS", "EHome"-for ISUP SDK; the maximum
value size is 32 bytes*/
"macAddress": "",
/*optional, string, MAC address, the maximum value size is 32 bytes, e.g., 01:17:24:45:D9:F4*/
"channelID": ,
/*optional, integer32, No. of alarm triggered channel*/
"dateTime": "",
/*required, string, alarm triggered time (ISO 8601 format), the maximum value size is 32 bytes, e.g.,
2004-05-03T17:30:08+08:00*/
"activePostCount": ,
/*required, integer32, uploaded times of one alarm*/
"eventType": "",
/*required, string, occurred event type, here it should be set to "alarmResult"; the maximum value size is 128 bytes*/
"eventState": "",
/*required, string, event status: "active"-occurred, "inactive"-unoccurred (heartbeat data); the maximum value size is
32 bytes*/
"eventDescription": "",
/*required, event description, the maximum value size is 128 bytes*/
"channelName": "",

124
Intelligent Security API (Facial) Developer Guide

/*required, string, channel or camera name*/


"deviceID": "",
/*optional, string, device ID, it must be returned during the integration of ISUP SDK*/
"isDataRetransmission":,
/*optional, boolean, data retransmission mark*/
"alarmResult": [{
"errorCode": ,
/*optional, int, error code returned when analyzing face picture failed*/
"errorMsg": "",
/*optional, string, error information returned when analyzing face picture failed*/
"image": "",
/*optional, string, picture URL for submitting face picture comparison task, this node is valid when errcode is 1 and
errMsg is "ok"; the maximum value size is 256 bytes*/
"modelData": "",
/*optional, string, modeling data of background picture, which is encoded by Base64, and the maximum value size is
2048 bytes*/
"traceUuid": "",
/*optional, string, target ID, the maximum value size is 32 bytes*/
"traceIdx": ,
/*optional, integer32, picture No., one person can correspond to multiple pictures*/
"targetAttrs":{
/*target properties*/
"deviceId": "",
/*optional, string, device UUID, the maximum value size is 64 bytes*/
"deviceChannel": ,
/*optional, integer32, device channel No.*/
"deviceName": "",
/*optional, string, device name, the maximum value size is 128 bytes*/
"faceTime": "",
/*optional, string, capture time, the maximum value size is 64 bytes, e.g., 2016-09-10 00:00:00.000*/
"rect":{
/*optional, background picture frame information of face*/
"height": ,
/*optional, float, frame height*/
"width": ,
/*optional, float, frame width*/
"x": ,
/*optional, float, x-coordinate*/
"y":
/*optional, float, Y-coordinate*/
},
"bkgUrl": "",
/*optional, string, background picture URL, the maximum value size is 256 bytes*/
"pId": "",
/*string, thumbnail picture ID, the maximum size is 64 bytes*/
},
"faces": [{
/*array, face information, including detection results, properties, modeling data, and matched list, one picture can
contains multiple faces*/
"faceId": ,
/*optional, integer32, face ID*/
"faceRect":{

125
Intelligent Security API (Facial) Developer Guide

/*optional, face picture frame information*/


"height": ,
/*optional, float, frame height*/
"width": ,
/*optional, float, frame width*/
"x": ,
/*optional, float, x-coordinate*/
"y":
/*optional, float, Y-coordinate*/
},
"faceMark":{
/*optional, face features in the picture, both the faceRect and faceMark must be configured*/
"leftEye":{
/*optional, left eye's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"rightEye":{
/*optional, right eye's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"noseTip":{
/*optional, nose tip's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"leftMouth":{
/*optional, left mouth corner's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"rightMouth":{
/*optional, right mouth corner's position*/
"x":,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
}
},
"recommendFaceRect":{
/*optional, recommended face frame*/
"x": ,
"y": ,

126
Intelligent Security API (Facial) Developer Guide

"width": ,
"height":
},
"facePose":{
/*optional, face posture*/
"pitch": ,
/*optional, float, face raising or bowing angle, range: [-90,90], face raising is regarded as positive, correct to three
decimals. This node does not exists if it is invalid*/
"roll": ,
/*optional, float, face tilting clockwise or anticlockwise angle, range: [-90,90], face tilting clockwise is regarded as
positive, correct to three decimals. This node does not exists if it is invalid*/
"yaw":
/*optional, float, face siding left or right angle, range: [-90,90], face siding left is regarded as positive, correct to three
decimals. This node does not exists if it is invalid*/
},
"age":{
"range": ,
/*optional, age error, if the age error already exists, the age is required, integer32*/
"value": ,
"ageGroup":""
/*optional, age range: "unknown", "child", "young", "middle", "old", string, the maximum size is 32 bytes*/
},
"gender":{
/*optional, gender*/
"confidence": ,
/*optional, confidence, float*/
"value":""
},
"glass":{
/*optional, wear glasses or not*/
"confidence": ,
/*optional, confidence, float*/
"value":""
},
"smile":{
/*optional, smile or not*/
"confidence": ,
"value":""
},
"faceExpression":{
/*optional, face expression*/
"confidence": ,
"value": ""
/*optional, string, face expression: "unknown", "poker-faced", "happy", "surprised", "panic","sad", "angry",
"contemptuous", "disgusted"; the maximum size is 32 bytes*/
},
"mask": {
/*optional, whether it is wearing mask*/
"confidence": ,
"value": ""
/*optional, string, wearing mask or not: no, yes; the maximum size is 32 bytes*/
},

127
Intelligent Security API (Facial) Developer Guide

"hat": {
/*optional, whether it wearing a hat*/
"confidence": ,
/*optional, float, confidence*/
"value": ""
/*optional, string, wearing hat or not: "no, yes, unknown"; the maximum size is 32 bytes*/
},
"score": {
/*optional, face score*/
"confidence": ,
/*optional, float, confidence*/
"value":
}
"modeldata": "",
/*optional, face model data (encoded by base64)*/
"AbsoluteHigh":{
/*absolute PTZ position*/
"elevation": ,
/*optional, integer type, tilting angle, value range: -900 to 2700*/
"azimuth": ,
/*optional, integer type, panning angle, value range: 0 to 3600*/
"absoluteZoom":
/*optional, integer type, zooming rate, value range: 1 to 1000*/
},
"identify": [{
/*optional, features*/
"relationId": "",
/*optional, string, arming linkage ID, the maximum value size is 64 bytes*/
"maxsimilarity": ,
/*optional, float, maximum similarity in the matched results, the similarity is between 0 and 1, and it corrects to two
decimals*/
"similarityRange": ,
/*optional, int, similarity range: 0-smaller than the minimum value, 1-between the minimum value and maximum
value, 2-larger than the maximum value. If the similarity is smaller than the minimum value, the person will be
marked*/
"candidate": [{
/*array, matched face picture information*/
"alarmId": ,
/*optional, integer32, alarm ID*/
"blacklist_id": "",
/*optional, face picture list ID, which corresponds to the FDID in the face picture library, string, the maximum size is 64
bytes*/
"human_data": [{
/*array, person information of matched face pictures*/
"face_id": "",
/*optional, string, face ID, the maximum value size is 32 bytes*/
"face_picurl": "",
/*optional, string, thumbnail URL*/
"pId": "",
/*string, thumbnail picture ID, the maximum size is 64 bytes*/
"face_rect": {
"height": ,

128
Intelligent Security API (Facial) Developer Guide

/*required, float type, frame height*/


"width": ,
/*required, float type, frame width*/
"x": ,
/*required, float type, x-coordinate*/
"y":
/*required, float type, y-coordinate*/
}
"similarity": ,
/*optional, float, face picture similarity, it is between 0 and 1*/
"isNoSaveFDPicture": ,
/*boolean, whether to save the picture of face picture library: true-do not save, if this node is not returned, it
indicates that saving the picture*/
"bkg_picurl": "",
/*optional, string, background picture URL, the maximum value size is 256 bytes*/
}],
"human_id": "",
/*optional, string, person ID, string, person ID in the list, which corresponds to FPID in the face picture library, the
maximum size is 64 bytes*/
"reserve_field": {
/*optional, reserved, the maximum size is 256 bytes*/
"name": "",
/*required, string, person name, the maximum value size is 96 bytes*/
"gender": "",
/*optional, string, gender: "male", "female", "unknown"; the maximum value size is 10 bytes*/
"bornTime": "",
/*required, string, birth date in ISO 8601 format, the maximum value size is 32 bytes*/
"city": "",
/*optional, string, born city code, the maximum value size is 32 bytes*/
"certificateType ": "",
/*optional, string, certificate type: "officerID", "ID"-identity card, "passport", "other"; the maixmum size is 10 bytes*/
"certificateNumber": "",
/*optional, string, certificate number, the maximum value size is 32 bytes*/
"ageGroup": "",
/*optional, string, age group: "unknown", "child", "young", "middle", "old"; the maximum value size is 32 bytes*/
"phoneNumber": ""
/*optional, string, phone number, the maximum value size is 64 bytes*/
},
"similarity": ,
/*optional, float, highest similarity in matched results, the value is between 0 and 1, and it is accurate to two dicimal
places*/
"listType": "",
/*optional, string, list type: "blacklist", "whitelist", the maximum value size is 20 bytes*/
"extendData": [{
/*optional, person extension information*/
"extendID": ,
/*optional, int, person extension information ID, which starts from 1*/
"enable": ,
/*optional, boolean, whether to enable person information extension*/
"name": "",
/*optional, string, extension name of person tag, the maximum value size is 96 bytes*/
"value": "",

129
Intelligent Security API (Facial) Developer Guide

/*optional, string, extension contents of person tag, the maximum value size is 64 bytes*/
}],
"FDLibName": "",
/*optional, face picture library name*/
"FDLibThreshold": ,
/*optional, detection threshold of face picture library, the value range is [0,100]*/
"customFaceLibID": "",
/*optional, string, custom face picture library ID*/
"customHumanID": ""
/*optional, string, custom person ID*/
}],
"alarmRecordID": "",
/*optional, string, alarm record ID*/
"libAttribute": "general"
/*optional, string, library type: "general"-normal library, "blackList"-blacklist library, "VIP"-VIP library, "passerby"-
whitelist library*/
}],
"URL": "",
/*optional, string, face picture URL, the maximum value size is 256 bytes*/
"pId": "",
/*string, thumbnail ID, the maximum size is 64 bytes*/
"stayDuration": ,
/*optional, integer32, dwell time duration in the image, unit: millisecond*/
"prompt": "",
/*optional, string, prompt contents of face picture comparison, the maximum value size is 16 bytes*/
"contrastStatus": ,
/*optional, boolean, comparison result*/
"realTimeContrast": ,
/*optional, boolean, whether to enable real-time face picture comparison*/
"UUPID": "",
/*optional, string, picture ID of face picture library, which consists of device serial No., imported time, and random
digits; the maximum value size is 64 bytes*/
"frontMatchType": ,
/*optional, int, library type: 1-cluster library, 0-normal library*/
"isImportFD":
/*optional, boolean, whether to import the captured face data to the library: true (yes), false (no)*/
}],
"alarmRecordID": "",
/*optional, string, alarm record ID*/
"uid": "",
/*string, event uploading ID, which can consists of time (accurate to millisecond) and random digits, the maximum
value size is 64 bytes*/
"remainReportNum": ,
/*optional, int, the remaining times of uploading the comparison alarm of the current target*/
"ctrlID":"",
/*optional, string32, arming ID*/
"algorithmInfo": {
/*algorithm version information, this node is required for secondary analysis*/
"algorithmId": "",
/*optional, string, algorithm package ID*/
"algoVendorId": "",
/*optional, string, manufacturer ID*/

130
Intelligent Security API (Facial) Developer Guide

"algoVersionId": "",
/*optional, string, algorithm version ID*/
"algoChipType": "",
/*optional, string, chip type*/
"algoModelVersion": "",
/*optional, string, model version*/
}
}
}]
"URLCertificationType": ""
/*optional, string, picture URL authentication type: "no"-none, not authenticate, "digest"-authenticate by digest, the
maximum value size is 32 bytes*/
}

7.9 JSON_EventNotificationAlert_HFPD
JSON message about alarm details of frequently appeared person detection
{
"ipAddress": "",
/*required, device IPv4 address , string, the maximum size is 32 bytes*/
"ipv6Address": "",
/*optional, device IPv6 address, string, the maximum size is 128*/
"portNo":,
/*optional, device port No., integer32*/
"protocol": "",
/*optional, protocol type, "HTTP, HTTPS", string, the maximum size is 32 bytes*/
"macAddress": "",
/*optional, MAC address, string, the maximum size is 32 bytes, e.g., 01:17:24:45:D9:F4*/
"channelID": "",
/*optional, device channel No., integer32*/
"dateTime": "",
/optional, string, alarm/event triggered or occurred time based on ISO8601, the maximum size is 32 bytes, e.g.,
2009-11-14T15:27Z*/
"activePostCount":,
/*required, alarm/event frequency, integer32*/
"eventType": "HFPD",
/*required, alarm/event type, "HFPD"-frequently appeared person event, string, the maximum size is 128 bytes*/
"eventState": "",
/*required, string, the maximum size is 32 bytes, durative alarm/event status: "active"-valid, "inactive"-invalid*/
"eventDescription": "",
/*required, event description, string, the maximum size is 128 bytes*/
"deviceID": "",
/*optional, device ID*/
"faceCapture": [{
"errorCode": ,
/*optional, int, when analyzing face picture failed, the corresponding error code will be returned*/
"errorMsg": "",
/*optional, string, when analyzing face picture failed, the corresponding error information will be returned*/
"image": "",

131
Intelligent Security API (Facial) Developer Guide

/*optional, string, picture URL for face comparison and recognization; the maximum size is 256 bytes, and it is valid
only when errcode is 1 and errMsg is "ok"; e.g., http://10.7.52.174:8080/kms/services/rest/dataInfoService/
downloadFile?id=00000001/temp001/011_163957_23006&token=7a57a5a7ffffffffc1a0316369671314*/
"traceUuid": "",
/*optional, string, target ID, one person corresponds to one target ID in multiple alarms; the maximum size is 32
bytes*/
"traceIdx": ,
/*optional, integer32, index No. of picture that has the highest similarity in the matched pictures of a person*/
"targetAttrs":{
/*target attribute*/
"deviceId": "",
/*optional, string, device ID, the maximum size is 64 bytes*/
"deviceChannel": ,
/*optional, integer32, device's channel No.*/
"deviceName": "",
/*optional, device name, string type, the maximum size is 128*/
"faceTime": "",
/*optional, capture time, ISO8601 time format, e.g.,2009-11-14T15:27:00.000Z, string type, the maximum size is 64*/
"rect": {
/*optional, face picture frame*/
"height": ,
/*optional, float, frame height*/
"width": ,
/*optional, float, frame width*/
"x": ,
/*optional, float, x-coordinate*/
"y":
/*optional, float, y-coordinate*/
},
"bkgUrl": "",
/*optional, background picture URL, string type, the maximum size is 256*/
},
"faces": [{
/*face information includes detection result, attribute, modeling, and matched name list. There may be multiple faces
in one picture, array*/
"faceId": ,
/*optional, face ID, the face ID in one picture cannot be duplicated, integer32*/
"faceRect":{
/*optional, face thumbnail frame*/
"height": ,
/*optional, height, float type*/
"width": ,
/*optional, width, float type*/
"x": ,
/*optional, X-coordinate, float type*/
"y":
/*optional, Y-coordinate, float type*/
},
"faceMark": {
"leftEye":{
/*optional, left eye's position*/
"x": ,

132
Intelligent Security API (Facial) Developer Guide

/*optional, float type, x-coordinate*/


"y":
/*optional, float type, y-coordinate*/
},
"rightEye":{
/*optional, right eye's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"noseTip": {
/*optional, nose tip's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"leftMouth":{
/*optional, left mouth corner's position*/
"x": ,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
},
"rightMouth":{
/*optional, right mouth corner's position*/
"x":,
/*optional, float type, x-coordinate*/
"y":
/*optional, float type, y-coordinate*/
}
},
"recommendFaceRect": {
/*optional, recommended face position*/
"x": ,
"y": ,
"width": ,
"height":
},
"facePose":{
/*optional, face posture*/
"pitch": ,
/*optional, float, face raising or bowing angle, range: [-90,90], face raising is regarded as positive, correct to three
decimals. This node does not exists if it is invalid*/
"roll": ,
/*optional, float, face tilting clockwise or anticlockwise angle, range: [-90,90], face tilting clockwise is regarded as
positive, correct to three decimals. This node does not exists if it is invalid*/
"yaw":
/*optional, float, face siding left or right angle, range: [-90,90], face siding left is regarded as positive, correct to three
decimals. This node does not exists if it is invalid*/
},

133
Intelligent Security API (Facial) Developer Guide

"age":{
/*optional, age*/
"range": ,
/*optional, age deviation, it is required when there is age deviation, integer32*/
"value": ,
/*optional, age, integer32*/
"ageGroup": ""
/*optional, age group: "unknown"-unknown, "child"-teenage, "young"-youth, "middle"-middle-aged, "old"-elderly;
string type, the maximum size is 32 bytes*/
},
"gender":{
/*optional, gender*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, gender: "male"-male, "female"-female, "unknown"-unknown; string type, the maximum size is 32 bytes*/
},
"glass":{
/*optional, whether wearing glasses*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, whether wearing glassed: "no"-no, "yes"-yes; string type, the maximum size is 32 bytes*/
},
"smile":{
/*optional, whether smiling*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, whether smiling: "no"-no, "yes"-yes; string type, the maximum size is 32 bytes*/
},
"mask":{
/*optional, wearing a mask or not*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, whether wearing the mask: "no"-no, "yes"-yes; string, the maximum size is 32 bytes*/
},
"modeldata": "",
/*optional, string, target model data, the maximum size is 5 × 1024 bytes*/
"URL": "",
/*optional, face thumbnail URL, string type, the maximum size is 256 bytes*/
"stayDuration": ,
/*integer32, dwell time duration in the image, unit: millisecond*/
"occurrences": ,
/*optional, integer32, target appearing frequency*/
"algorithmInfo":{
/*algorithm version information, this field is required for secondary analysis*/
"algorithmId":"",
/*optional, string, algorithm package ID*/
"algoVendorId":"",
/*optional, string, manufacturer ID*/

134
Intelligent Security API (Facial) Developer Guide

"algoVersionId":"",
/*optional, string, algorithm version ID*/
"algoChipType":"",
/*optional, string, chip type*/
"algoModelVersion":""
/*optional, string, model version*/
}
}],
"recordDataIndex": "",
/*required, search index No. of frequently appeared person alarm*/
"recordData": [{
/*optional, history data records*/
"captureTime": "",
/*optional, string, capture time in ISO 8601 format; e.g., 2004-05-03T17:30:08Z*/
"captureSite": "",
/*optional, string, capture location (camera name)*/
"similarity": ,
/*optional, float, similarity, value range: [0.000,1.000], the value is accurate to three decimal places*/
"picUrl": "",
/*optional, string, background picture URL*/
"subpicUrl": "",
/*optional, string, face thumbnail URL*/
"rowKey":""
/*optional, string, main key of face data record, which is for quick search, the maximum size is 64 bytes*/
}]
}],
"URLCertificationType": ""
/*optional, picture URL authentication mode: no- no (for cloud storage protocol), digest- digest authentication (for
URL returned by local storage), string type, the maximum size is 32 bytes*/
}

7.10 JSON_EventNotificationAlert_LFPD
The low frequency person alarm is uploaded in the JSON format of EventNotificationAlert message
{
"ipAddress": "",
/*required, device IPv4 address , string, the maximum size is 32 bytes*/
"ipv6Address": "",
/*optional, device IPv6 address, string, the maximum size is 128 bytes*/
"portNo":,
/*optional, device port No., integer32*/
"protocol": "",
/*optional, protocol type, "HTTP, HTTPS", string, the maximum size is 32 bytes*/
"macAddress": "",
/*optional, MAC address, string, the maximum size is 32 bytes, e.g., 01:17:24:45:D9:F4*/
"channelID": "",
/*optional, device channel No., integer32*/
"dateTime": "",
/optional, string, alarm/event triggered or occurred time based on ISO8601, the maximum size is 32 bytes, e.g.,

135
Intelligent Security API (Facial) Developer Guide

2009-11-14T15:27Z*/
"activePostCount":,
/*required, alarm/event frequency, integer32*/
"eventType": "LFPD",
/*required, alarm/event type, string, the maximum size is 128 bytes*/
"eventState": "",
/*required, string, the maximum size is 32 bytes, durative alarm/event status: "active"-valid, "inactive"-invalid*/
"eventDescription": "",
/*required, event description: "Low frequency person detection"; string, the maximum size is 128*/
"LFPD": {
"totalMatches": ,
/*required, the total number of face pictures for low frequency person alarm, integer32*/
"facelibDataIndex": ""
/*required, string, face picture library No.*/
}
}

7.11 JSON_EventRecord_LFPDSearchResult
LFPDSearchResult message in JSON format
{
"LFPDSearchResult":{
"targetInfo":[{
"totalMatches": ,
/*required, integer32, the total number of face pictures for low frequency person alarm*/
"facelibDataIndex": "",
/*required, string, index of face picture library information*/
"dateTime": ""
/*required, string, alarm log time, ISO8601 time format, the maximum length is 32 bits*/
}]
}
}

7.12 JSON_ExportProgressAndURL
Exporting progress and URL information message, and it is in JSON format.
{
"progress": ,
/*optional, integer32 type, exporting progress, its value ranges from 0 to 100*/
"URL":""
/*optional, string type, URL generated by device after exporting, you can download the data files via the URL. The
maximum string length is 128 bytes, and this node is valid only when progress is 100*/
}

136
Intelligent Security API (Facial) Developer Guide

7.13 JSON_FaceScore_Channel
FaceScore message in JSON format
{
"FaceScore":{
/*face grading parameters*/
"enable": "",
/*required, enable face grading or not, boolean*/
"featureSimilarity":{
/*optional, feature similarity*/
"medium":{
/*optional, medium value*/
"leftInterval":
/*required, left interval, [0.0,1.0],float type, corrects to one decimal*/
"rightInterval":
/*required, right interval, [0.0,1.0],float type, corrects to one decimal*/
}
},
"pupillaryDistance":{
/*optional, pupil distance*/
"medium":{
/*optional, medium value*/
"leftInterval":
/*required, left interval, integer type*/
"rightInterval":
/*required, right interval, integer type*/
}
},
"pitchAngle":{
/*optional, pitch angle*/
"medium":{
/*optional, medium value*/
"leftInterval":
/*required, left interval, integer type, unit: degree*/
"rightInterval":
/*required, right interval, integer type, unit: degree*/
}
},
"yawAngle":{
/*optional, yaw angle*/
"medium":{
/*optional, medium value*/
"leftInterval":
/*required, left interval, integer type, unit: degree*/
"rightInterval":
/*required, right interval, integer type, unit: degree*/
}
}

137
Intelligent Security API (Facial) Developer Guide

}
}

7.14 JSON_FaceScore_Device
JSON message about face score
{
"FaceScore": [{
/*required, face grading parameters*/
"enable": ,
/*required, enable face grading or not, boolean*/
"type": ,
/*required, filter type: "0"-all type, "1"-filter face captured picture library, "2"-name list library*/
"FDID": ["", ""],
/*optional, string type, face picture library ID; multiple libraries are separated by commas, it is invalid when the value
of type is "1"*/
"featureConfidence": ,
/*optional, feature confidence*/
"pupillaryDistance": ,
/*optional, pupil distance*/
"pitchAngle": ,
/*optional, pitch angle*/
"yawAngle": ,
/*optional, yaw angle*/
"faceRect": ,
/*optional, integer, face frame, range: [0,N], 0-non-face frame, 1-largest face frame, N-smallest face frame*/
"colorConfidence": ,
/*optional, float, color confidence, range: [0,1], the higher the value, the larger the possibility of color picture; "0"-
black and white picture, "1"-color picture*/
"grayScale": ,
/*optional, gray scale, integer, range: [1,256]*/
"grayMean": {
/*optional, integer, gray average value, the larger the white area is, the larger the gray average value, the larger the
black area is, the smaller the value, range: [0,255]*/
"min": 0,
"max": 255
},
"grayVariance": {
/*optional, integer, gray variance, range: [0,255]*/
"min": 0,
"max": 255
},
"clearityScore": ,
/*optional, float, sharpness, range: [0,1]*/
"rollAngle": ,
/*optional, roll angel, left is negative, right is positive, "0"-frontal face*/
"poseConfidence": ,
/*optional, float, pose confidence, range: [0,1]; the larger the value, the higher the reliability*/
"frontalScore": ,

138
Intelligent Security API (Facial) Developer Guide

/*optional, float, range: [0,1], frontal score, the value is to evaluate the face position*/
"visibleScore": ,
/*optional, float, visibility score, range: [0,1]*/
"totalScore":
/*optional, float, face overall score, range: [0,1]; the larger the value, the higher the face picture quality*/
"algorithm": {
/*optional, algorithm information*/
"algorithmID": "",
/*optional, string, algorithm package ID, either algorithmID or classificationID is required, the maximum size is 64
bytes*/
"algorithmName": "",
/*optional, string, algorithm name*/
"version": "",
/*optional, string, algorithm version, this field is valid only when classificationID exists*/
"vendor": "",
/*optional, string, algorithm manufacturer, this field is valid only when classificationID exists*/
"targetType": "face",
/*optional, string, target type, the maximum size is 64 bytes*/
"modelVerison": "",
/*optional, string, model version information*/
}
}]
}

7.15 JSON_GetTaskProgress
GetTaskProgress message in JSON format
{
"requestURL":"",
"statusCode": ,
"statusString":"",
"subStatusCode":"",
"errorCode": ,
"errorMsg":"",
/*see the description of this node and the above nodes in the message of JSON_ResponseStatus*/
"confidence": ,
/*optional, float type, confidence*/
"modelData":"",
/*optional, string type, target model data, this node is valid only when errorCode is 1 and errorMsg is "ok"*/
"progress":{
/*required, task searching progress*/
"value":""
/*required, string type, value of task searching progress*/
}
}

See Also
JSON_ResponseStatus

139
Intelligent Security API (Facial) Developer Guide

7.16 JSON_HFPD
JSON message about parameters of frequently appeared person detection
{
"HFPD":{
"enabled": ,
/*required, boolean, enable or not*/
"analysisDays": ,
/*required, integer,days of unit time for specified channel, range: [1,30], it is 7 days by default*/
"occurrences": ,
/*required, face picture frequency, integer32,range: [5,100], it is 10 by default*/
"similarity": ,
/*required, similarity of comparing captured picture with stranger library, integer32, range: [80,100], it is 85 by
default*/
"captureTimeInterval": ,
/*required, capture time interval, integer32, range: [0,60], it is 10 by default, unit: min; when it equals to 0, count
once when the target appears once*/
"monitorIds": ["", ""],
/*required, array, sub type, string type, the ID array of camera*/
"taskID": ["1111", "2222"],
/*optional, string, task ID, either taskID or monitorIds is required, taskID refers to task linkage mode*/
"FaceLibrary": [{
/*optional, face picture library in whitelist for frequently appeared person detection. E.g., when comparing the
captured face picture with the face picture library, if the similarity reaches configured threshold, the alarm will not be
triggered*/
"FDID": "",
/*required, face picture library ID, multiple libraries are separated by commas*/
"similarity": ,
/*required, similarity, integer32,range: [80,100], it is 85 by default*/
}]
"BlackListFaceLibrary": [{
/*optional, face picture library in blacklist for frequently appeared person detection. E.g., when comparing a captured
face picture with the face picture library, if the similarity reaches the configured threshold, the alarm will be
triggered*/
"FDID": "",
/*required, face picture library ID, multiple libraries are separated by commas*/
"similarity": 95
/*required, similarity, integer32,range: [80,100], it is 85 by default*/
}]
}
}

7.17 JSON_HFPDCap
JSON message about capability of frequently appeared person detection
{
"HFPDCap":{

140
Intelligent Security API (Facial) Developer Guide

"analysisDays":{
/*number of days for analysis*/
"@min": 1,
"@max": 30,
"@def": 7
},
"timeRange":{
/*arming time range of frequently appeared person detection per day*/
"size": 5
},
"occurrences":{
/*face picture frequency in frequently appeared person detection*/
"@min": 5,
"@max": 100,
"@def": 10
},
"similarity":{
/*similarity of face picture library comparison for frequently appeared person detection*/
"@min": 80,
"@max": 100,
"@def": 85
},
"captureTimeInterval":{
/*capture time interval for checking duplicate in capture library*/
"@min": 1,
"@max": 60,
"@def": 10
},
"monitorIds":{
"size": 4,
/*required, the maximum number of supported cameras, integer type*/
"@opt": "1,2,3"
/*ID of camera which supports high frequently appeared person detection; multiple IDs are separated by commas*/
},
"taskID": {
/*optional, string, task ID, either taskID and monitorIds is required, taskID refers to task linkage mode*/
"size": 4,
},
"FaceLibrary":{
"size": 4,
"similarity":{
/*similarity of face picture libraries*/
"@min": 80,
"@max": 100,
"@def": 85
},
"FDID":{
/*list library ID*/
"@min": 80,
"@max": 100
},
"isSupportStrangerFaceLib":

141
Intelligent Security API (Facial) Developer Guide

/*whether device supports stranger library configuration*/


},
"eventRecordDataSearch": {
/*whether to support searching for records of frequently appeared person detection*/
"isSupportSearchTime": true,
/*whether to support searching cross time periods*/
"isSupportRecordDataSearchSync": true,
/*whether to support synchronous search of frequently appeared person detection*/
},
"captureLibCollisionSearch": {
/*parameters of high frequency comparison task in capture library*/
"isSupportSearchTime": ,
/*whether it supports searching by time range*/
"captureTimeInterval": {
/*capture time interval*/
"@min": 1,
"@max": 60,
"@def": 10
},
"similarity": {
/*similarity threshold of comparison*/
"@min": 80,
"@max": 100,
"@def": 85
},
"occurrences": {
/*person occurrence times*/
"@min": 5,
"@max": 100,
"@def": 7
}
},
"multiLibCollisionSearch": {
"FD": {
"size": 4
/*maximum number of list libraries to be compared*/
},
"priority": {
"@min": 0,
"@max": 100,
"@def": 80
},
"similarity": {
"@min": 80,
"@max": 100,
"@def": 85
}
},
"isSupportDataPackage":
/*whether to support exporting data of frequently appeared person detection*/
"BlackListFaceLibrary":{
/*face picture library in blacklist for frequently appeared person detection*/

142
Intelligent Security API (Facial) Developer Guide

"size": 4,
/*required, the maximum number of supported face picture libraries, integer*/
"similarity":{
/*similarity of face picture library comparison for frequently appeared person detection*/
"@min": 70,
"@max": 100,
"@def": 80
}
}
}
}

7.18 JSON_HFPDDataPackageCond
HFPDDataPackageCond message in JSON format
{
"DataPackageCond":{
"searchResultPosition": ,
/*optional, initial position of search result list, integer32; if this node is not configured, it starts from 0 by default.
When there are multiple records, and cannot get all records in one time searching, you can search the records
followed specified position for next search*/
"maxResults": ,
/*optional, maximum records for single searching, up to 1000 records, integer32; if this node is not configured, the
value is 1000*/
"taskID": "",
/*optional, search task ID, string*/
"Description":{
/*optional, packaging condition*/
"startTime": "",
/*optional, start time, string, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"endTime": "",
/*optional, end time, string, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"monitorIds": ["", ""],
/*optional, array, sub type, string, camera ID array; if this node is not configured, it indicates searching for all
cameras*/
"lowestOccurrences":
/*optional, the lowest frequency, integer32, default value:5, range: [1,30]*/
}
}
}

Remarks
One of Description and taskID must be configured, when both parameters are configured, the
taskID takes effect.

143
Intelligent Security API (Facial) Developer Guide

7.19 JSON_HFPDEventRecordDataDescription
HFPDEventRecordDataDescription message in JSON format
{
"EventRecordDataDescription":{
"startTime": "",
/*optional, start time, string type, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"endTime": "",
/*optional, end time, string type, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"monitorIds": ["", ""],
/*optional, array, sub type string, camera ID array*/
"lowestOccurrences":
/*optional, the minimum frequency, range: [1,30], the default value is 1*/
}
}

7.20 JSON_HFPDPagingCond
HFPDPagingCond message in JSON format
{
"PagingCond":{
"taskID": "",
/*required, task ID, string type*/
"searchResultPosition": ,
/*required, initial position of search result list, integer32. When there are multiple records, and cannot get all records
in one time searching, you can search the records followed specified position for next search*/
"maxResults":
/*required, maximum records for single searching, integer32*/
}
}

7.21 JSON_HFPDRecordData
JSON message about data record of frequently appeared person detection
{
"RecordData":{
"progress": "",
/*optional, progress, only when it equals to "100", you can get the detailed data*/
"targets": [{
/*required, matched data, array*/
"id": ,
/*required, ID, integer32*/
"captureTime": "",
/*optional, string, capture time, ISO8601_time, e.g., 2004-05-03T17:30:08+08:00*/

144
Intelligent Security API (Facial) Developer Guide

"captureSite": "",
/*optional, string type, capture place (camera name)*/
"monitorId": "",
/*optional, string type, CVR encoder stream ID, the maximum length is 64 bytes; if not support, this node will not be
returned*/
"ageGroup": "",
/*optional, string type, age group*/
"gender": "",
/*optional, string type, gender*/
"glasses": "",
/*optional, string type, wearing glasses*/
"smile": "",
/*optional, string type, smiling*/
"mask": "",
/*optional, string type, wearing mask*/
"picUrl": "",
/*optional, string type, background picture URL*/
"subpicUrl": "",
/*required, string type, face thumbnail URL*/
"rect":{
/*optional, face coordinates in the matched picture*/
"height": ,
/*optional, height, float type*/
"width": ,
/*optional, width, float type*/
"y": ,
/*optional, Y-coordinate, float type*/
"x":
/*optional, X-coordinate, float type*/
},
"similarity": ,
/*optional, similarity, float type*/
"range": ,
/*optional, age deviation, integer32*/
"value": ,
/*optional, age, integer32*/
"faceExpression":{
/*optional, face expression*/
"confidence": ,
/*optional, confidence, float*/
"value": ""
/*optional, string, face expression: "unknown", "poker-faced", "happy", "surprised", "panic","sad", "angry",
"contemptuous", "disgusted"; the maximum length is 32 bytes*/
},
"confidence": ,
/*optional, float, confidence*/
"value": ""
/*optional, string, the maximum length is 32*/
}
}]
}
}

145
Intelligent Security API (Facial) Developer Guide

7.22 JSON_HFPDSearchResult
HFPDSearchResult message in JSON format
{
"HFPDSearchResult":{
"responseStatusStrg": "",
/*optional, string type, search status: "OK"-search completed, "NO MATCHES"-search failed, "MORE"-searching; the
maximum length is 32 bits*/
"numOfMatches": ,
/*optional, returned number of results for current search, integer32*/
"totalMatches": ,
/*optional, total number of matched results, integer32*/
"targetInfo": [{
"recordDataIndex": "",
/*required, string,ID of searched record detailed information*/
"occurrences": ,
/*required, integer32,frequency of frequently appeared person*/
"analysisTime": "",
/*required, alarm analysis time, string type, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"URL": "",
/*required, face thumbnail URL, string type*/
"targetId": "",
/*optional, string type, target ID, the ID varies of different target*/
"FaceInfo": [{
/*optional, array, list of matched face pictures information*/
"FDID": "",
/*required, string type, face picture library ID, the maximum length is 64 bits*/
"PID": "",
/*optional, string type, person ID of face picture library, the maximum length is 64 bits*/
"face_picurl": "",
/*optional, face picture URL, string type*/
"FaceAppendData":{
/*optional, face picture additional information*/
"name": "",
/*required, name, string type, the maximum length is 96 bits*/
"gender": "",
/*optional, string, gender: "male"-male, "female"-female, "unknown"-unknown; the maximum length is 10 bits*/
"bornTime": "",
/*required, string, birth date, ISO8601 time, the maximum length is 32 bits*/
"city": "",
/*optional, city of birth, string, the max. length is 32*/
"certificateType": "",
/*optional, string, certificate type: "officerID"-officer ID, "ID"-identify card, "passport"-passport, "other"-other
certificate; the max. length is 10 bits*/
"certificateNumber": "",
/*optional, string, certificate No., the max. length is 32*/
"ageGroup": "",
/*optional, string, age group: "unknown"-unknown; the max. length is 32*/
"phoneNumber": "",
/*optional, string, telephone number, the max. length is 64*/

146
Intelligent Security API (Facial) Developer Guide

},
"similarity": ,
/*optional, float type, the maximum similarity of all matched pictures, ranges from 0 to 1, corrects to two decimal
places*/
"extendData": [{
/*optional, person extended information*/
"extendID": ,
/*optional, integer, person extended information ID, starts form 1*/
"enable": "",
/*optional, boolean type, enable person extended information or not*/
"name": "",
/*optional, person tag extended name; string, the maximum length is 96 bits*/
"value": "",
/*optional, person tag extended information; string, the maximum length is 64 bits*/
}],
}] // FaceInfo
}]
}
}

7.23 JSON_IntelligentSearchCap
JSON message about intelligent search capability
{
"requestURL":"",
/*optional, string, request URL*/
"statusCode":1,
/*required, int, status code*/
"statusString":"",
/*required, string, status description*/
"subStatusCode":"",
/*required, string, sub status code*/
"errorCode":1,
/*optional, int, error code, this node is required when statusCode is not 1 and it corresponds to subStatusCode*/
"errorMsg":"ok",
/*optional, string, error details, this node is required, when statusCode is not 1 and it can be error details about a
specific parameter*/
"startTime":"2004-05-03T17:30:08+08:00",
/*required, string, start time in ISO8601 time format. This node only indicates that the device supports this field*/
"endTime":"2004-05-03T17:30:08+08:00",
/*required, string, end time in ISO8601 time format. This node only indicates that the device supports this field*/
"resultMaxNum":100,
/*required, int, supported maximum number of results that can be searched*/
"channelIDLen":{
/*optional, camera ID length*/
"min":1,
"max":32
},
"channelNameLen":{

147
Intelligent Security API (Facial) Developer Guide

/*optional, camera name length*/


"min":1,
"max":32
},
"streamType": "realtime,historyvideo,localvideo",
/*optional, string, streaming type, "realtime,historyvideo,localvideo"*/
"targetRect":{
/*required, target frame*/
"height":{
"min":1,
"max":100
},
"width":{
"min":1,
"max":100
},
"x":{
"min":1,
"max":100
},
"y":{
"min":1,
"max":100
}
},
"picUrlLen":{
/*required, URL length of the large picture*/
"min":1,
"max":128
},
"subPicUrlLen": {
/*required, length of the thumbnail URL*/
"min": 1,
"max": 1
},
"targetID": {
/*optional, string, linkage ID between face and human body*/
"min": 1,
"max": 1
},
"targetType":"vehicle",
/*string, search object type*/
"targetSize": "",
/*optional, string, target size*/
"direction": "",
/*optional, string, target direction*/
"speed": "",
/*optional, string, target speed*/
"ageGroup":"",
/*optional, string, age*/
"gender":"",
/*optional, string, gender, string, gender*/

148
Intelligent Security API (Facial) Developer Guide

"glass":"",
/*optional, string, wear glasses or not*/
"bag":"",
/*optional, string, whether with bag or not*/
"hat":"",
/*optional, string, whether with hat or not*/
"mask":"",
/*optional, string, whether with mask or not*/
"jacket": "",
/*optional, string, jacket type*/
"trousersType":"",
/*optional, string, trousers type*/
"hairStyle":"",
/*optional, string, hair style*/
"jacketColor":"",
/*optional, string, jacket color*/
"trousersColor":"",
/*optional, string, trousers coloe*/
"ride":"",
/*optional, string, ride a bike or not*/
"things":"",
/*optional, string, whether with handbag or not*/
"cyclingType":"",
/*optional, string, vehicle type*/
"cyclingPersonNumber":"",
/*optional, string, number of passengers*/
"isSupportLicense":true,
/*required, boolean type, whether it supports license plate number*/
"plateType":"unknown,92TypeCivil,arm,upDownMilitay,92TypeArm,leftRightMilitay,
02TypePersonalized,yellowTwoLine,
04NewMilitay,embassy,oneLineArm,twoLineArm,yellow1225FarmVehicle,green1325FarmVehicle,yellow1325FarmVehi
cle,motorola,coach,tempTravl,trailer,consulate,hongKongMacao,tempEntry,civilAviation,newEnergy",
/*optional, string, license plate type: license plate type: "unknown", "92TypeCivil"-92-style civil vehicle, "arm"-police
vehicle, "upDownMilitay"-military vehicle (top-bottom type), "92TypeArm"-92-style police vehicle, "leftRightMilitay"-
military vehicle (left-right type), "02TypePersonalized"-02-style customized vehicle, "yellowTwoLine"-yellow two-line
rear license plate, "04NewMilitay"-04-style new military vehicle, "embassy"-embassy vehicle, "oneLineArm"-new
armed police vehicle (one-line), "twoLineArm"-new armed police vehicle (two-line), "yellow1225FarmVehicle"-yellow
agricultural vehicle with 1225 structure, "green1325FarmVehicle"-green agricultural vehicle with 1325 structure,
"yellow1325FarmVehicle"-yellow agricultural vehicle with 1325 structure, "motorola"-motorcycle, "coach"-driver-
training vehicle, "tempTravl"-vehicle with temporary license plate, "trailer"-trailer, "consulate"-consular vehicle,
"hongKongMacao"-vehicle entering and leaving Hong Kong/Macao, "tempEntry"-temporary entry vehicle,
"civilAviation"-civil aviation license plate, "newEnergy"-new energy license plate. Multiple types should be separated
by commas*/

"vehicleColor":"white,silver,gray,black,red,deepBlue,blue,yellow,green,brown,pink,purple,deepGray,cyan,orange,unkn
own",
/*optional, string, vehicle color: "unknown", "white", "silver"-silvery, "gray", "black", "red", "deepBlue"-dark blue,
"blue", "yellow", "green", "brown", "pink", "purple", "deepGray"-dark gray, "cyan", "orange". Multiple colors should
be separated by commas*/
"plateColor":"white,yellow,blue,black,green,civilAviationBlack,civilAviationGreen,other",
/*optional, string, license plate color: "white", "yellow", "blue", "black", "green", "civilAviationBlack"-civil aviation
black, "civilAviationGreen"-civil aviation green, "0xff" or "other"-other color, "unknown"-unrecognized. Multiple colors

149
Intelligent Security API (Facial) Developer Guide

should be separated by commas*/

"vehicleType":"largeBus,truck,vehicle,van,buggy,pedestrian,twoWheelVehicle,threeWheelVehicle,SUVMPV,mediumBus
,motorVehicle,nonmotorVehicle,smallCar,miniCar,pickupTruck,unknown",
/*optional, string, vehicle type: "largeBus"-large-sized bus, "truck"-truck, "vehicle"-salon car, "van"-minivan, "buggy"-
light truck, "pedestrian", "twoWheelVehicle"-two wheeler, "threeWheelVehicle"-tricycle, "SUVMPV"-SUV/MPV,
"mediumBus"-middle-sized bus, "motorVehicle"-motor vehicle (it will be transformed to "vehicle" (salon car) in the
platform), "nonmotorVehicle"-non-motor vehicle (it will be transformed to "threeWheelVehicle" (tricycle) in the
platform), "smallCar"-small sedan (it will be transformed to "vehicle" (salon car) in the platform), "miniCar"-mini
sedan (it will be transformed to "vehicle" (salon car) in the platform), "pickupTruck"-pick-up truck, "unknown".
Multiple types should be separated by commas*/
"isSupportVehicleLogo":true,
/*optional, boolean type, whether it supports vehicle parent brand*/
"isSupportvehicleSubLogo":true,
/*optional, boolean type, whether it supports vehicle sub brand*/
"isSupportVehicleModel":true,
/*optional, boolean type, whether it supports vehicle model year*/
"pilotSafebelt":"",
/*optional, string type, whether the driver buckled up*/
"pilotSunvisor":"",
/*optional, string type, whether the driver's sun visor is pulled down*/
"vicePilotSafebelt":"",
/*optional, string type, whether the front passenger buckled up*/
"vicePilotSunvisor":"",
/*optional, string type, whether the front passenger's sun visor is pulled down*/
"uphone":"",
/*optional, string type, whether the person is making a call*/
"dangmark": "",
/*optional, string, whether it is dangerous goods vehicle*/
"envprosign": "",
/*optional, string, whether to display yellow label vehicle*/
"muckTruck": "",
/*optional, string, whether it is a dump truck*/
"vehicleState": "",
/*optional, string, license plate status*/
"pdvs": "",
/*optional, string, whether there are people sticking out of the sunroof*/
"vehicleHead": "",
/*optional, string, license plate recognition direction*/
"pendant": "",
/*optional, string, whether there is window hangings detected*/
"temporaryLicense": "",
/*optional, string, whether it is a temporary license plate*/
"tricycleCanopy": "",
/*optional, string, whether there is a hood on the tricycle*/
"decoration": "",
/*optional, string, whether there is decoration detected*/
"tissueBox": "",
/*optional, string, whether there is tissue box detected*/
"card": "",
/*optional, string, whether it is with cards*/
"cardType": "",

150
Intelligent Security API (Facial) Developer Guide

/*optional, string, card type*/


"copilot": "",
/*optional, string, whether there is a person in the co-driver room*/
"frontChild": "",
/*optional, string, whether the co-driver is with baby in arm*/
"sunroof": "",
/*optional, string, whether it is with a sunroof*/
"luggageRack": "",
/*optional, string, whether it is with a luggage rack*/
"vehicleSprayPainted": "",
/*optional, string, whether the vehicle is painted*/
"spareTire": "",
/*optional, string, whether it is with a spare tire*/
"coverPlate": "",
/*optional, string, whether the heavy truck is covered with back cover*/
"label": "",
/*optional, string, whether there is inspection label detected*/
"plateRecogRegionIDNum":
/*optional, number of IDs of the license plate recognition region*/ {
"min": 1,
"max": 1
},
"discuss": {
/*optional, discussion*/
"confidence": 99.99990,
/*optional, float, confidence*/
"value": ""
/*optional, discussion type, "unknown", "no", "yes"*/
},
"channelMaxNum":1,
/*required, integer type, maximum number of channels that support simultaneous search*/
"supportSearchByUTC":true
/*optional, boolean type, whether it supports searching by UTC*/
"linkFaceBodyId": {
"@min": 0,
"@max": 64
},
/*optional, linkage ID between human face and body, the maximum length is 64 bytes*/
"sortType": {
/*optional, string, sorting type: similarity-by similarity(by default), time-by time, the maximum length is 32 bytes*/
"@opt":["similarity", "time"]
},
"plateCategory": {
/*optional, additional information of license plate*/
"@min": 0,
"@max": 0
}
}

151
Intelligent Security API (Facial) Developer Guide

7.24 JSON_IntelligentSearchCondition
JSON message about intelligent search conditions
{
"searchID":"",
/*required, string, search ID. The content of searchID remains unchanged if the search conditions remain unchanged.
This node is used to check the same search. When the device performance is limited, you can search asynchronously
by applying conditions with the same searchID several times and getting the search progress*/
"searchResultPosition": ,
/*required, int, the start position of the search result in the result list. When there are multiple records and you
cannot get all search results at a time, you can search for the records after the specified position next time*/
"maxResults": ,
/*required, int, maximum number of search results obtained this time*/
"startTime":"",
/*required, string, start time in ISO8601 time format*/
"endTime":"",
/*required, string, end time in ISO8601 time format*/
"choiceChannel":[{
/*optional*/
"channelID":"",
/*optional, string, camera No.*/
"plateRecogRegionID":
/*optional, int, license plate recognition area No. If this node is not configured, it refers to all areas*/
}],
"targetType":"",
/*optional, string, search object type. If this node is not returned, it indicates no limit*/
"targetSize": "",
/*optional, string, target size*/
"direction": "",
/*optional, string, target direction*/
"speed": "",
/*optional, string, target speed*/
"sortType": "",
/*optional, string, sorting type: "similarity"-by similarity(by default), "time"-by time, the maximum length is 32 bytes*/
"humanInfo":{
/*dependent, this node is valid only when the value of targetType is human*/
"ageGroup":"",
/*optional, string, age*/
"gender":"",
/*optional, string, gender, string, gender*/
"glass":"",
/*optional, string, wear glasses or not*/
"bag":"",
/*optional, string, whether with bag or not*/
"hat":"",
/*optional, string, whether with hat or not*/
"mask":"",
/*optional, string, whether with mask or not*/
"jacketType":"",
/*optional, string, jacket type*/

152
Intelligent Security API (Facial) Developer Guide

"trousersType":"",
/*optional, string, trousers type*/
"hairStyle":"",
/*optional, string, hair style*/
"jacketColor":"",
/*optional, string, jacket color, "white,black"*/
"trousersColor":"",
/*optional, string, trousers color, "white,black"*/
"ride":"",
/*optional, string, ride a bike or not*/
"things":"",
/*optional, string, whether with handbag or not*/
"cyclingType":"",
/*optional, string, vehicle type*/
"cyclingPersonNumber":"",
/*optional, string, number of passengers*/
"hID":"",
/*required, string, person ID, the maximum length is 32 bytes*/
"name":"",
/*required, string, name of the person, the maximum length is 32 bytes*/
"linkFaceBodyId":""
/*optioal, linkage ID between human face and body, the maximum length is 64 bytes*/
},
"vehicleInfo ":{
/*this node is valid when targetType is "vehicle"*/
"license":"",
/*optional, string, license plate number*/
"plateCategory": "",
/*optional, additional information of license plate*/
"plateType":"",
/*optional, string, license plate type: license plate type: "unknown", "92TypeCivil"-92-style civil vehicle, "arm"-police
vehicle, "upDownMilitay"-military vehicle (top-bottom type), "92TypeArm"-92-style police vehicle, "leftRightMilitay"-
military vehicle (left-right type), "02TypePersonalized"-02-style customized vehicle, "yellowTwoLine"-yellow two-line
rear license plate, "04NewMilitay"-04-style new military vehicle, "embassy"-embassy vehicle, "oneLineArm"-new
armed police vehicle (one-line), "twoLineArm"-new armed police vehicle (two-line), "yellow1225FarmVehicle"-yellow
agricultural vehicle with 1225 structure, "green1325FarmVehicle"-green agricultural vehicle with 1325 structure,
"yellow1325FarmVehicle"-yellow agricultural vehicle with 1325 structure, "motorola"-motorcycle, "coach"-driver-
training vehicle, "tempTravl"-vehicle with temporary license plate, "trailer"-trailer, "consulate"-consular vehicle,
"hongKongMacao"-vehicle entering and leaving Hong Kong/Macao, "tempEntry"-temporary entry vehicle,
"civilAviation"-civil aviation license plate, "newEnergy"-new energy license plate. If this node is not returned, it
indicates no limit*/
"vehicleColor":"",
/*optional, string, vehicle color: "unknown", "white", "silver"-silvery, "gray", "black", "red", "deepBlue"-dark blue,
"blue", "yellow", "green", "brown", "pink", "purple", "deepGray"-dark gray, "cyan", "orange". Multiple colors should
be separated by commas. If this node is not returned, it indicates no limit*/
"vehicleType":"",
/*optional, string, vehicle type: "largeBus"-large-sized bus, "truck"-truck, "vehicle"-salon car, "van"-minivan, "buggy"-
light truck, "pedestrian", "twoWheelVehicle"-two wheeler, "threeWheelVehicle"-tricycle, "SUVMPV"-SUV/MPV,
"mediumBus"-middle-sized bus, "unknown". If this node is not returned, it indicates no limit*/
"vehicleLogo": ,
/*optional, int, vehicle parent brand. If this node is not returned, it indicates no limit*/
"vehicleSubLogo": ,

153
Intelligent Security API (Facial) Developer Guide

/*optional, int, vehicle sub brand. If this node is not returned, it indicates no limit*/
"vehicleModel": ,
/*optional, int, vehicle model year. If this node is not returned, it indicates no limit*/
"plateColor":"",
/*optional, string, license plate color: "white", "yellow", "blue", "black", "green", "civilAviationBlack"-civil aviation
black, "civilAviationGreen"-civil aviation green, "0xff" or "other"-other color. If this node is not returned, it indicates no
limit*/
"pilotSafebelt":"",
/*optional, string, whether the driver buckled up. If this node is not returned, it indicates no limit*/
"pilotSunvisor":"",
/*optional, string, whether the driver's sun visor is pulled down. If this node is not returned, it indicates no limit*/
"vicePilotSafebelt":"",
/*optional, string, whether the front passenger buckled up*/
"vicePilotSunvisor":"",
/*optional, string, whether the front passenger's sun visor is pulled down*/
"uphone":""
/*optional, string, whether the person is making a call*/
"dangmark": "",
/*optional, string, whether it is dangerous goods vehicle*/
"vehicleState": "",
/*optional, string, license plate status*/
"pdvs": "",
/*optional, string, whether there are people sticking out of the sunroof*/
"vehicleHead": "",
/*optional, string, license plate recognition direction*/
"pendant": "",
/*optional, string, whether there is window hangings detected*/
"temporaryLicense": "",
/*optional, string, whether it is a temporary license plate*/
"tricycleCanopy": "",
/*optional, string, whether there is a hood on the tricycle*/
"decoration": "",
/*optional, string, whether there is decoration detected*/
"tissueBox": "",
/*optional, string, whether there is tissue box detected*/
"card": "",
/*optional, string, whether it is with cards*/
"cardType": "",
/*optional, string, card type*/
"copilot": "",
/*optional, string, whether there is a person in the co-driver room*/
"frontChild": "",
/*optional, string, whether the co-driver is with baby in arm*/
"muckTruck": "",
/*optional, string, whether it is a dump truck*/
"sunroof": "",
/*optional, string, whether it is with a sunroof*/
"luggageRack": "",
/*optional, string, whether it is with a luggage rack*/
"vehicleSprayPainted": "",
/*optional, string, whether the vehicle is painted*/
"spareTire": "",

154
Intelligent Security API (Facial) Developer Guide

/*optional, string, whether it is with a spare tire*/


"coverPlate": "",
/*optional, string, whether the heavy truck is covered with back cover*/
"label": "",
/*optional, string, whether there is inspection label detected*/
},
"twoWheelVehicle": {
/*dependent, this node is valid only when the value of targetType is "twoWheelVehicle"*/
"ageGroup": "",
/*optional, string, whether to display age group*/
"gender": "",
/*optiona, string, whether to display gender*/
"glass": "",
/*optional, string, whether to display glasses*/
"bag": "",
/*optional, string, whether to display back bag*/
"hat": "",
/*optional, string, whether to display hat*/
"mask": "",
/*optional, string, whether to display mask*/
"jacketType": "",
/*optional, string, whether to display jacket type*/
"hairStyle": "",
/*optional, string, whether to display hairstyle*/
"jacketColor": "",
/*optional, string, whether to display jacket color*/
"cyclingType": "",
/*optional, string, whether to display cycling type*/
"cyclingPersonNumber": ""
/*optional, string, whether to display number of people cycling*/
},
"threeWheelVehicle": {
/*dependent, this node is valid only when the value of targetType is "threeWheelVehicle"*/
"ageGroup": "",
/*optional, string, whether to display age group*/
"gender": "",
/*optional, string, whether to display gender*/
"glass": "",
/*optional, string, whether to display glasses*/
"bag": "",
/*optional, string, whether to display back bag*/
"hat": "",
/*optional, string, whether to display hat*/
"mask": "",
/*optional, string, whether to display mask*/
"jacketType": "",
/*optional, string, whether to display jacket type*/
"hairStyle": "",
/*optional, string, whether to display hairstyle*/
"jacketColor": "",
/*optional, string, whether to display jacket color*/
"cyclingPersonNumber": ""

155
Intelligent Security API (Facial) Developer Guide

/*optional, string, whether to display number of people cycling*/


}
}

7.25 JSON_IntelliSearchExportCond
JSON message about conditions of exporting intelligent search results
{
"searchID":"",
/*required, string type, search ID. The content of searchID remains unchanged if the search conditions remain
unchanged. This node is used to check the same search. When the device performance is limited, you can search
asynchronously by applying conditions with the same searchID several times and getting the search progress*/
"searchResultPosition": ,
/*required, int type, the start position of the search result in the result list. When there are multiple records and you
cannot get all search results at a time, you can search for the records after the specified position next time*/
"maxResults": ,
/*required, int type, maximum number of search results obtained this time*/
"startTime":"",
/*required, string type, start time in ISO8601 time format*/
"endTime":"",
/*required, string type, end time in ISO8601 time format*/
"choiceChannel":[{
/*optional*/
"channelID":""
/*optional, string type, camera No.*/
}],
"targetType":"",
/*optional, string type, search object type: "human,vehicle,twoWheelVehicle,threeWheelVehicle". If this node is not
returned, it indicates no limit*/
"targetSize":"",
/*optional, string type, target size. If this node is not returned, it indicates no limit*/
"direction":"",
/*optional, string type, target direction. If this node is not returned, it indicates no limit*/
"speed":"",
/*optional, string type, target speed. If this node is not returned, it indicates no limit*/
"humanInfo":{
/*this node is valid when targetType is "human"*/
"ageGroup":"",
/*optional, string type, age group. If this node is not returned, it indicates no limit*/
"gender":"",
/*optional, string type, gender. If this node is not returned, it indicates no limit*/
"glass":"",
/*optional, string type, whether the person wears glasses. If this node is not returned, it indicates no limit*/
"bag":"",
/*optional, string type, whether the person is with backpack. If this node is not returned, it indicates no limit*/
"hat":"",
/*optional, string type, whether the person wears glasses. If this node is not returned, it indicates no limit*/
"mask":"",
/*optional, string type, whether the person wears mask. If this node is not returned, it indicates no limit*/

156
Intelligent Security API (Facial) Developer Guide

"jacketType":"",
/*optional, string type, tops type. If this node is not returned, it indicates no limit*/
"trousersType":"",
/*optional, string type, bottoms type. If this node is not returned, it indicates no limit*/
"hairStyle":"",
/*optional, string type, hairstyle. If this node is not returned, it indicates no limit*/
"jacketColor":"",
/*optional, string type, tops color. If this node is not returned, it indicates no limit*/
"trousersColor":"",
/*optional, string type, bottoms color. If this node is not returned, it indicates no limit*/
"ride":"",
/*optional, string type, whether the person is riding bicycle. If this node is not returned, it indicates no limit*/
"things":"",
/*optional, string type, whether the person is carrying goods. If this node is not returned, it indicates no limit*/
"cyclingType":"",
/*optional, string type, riding type*/
"cyclingPersonNumber":""
/*optional, string type, number of riders*/
},
"vehicleInfo":{
/*this node is valid when targetType is "vehicle"*/
"license":"",
/*optioinal, string type, license plate number*/
"plateCategory": "",
/*optional, additional information of license plate*/
"plateType":"",
/*optional, string type, license plate type: license plate type: "unknown", "92TypeCivil"-92-style civil vehicle, "arm"-
police vehicle, "upDownMilitay"-military vehicle (top-bottom type), "92TypeArm"-92-style police vehicle,
"leftRightMilitay"-military vehicle (left-right type), "02TypePersonalized"-02-style customized vehicle, "yellowTwoLine"-
yellow two-line rear license plate, "04NewMilitay"-04-style new military vehicle, "embassy"-embassy vehicle,
"oneLineArm"-new armed police vehicle (one-line), "twoLineArm"-new armed police vehicle (two-line),
"yellow1225FarmVehicle"-yellow agricultural vehicle with 1225 structure, "green1325FarmVehicle"-green agricultural
vehicle with 1325 structure, "yellow1325FarmVehicle"-yellow agricultural vehicle with 1325 structure, "motorola"-
motorcycle, "coach"-driver-training vehicle, "tempTravl"-vehicle with temporary license plate, "trailer"-trailer,
"consulate"-consular vehicle, "hongKongMacao"-vehicle entering and leaving Hong Kong/Macao, "tempEntry"-
temporary entry vehicle, "civilAviation"-civil aviation license plate, "newEnergy"-new energy license plate. If this node
is not returned, it indicates no limit*/
"vehicleColor":"",
/*optional, string type, vehicle color: "unknown", "white", "silver"-silvery, "gray", "black", "red", "deepBlue"-dark
blue, "blue", "yellow", "green", "brown", "pink", "purple", "deepGray"-dark gray, "cyan", "orange". Multiple colors
should be separated by commas. If this node is not returned, it indicates no limit*/
"vehicleType":"",
/*optional, string type, vehicle type: "largeBus"-large-sized bus, "truck"-truck, "vehicle"-salon car, "van"-minivan,
"buggy"-light truck, "pedestrian", "twoWheelVehicle"-two wheeler, "threeWheelVehicle"-tricycle, "SUVMPV"-SUV/
MPV, "mediumBus"-middle-sized bus, "unknown". If this node is not returned, it indicates no limit*/
"vehicleLogo": ,
/*optional, int type, vehicle parent brand. If this node is not returned, it indicates no limit*/
"vehicleSubLogo": ,
/*optional, int type, vehicle sub brand. If this node is not returned, it indicates no limit*/
"vehicleModel": ,
/*optional, int type, vehicle model year. If this node is not returned, it indicates no limit*/
"plateColor":"",

157
Intelligent Security API (Facial) Developer Guide

/*optional, string type, license plate color: "white", "yellow", "blue", "black", "green", "civilAviationBlack"-civil
aviation black, "civilAviationGreen"-civil aviation green, "0xff" or "other"-other color. If this node is not returned, it
indicates no limit*/
"pilotSafebelt":"",
/*optional, string type, whether the driver buckled up. If this node is not returned, it indicates no limit*/
"pilotSunvisor":"",
/*optional, string type, whether the driver's sun visor is pulled down. If this node is not returned, it indicates no limit*/
"vicePilotSafebelt":"",
/*optional, string type, whether the front passenger buckled up*/
"vicePilotSunvisor":"",
/*optional, string type, whether the front passenger's sun visor is pulled down*/
"uphone":"",
/*optional, string type, whether the person is making a call*/
"dangmark":"",
/*optional, string type, whether the vehicle is with hazardous material sign*/
"envprosign":"",
/*optional, string type, whether it is a yellow-label vehicle*/
"vehicleState":"",
/*optional, string type, license plate status*/
"pdvs":"",
/*optional, string type, whether the passenger is standing out of sunroof*/
"vehicleHead":"",
/*optional, string type, license plate recognition direction*/
"pendant":"",
/*optional, string type, whether there is pendant*/
"temporaryLicense":"",
/*optional, string type, whether the vehicle is with temporary license plate*/
"tricycleCanopy":"",
/*optional, string type, whether the tricycle is with canopy*/
"decoration":"",
/*optional, string type, whether there is ornament*/
"tissueBox":"",
/*optional, string type, whether there is tissue box*/
"card":"",
/*optional, string type, whether there are cards*/
"cardType":"",
/*optional, string type, card type*/
"copilot":"",
/*optional, string type, whether the front passenger is seated*/
"frontChild":"",
/*optional, string type, whether the front passenger holds a baby or the child sits in front passenger's seat alone*/
"muckTruck":"",
/*optional, string type, whether it is a dump truck*/
"sunroof":"",
/*optional, string type, whether there is sunroof*/
"luggageRack":"",
/*optional, string type, whether there is roof rack*/
"vehicleSprayPainted":"",
/*optional, string type, whether there are characters painted on vehicle*/
"spareTire":"",
/*optional, string type, whether there is spare tire*/
"coverPlate":"",

158
Intelligent Security API (Facial) Developer Guide

/*optional, string type, whether there is cover on dump truck*/


"label":""
/*optional, string type, whether the vehicle is with label*/
},
"twoWheelVehicle":{
/*this node is valid when targetType is "twoWheelVehicle"*/
"ageGroup":"",
/*optional, string type, age group. If this node is not returned, it indicates no limit*/
"gender":"",
/*optional, string type, gender. If this node is not returned, it indicates no limit*/
"glass":"",
/*optional, string type, whether the person wears glasses. If this node is not returned, it indicates no limit*/
"bag":"",
/*optional, string type, whether the person is with backpack. If this node is not returned, it indicates no limit*/
"hat":"",
/*optional, string type, whether the person wears hat. If this node is not returned, it indicates no limit*/
"mask":"",
/*optional, string type, whether the person wears mask. If this node is not returned, it indicates no limit*/
"jacketType":"",
/*optional, string type, tops type. If this node is not returned, it indicates no limit*/
"hairStyle":"",
/*optional, string type, hairstyle. If this node is not returned, it indicates no limit*/
"jacketColor":"",
/*optional, string type, tops color. If this node is not returned, it indicates no limit*/
"cyclingType":"",
/*optional, string type, riding type*/
"cyclingPersonNumber":""
/*optional, string type, number of riders*/
},
"threeWheelVehicle":{
/*this node is valid when targetType is "threeWheelVehicle"*/
"ageGroup":"",
/*optional, string type, age group. If this node is not returned, it indicates no limit*/
"gender":"",
/*optional, string type, gender. If this node is not returned, it indicates no limit*/
"glass":"",
/*optional, string type, whether the person wears glasses. If this node is not returned, it indicates no limit*/
"bag":"",
/*optional, string type, whether the person is with backpack. If this node is not returned, it indicates no limit*/
"hat":"",
/*optional, string type, whether the person wears hat. If this node is not returned, it indicates no limit*/
"mask":"",
/*optional, string type, whether the person wears mask. If this node is not returned, it indicates no limit*/
"jacketType":"",
/*optional, string type, tops type. If this node is not returned, it indicates no limit*/
"hairStyle":"",
/*optional, string type, hairstyle. If this node is not returned, it indicates no limit*/
"jacketColor":"",
/*optional, string type, tops color. If this node is not returned, it indicates no limit*/
"cyclingPersonNumber":""
/*optional, string type, number of riders*/

159
Intelligent Security API (Facial) Developer Guide

}
}

7.26 JSON_IntelliSearchExportProgress
JSON message about progress of exporting intelligent search results
{
"requestURL":"",
"statusCode": ,
"statusString":"",
"subStatusCode":"",
"errorCode": ,
"errorMsg":"",
/*see the description of this node and the above nodes in the message of JSON_ResponseStatus*/
"progress": ,
/*dependent, int, it is valid when errcode values "1" and errMsg values "ok". Export progress, ranges from 0 to 100*/
"URL": ""
/*dependent, string, it is valid when progress values "100", the URL address of packaged result*/
}

7.27 JSON_IntelligentSearchResult
JSON message about intelligent search results
{
"requestURL":"",
/*required, string type, request URL*/
"statusCode": ,
/*required, int type, status code*/
"statusString":"",
/*required, string type,status description*/
"subStatusCode":"",
/*required, string type, sub status code*/
"errorCode": ,
/*optional, int type, error code, this node is required when statusCode is not 1 and it corresponds to subStatusCode*/
"errorMsg":"",
/*optional, string type, error details, this node is required, when statusCode is not 1 and it can be error details about a
specific parameter*/
"responseStatusStrg":"",
/*required, string type, searching status: "OK"-searching completed, "NO MATCH"-no matched results, "MORE"-
searching for more results. The maximum length is 32 bytes. This node is valid when errorCode is 1 and errorMsg is
"ok"*/
"numOfMatches": ,
/*required, integer32, number of results returned this time. This node is valid when errorCode is 1 and errorMsg is
"ok"*/
"totalMatches": ,
/*required, integer32, total number of matched results. This node is valid when errorCode is 1 and errorMsg is "ok"*/
"progress": ,

160
Intelligent Security API (Facial) Developer Guide

/*optional, integer32 type, VCA search progress*/


"targetInfo":[{
/*this node is valid when progress is 100*/
"captureTime":"",
/*required, string type, capture time in ISO8601 time format*/
"channelID":"",
/*optional, string type, camera No.*/
"channelName":"",
/*optioanl, string type, camera name*/
"streamType":"",
/*optional, string type, streaming type: "realtime,historyvideo,localvideo"*/
"targetRect":{
/*required, target frame*/
"height": ,
"width": ,
"x": ,
"y":
},
"picUrl":"",
/*optional, string type, large picture URL*/
"subPicUrl": "",
/*optional, string, thumbnail URL*/
"targetType ":"",
/*optional, string type, search object type*/
"targetSize": "",
/*optional, string, target size*/
"direction": "",
/*optional, string, target direction*/
"speed": "",
/*optional, string, target speed*/
"modelKey": "",
/*optional, string, mark of human body which is used to raise up the efficiency of searching for human body by
picture*/
"AbsoluteHigh": {
/* optional, PTZ position*/
"elevation": ,
/* optional, int, tilting parameter, the value is between -900 and 2700*/
"azimuth": ,
/* optional, int, panning parameter, the value is between 0 and 3600*/
"absoluteZoom":
/* optional, int, zooming parameter, the value is between 1 and 1000*/
},
"humanInfo":{
/*dependent, this node is valid only when the value of targetType is human*/
"ageGroup":"",
/*optional, string, age*/
"gender":"",
/*optional, string, gender, string, gender*/
"glass":"",
/*optional, string, wear glasses or not*/
"bag":"",
/*optional, string, whether with bag or not*/

161
Intelligent Security API (Facial) Developer Guide

"hat":"",
/*optional, string, whether with hat or not*/
"mask":"",
/*optional, string, whether with mask or not*/
"jacketType":"",
/*optional, string, jacket type*/
"trousersType":"",
/*optional, string, trousers type*/
"hairStyle":"",
/*optional, string, hair style*/
"jacketColor":"",
/*optional, string, jacket color*/
"trousersColor":"",
/*optional, string, trousers coloe*/
"ride":"",
/*optional, string, ride a bike or not*/
"things":"",
/*optional, string, whether with handbag or not*/
"cyclingType":"",
/*optional, string, vehicle type*/
"cyclingPersonNumber":"",
/*optional, string, number of passengers*/
"posture":{
/*optional, posture*/
"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string, posture type*/
},
"listening":{
/*optional, listening*/
"confidence":,
/*optional, float, listening*/
"value":""
/*optional, string, listening type*/
},
"reading":{
/*optional, reading*/
"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string, reading type*/
},
"writing":{
/*optional, writing*/
"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string, writing type*/
},
"raiseHand":{
/*optional, raise hand*/

162
Intelligent Security API (Facial) Developer Guide

"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string, hand raising type*/
},
"lyingOnTable":{
/*optional, lying on the table*/
"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string, types of lying on the table*/
},
"playPhone":{
/*optional, playing phone*/
"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string , types of playing phone*/
},
"orientation":{
/*optional, orientation*/
"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string, types of orientation*/
},
"discuss":{
/*optional, discussion*/
"confidence":,
/*optional, float, confidence*/
"value":""
/*optional, string, types of discussion: unknown, no discussion, have discussion*/
},
"studentScene": "",
/*optional, string, school scene: "takeLesson", "answer", "discuss"*/
"studentNum": ,
/*optional, int, number of students*/
"linkFaceBodyId":""
/*optional, linkage ID between human body and face, the maximum length is 64 bytes*/
},
"vehicleInfo":{
/*this node is valid when targetType is "vehicle"*/
"license":"",
/*optional, string type, license plate number*/
"plateCategory": "",
/*optional, additional information of license plate*/
"plateType":"",
/*optional, string type, license plate type: license plate type: "unknown", "92TypeCivil"-92-style civil vehicle, "arm"-
police vehicle, "upDownMilitay"-military vehicle (top-bottom type), "92TypeArm"-92-style police vehicle,
"leftRightMilitay"-military vehicle (left-right type), "02TypePersonalized"-02-style customized vehicle, "yellowTwoLine"-
yellow two-line rear license plate, "04NewMilitay"-04-style new military vehicle, "embassy"-embassy vehicle,
"oneLineArm"-new armed police vehicle (one-line), "twoLineArm"-new armed police vehicle (two-line),

163
Intelligent Security API (Facial) Developer Guide

"yellow1225FarmVehicle"-yellow agricultural vehicle with 1225 structure, "green1325FarmVehicle"-green agricultural


vehicle with 1325 structure, "yellow1325FarmVehicle"-yellow agricultural vehicle with 1325 structure, "motorola"-
motorcycle, "coach"-driver-training vehicle, "tempTravl"-vehicle with temporary license plate, "trailer"-trailer,
"consulate"-consular vehicle, "hongKongMacao"-vehicle entering and leaving Hong Kong/Macao, "tempEntry"-
temporary entry vehicle, "civilAviation"-civil aviation license plate, "newEnergy"-new energy license plate*/
"vehicleColor":"",
/*optional, string type, vehicle color: "unknown", "white", "silver"-silvery, "gray", "black", "red", "deepBlue"-dark
blue, "blue", "yellow", "green", "brown", "pink", "purple", "deepGray"-dark gray, "cyan", "orange". Multiple colors
should be separated by commas*/
"vehicleType":"",
/*optional, string type, vehicle type: "largeBus"-large-sized bus, "truck"-truck, "vehicle"-salon car, "van"-minivan,
"buggy"-light truck, "pedestrian", "twoWheelVehicle"-two wheeler, "threeWheelVehicle"-tricycle, "SUVMPV"-SUV/
MPV, "mediumBus"-middle-sized bus, "unknown"*/
"vehicleLogo": ,
/*optional, int type, vehicle parent brand*/
"vehicleSubLogo": ,
/*optional, int type, vehicle sub brand*/
"vehicleModel": ,
/*optional, int type, vehicle model year*/
"plateColor":"",
/*optional, string type, license plate color: "white", "yellow", "blue", "black", "green", "civilAviationBlack"-civil
aviation black, "civilAviationGreen"-civil aviation green, "0xff" or "other"-other color.*/
"pilotSafebelt":"",
/*optional, string type, whether the driver buckled up*/
"pilotSunvisor":"",
/*optional, string type, whether the driver's sun visor is pulled down*/
"vicePilotSafebelt":"",
/*optional, string type, whether the front passenger buckled up*/
"vicePilotSunvisor":"",
/*optional, string type, whether the front passenger's sun visor is pulled down*/
"uphone":"",
/*optional, string type, whether the person is making a call*/
"dangmark": "",
/*optional, string, whether it is dangerous goods vehicle*/
"vehicleState": "",
/*optional, string, license plate status*/
"pdvs": "",
/*optional, string, whether there are people sticking out of the sunroof*/
"vehicleHead": "",
/*optional, string, license plate recognition direction*/
"pendant": "",
/*optional, string, whether there is window hangings detected*/
"temporaryLicense": "",
/*optional, string, whether it is a temporary license plate*/
"tricycleCanopy": "",
/*optional, string, whether there is a hood on the tricycle*/
"decoration": "",
/*optional, string, whether there is decoration detected*/
"tissueBox": "",
/*optional, string, whether there is tissue box detected*/
"card": "",
/*optional, string, whether it is with cards*/

164
Intelligent Security API (Facial) Developer Guide

"cardNum": ,
/*optional, int, number of cards*/
"cardType": [{
/*optional, array, card type*/
"value": ""
/*optional, string, value of different card types*/
}],
"copilot": "",
/*optional, string, whether there is a person in the co-driver room*/
"frontChild": "",
/*optional, string, whether the co-driver is with baby in arm*/
"muckTruck": "",
/*optional, string, whether it is a dump truck*/
"sunroof": "",
/*optional, string, whether it is with a sunroof*/
"luggageRack": "",
/*optional, string, whether it is with a luggage rack*/
"vehicleSprayPainted": "",
/*optional, string, whether the vehicle is painted*/
"spareTire": "",
/*optional, string type, whether it is with a spare tire*/
"coverPlate": "",
/*optional, string, whether the heavy truck is covered with back cover*/
"label": "",
/*optional, string, whether there is inspection label detected*/
"labelNum": ,
/*optional, int, number of labels*/
"labelPosition": [{
/*optional, label position*/
"height": ,
/*required, float, height*/
"width": ,
/*required, float, width*/
"x": ,
/*required, float, X-coordinate*/
"y":
/*required, float, Y-coordinate*/
}],
"region":"",
/*optional, string type, region that the license plate belongs to: "EU"-Europe, "ER"-Russian region, "EUandCIS"-Europe
and Russia, "ME"-the Middle East, "All"-all regions, "other"*/
"country":""
/*optional, string type, country that the license plate belongs to: "EU"-Europe, "ER"-Russian region, "EUandCIS"-
Europe and Russia, "ME"-the Middle East, "All"-all regions, "other"*/
},
"twoWheelVehicle": {
/*dependent, this node is valid only when the value of targetType is "twoWheelVehicle"*/
"ageGroup": "",
/*optional, string, whether to display age group*/
"gender": "",
/*optiona, string, whether to display gender*/
"glass": "",

165
Intelligent Security API (Facial) Developer Guide

/*optional, string, whether to display glasses*/


"bag": "",
/*optional, string, whether to display back bag*/
"hat": "",
/*optional, string, whether to display hat*/
"mask": "",
/*optional, string, whether to display mask*/
"jacketType": "",
/*optional, string, whether to display jacket type*/
"hairStyle": "",
/*optional, string, whether to display hairstyle*/
"jacketColor": "",
/*optional, string, whether to display jacket color*/
"cyclingType": "",
/*optional, string, whether to display cycling type*/
"cyclingPersonNumber": ""
/*optional, string, whether to display number of people cycling*/
},
"threeWheelVehicle": {
/*dependent, this node is valid only when the value of targetType is "threeWheelVehicle"*/
"ageGroup": "",
/*optional, string, whether to display age group*/
"gender": "",
/*optional, string, whether to display gender*/
"glass": "",
/*optional, string, whether to display glasses*/
"bag": "",
/*optional, string, whether to display back bag*/
"hat": "",
/*optional, string, whether to display hat*/
"mask": "",
/*optional, string, whether to display mask*/
"jacketType": "",
/*optional, string, whether to display jacket type*/
"hairStyle": "",
/*optional, string, whether to display hairstyle*/
"jacketColor": "",
/*optional, string, whether to display jacket color*/
"cyclingType": "",
/*optional, string, whether to display cycling type*/
"cyclingPersonNumber": ""
/*optional, string, whether to display number of people cycling*/
},
"hunmanID": "",
/*optional, string, face picture library ID*/
"humanURL": "",
/*optional, string, face picture URL*/
"name": "",
/*optional, string, name of the student*/
"ClassRegions": [{
/*optional, coordinates of the people in the classroom*/
"x": ,

166
Intelligent Security API (Facial) Developer Guide

"y":
}]
}]
}

7.28 JSON_LFPD
LFPD message in JSON format
{
"LFPD":{
"enabled": ,
/*required, boolean, enable or not*/
"analysisDays": ,
/*required, integer,days of analysis time, range: [1,31], it is 7 days by default*/
"uploadTime": "",
/*required, string, the alarm uploading time, ISO8601_time, corrects to minute, it is the device local time*/
"occurrences": ,
/*required, integer32, frequency, range: [1,30], default value: 7*/
"captureTimeInterval": ,
/*required, capture time interval, integer32, range: [1,60], it is 10 by default, unit: min; when it equals to 0, count
once when the target appears once*/
"channels": ,
/*required, array, sub type, integer, channel ID*/
"FaceLibrary": [{
"FDID": "",
/*required, face picture library ID, multiple libraries are separated by commas*/
"similarity": ,
/*required, similarity, integer32,range: [80,100], default value: 85*/
}],
}
}

7.29 JSON_LFPDCap
LFPDCap message in JSON format
{
"LFPDCap"{
"analysisDays":{
/*required, number of days for analysis*/
"@min": 1,
"@max": 31,
"@def": 7
},
"occurrences":{
/*required, face picture frequency in low frequency person detection*/
"@min": 1,
"@max": 30,

167
Intelligent Security API (Facial) Developer Guide

"@def": 7
},
"captureTimeInterval":{
/*required, capture time interval for checking duplicate in capture library*/
"@min": 1,
"@max": 60,
"@def": 10
},
"channels":{
/*required, the maximum number of supported channels,integer*/
"@size": 4,
"@opt": "1,2,3"
/*required, ID of channel which supports low frequency person detection; multiple IDs are separated by commas*/
},
"FaceLibrary":{
"@size": 4,
"similarity":{
/*required, similarity of face picture libraries for low frequency person detection*/
"@min": 70,
"@max": 100,
"@def": 80
},
},
"isSupportEventRecordDataSearch": ,
/*optional, whether to support searching for low frequency person alarm*/
"isSupportDataPackage":
/*optional, whether to support exporting frequently appeared person alarm*/
}
}

7.30 JSON_LFPDDataPackageCond
LFPDRecordData message in JSON format
{
"DataPackageCond":{
"searchResultPosition": ,
/*optional, initial position of search result list, integer32; if this node is not configured, it starts from 0 by default.
When there are multiple records, and cannot get all records in one time searching, you can search the records
followed specified position for next search*/
"maxResults": ,
/*optional, maximum records for single searching, up to 1000 records, integer32; if this node is not configured, the
value is 1000*/
"facelibDataIndex": "",
/*optional, index of face picture library information, string*/
"Description":{
/*optional, packaging condition*/
"startTime": "",
/*optional, start time, string, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"endTime": "",

168
Intelligent Security API (Facial) Developer Guide

/*optional, end time, string, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/


"channels": ,
/*optional, array, sub type, integer, channel ID; if this node is not configured, it indicates searching for all channels*/
"highestOccurrences":
/*optional, the highest frequency, integer32, default value:7, range: [0,30]*/
}
}
}

Remarks
One of Description and facelibDataIndex must be configured, when both parameters are
configured, the facelibDataIndex takes effect.

7.31 JSON_LFPDEventRecordDataDescription
LFPDEventRecordDataDescription message in JSON format
{
"EventRecordDataDescription":{
"startTime": "",
/*optional, start time, string type, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"endTime": "",
/*optional, end time, string type, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"channels": ,
/*optional, array, sub type, integer, channel ID*/
"highestOccurrences":
/*optional, the maximum frequency, range: [0,30], the default value is 7*/
}
}

7.32 JSON_LFPDPagingCond
LFPDPagingCond message in JSON format
{
"PagingCond":{
"facelibDataIndex": "",
/*required, index of face picture library information, string type*/
"searchResultPosition": ,
/*required, initial position of search result list, integer32. When there are multiple records, and cannot get all records
in one time searching, you can search the records followed specified position for next search*/
"maxResults":
/*required, maximum records for single searching, integer32*/
}
}

169
Intelligent Security API (Facial) Developer Guide

7.33 JSON_LFPDRecordData
JSON message about data record of low frequencty person detection
{
"RecordData":{
"progress": "",
/*optional, progress, only when it equals to "100", you can get the detailed data*/
"targets": [{
/*required, matched data, array*/
"id": ,
/*required, ID, integer32*/
"captureTime": "",
/*optional, string, capture time, ISO8601_time, e.g., 2004-05-03T17:30:08+08:00*/
"captureSite": "",
/*optional, string type, capture place (camera name)*/
"channel": "",
/*required, integer type, channel ID*/
"ageGroup": "",
/*optional, string type, age group*/
"range": ,
/*optional, age deviation, integer32*/
"value": ,
/*optional, age, integer32*/
"gender": "",
/*optional, string type, gender*/
"glasses": "",
/*optional, string type, wearing glasses*/
"smile": "",
/*optional, string type, smiling*/
"mask": "",
/*optional, string type, wearing mask*/
"picUrl": "",
/*optional, string type, background picture URL*/
"subpicUrl": "",
/*required, string type, face thumbnail URL*/
"rect":{
/*optional, face coordinates in the matched picture*/
"height": ,
/*optional, height, float type*/
"width": ,
/*optional, width, float type*/
"y": ,
/*optional, Y-coordinate, float type*/
"x":
/*optional, X-coordinate, float type*/
},
"face_rect":{
/*optional, face thumbnail coordiantes*/
"height": ,
/*optional, height, float type*/

170
Intelligent Security API (Facial) Developer Guide

"width": ,
/*optional, width, float type*/
"y": ,
/*optional, Y-coordinate, float type*/
"x":
/*optional, X-coordinate, float type*/
},
"similarity": ,
/*optional, similarity, float type*/
"range": ,
/*optional, age deviation, integer32*/
"value": ,
/*optional, age, integer32*/
"faceExpression":{
/*optional, face expression*/
"confidence": ,
/*optional, confidence, float*/
"value": ""
/*optional, string, face expression: "unknown", "poker-faced", "happy", "surprised", "panic","sad", "angry",
"contemptuous", "disgusted"; the maximum length is 32 bytes*/
},
"confidence": ,
/*optional, float, confidence*/
"value": ""
/*optional, string; the maximum length is 32 bytes*/
}
}]
}
}

7.34 JSON_LFPDSearchResult
LFPDSearchResult message in JSON format
{
"LFPDSearchResult":{
"responseStatusStrg": "",
/*optional, string type, search status: "OK"-search completed, "NO MATCHES"-search failed, "MORE"-searching; the
maximum length is 32 bits*/
"numOfMatches": ,
/*optional, returned number of results for current search, integer32*/
"totalMatches": ,
/*optional, total number of matched results, integer32*/
"targetInfo": [{
"occurrences": ,
/*required, integer32,frequency of low frequency person*/
"FDID": "",
/*required, string type, face picture library ID, the maximum length is 64 bits*/
"PID": "",
/*required, string type, person ID of face picture library, the maximum length is 64 bits*/

171
Intelligent Security API (Facial) Developer Guide

"analysisTime": "",
/*required, alarm analysis time, string type, ISO8601 time, e.g., 2004-05-03T17:30:08+08:00*/
"face_picurl": "",
/*required, face picture URL, string type*/
"FaceAppendData":{
/*optional, face picture additional information*/
"name": "",
/*required, name, string type, the maximum length is 96 bits*/
"gender": "",
/*optional, string, gender: "male"-male, "female"-female, "unknown"-unknown; the maximum length is 10 bits*/
"bornTime": "",
/*required, string, birth date, ISO8601 time, the maximum length is 32 bits*/
"city": "",
/*optional, city of birth, string, the max. length is 32*/
"certificateType": "",
/*optional, string, certificate type: "officerID"-officer ID, "ID"-identify card, "passport"-passport, "other"-other
certificate; the max. length is 10 bits*/
"certificateNumber": "",
/*optional, string, certificate No., the max. length is 32*/
"ageGroup": "",
/*optional, string, age group: "unknown"-unknown; the max. length is 32*/
"phoneNumber": "",
/*optional, string, telephone number, the max. length is 64*/
},
"extendData": [{
/*optional, person extended information*/
"extendID": ,
/*optional, integer, person extended information ID, starts form 1*/
"enable": "",
/*optional, boolean type, enable person extended information or not*/
"name": "",
/*optional, person tag extended name; string, the maximum length is 96 bits*/
"value": "",
/*optional, person tag extended information; string, the maximum length is 64 bits*/
}],
}]
}
}

7.35 JSON_OccurrenceDataList
JSON message about list of face picture frequency information
{
"OccurrenceDataList": [{
/*optional, list of face picture frequency information*/
"id": ,
/*required, serial No., integer64 type*/
"channel": ,
/*required, device channel No., integer32*/

172
Intelligent Security API (Facial) Developer Guide

"snapTime": "",
/*required, picture captured time, ios_8601 time format, e.g.,: 2009-11-14T15:27:00.000+08:00*/
"bkgUrl": "",
/*required, background picture URL, string type, the maximum length is 256 bytes*/
"faceId": ,
/*optional, face ID, integer32 type, it cannot be duplicated in one picture*/
"age":{
/*optional, age*/
"range": ,
/*optional, age deviation, integer32 type*/
"value": ,
/*optional, age, integer32 type*/
"ageGroup": ""
/*optional, age group: "unknown", "child", "young", "middle", "old"; string type, the maximum length is 32 bytes*/
},
"gender":{
/*optional, gender*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, gender: "male", "female", "unknown"; string type, the maximum length is 32 bytes*/
},
"glass":{
/*optional, wearing glasses or not*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, wearing glasses or not: "no"-not, "yes"-yes; string type, the maximum length is 32 bytes*/
},
"smile":{
/*optional, smiling or not*/
"confidence": ,
/*optional, confidence, float type*/
"value": "yes"
/*optional, smiling or not: "no"-not, "yes"-yes; string type, the maximum length is 32 bytes*/
},
"mask":{
/*optional, wearing mask or not*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, wearing glasses or not; string type, the maximum length is 32 bytes*/
},
"faceExpression":{
/*optional, face expression*/
"confidence": ,
/*optional, float, confidence*/
"value": ""
/*optional, string, face expression: "unknown", "poker-faced", "happy", "surprised", "panic","sad", "angry",
"contemptuous", "disgusted"; the maximum length is 32*/
},
"confidence": ,

173
Intelligent Security API (Facial) Developer Guide

/*optional, float, confidence*/


"value": ""
/*optional, string, the maximum length is 32*/
},
"URL": ""
/*optional, face thumbnail URL, string type, the maximum length is 256 bytes*/
}]
}

7.36 JSON_OccurrenceData
JSON message about face picture frequency information
{
"OccurrenceData": {
/*optional, face picture frequency information*/
"id": ,
/*required, serial No., integer64 type*/
"channel": ,
/*required, device channel No., integer32*/
"snapTime": "",
/*required, picture captured time, ios_8601 time format, e.g.,: 2009-11-14T15:27:00.000+08:00*/
"bkgUrl": "",
/*required, background picture URL, string type, the maximum length is 256 bytes*/
"faceId": ,
/*optional, face ID, integer32 type, it cannot be duplicated in one picture*/
"age":{
/*optional, age*/
"range": ,
/*optional, age deviation, integer32 type*/
"value": ,
/*optional, age, integer32 type*/
"ageGroup": ""
/*optional, age group: "unknown", "child", "young", "middle", "old"; string type, the maximum length is 32 bytes*/
},
"gender":{
/*optional, gender*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, gender: "male", "female", "unknown"; string type, the maximum length is 32 bytes*/
},
"glass":{
/*optional, wearing glasses or not*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, wearing glasses or not: "no"-not, "yes"-yes; string type, the maximum length is 32 bytes*/
},
"smile":{

174
Intelligent Security API (Facial) Developer Guide

/*optional, smiling or not*/


"confidence": ,
/*optional, confidence, float type*/
"value": "yes"
/*optional, smiling or not: "no"-not, "yes"-yes; string type, the maximum length is 32 bytes*/
},
"mask":{
/*optional, wearing mask or not*/
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, wearing glasses or not; string type, the maximum length is 32 bytes*/
},
"faceExpression":{
/*optional, face expression*/
"confidence": ,
/*optional, float, confidence*/
"value": ""
/*optional, string, face expression: "unknown", "poker-faced", "happy", "surprised", "panic","sad", "angry",
"contemptuous", "disgusted"; the maximum length is 32*/
},
"confidence": ,
/*optional, confidence, float type*/
"value": ""
/*optional, string, the maximum length is 32*/
},
"URL": ""
/*optional, face thumbnail URL, string, the maximum length is 256 bytes*/
}
}

7.37 JSON_ResponseStatus
JSON message about response status
{
"requestURL":"",
/*optional, string, request URL*/
"statusCode": ,
/*required, int, status code*/
"statusString":"",
/*required, string, status description*/
"subStatusCode":"",
/*required, string, sub status code*/
"errorCode": ,
/*optional, int, error code, which corresponds to subStatusCode, this field is required when statusCode is not 1. The
returned value is the transformed decimal number*/
"errorMsg":"",
/*optional, string, error details, this field is required when statusCode is not 1*/
}

175
Intelligent Security API (Facial) Developer Guide

Note
See Response Codes of Text Protocol for details about the status codes, sub status codes, error
codes, and error descriptions.

7.38 JSON_StopTaskCond
JSON message about conditions of stopping exporting task
{
"taskID":
/*required, task ID, string*/
}

7.39 JSON_TaskInfo
TaskInfo message in JSON format
{
"TaskInfo":{
"id": ""
/*required, submitted task ID, string type, the maximum length is 32 bits*/
}
}

7.40 XML_AlgorithmsVersion
Message about version information of algorithm library in XML format
<AlgorithmsVersion version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<AlgorithmsVersionInfoList><!--optional-->
<AlgorithmsVersionInfo>
<majorVersion><!--required, xs:integer, major version No.--></majorVersion>
<minorVersion><!--required, xs:integer, minor version No.--></minorVersion>
<revisionNumber><!--required, xs:integer, revision No.--></revisionNumber>
<buildNumber><!--required, xs:integer, build No.--></buildNumber>
<versionYear><!--required, xs:integer, date: year--></versionYear>
<versionMonth><!--required, xs:integer, date: month--></versionMonth>
<versionDay><!--required, xs:integer, date: day--></versionDay>
<name>
<!--required, xs:string, algorithm library name, "faceProperties"-face attributes, "behaviorAnalysis"-behavior
analysis, "humanAttribute"-human body attributes, "faceSnap"-face capture, "faceRecognition"-face recognition,
"faceContrast"-face picture comparison, "peopleCounting"-people counting, "faceScore"-face picture score,
"personQueueDetection"-queue management, "depthMap"-depth map, "safetyHelmetDetection"-hard hat detection,
"streetBehavior"-street behavior, "workBehavior"-work behavior, "cityManagement"-city management,
"fireEscapeDetection"-fire engine access detection, "takingElevatorDetection"-elevator detection-->

176
Intelligent Security API (Facial) Developer Guide

<name>
</AlgorithmsVersionInfo>
</AlgorithmsVersionInfoList>
</AlgorithmsVersion>

Example
AlgorithmsVersion Message Example
<AlgorithmsVersion version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<AlgorithmsVersionInfoList>
<AlgorithmsVersionInfo>
<majorVersion>1</majorVersion>
<minorVersion>0</minorVersion>
<revisionNumber>1</revisionNumber>
<versionYear>17</versionYear>
<versionMonth>12</versionMonth>
<versionDay>12</versionDay>
<name>faceSnap</name>
</AlgorithmsVersionInfo>
<AlgorithmsVersionInfo>
<majorVersion>1</majorVersion>
<minorVersion>0</minorVersion>
<revisionNumber>0</revisionNumber>
<versionYear>17</versionYear>
<versionMonth>10</versionMonth>
<versionDay>31</versionDay>
<name>faceScore</name>
</AlgorithmsVersionInfo>
<AlgorithmsVersionInfo>
<majorVersion>3</majorVersion>
<minorVersion>4</minorVersion>
<revisionNumber>1</revisionNumber>
<versionYear>17</versionYear>
<versionMonth>12</versionMonth>
<versionDay>25</versionDay>
<name>faceContrast</name>
</AlgorithmsVersionInfo>
</AlgorithmsVersionInfoList>
</AlgorithmsVersion>

7.41 XML_AlgParam
AlgParam message in XML format
<AlgParam version="1.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<BehaviorParam>
<detectionSensitiveLevel><!--req, xs: integer, detection sensitivity--></detectionSensitiveLevel>
<bgChangeSpeed><!--req, xs: integer, background changing speed--></bgChangeSpeed>
<minTargetSize> <!--opt, xs: integer, minimum target size--></minTargetSize>
<suppressionLevel>
<!--opt, xs: integer, compensation level (available for speed dome only), level 0 to level 4: slow to fast, the default

177
Intelligent Security API (Facial) Developer Guide

level is 1-->
</suppressionLevel>
<lightSuppressionEnable>
<!--req, xs: string, whether to enable HLC (available for speed dome only), "true, false"-->
</lightSuppressionEnable>
<antiSheildEnable>
<!--req, xs: string, whether to enable video tampering detection (available for speed dome only), "true,false"-->
</antiSheildEnable>
<traceTime>
<!--req, xs: integer, tracking duration (available for speed dome only), unit: s, value range: [2,600], default: 8-->
</traceTime>
<outputMode><!--opt, xs:integer--></outputMode>
<singleAlarmEnable>
<!--opt xs:string, whether to enable alarm (available for network camera), "true,false"-->
</singleAlarmEnable>
<leavesSuppressionEnable><!--opt xs:string, it is available for networ camera, "true,false"--></
leavesSuppressionEnable>
<SizeFilter><!--filter target size, available for network camera-->
<enabled><!--req, xs:string, "true,false"--></enabled>
<mode><!--req, xs:string, filter by pixel, "pixels"--></mode>
<MaxObjectSize><!--maximum target size, xs: float-->
<positionX><!--req, xs:integer, X-coordinate--></positionX>
<positionY><!--req, xs:integer, Y-coordinate--></positionY>
<width><!--req, xs:integer--></width>
<height><!--req, xs:integer--></height>
</MaxObjectSize>
<MinObjectSize><!--minimum target size, xs: float-->
<positionX><!--req, xs:integer, X-coordinate--></positionX>
<positionY><!--req, xs:integer, Y-coordinate--></positionY>
<width><!--req, xs:integer--></width>
<height><!--req, xs:integer--></height>
</MinObjectSize>
</SizeFilter>
<isStop>
<!--dep, xs: string, whether to stop tracking after detecting face,
it is valid when both the behavior analysis and face detection are supported, "true,false"-->
</isStop>
<gradeThreshold>
<!--dep, xs: integer, end tracking threshold, it is valid when both the behavior analysis and face detection are
supported-->
</gradeThreshold>
<physiologyIdentifiTrigger><!--opt, xs:boolean--></physiologyIdentifiTrigger>
<horizontalTrackLimit><!--opt, xs: integer--></horizontalTrackLimit>
<sceneMode>
<!--opt, xs: string. scene mode, "general"-general mode, "prospect"-vision mode, "indoor"-indoor mode-->
</sceneMode>
<axialMotionEnable><!--opt, xs:boolean, whether to enable axial motion, "true, false"--></axialMotionEnable>
</BehaviorParam>
<FaceParam>
<enabled><!--opt, xs:string, whether to enable face capture, "true, false"--></enabled>
<imgInterval><!--opt, xs:integer, capture interval, min="1" max="255" default="25"--></imgInterval>
<imgNum>

178
Intelligent Security API (Facial) Developer Guide

<!--opt, xs:integer, number of target's captured pictures, min="1" max="10" default="1"-->


</imgNum>
<sensitiveLevel>
<!--opt, xs:integer, detection sensitivity, min="1" max="5" default="3"-->
</sensitiveLevel>
<threshold><!--opt, xs: integer, capture threshold, min="0" max="20" default="4"--></threshold>
<targetSpeed><!--opt, xs:integer, target speed, min="0" max="5" default="3"--></targetSpeed>
<brightRef><!--opt, xs:integer, brightness, min="0" max="100" default="50"--></brightRef>
<exposureEnabled><!--opt, xs:string, whether to enable exposure, "true, false"--></exposureEnabled>
<expDurationTime>
<!--opt, xs:integer, minimum exposure time, unit: s, min="1" max="3600" default="60"-->
</expDurationTime>
<ROIEnable><!--opt, xs:string, whether to enable ROI, "true, false"--></ROIEnable>
<pedestrianSensitivity><!--opt,xs:integer, sensitivity of pedestrian detection--></pedestrianSensitivity>
<faceFilteringTime><!--opt, xs: integer, min="0" max="100" default="5"--></faceFilteringTime>
<enableHighlight><!--opt, xs: boolean, whether to enable dynamic analysis, "true, false"--></enableHighlight>
<snapMode><!--opt, capture mode, xs: string, "best,quick"--></snapMode>
<quickSnapThreshold>
<!--dep, fast capture threshold, xs: integer, it is valid when snapMod is "quick"-->
</quickSnapThreshold>
<quickSnapDurationTime>
<!--dep, xs: integer, time duration of fast continuous capture, it is valid when snapMod is "quick"-->
</quickSnapDurationTime>
<quickContinueSnapEnable>
<!--dep, xs: boolean, whether to enable fast continuous capture, it is valid when snapMod is "quick"-->
</quickContinueSnapEnable>
<quickSnapNum>
<!--dep, xs: integer, picture number of fast capture, it is valid when snapMod is "quick"-->
</quickSnapNum>
<attrDetectEnable>
<!--opt, xs: boolean, whether to enable target recognition: "true,false"-->
</attrDetectEnable>
<faceFilteringTime><!--opt, xs: integer--></faceFilteringTime>
<invalCapFilterEnable><!--opt, xs: boolean, whether to filer invalid captured picture--></invalCapFilterEnable>
<invalCapFilterThreshold><!--opt, xs: integer, filter threshold of invalid captured picture--></
invalCapFilterThreshold>
<LivenessDetection><!--opt, live face detection-->
<enabled>
<!--req, xs: boolean, whether to enable live face detection, if enabled, the efficiency of face picture comparison
may be decreased-->
</enabled>
<liveFaceUpload>
<!--req, xs: boolean, whether to upload live face detection alarm, it is valid when live face detection is enabled-->
</liveFaceUpload>
<notLiveFaceUpload>
<!--req, xs: boolean, whether to upload non-live face detection alarm, it is valid when live face detection is
enabled-->
</notLiveFaceUpload>
<frontDegree><!--opt, xs: integer, face posture parameter, value range: [1,100]--></frontDegree>
<definition><!--opt, xs: integer, face picture quality, value range: [1,100]--></definition>
<vileness><!--opt, xs: integer, face visible, value range: [1,100]--></vileness>
</LivenessDetection>

179
Intelligent Security API (Facial) Developer Guide

<FacePostrue><!--opt-->
<enabled><!--opt, xs: boolean, whether to filter picture according face posture--></enabled>
<SwingAngle>
<left><!--opt, xs: integer, angle of panning left--></left>
<right><!--opt, xs: integer, angle of panning right--></right>
</SwingAngle>
<TiltAngle>
<up><!--opt, xs: integer, angle of tilting up--></up>
<down><!--opt, xs: integer, angle of tilting down--></down>
</TiltAngle>
<blockingState>
<!--opt, xs: string, shielding status: fixed-keep shielding, lightMid-lightly shielded, severity-seriously shielded, OSD-
shielded by OSD-->
</blockingState>
</FacePostrue>
<RemoveDuplicate><!--dep, remove duplicates of captured face pictures, it is valid when snapMode is "best"-->
<enabled><!--opt, xs:boolean, whether to enable--></enabled>
<threshold>
<!--opt, xs:integer, threshold of removing duplicates, when the picture similarity is larger then the value, the
picture is duplicated; range: [70,100], default value: 88-->
</threshold>
<faceScore>
<!--opt, xs:integer, the face grading threshold for removing duplicates, only when the face grading is larger than
the configured threshold, the face picture will be compared for removing duplicates, in case that low quality face
pictures influence the comparison effect; range: [20,60], default value: 20-->
<updateTime><!--opt, xs:integer, face modal data updating time interval (the time interval between the modal
data being added into the library and being deleted), value range: [0,300], by default:60--></updateTime>
</faceScore>
</RemoveDuplicate>
</FaceParam>
</AlgParam>

Remarks
If the filter duration of face pictures (faceFilteringTime) is configured, the actual captured pictures
may be less than the configured number.

7.42 XML_AlgParamCap
AlgParamCap message in XML format
<AlgParamCap version="1.0 " xmlns="http://www.isapi.org/ver20/XMLSchema ">
<detectionSensitiveLevel><!--req, xs: string--></detectionSensitiveLevel>
<bgChangeSpeed><!--req, xs: string--></bgChangeSpeed>
<physiologyIdentifiTrigger><!--opt, xs:boolean--></physiologyIdentifiTrigger>
<horizontalTrackLimit min="1 " max="5 "><!--opt, xs: integer--></horizontalTrackLimit>
<faceFilteringTime min="0 " max="100 " default="5 ">
<!--opt, xs: integer, face pictures' filter duration, unit: s, 0-not filter--></faceFilteringTime>
<sceneMode opt="general,prospect,indoor">
<!--opt, xs: string. scene mode, general mode, vision mode, indoor mode-->
</sceneMode>

180
Intelligent Security API (Facial) Developer Guide

<axialMotionEnable><!--opt, xs:boolean, whether to enable axial motion--></axialMotionEnable>


<intervalTime min="1" max="7200" default="600">
<!--opt, xs:integer, alarm time interval, unit: s-->
</intervalTime>
<heightLimit min="0" max="250" default="80">
<!--opt, xs:integer, detection lower-limit of target height, unit: cm-->
</heightLimit>
<restoreAlgParamforbid opt=""true, false">
<!--opt, xs: boolean, whether to prohibit restoring algorithm library-->
</restoreAlgParamforbid>
<FaceParam>
<enabled opt="true, false"><!--opt, xs:string, whether to enable face capture--></enabled>
<imgInterval min="1" max="255" default="25"><!--opt, xs:integer, capture interval--></imgInterval>
<imgNum min="1" max="10" default="1">
<!--opt, xs:integer, number of target's captured pictures-->
</imgNum>
<sensitiveLevel min="1" max="5" default="3">
<!--opt, xs:integer, detection sensitivity-->
</sensitiveLevel>
<threshold min="0" max="20" default="4"><!--opt, xs: integer, capture threshold--></threshold>
<targetSpeed min="0" max="5" default="3"><!--opt, xs:integer, target speed--></targetSpeed>
<brightRef min="0" max="100" default="50"><!--opt, xs:integer, brightness--></brightRef>
<exposureEnabled opt="true, false"><!--opt, xs:string, whether to enable exposure--></exposureEnabled>
<expDurationTime min="1" max="3600" default="60">
<!--opt, xs:integer, minimum exposure time, unit: s-->
</expDurationTime>
<ROIEnable opt="true, false"><!--opt, xs:string, whether to enable ROI--></ROIEnable>
<faceFilteringTime min="0 " max="100 " default="5 "><!--opt, xs: integer--></faceFilteringTime>
<attrDetectEnable opt="true, false"><!--opt, xs: string, whether to enable face detection--></attrDetectEnable>
<pedestrianSensitivity min="1" max="5">
<!--req, xs: integer, sensitivity of pedestrian detection-->
</pedestrianSensitivity>
<enableHighlight opt="true, false">
<!--opt, xs: boolean, whether to enable dynamic analysis-->
</enableHighlight>
<snapMode opt="best,quick"><!--opt, xs: string, face capture mode: best capture, fast capture--></snapMode>
<quickSnapThreshold min="20" max="80" def="50"><!--dep, fast capture threshold, xs: integer, it is valid when
snapMod is "quick"--></quickSnapThreshold>
<isSupportAttrDetectPrompt><!--whether supports sound prompt of face detection--></
isSupportAttrDetectPrompt>
<quickSnapNum min="1" max="255" def="1">
<!--dep, xs: integer, picture number of fast capture, it is valid when snapMod is "quick" and quickSnapEnabled is
true-->
</quickSnapNum>
<quickContinueSnapEnable opt="true,false" def="false">
<!--dep, xs: boolean, whether to enable fast continuous capture, it is valid when snapMod is "quick"and
quickSnapEnabled is true-->
</quickContinueSnapEnable>
<quickSnapDurationTime min="0" max="300">
<!--dep, xs: integer, time duration of fast continuous capture, it is valid when snapMod is "quick" and
quickSnapEnabled is true-->
</quickSnapDurationTime>

181
Intelligent Security API (Facial) Developer Guide

<invalCapFilterEnable opt="true,false"><!--opt, xs: boolean, whether to filer invalid captured picture--></


invalCapFilterEnable>
<invalCapFilterThreshold><!--opt, xs: integer, filter threshold of invalid captured picture--></
invalCapFilterThreshold>
<isSupportBestAndQuick>
<!--opt, xs: boolean, whether supports enabling best and fast capture at same time, if supports, the values of
snapMod can be separated by comma-->
</isSupportBestAndQuick>
<LivenessDetection><!--opt, live face detection-->
<enabled opt="true,false">
<!--req, xs: boolean, whether to enable live face detection, if enabled, the efficiency of face picture comparison
may be decreased-->
</enabled>
<liveFaceUpload opt="true,false">
<!--req, xs: boolean, whether to upload live face detection alarm, it is valid when live face detection is enabled-->
</liveFaceUpload>
<notLiveFaceUpload opt="true,false">
<!--req, xs: boolean, whether to upload non-live face detection alarm, it is valid when live face detection is
enabled-->
</notLiveFaceUpload>
</LivenessDetection>
<FacePostrue><!--opt-->
<enabled opt="true,false"><!--opt, xs:boolean, whether to filter picture according face posture--></enabled>
<SwingAngle>
<left min="0" max="70"><!--opt,xs:integer, angle of panning left--></left>
<right min="0" max="70"><!--opt,xs:integer, angle of panning right--></right>
</SwingAngle>
<TiltAngle>
<up min="0" max="50"><!--opt,xs:integer, angle of tilting up--></up>
<down min="0" max="50"><!--opt,xs:integer, angle of tilting down--></down>
</TiltAngle>
<blockingState opt="fixed,lightMid,severity,OSD">
<!--opt, xs:string, shielding status: fixed-keep shielding, lightMid-lightly shielded, severity-seriously shielded, OSD-
shielded by OSD-->
</blockingState>
</FacePostrue>
<RemoveDuplicate><!--dep, remove duplicates of captured face pictures, it is valid when snapMode is "best"-->
<enabled opt="true,false"><!--opt, xs:boolean, whether to enable--></enabled>
<threshold min="70" max="100" def="88"><!--opt, xs:integer, threshold of removing duplicates, when the picture
similarity is larger then the value, the picture is duplicated--></threshold>
<faceScore min="20" max="60" def="20"><!--opt, xs:integer, the face grading threshold for removing duplicates,
only when the face grading is larger than the configured threshold, the face picture will be compared for removing
duplicates, in case that low quality face pictures influence the comparison effect--></faceScore>
<updateTime min="0" max="300" def="60"><!--opt, xs:integer, face modal data updating time interval (the time
interval between the modal data being added into the library and being deleted)--></updateTime>
</RemoveDuplicate>
</FaceParam>
<axialMotionLevel min="0" max="4" default="2"><!--opt, xs: integer--></axialMotionLevel>
<antiSheildEnable opt="true,false"><!--opt, xs: boolean--></antiSheildEnable>
<traceTime min="1" max="100"><!--opt, xs: integer--></traceTime>
<backToSceneTime min="5" max="100" default="15">
<!--opt, xs: integer, scene recovery time duration, unit: second, the value is between 5 and 100, and the default

182
Intelligent Security API (Facial) Developer Guide

value is 15-->
</backToSceneTime>
<backgroundSuppressionEnabled opt="true,false">
<!--opt, xs: boolean, wehther to enable background inference suppression-->
</backgroundSuppressionEnabled>
</AlgParamCap>

Remarks
If the filter duration of face pictures (faceFilteringTime) is configured, the actual captured pictures
may be less than the configured number.

7.43 XML_AnalysisEngine
XML message about analysis engine parameters
<AnalysisEngine version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<id>
<!--required, xs: integer, engine ID-->
</id>
<mode>
<!--required, xs: string, an intelligent analysis engine only supports one mode: face_recognition,
video_structure_preview, video_structure_record, image_recognition_human, image_recognition_vehicle,
safetyHelmetDetection, personDensityDetection, leavePosition, peopleNumChange, behavior, retention,
situationAnalysis, cityManagement, face_human_recognition, face_recognition_IES, OCR,
face_recognition_IES_or_OCR, fireEscapeDetection, takingElevatorDetection-->
</mode>
<state>
<!--required, ro, xs: string, engine status: "loading"-initializing, "analyzing"-running, "abnormal"-exception,
"connect_boot_abnorma"-connecting to boot program failed, "conig_boot_abnorma"-configuring boot program
failed, "connect_main_abnorma"-connecting main program failed, "conig_main_abnorma"-configuring main program
failed, "auth_abnorma"-authentication failed, "reset_abnorma"-resetting failed, "DSP_status_abnorma"-DSP status
exception, "lib_ver_err_abnorma"-incorrect remote engine version-->
</state>
<utilization>
<!--optional, ro, xs: float, engine usage, it is a read-only node and accurate to 1 decimal place, e.g., "00.0"-->
</utilization>
<ChannelInfoList><!--optional, read-only, channel No. linked to the engine, read-only node-->
<ChannelInfo>
<id>
<!--required, xs: integer, NVR channel, including analog channel No. and digital channel No.-->
</id>
<name>
<!--optional, xs: string, channel name-->
</name>
</ChannelInfo>
</ChannelInfoList>
<repairTime><!--optional, read-only, xs: integer, number of automatic repairs, from 1 to N: number of repairing
attempts, -1: repairing failed--></repairTime>
<channelNum><!--optional, xs:integer, supported number of channels to be linked with the engine--></channelNum>
<analysisMode><!--optional, xs:string, analysis mode: realTimeMode(default), autoSwitchMode--></analysisMode>

183
Intelligent Security API (Facial) Developer Guide

<AutoSwitchTime><!--optional, xs:integer, auto-switch time interval, unit: second--></AutoSwitchTime>


</AnalysisEngine>

7.44 XML_AnalysisEngineList
Analysis engine list message in XML format
<?xml version="1.0" encoding="utf-8"?>
<AnalysisEngineList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<AnalysisEngine/><!--see XML_AnalysisEngine for details-->
</AnalysisEngineList>

See Also
XML_AnalysisEngine

7.45 XML_AnalysisEnginesCap
XML message about configuration capability of analysis engine
<AnalysisEnginesCap version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<supportEnginesMaxNumber><!--xs:required, xs:integer, maximum number of supported engines--></
supportEnginesMaxNumber>
<mode
opt="face_recognition,video_structure_preview,video_structure_record,image_recognition_human,image_recognition
_vehicle,safetyHelmetDetection,,personDensityDetection,leavePosition,peopleNumChange,behavior,retention,situatio
nAnalysis,cityManagement,face_human_recognition,face_recognition_IES,OCR,face_recognition_IES_or_OCR,fireEsca
peDetection,takingElevatorDetection">
<!--required, xs:string, engine working mode-->
</mode>
<state opt="loading,analyzing,abnormal, connect_boot_abnorma, conig_boot_abnorma, connect_main_abnorma,
conig_main_abnorma, auth_abnorma, reset_abnorma, DSP_status_abnorma, lib_ver_err_abnorma">
<!--required, read-only, xs:string-->
</state>
<SingelModeCapList><!--number of channels supported by single engine-->
<SingelModeCap>
<Mode><!--required, xs:string--></Mode>
<supportChannelNumber><!--required, xs:integer--></supportChannelNumber>
<supportChannelNumberAutoSwitch>
<!--optional, xs:integer, supported number of channels to be linked with the engine (auto-switch mode); if the
device does not support auto-switch, this node will not be returned-->
</supportChannelNumberAuto
</SingelModeCap>
</SingelModeCapList>
<isSupportCheckUtilization>
<!--required, xs:boolean, whether to support displaying engine usage, this node will not be returned if displaying
usage is not supported-->
</isSupportCheckUtilization>
<isSupportCheckChannelsInfo>

184
Intelligent Security API (Facial) Developer Guide

<!--required, xs:boolean, whether to support displaying channel information linked to the engine, this node will not
be returned if displaying channel No. linked to the engine is not supported-->
</isSupportCheckChannelsInfo>
<repairTime min="-1" max="3">
<!--optional, xs:integer, number of automatic repairs-->
</repairTime>
<isNeedReboot><!--optional, xs:boolean, whether needs to reboot the engine--></isNeedReboot>
<engineSwitchPrompt opt="prompt1"><!--opt,wo,xs:string, engine switching prompt--></engineSwitchPrompt>
<supportChannelsConfiguration min="" max=""><!--optional, xs:integer, supported number of channels to be linked
with the engine--></supportChannelsConfiguration>
<analysisMode opt="realTimeMode,autoSwitchMode"><!--optional, xs:string, analysis mode:
realTimeMode(default), autoSwitchMode--></analysisMode>
<eventSupportAutoSwitch opt="cityManagement,fireEscapeDetection,behavior"><!--optional, xs:string, events that
supports auto-switch--></eventSupportAutoSwitch>
<AutoSwitchTime min="" max="" def=""><!--optional, xs:integer, auto-switch time interval, unit: second--></
AutoSwitchTime>
<isSupportSchedule><!--xs:boolean, whether the device supports setting auto-switch schedule--></
isSupportSchedule>
</AnalysisEnginesCap>

7.46 XML_Cap_faceRule
faceRule capability message in XML format
<FaceRule version="1.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<enabled opt="true,false"><!--req, xs:string--></enabled>
<FaceDetectionRegion>
<RegionCoordinatesList>
<RegionCoordinates><!--req-->
<positionX><!--req, xs:integer;coordinate--></positionX>
<positionY><!--req, xs:integer;coordinate--></positionY>
</RegionCoordinates>
</RegionCoordinatesList>
</FaceDetectionRegion>
<InterPupileRegion>
<positionX><!--req, xs:integer;coordinate--></positionX>
<positionY><!--req, xs:integer;coordinate--></positionY>
<width min="" max=""><!--req, xs: integer, pupil distance--></width>
<heigh><!--req, xs: integer--></height>
</InterPupileRegion>
</FaceRule>

7.47 XML_Cap_PicInfoOverlap
PicInfoOverlap capability message in XML format
<PicInfoOverlap version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<Overlap>
<enabled><!--opt, xs: boolean--></enabled>

185
Intelligent Security API (Facial) Developer Guide

<OverlapItemList><!--opt-->
<OverlapItem>
<id><!--req, xs: integer --></id>
<item opt="positionInfo,cameraNo,captureTime,sex,age,GPS">
<!--req, xs:string, overlay information type: positionInfo (detection position information), cameraNo (device No.),
captureTime (captured time), sex (gender), age, GPS (device longitude and latitude information)-->
</item>
</OverlapItem>
</OverlapItemList>
</Overlap>
</PicInfoOverlap>

7.48 XML_CreateFDLibList
CreateFDLibList message in XML format
<CreateFDLibList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<CreateFDLib>
<id><!--req,xs:integer,number of items in the list, which starts from 1--></id>
<FDID><!--opt,xs:string, face picture library ID--></FDID>
<name><!--opt,xs:string, face picture library name--></name>
<thresholdValue>
<!--opt,xs:integer, similarity threshold for comparison, which is between 0 and 100, the higher the threshold, the
more accurate the comparison is-->
</thresholdValue>
<customInfo><!--opt,xs:string, additional information of face picture library--></customInfo>
</CreateFDLib>
</CreateFDLibList>

Example
CreateFDLibList Message Example for Front-End Devices
<CreateFDLibList>
<CreateFDLib>
<id>1</id>
<name>sdk</name>
<thresholdValue>1</thresholdValue>
<customInfo>fortest</customInfo>
<faceDataMax>30000</faceDataMax>
<customFaceLibID>sdktest</customFaceLibID>
</CreateFDLib>
</CreateFDLibList>

Example
CreateFDLibList Message Example for Rear-End Devices
<CreateFDLibList>
<CreateFDLib>
<id>1</id>
<name>510e498a64094c3d951b6292d666a133</name>
<thresholdValue>1</thresholdValue>

186
Intelligent Security API (Facial) Developer Guide

<customInfo />
</CreateFDLib>
</CreateFDLibList>

7.49 XML_DeviceCap
XML message about device capability
<DeviceCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<SysCap><!--optional-->
<isSupportDst><!--optional, xs: boolean, whether it supports daylight saving time--></isSupportDst>
<NetworkCap/><!--optional, xs: boolean, network capability-->
<IOCap/><!--optional, IO capability-->
<SerialCap/><!--optional, serial port capability-->
<VideoCap/><!--optional, video capability, see details in the message of XML_VideoCap-->
<AudioCap/><!--optional, audio capability-->
<isSupportHolidy><!--optional, xs:boolean--></isSupportHolidy>
<RebootConfigurationCap>
<Genetec><!--optional, xs:boolean--></Genetec>
<ONVIF><!--optional, xs:boolean--></ONVIF>
<RTSP><!--optional, xs:boolean--></RTSP>
<HTTP><!--optional, xs:boolean--></HTTP>
<SADP>
<ISDiscoveryMode><!--optional, xs:boolean--></ISDiscoveryMode>
<PcapMode><!--optional, xs:boolean--></PcapMode>
</SADP>
<IPCAddStatus><!--optional, xs:boolean--></IPCAddStatus>
</RebootConfigurationCap>
<isSupportExternalDevice><!--optional, xs:boolean--></isSupportExternalDevice>
<isSupportChangedUpload>
<!--optional, xs: boolean, whether it supports uploading status changes-->
</isSupportChangedUpload>
<isSupportGettingWorkingStatus>
<!--optional, xs:boolean, whether it supports getting device status-->
</isSupportGettingWorkingStatus>
<isSupportGettingChannelInfoByCondition>
<!--optional, xs:boolean-->
</isSupportGettingChannelInfoByCondition>
<isSupportDiagnosedDataParameter>
<!--optional, xs:boolean-->
</isSupportDiagnosedDataParameter>
<isSupportSimpleDevStatus>
<!--optional, xs: boolean, whether it supports getting device working status-->
</isSupportSimpleDevStatus>
<isSupportFlexible>
<!--optional, xs: boolean, whether it supports getting channel status by condition-->
</isSupportFlexible>
<isSupportPTZChannels>
<!--optional, xs:boolean, whether it supports returning PTZ channel (which is different from the video channel)-->
</isSupportPTZChannels>

187
Intelligent Security API (Facial) Developer Guide

<isSupportSubscribeEvent>
<!--optional, xs:boolean, whether it supports alarm or event subscription: "true,false"-->
</isSupportSubscribeEvent>
<isSupportDiagnosedData>
<!--optional, xs:boolean, "true,false", whether it supports diagnosis data-->
</isSupportDiagnosedData>
<isSupportTimeCap>
<!--optional, xs:boolean, whether it supports time capability-->
</isSupportTimeCap>
<isSupportThermalStreamData>
<!--optional, xs:boolean, whether it supports uploading thermal stream data in real-time. If it is supported, the
returned value is "true"; otherwise, this node will not be returned-->
</isSupportThermalStreamData>
<isSupportPostUpdateFirmware>
<!--optional,xs:boolean,"true,false", whether it supports upgrading the firmware-->
</isSupportPostUpdateFirmware>
<isSupportPostConfigData>
<!--optional, xs:boolean,"true,false", whether it supports importing or exporting the configuration file-->
</isSupportPostConfigData>
<isSupportUserLock>
<!--optional, xs:boolean,"true,false", whether it supports locking user-->
</isSupportUserLock>
<isSupportModuleLock><!--optional, xs:boolean, whether it supports locking the module: "true,false"--></
isSupportModuleLock>
<isSupportSoundCfg><!--optional, xs:boolean--></isSupportSoundCfg>
<isSupportMetadata>
<!--optional, xs:boolean, if it is supported, return "true", otherwise, this node will not be returned-->
</isSupportMetadata>
<isSupportShutdown><!--optional, xs:boolean, whether it supports shutdown configuration--></
isSupportShutdown>
<supportSmartOverlapChannles opt="1"/><!--optional, xs:boolean, whether it supports stream configuration of
smart events. If this function is supported, this node and the corresponding channel ID will be returned; otherwise,
this node will not be returned-->
<isSupportConsumptionMode><!--optional, xs:boolean, whether it supports switching power consumption
mode:true (yes), this node is not returned (no). Related URI: /ISAPI/System/consumptionMode/capabilities?
format=json--></isSupportConsumptionMode>
<isSupportManualPowerConsumption><!--optional, xs:boolean, whether it supports control the power
consumption mode manually: true (yes), this node is not returned (no)--></isSupportManualPowerConsumption>
</SysCap>
<voicetalkNums><!--optional, xs:integer, the number of two-way audio channels--></voicetalkNums>
<isSupportSnapshot><!--optional, xs:boolean, whether it supports capture: "true, false"--></isSupportSnapshot>
<SecurityCap/><!--optional, security capability-->
<EventCap/><!--optional, event capability-->
<ITCCap><!--optional--></ITCCap>
<ImageCap/><!--optional, image capability-->
<RacmCap/><!--optional, storage capability-->
<PTZCtrlCap>
<isSupportPatrols><!--optional, xs:boolean--></isSupportPatrols>
</PTZCtrlCap>
<SmartCap/><!--optional, intelligent capability-->
<isSupportEhome><!--optional, xs:boolean--></isSupportEhome>
<isSupportStreamingEncrypt><!--optional, xs:boolean--></isSupportStreamingEncrypt>

188
Intelligent Security API (Facial) Developer Guide

<TestCap>
<isSupportEmailTest><!--optional, xs:boolean--></isSupportEmailTest>
</TestCap>
<ThermalCap/><!--optional, temperature measurement capability-->
<WLAlarmCap/><!--optional, wireless alarm capability-->
<SecurityCPCapabilities/><!--optional, security control panel capability-->
<isSupportGIS>
<!--optional, xs:boolean, whether it supports GIS capability-->
</isSupportGIS>
<isSupportCompass>
<!--optional, xs:boolean-->
</isSupportCompass>
<isSupportRoadInfoOverlays>
<!--optional, xs:boolean-->
</isSupportRoadInfoOverlays>
<isSupportFaceCaptureStatistics>
<!--optional, xs:boolean-->
</isSupportFaceCaptureStatistics>
<isSupportExternalDevice>
<!--optional, xs:boolean-->
</isSupportExternalDevice>
<isSupportElectronicsEnlarge>
<!--optional, xs:boolean, whether it supports digital zoom-->
</isSupportElectronicsEnlarge>
<isSupportRemoveStorage>
<!--optional, xs:boolean-->
</isSupportRemoveStorage>
<isSupportCloud>
<!--optional, xs:boolean-->
</isSupportCloud>
<isSupportRecordHost>
<!--optional, xs:boolean-->
</isSupportRecordHost>
<isSupportEagleEye>
<!--optional, xs:boolean, whether it supports PanoVu series camera-->
</isSupportEagleEye>
<isSupportPanorama>
<!--optional, xs:boolean, whether it supports panorama-->
</isSupportPanorama>
<isSupportFirmwareVersionInfo>
<!--optional, xs:boolean, whether it supports displaying firmware version information-->
</isSupportFirmwareVersionInfo>
<isSupportExternalWirelessServer>
<!--optional, xs: boolean-->
</isSupportExternalWirelessServer>
<isSupportSetupCalibration>
<!--optional, xs:boolean, whether it supports setting calibration-->
</isSupportSetupCalibration>
<isSupportGetmutexFuncErrMsg>
<!--optional, xs:boolean, whether it supports getting mutex information-->
</isSupportGetmutexFuncErrMsg>
<isSupportTokenAuthenticate><!--optional, xs:boolean--></isSupportTokenAuthenticate>

189
Intelligent Security API (Facial) Developer Guide

<isSupportStreamDualVCA><!--optional, xs:boolean--></isSupportStreamDualVCA>
<isSupportlaserSpotManual>
<!--optional, boolean, whether it supports laser spot configuration-->
</isSupportlaserSpotManual>
<isSupportRTMP><!--optional, xs:boolean--></isSupportRTMP>
<isSupportTraffic><!--optional, xs:boolean--></isSupportTraffic>
<isSupportLaserSpotAdjustment>
<!--optional, boolean, whether it supports adjusting laser spot size-->
</isSupportLaserSpotAdjustment>
<VideoIntercomCap/><!--optional, video intercom capability-->
<isSupportSafetyCabin>
<!--optional, xs:boolean-->
</isSupportSafetyCabin>
<isSupportPEA>
<!--optional, xs:boolean, whether it supports one-touch security control panel capability-->
</isSupportPEA>
<isSupportCurrentLock>
<!--optional, xs:boolean, whether it supports locking current configuration-->
</isSupportCurrentLock>
<isSupportGuardAgainstTheft>
<!--optional, xs:boolean, whether it supports device anti-theft configuration-->
</isSupportGuardAgainstTheft>
<isSupportPicInfoOverlap>
<!--optional, xs:boolean, whether it supports picture information overlay-->
</isSupportPicInfoOverlap>
<isSupportPlay>
<!--optional, xs: boolean, whether it supports live view: "true,false"-->
</isSupportPlay>
<isSupportPlayback>
<!--optional, xs: boolean, whether it supports playback: "true,false"-->
</isSupportPlayback>
<UHFRFIDReader>
<!--optional, supported capability of UHF RFID card reader-->
<isSupportBasicInformation>
<!--optional, xs:boolean, whether it supports basic parameters of UHF RFID card reader-->
</isSupportBasicInformation>
<isSupportHardDiskStorageTest>
<!--optional, xs:boolean, whether it supports hard disk storage test of UHF RFID card reader-->
</isSupportHardDiskStorageTest>
</UHFRFIDReader>
<isSupportIntelligentStructureAnalysis>
<!--optional, xs:boolean, whether it supports structured VCA-->
</isSupportIntelligentStructureAnalysis>
<isSupportIntelligentAnalysisEngines>
<!--optional, xs:boolean, whether it supports VCA engine configuration-->
</isSupportIntelligentAnalysisEngines>
<PreviewDisplayNum>
<!--optional, xs:integer, the number of live view windows, which is the number of simultaneous live view windows
controlled by the device. Limited by the performance of DeepinMind series network video recorder, currently only live
view of a network camera is supported, and playback is not supported-->
</PreviewDisplayNum>
<isSupportBoard opt="true,false">

190
Intelligent Security API (Facial) Developer Guide

<!--optional, xs:boolean, whether it supports protocol related to sub-board-->


</isSupportBoard>
<ResourceSwitch>
<workMode opt="4KPreview,educationRecord">
<!--req, xs:string, device working mode:"4KPreview"-4K live view mode, "educationRecord"-education recording
mode-->
</workMode>
</ResourceSwitch>
<isSupportCustomStream><!--optional, xs:boolean--></isSupportCustomStream>
<isSupportTriggerCapCheck>
<!--optional, xs:boolean, whether it supports verifying capability of alarm linkage actions-->
</isSupportTriggerCapCheck>
<isSupportActiveMulticast>
<!--optional, xs: boolean, whether it supports active multicast-->
</isSupportActiveMulticast>
<isSupportChannelEventCap>
<!--optional, xs:boolean, whether it supports getting event capability by channel-->
</isSupportChannelEventCap>
<isSupportPictureServer>
<!-- opt, xs:boolean, whether it supports picture storage server-->
</isSupportPictureServer>
<isSupportVideoCompositeAlarm>
<!--optional, xs:boolean, whether it supports video double check alarm-->
</isSupportVideoCompositeAlarm>
<isSupportSensorCalibrating>
<!--optional, xs:boolean, whether it supports double sensor calibration-->
</isSupportSensorCalibrating>
<isSupportChannelEventListCap>
<!--optional, xs:boolean, whether it supports getting event capability of all channels-->
</isSupportChannelEventListCap>
<VCAResourceChannelsCap>
<!--optional, whether it supports independently switching to another VCA resource by channel-->
<ChannelsList>
<channelsID>
<!--req, xs:integer, channel No. supported by the device-->
</channelsID>
</ChannelsList>
</VCAResourceChannelsCap>
<SensorCap/><!--optional, intelligent cabinet capability-->
<isSupportSecurityCP/>
<!--optional, xs:boolean, whether it supports the applications of security control panel: "true, false"-->
</isSupportSecurityCP>
<isSupportClientProxyWEB>
<!--optional, xs:boolean, whether it supports the function that the client proxy passes through the remote web
configuration: "true"-->
</isSupportClientProxyWEB>
<WEBLocation>
<!--optional, string type, web page location: "local"-local device, "remote"-remote location. If this node is not
returned, the web page will be in the local device by default-->
</WEBLocation>
<isSupportTime/>
<!--optional, xs:boolean, "true, false", whether it supports time configuration-->

191
Intelligent Security API (Facial) Developer Guide

</isSupportTime>
<isSupportTimeZone/>
<!--optional, xs:boolean, "true, false", whether it supports daylight saving time (DST) configuration-->
</isSupportTimeZone>
<isSupportMixedTargetDetection>
<!--optional, xs:boolean, "true, false", whether it supports multi-target-type detection-->
</isSupportMixedTargetDetection>
<isSupportFaceContrastMode>
<!--optional, xs:boolean, whether it supports face picture comparison mode-->
</isSupportFaceContrastMode>
<isSupportPictureCaptureComparision>
<!--optional, xs:boolean, whether it supports face picture N:1 comparison between face pictures captured by the
camera and imported face pictures-->
</isSupportPictureCaptureComparision>
<isSupportGPSCalibratation>
<!--optional, xs:boolean, whether it supports GPS calibration capability-->
</isSupportGPSCalibratation>
<isSupportChannelFullEventListCap>
<!--optional, xs:boolean, whether it supports getting event list capability of all channels-->
</isSupportChannelFullEventListCap>
<isSupportAUXInfoCap>
<!--optional, xs:boolean, whether it supports getting property capability of all channels-->
</isSupportAUXInfoCap>
<isSupportCalibrationFile>
<!--optional, xs:boolean, whether it supports importing calibration file-->
</isSupportCalibrationFile>
<isSupportDisplayTrajectory>
<!--optional, xs:boolean, whether it supports displaying trajectory-->
</isSupportDisplayTrajectory>
<maximumSuperPositionTime opt="5,10,20,30">
<!--dep,xs:integer, the maximum time of trajectory displaying,unit: second, it is valid only when displaying
trajectory is supported-->
</maximumSuperPositionTime>
<isSupportUnitConfig>
<!--optional, xs:boolean, whether it supports unit configuration-->
</isSupportUnitConfig>
<isSupportAutoMaintenance>
<!--optional, xs:boolean, whether it supports automatic maintenance. When this node exists and values "true", it
indicates support-->
</isSupportAutoMaintenance>
<isSupportGetLinkSocketIP>
<!--optional, xs: boolean, "true,false", whether it supports getting the SocketIP of current connection-->
</isSupportGetLinkSocketIP>
<isSupportIntelligentSearch>
<!--optional, xs:boolean, whether it supports intelligent search-->
</isSupportIntelligentSearch>
<IOTCap><!--optional, xs:boolean, IoT device access capability-->
<supportChannelNum>
<!--req, xs:integer, number of supported channels of IoT device-->
</supportChannelNum>
<startChannelNo>
<!--optional, xs:integer, initial channel ID, if this node is not inputted, it indicates that the initial channel ID is 1-->

192
Intelligent Security API (Facial) Developer Guide

</startChannelNo>
<isSupportlinkageChannelsSearch>
<!--optional, boolean, returns "true" if support, returns "false" if not support-->
</isSupportlinkageChannelsSearch>
</IOTCap>
<isSupportEncryption>
<!--optional, xs: boolean, stream encryption capability-->
</isSupportEncryption>
<AIDEventSupport opt="abandonedObject, pedestrian, congestion, roadBlock, construction, trafficAccident,
fogDetection, wrongDirection, illegalParking, SSharpDriving, lowSpeed, dragRacing">
<!--optional, xs:string, supported traffic incident type: "abandonedObject"-objects dropped down, "pedestrian"-
pedestrian, "congestion"-congestion, "roadBlock"-roadblock, "construction"-construction, "trafficAccident"-traffic
accident, "fogDetection"-fog, "wrongDirection"-wrong-way driving, "illegalParking"-illegal parking, "SSharpDriving"-
slalom driving, "lowSpeed"-driving in low speed, "dragRacing"-street racing-->
</AIDEventSupport>
<TFSEventSupport
opt="illegalParking ,wrongDirection,crossLane,laneChange,vehicleExist,turnRound,parallelParking,notKeepDistance,not
SlowZebraCrossing,overtakeRightSide,lowSpeed,dragRacing,changeLaneContinuously,SSharpDriving,largeVehicleOccup
yLine,jamCrossLine">
<!--optional, xs:string, supported enforcement event type: "illegalParking"-illegal parking, "wrongDirection"-wrong-
way driving, "crossLane"-driving on the lane line, "laneChange"-illegal lane change, "vehicleExist"-motor vehicle on
non-motor vehicle lane, "turnRound"-illegal U-turn, "parallelParking"-parallel parking, "notKeepDistance"-not keeping
vehicle distance, "notSlowZebraCrossing"-not slowing down at zebra corssing, "overtakeRightSide"-overtaking on the
right, "lowSpeed"-driving in low speed, "dragRacing"-street racing, "changeLaneContinuously"-continuous lane
change, "SSharpDriving"-slalom driving, "largeVehicleOccupyLine"-lane occupation by large-sized vehicle,
"jamCrossLine"-queue jumping-->
</TFSEventSupport>
<isVehicleStatisticsSupport>
<!--optional, xs: boolean, whether it supports setting parameters for traffic data collection-->
</isVehicleStatisticsSupport>
<isSupportIntersectionAnalysis>
<!--optional, xs: boolean, whether it supports intersection analysis-->
</isSupportIntersectionAnalysis>
<supportRemoteCtrl opt="up,down,left,right,enter,menu,num,power,esc,edit,F1,.prev,rec,play,stop,notSupport"/><!--
whether it supports remote control-->
<isSptDiagnosis>
<!--optional, xs:boolean, whether it supports device diagnosis: "true", "false"-->
</isSptDiagnosis>
<isSptSerialLogCfg>
<!--optional, xs:boolean, whether it supports configuring serial port log redirection: "true", "false"-->
</isSptSerialLogCfg>
<isSptFileExport>
<!--optional, xs:boolean, whether it supports exporting files from the device: "true", "false"-->
</isSptFileExport>
<isSptCertificationStandard>
<!--optional, xs:boolean, whether it supports configuring authentication standard for security control panel: "true",
"false"-->
</isSptCertificationStandard>
<isSptKeypadLock>
<!--optional, xs:boolean, whether it supports locking keypad: "true", "false"-->
</isSptKeypadLock>
<MixedTargetDetection><!--optional, whether the device supports recognizing specific target among mixed targets-->

193
Intelligent Security API (Facial) Developer Guide

<isSupportFaceRecognition><!--optional, xs:boolean, whether it supports face recognition--></


isSupportFaceRecognition>
<isSupportHumanRecognition><!--optional, xs:boolean, whether it supports human body recognition--></
isSupportHumanRecognition>
<isSupportVehicleRecognition><!--optional, xs:boolean, whether it supports vehicle recognition--></
isSupportVehicleRecognition>
</MixedTargetDetection>
<isSupportDiscoveryMode><!--optional, xs:boolean--></isSupportDiscoveryMode>
<streamEncryptionType>
<!--dep, xs:string, stream encryption type: "RTP/TLS", "SRTP/UDP", "SRTP/MULTICAST". This node is valid when
<isSupportEncryption> is "true", and the device can support one or more stream encryption types-->
</streamEncryptionType>
<isSupportLms><!--optional, xs:boolean, whether it supports laser--></isSupportLms>
<isSupportLCDScreen><!--optional, xs:boolean, whether it supports LCD screen--></isSupportLCDScreen>
<isSupportBluetooth><!--optional, xs:boolean, whether it supports bluetooth--></isSupportBluetooth>
<isSupportAcsUpdate>
<!--optional, whether it supports upgrading slave access control devices or peripheral modules: "true"-yes, this
node is not returned-no-->
</isSupportAcsUpdate>
<isSupportAccessControlCap>
<!--optional, whether it supports access control capability: "true"-yes, this node is not returned-no-->
</isSupportAccessControlCap>
<isSupportIDCardInfoEvent><!--optional, whether it supports ID card swiping event: "true"-yes. This node will not be
returned if this function is not supported--></isSupportIDCardInfoEvent>
<OpenPlatformCap><!--optional, embedded open platform capability, refer to the message XML_OpenPlatformCap
for details-->
<isSupportInstallationAngleCalibration>
<!--optional, xs:boolean, whether it supports installation angle calibration-->
</isSupportInstallationAngleCalibration>
<isSupportZeroBiasCalibration>
<!--optional, xs:boolean, whether it supports zero bias calibration-->
</isSupportZeroBiasCalibration>
<isSupportDevStatus><!--optional, xs:boolean, whether device supports getting device status--></
isSupportDevStatus>
<isSupportRadar><!--optional, xs:boolean, whether it supports the security radar--></isSupportRadar>
<isSupportRadarChannels><!--optional, xs:boolean, whether it supports getting radar channels--></
isSupportRadarChannels>
<radarIPDForm><!--optional, xs:string, radar form: "single"-single radar, "double_diagonal"-two radars forming an
180° diagonal, "double_vertical"-two radars forming a 90° vertical angle--></radarIPDForm>
<isSupportRadarFieldDetection><!--optional, xs:boolean, whether it supports intrusion detection (radar)--></
isSupportRadarFieldDetection>
<isSupportRadarLineDetection><!--optional, xs:boolean, whether it supports line crossing detection (radar)--></
isSupportRadarLineDetection>
<mixedTargetDetectionWebNoDisplay><!--optional, xs:boolean, whether to enable not displaying multi-target-type
recognition--></mixedTargetDetectionWebNoDisplay>
<SHMCap><!--opt-->
<isSupportHighHDTemperature><!--optional, xs:boolean, whether it supports HDD high temperature detection--></
isSupportHighHDTemperature>
<isSupportLowHDTemperature><!--optional, xs:boolean, whether it supports HDD low temperature detection--></
isSupportLowHDTemperature>
<isSupportHDImpact><!--optional, xs:boolean, whether it supports HDD impact detection--></isSupportHDImpact>
<isSupportHDBadBlock><!--optional, xs:boolean, whether it supports HDD bad sector detection--></

194
Intelligent Security API (Facial) Developer Guide

isSupportHDBadBlock>
<isSupportSevereHDFailure><!--optional, xs:boolean, whether it supports HDD severe fault detection--></
isSupportSevereHDFailure>
</SHMCap>
<isSupportBVCorrect><!--optional, xs:boolean, whether it supports configuring camera correction parameters--></
isSupportBVCorrect>
<guideEventSupport opt="linkageCapture">
<!--optional,xs:string, events which support quick setup by instruction, "linkageCapture"-capture by linkage-->
</guideEventSupport>
<isSupportAutoSwitch><!--optional, xs:boolean, whether it supports auto switch--> true</isSupportAutoSwitch>
<isSupportDataPrealarm><!--optional,xs:boolean, whether it supports traffic pre-alarm event--></
isSupportDataPrealarm>
<supportGISEvent opt="AID,TPS,ANPR,mixedTargetDetection">
<!--optional, xs:string, event types that support GIS information access: AID (corresponding SDK event:
COMM_ALARM_AID_V41), TPS (corresponding SDK event: COMM_ALARM_TPS_REAL_TIME), ANPR (corresponding
SDK event: COMM_ITS_PLATE_RESULT), mixedTargetDetection-mixed targets detection-->
</supportGISEvent>
<isSupportIntelligentMode><!--optional, xs:boolean, whether it supports intelligent scene switch (related URI:/ISAPI/
System/IntelligentSceneSwitch?format=json)--></isSupportIntelligentMode>
<isSupportCertificateCaptureEvent><!--optional, xs:boolean, whether it supports certificate capture and comparison
events: true-yes. If this function is not supported, this node will not be returned--></
isSupportCertificateCaptureEvent>
<isSupportAlgorithmsInfo><!--optional, xs:boolean, whether it supports getting the algorithm library version
information: true-yes. If this function is not supported, this node will not be returned--></isSupportAlgorithmsInfo>
<isSupportVibrationDetection><!--optional, xs:boolean, whether it supports vibration detection--></
isSupportVibrationDetection>
<isSupportFaceTemperatureMeasurementEvent><!--optional, xs:boolean, whether it supports uploading face
thermography events (eventType: "FaceTemperatureMeasurementEvent")--></
isSupportFaceTemperatureMeasurementEvent>
<isSupportQRCodeEvent><!--optional, xs:boolean, whether it supports uploading QR code events (eventType:
"QRCodeEvent")--></isSupportQRCodeEvent>
<isSupportPersonArmingTrack><!--optional, xs:boolean, whether device supports person arming (related URI: /ISAPI/
Intelligent/channels/<ID>/personArmingTrack/capabilities?format=json)--></isSupportPersonArmingTrack>
<isSupportManualPersonArmingTrack><!--optional, xs:boolean, whether device supports manual person arming
(related URI: /ISAPI/Intelligent/channels/<ID>/manualPersonArmingTrack?format=json)--></
isSupportManualPersonArmingTrack>
<isSupportGPSCalibrationMode><!--optional, xs:boolean, whether device supports GPS calibration (related URI: /
ISAPI/System/GPSCalibration/channels/<ID>/mode?format=json)--></isSupportGPSCalibrationMode>
<isSupportGPSVerification><!--optional, xs:boolean, whether device supports GPS verification (related URI: /ISAPI/
System/GPSVerification/channels/<ID>/points?format=json)--></isSupportGPSVerification>
<isSupportHBDLib><!--optional, xs:boolean, whether device supports human body picture library (related URI: /ISAPI/
Intelligent/HBDLib/capabilities?format=json)--></isSupportHBDLib>
<isSupportFireEscapeDetection><!--optional, xs:boolean, whether the device supports fire engine access detection
(related URI: /ISAPI/Intelligent/channels/<ID>/fireEscapeDetection/capabilities?format=json)--></
isSupportFireEscapeDetection>
<isSupportTakingElevatorDetection><!--optional, xs:boolean, whether the device supports elevator detection
(related URI: /ISAPI/Intelligent/channels/<ID>/takingElevatorDetection/capabilities?format=json)--></
isSupportTakingElevatorDetection>
<isSupportSSDFileSystemUpgrade><!--optional, xs:boolean, whether the device supports SSD file system upgrade
(related URI: /ISAPI/System/SSDFileSystem/upgrade?format=json)--></isSupportSSDFileSystemUpgrade>
<isSupportSSDFileSystemFormat><!--optional, xs:boolean, whether the device supports SSD file system formatting
(related URI: /ISAPI/System/SSDFileSystem/format?format=json)--></isSupportSSDFileSystemFormat>

195
Intelligent Security API (Facial) Developer Guide

<isSupportSSDFileSystemCapacity><!--optional, xs:boolean, whether the device supports getting space distribution


information of SSD file system (related URI: /ISAPI/System/SSDFileSystem/capacity?format=json)--></
isSupportSSDFileSystemCapacity>
<isSupportAIOpenPlatform><!--optional, xs:boolean, whether the device supports AI open platform capabilities; if
supports, this node will be returned and its value is true; if not, this node will not be returned--></
isSupportAIOpenPlatform>
<isSupportPictureDownloadError><!--optional, xs:boolean,whether the device supports reporting picture download
failure--></isSupportPictureDownloadError>
<characteristicCode min="1" max="128"><!--optional, xs:string, device attribute code (related URI: /ISAPI/System/
deviceInfo/characteristicCode?format=json)--></characteristicCode>
</DeviceCap>

7.50 XML_EventCap
EventCap capability message in XML format
<EventCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<isSupportHDFull><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportHDFull>
<isSupportHDError><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportHDError>
<isSupportNicBroken><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportNicBroken>
<isSupportIpConflict><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportIpConflict>
<isSupportIllAccess><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportIllAccess>
<isSupportViException><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportViException>
<isSupportViMismatch><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportViMismatch>
<isSupportRecordException><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportRecordException>
<isSupportTriggerFocus><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportTriggerFocus>
<isSupportMotionDetection><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportMotionDetection>
<isSupportVideoLoss><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportVideoLoss>
<isSupportTamperDetection><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportTamperDetection>
<isSupportStudentsStoodUp><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportStudentsStoodUp>
<isSupportFramesPeopleCounting><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportFramesPeopleCounting>
<isSupportRaidException><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportRaidException>
<isSupportSpareException><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportSpareException>
<isSupportPoePowerException><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportPoePowerException>
<isSupportRegionEntrance><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportRegionEntrance>
<isSupportRegionExiting><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportRegionExiting>
<isSupportLoitering><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportLoitering>
<isSupportGroup><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportGroup>
<isSupportRapidMove><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportRapidMove>
<isSupportFireDetection><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportFireDetection>
<isSupportillegalParking><!--optional, xs:boolean, whether it supports illegal parking detection: "true"-support,
"false"-not support--></isSupportillegalParking>

196
Intelligent Security API (Facial) Developer Guide

<isSupportUnattendedBaggage><!--optional, xs:boolean --></isSupportUnattendedBaggage>


<isSupportAttendedBaggage><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportAttendedBaggage>
<isSupportHumanAttribute><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportHumanAttribute>
<isSupportFaceContrast><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportFaceContrast>
<isSupportFaceLib><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportFaceLib>
<isSupportWhiteListFaceContrast><!--opt, xs:boolean, "true"-support, "false"-not support--></
isSupportWhiteListFaceContrast>
<isSupportBlackListFaceContrast><!--opt, xs:boolean, whether it supports blacklist face comparison: "true"-support,
"false"-not support--></isSupportBlackListFaceContrast>
<isSupportHumanRecognition>><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportHumanRecognition>
<isSupportFaceSnap><!--optional, xs:boolean, "true"-support, "false"-not support--></isSupportFaceSnap>
<isSupportPersonDensityDetection><!--optional, xs:boolean, "true"-support, "false"-not support--></
isSupportPersonDensityDetection>
<isSupportMixedTargetDetection><!--optional, xs:boolean, whether it supports multi-target-type detection alarm:
"true"-support, "false"-not support--></isSupportMixedTargetDetection>
<isSupportPedestrian><!--optional, xs:boolean, whether it supports pedestrian detection: "true"-support, "false"-not
support--></isSupportPedestrian>
<isSupportTrafficAccident><!--optional, xs:boolean, whether it supports traffic accident detection: "true"-support,
"false"-not support--></isSupportTrafficAccident>
<isSupportConstruction><!--optional, xs:boolean, whether it supports construction detection: "true"-support, "false"-
not support--></isSupportConstruction>
<isSupportRoadBlock><!--optional, xs:boolean, whether it supports roadblock detection: "true"-support, "false"-not
support--></isSupportRoadBlock>
<isSupportAbandonedObject><!--optional, xs:boolean, whether it supports thrown object detection: "true"-support,
"false"-not support--></isSupportAbandonedObject>
<isSupportParallelParking><!--optional, xs:boolean, whether it supports parallel parking detection: "true"-support,
"false"-not support--></isSupportParallelParking>
<isSupportParkingState><!--optional, xs:boolean, whether it supports parking space status detection: "true"-support,
"false"-not support, currently this node is not supported--></isSupportParkingState>
<isSupportCongestion><!--optional, xs:boolean, whether it supports congestion detection: "true"-support, "false"-
not support--></isSupportCongestion>
<isSupportVehicleStatistics><!--optional, xs:boolean, whether it supports data collection: "true"-support, "false"-not
support--></isSupportVehicleStatistics>
<isSupportWrongDirection><!--optional, xs:boolean, whether it supports wrong-way driving detection: "true"-
support, "false"-not support--></isSupportWrongDirection>
<isSupportTrunRound><!--optional, xs:boolean, whether it supports U-turning detection: "true"-support, "false"-not
support--></isSupportTrunRound>
<isSupportCrossLane><!--optional, xs:boolean, whether it supports driving on the lane line detection: "true"-support,
"false"-not support--></isSupportCrossLane>
<isSupportLaneChange><!--optional, xs:boolean, whether it supports illegal lane change detection: "true"-support,
"false"-not support--></isSupportLaneChange>
<isSupportVehicleExist><!--optional, xs:boolean, whether it supports motor vehicle on non-motor vehicle lane
detection: "true"-support, "false"-not support--></isSupportVehicleExist>
<isSupporFogDetection><!--optional, xs:boolean, whether it supports fog detection: "true"-support, "false"-not
support--></isSupporFogDetection>
<isSupportIntersectionAnalysis><!--optional, xs: boolean, whether it supports configuring intersection analysis alarm:
"true"-support, "false"-not support--></isSupportIntersectionAnalysis>
<isSupportVoltageInstable><!--optional,xs:boolean, whether it supports supply voltage exception alarm: "true"-
support, "false"-not support--></isSupportVoltageInstable>

197
Intelligent Security API (Facial) Developer Guide

<isSupportSafetyHelmetDetection><!--optional, xs:boolean, whether it supports hard hat detection: "true"-support,


"false"-not support--></isSupportSafetyHelmetDetection>
<isSupportCertificateRevocation><!--optional, xs:boolean, whether it supports certificate expiry alarm--></
isSupportCertificateRevocation>
<isSupportNoMaskDetection><!--optional, xs:boolean, whether device supports no wearing mask detection--></
isSupportNoMaskDetection>
<isSupportTMPA><!--optional, xs:boolean, whether device supports temperature measurement pre-alarm--></
isSupportTMPA>
<RuleScheduleCap><!--optional, capability of setting arming schedule by rule-->
<isSupportCityManagement>
<!--optional, xs:boolean, whether the device supports setting arming schedule by rule for intelligent city
management; if supports, the value is true, otherwise, this node will not be returned-->
</isSupportCityManagement>
</RuleScheduleCap>
<isSupportTemperatureIntervalMeasurement><!--optional, xs:boolean, whether the device supports interval
temperature measurement--></isSupportTemperatureIntervalMeasurement>
</EventCap>

7.51 XML_EventNotificationAlert_AlarmEventInfo
EventNotificationAlert message with alarm/event information in XML format.
<EventNotificationAlert version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<ipAddress><!--dep, xs:string, device IPv4 address--></ipAddress>
<ipv6Address><!--dep, xs:string, device IPv6 address--></ipv6Address>
<portNo><!--opt, xs:integer, device port number--></portNo>
<protocol><!--opt, xs:string, protocol type for uploading alarm/event information, "HTTP,HTTPS"--></protocol>
<macAddress><!--opt, xs:string, MAC address--></macAddress>
<channelID><!--dep, xs:string, device channel No., starts from 1--></channelID>
<dateTime><!--req, alarm/event triggered or occurred time, format: 2017-07-19T10:06:41+08:00--></dateTime>
<activePostCount><!--req, xs:integer, alarm/event frequency, starts from 1--></activePostCount>
<eventType><!--req, xs:string, alarm/event type, "peopleCounting, ANPR,..."--></eventType>
<eventState>
<!--req, xs:string, durative alarm/event status: "active"-valid, "inactive"-invalid, e.g., when a moving target is
detected,
the alarm/event information will be uploaded continuously unit the status is set to "inactive"-->
</eventState>
<eventDescription><!--req, xs:string, alarm/event description--></eventDescription>
<...><!--opt, for different alarm/event types, the nodes are different, see the message examples in different
applications--></...>
</EventNotificationAlert>

7.52 XML_EventNotificationAlert_HeartbeatInfo
EventNotificationAlert message with heartbeat information (when there is no alarm is triggered) in
XML format

198
Intelligent Security API (Facial) Developer Guide

<EventNotificationAlert version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">


<ipv6Address><!--dep, xs:string, device IPv6 address--></ipv6Address>
<portNo><!--opt, xs:integer, device port number--></portNo>
<protocol><!--opt, xs:string, protocol type for uploading alarm/event information, "HTTP,HTTPS"--></protocol>
<macAddress><!--opt, xs:string, MAC address--></macAddress>
<channelID><!--dep, xs:string, device channel No., starts from 1--></channelID>
<dateTime><!--req, heartbeat uploaded time, format: 2017-07-19T10:06:41+08:00--></dateTime>
<activePostCount><!--req, xs:integer, heartbeat frequency, starts from 1--></activePostCount>
<eventType><!--req, xs:string, for heartbeat, it is "videoloss"--></eventType>
<eventState>
<!--req, xs:string, for heartbeat, it is "inactive"-->
</eventState>
<eventDescription><!--req, xs: string, description--></eventDescription>
</EventNotificationAlert>

Remarks
• For network camera or network speed dome with the version 5.5.0 and lower, the heartbeat
frequency is 300 ms per heartbeat.
• For network camera or network speed dome with the version 5.5.0 and higher, the heartbeat
frequency is 10 s per heartbeat. If no heartbeat received for continuous 30 s, it indicates that the
heartbeat is timed out.
Example
Message Example of Heartbeat
<EventNotificationAlert version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<ipAddress>10.17.133.46</ipAddress>
<portNo>80</portNo>
<protocol>HTTP</protocol>
<macAddress>44:19:b6:6d:24:85</macAddress>
<channelID>1</channelID>
<dateTime>2017-05-04T11:20:02+08:00</dateTime>
<activePostCount>0</activePostCount>
<eventType>videoloss</eventType>
<eventState>inactive</eventState>
<eventDescription>videoloss alarm</eventDescription>
</EventNotificationAlert>

7.53 XML_EventNotificationAlert_SubscriptionHeartbeat
Heartbeat information message returned when subscribing alarm/event, and it is in XML format.
<EventNotificationAlert version="2.0" xmlns="http://www.isapi.com/ver20/XMLSchema">
<ipAddress>10.17.133.46</ipAddress>
<portNo>80</portNo>
<protocol>HTTP</protocol>
<macAddress>44:19:b6:6d:24:85</macAddress>
<channelID>1</channelID>
<dateTime>2017-05-04T11:20:02+08:00</dateTime>

199
Intelligent Security API (Facial) Developer Guide

<activePostCount>0</activePostCount>
<eventType>heartBeat</eventType>
<eventState>active</eventState>
<eventDescription>heartBeat</eventDescription>
</EventNotificationAlert>

See Also
XML_EventNotificationAlert_AlarmEventInfo

7.54 XML_EventTrigger
Linkage parameter message in XML format
<EventTrigger version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id><!--required, xs:string, ID--></id>
<eventType>
<!--required, xs:string, see details in the "Remarks" below-->
</eventType>
<eventDescription><!--optional, xs:string--></eventDescription>
<inputIOPortID><!--dependent, xs:string, alarm input ID--></inputIOPortID>
<dynInputIOPortID><!--dependent, xs:string, dynamic alarm input ID--></dynInputPortID>
<videoInputChannelID>
<!--dependent, xs:string, video input channel ID, it is valid when <eventType> is "VMD, videoloss, tamperdetection,
regionEntrance, regionExiting, loitering, group, rapidMove, parking, unattendedBaggage, attendedBaggage"-->
</videoInputChannelID>
<dynVideoInputChannelID><!--dependent, xs:string, dynamic video input channel ID--></dynVideoInputChannelID>
<intervalBetweenEvents><!--optional, xs:integer, event time interval, unit: second--></intervalBetweenEvents>
<WLSensorID><!--dependent, xs:string, ID--></WLSensorID>
<EventTriggerNotificationList/><!--optional, alarm/event linkage actions, see details in the message of
XML_EventTriggerNotificationList-->
</EventTrigger>

Remarks
The node <eventType> can be the following values: IO, VMD, videoloss, raidfailure,
recordingfailure, badvideo, POS, analytics, fanfailure, overheat, tamperdetection, diskfull, diskerror,
nicbroken, ipconflict, illaccess, videomismatch, resolutionmismatch, radifailure, PIR, WLSensor,
spareException, poePowerException, heatmap, counting, linedetection, fielddetection,
regionEntrance, regionExiting, loitering, group,rapidMove, parking, unattendedBaggage,
attendedBaggage, HUMANATTRIBUTE, blackList, whitelist, peopleDetection, allVehicleList,
otherVehicleList, vehicledetection, storageDetection, shipsDetection, humanAttribute,
faceContrast, blackListFaceContrast, whiteListFaceContrast, faceSnap, faceLib,
personDensityDetection, personQueueDetecton, mixedTargetDetection, HVTVehicleDetection,
illegalParking, pedestrian, trafficAccident, construction, roadblock, abandonedObject,
parallelParking, parkingState, congestion, intersectionAnalysis, heatMap, thermometry,
shipsFlowDetection, dredgerDetection, reverseEntrance, luma, highHDTemperature,
lowHDTemperature, hdImpact, hdBadBlock, SevereHDFailure, safetyHelmetDetection,
vibrationDetection, HBDLib,TMPA,faceThermometry,noMaskDetection

200
Intelligent Security API (Facial) Developer Guide

See Also
XML_EventTriggerNotificationList

7.55 XML_EventTriggerCapType
XML message about capability of alarm linkage action types
<EventTriggerCapType version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<isSupportCenter><!--optional, xs:boolean--></isSupportCenter>
<isSupportRecord><!--optional, xs:boolean--></isSupportRecord>
<isSupportMonitorAlarm><!--optional, xs:boolean--></isSupportMonitorAlarm>
<isSupportBeep><!--optional, xs: boolean, whether it supports audible warning--></isSupportBeep>
<isSupportIO><!--optional, xs:boolean--></isSupportIO>
<isSupportFTP><!--optional, xs:boolean--></isSupportFTP>
<isSupportEmail><!--optional, xs:boolean--></isSupEmail>
<isSupportLightAudioAlarm><!--optional, xs:boolean--></isSupportLightAudioAlarm>
<isSupportFocus><!--optional, xs:boolean--></isSupportFocus>
<isSupportPTZ><!--optional, xs:boolean--></isSupportPTZ>
<maxPresetActionNum>
<!--dependent, xs:integer, it is valid only when <isSupportPTZ> is "true"-->
</maxPresetActionNum>
<maxPatrolActionNum>
<!--dependent, xs:integer, it is valid only when <isSupportPTZ> is "true"-->
</maxPatrolActionNum>
<maxPatternActionNum>
<!--dependent, xs:integer, it is valid only when <isSupportPTZ> is "true"-->
</maxPatternActionNum>
<isSupportTrack><!--optional, xs:boolean, whether it supports PTZ linked tracking--></isSupportTrack>
<isSupportWhiteLight>
<!--optional, xs: boolean, whether it supports supplement light alarm linkage-->
</isSupportWhiteLight>
<isSupportCloud><!--optional, xs:boolean, whether it supports upload to the cloud--></isSupportCloud>
<targetNotificationInterval max="1000" min="0" default="30"><!--xs:integer, range: [0, 1000], the default value is 30,
unit: seconds, this node is valid for <MotionDetectionTriggerCap> and <TamperDetectionTriggerCap> and this node is
valid when <isSupportPTZ> is "true"--></targetNotificationInterval>
<direction opt="both,forward,reverse"><!--xs:string, triggering direction, this node is valid for the node
<BlackListTriggerCap>, <WhiteListTriggerCap>, and <VehicleDetectionTriggerCap>--></direction>
<presetDurationTime min="" max=""><!--dependent, xs:integer--></presetDurationTime>
<isSupportSMS><!--optional, xs:boolean, whether to support SMS (Short Message Service)--></isSupportSMS>
<maxCellphoneNum><!--dependent, xs:integer, the maximum number of cellphones, which is node is valid only
when <isSupportSMS> is "true"--></maxCellphoneNum>
<isSupportOSD><!--optional, xs:boolean--></isSupportOSD>
<isSupportAudio><!--optional, xs:boolean, whether it supports setting audio alarm independently. If this node is set
to "true", audio alarm and buzzer alarm can be linked separately, and the linage method is audio--></isSupportAudio>
<AudioAction><!--dependent, this node is valid when <isSupportBeep> is "true" or <isSupportAudio> is "true"-->
<audioTypeList>
<audioType><!--list-->
<audioID><!--required, xs:integer, alarm sound type--></audioID>
<audioDescription><!--required, xs:string, alarm sound description, it should correspond to the alarm sound type--

201
Intelligent Security API (Facial) Developer Guide

></audioDescription>
</audioType>
</audioTypeList>
<alarmTimes opt="0,1,2,3,4,5,6,7,8,9,255"><!--required, xs:integer, alarm times, it is between 0 and 9, 255-
continuous alarm, unit: time--></alarmTimes>
</AudioAction>
<isSupportSMS><!--optional, xs:boolean --></isSupportSMS>
<maxCellphoneNum><!--dependent, if <isSupportSMS> is true, xs:integer--></maxCellphoneNum>
<isNotSupportCenterModify><!--optional, xs:boolean, whether editing configuration parameters of the surveillance
center is not supported: "true"-yes (configuration parameters of the surveillance center cannot be edited), "false" or
this node is not returned-no (configuration parameters of the surveillance center can be edited)--></
isNotSupportCenterModify>
<isSupportMessageConfig>
<!--optional, xs:boolean, whether it supports SMS configuration, if supports, set cellphoneNumber to null-->
</isSupportMessageConfig>
<isSupportAnalogOutput><!--optional, xs:boolean, whether it supports IO output of linkage analog channel--></
isSupportAnalogOutput>
<isSupportIOOutputUnify><!--optional, xs:boolean, whether it supports configuration of IO output--></
isSupportIOOutputUnify>
<isSupportFaceContrast><!--optional, xs:boolean, whether it supports face picture comparison linkage--></
isSupportFaceContrast>
</EventTriggerCapType>

7.56 XML_EventTriggerList
EventTriggerList message in XML format
<EventTriggerList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<EventTrigger/><!--opt, see details in the message of XML_EventTrigger-->
</EventTriggerList>

See Also
XML_EventTrigger
Example
XML_EventTriggerList Message Example of Linkage Configurations of Multiple Alarms
<EventTriggerList version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<EventTrigger>
<id>VMD-1</id>
<eventType>VMD</eventType>
<eventDescription>VMD Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>tamper-1</id>
<eventType>tamperdetection</eventType>
<eventDescription>shelteralarm Event trigger Information</eventDescription>

202
Intelligent Security API (Facial) Developer Guide

<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>diskfull</id>
<eventType>diskfull</eventType>
<eventDescription>exception Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>diskerror</id>
<eventType>diskerror</eventType>
<eventDescription>exception Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>beep</id>
<notificationMethod>beep</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>nicbroken</id>
<eventType>nicbroken</eventType>
<eventDescription>exception Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>ipconflict</id>
<eventType>ipconflict</eventType>
<eventDescription>exception Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>illaccess</id>
<eventType>illaccess</eventType>
<eventDescription>exception Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>videomismatch</id>

203
Intelligent Security API (Facial) Developer Guide

<eventType>videomismatch</eventType>
<eventDescription>exception Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>beep</id>
<notificationMethod>beep</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>badvideo</id>
<eventType>badvideo</eventType>
<eventDescription>exception Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>storageDetection-1</id>
<eventType>storageDetection</eventType>
<eventDescription>storageDetection Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList></EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>illegalParking-1</id>
<eventType>illegalParking</eventType>
<eventDescription>illegalParking Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>pedestrian-1</id>
<eventType>pedestrian</eventType>
<eventDescription>pedestrian Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>

204
Intelligent Security API (Facial) Developer Guide

<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>trafficAccident-1</id>
<eventType>trafficAccident</eventType>
<eventDescription>trafficAccident Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>construction-1</id>
<eventType>construction</eventType>
<eventDescription>construction Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>roadBlock-1</id>
<eventType>roadBlock</eventType>
<eventDescription>roadBlock Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>abandonedObject-1</id>
<eventType>abandonedObject</eventType>
<eventDescription>abandonedObject Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>

205
Intelligent Security API (Facial) Developer Guide

<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>parallelParking-1</id>
<eventType>parallelParking</eventType>
<eventDescription>parallelParking Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
<EventTrigger>
<id>trafficJam-1</id>
<eventType>trafficJam</eventType>
<eventDescription>trafficJam Event trigger Information</eventDescription>
<videoInputChannelID>1</videoInputChannelID>
<dynVideoInputChannelID>1</dynVideoInputChannelID>
<EventTriggerNotificationList>
<EventTriggerNotification>
<id>center</id>
<notificationMethod>center</notificationMethod>
<notificationRecurrence>beginning</notificationRecurrence>
</EventTriggerNotification>
</EventTriggerNotificationList>
</EventTrigger>
</EventTriggerList>

7.57 XML_EventTriggerNotification
Event linkage notification message in XML format
<EventTriggerNotification><!--opt-->
<id><!--required, xs:string, device ID--></id>
<notificationMethod>
<!--required, xs:string, linkage actions, opt="email,IM,IO,syslog,HTTP,FTP,beep,ptz,record, monitorAlarm, center,
LightAudioAlarm,focus,trace,cloud,SMS,whiteLight,audio,whiteLight,faceContrast"-->
</notificationMethod>
<notificationRecurrence>
<!--optional, xs:string, "beginning,beginningandend,recurring"-->

206
Intelligent Security API (Facial) Developer Guide

</notificationRecurrence>
<notificationInterval><!--dependent, xs:integer, unit: millisecond--></notificationInterval>
<outputIOPortID><!--dependent, xs:string, video output No., it is required only when notificationMethod is "IO"--></
outputIOPortID>
<dynOutputIOPortID><!--dependent, xs:string, dynamic video output No., it is required only when
notificationMethod is "IO"--></dynOutputIOPortID>
<videoInputID><!--dependent, xs:string, video input No., it is required only when notificationMethod is "record"--></
videoInputID>
<dynVideoInputID><!--dependent, xs:string, dynamic video input No., it is required only when notificationMethod is
"record"--></dynVideoInputID>
<ptzAction><!--dependent, it is required only when notificationMethod is "ptz"-->
<ptzChannelID><!--required, xs:string, PTZ channel ID--></ptzChannelID>
<actionName><!--required, xs:string, PTZ control type: "preset", "pattern", "patrol"--></actionName>
<actionNum><!--dependent, xs:integer></actionNum>
</ptzAction>
<WhiteLightAction><!--dependent, white light linkage parameters, this node is valid when notificationMethod is
"whiteLight"-->
<whiteLightDurationTime><!--required, xs:integer, white light flashing duration, it is between 1 and 60, unit:
second--></whiteLightDurationTime>
</WhiteLightAction>
<cellphoneNumber><!--dependent, xs:string, min="0" max="11",cellphone number--></cellphoneNumber-->
</EventTriggerNotification>

7.58 XML_EventTriggerNotificationList
EventTriggerNotificationList message in XML format
<EventTriggerNotificationList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<EventTriggerNotification/><!--opt, see details in the message of XML_EventTriggerNotification-->
</EventTriggerNotificationList>

See Also
XML_EventTriggerNotification

7.59 XML_EventTriggersCap
XML message about linkage capabilities of different alarm categories
<EventTriggersCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<DiskfullTriggerCap><!--optional, xs: EventTriggerCapType--></DiskfullTriggerCap>
<DiskerrorTriggerCap><!--optional, xs: EventTriggerCapType--></DiskerrorTriggerCap>
<NicbrokenTriggerCap><!--optional, xs: EventTriggerCapType--></NicbrokenTriggerCap>
<IpconflictTriggerCap><!--optional, xs: EventTriggerCapType--></IpconflictTriggerCap>
<IllaccesTriggerCap><!--optional, xs: EventTriggerCapType--></IllaccesTriggerCap>
<BadvideoTriggerCap><!--optional, xs: EventTriggerCapType--></BadvideoTriggerCap>
<VideomismatchTriggerCap><!--optional, xs: EventTriggerCapType--></VideomismatchTriggerCap>
<IOTriggerCap><!--optional, xs: EventTriggerCapType--></IOTriggerCap>
<LineDetectTriggerCap><!--optional, xs: EventTriggerCapType--></LineDetectTriggerCap>

207
Intelligent Security API (Facial) Developer Guide

<RegionEntranceTriggerCap><!--optional, xs: EventTriggerCapType--></RegionEntranceTriggerCap>


<RegionExitingTriggerCap><!--optional, xs: EventTriggerCapType--></RegionExitingTriggerCap>
<LoiteringTriggerCap><!--optional, xs: EventTriggerCapType--></LoiteringTriggerCap>
<GroupDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></GroupDetectionTriggerCap>
<RapidMoveTriggerCap><!--optional, xs: EventTriggerCapType--></RapidMoveTriggerCap>
<ParkingTriggerCap><!--optional, xs: EventTriggerCapType--></ParkingTriggerCap>
<UnattendedBaggageTriggerCap><!--optional, xs: EventTriggerCapType--></UnattendedBaggageTriggerCap>
<AttendedBaggageTriggerCap><!--optional, xs: EventTriggerCapType--></AttendedBaggageTriggerCap>
<FireDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></FireDetectionTriggerCap>
<FireDetectionCap><!--optional, xs: EventTriggerCapType--></FireDetectionCap>
<StorageDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></StorageDetectionTriggerCap>
<ShipsDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></ShipsDetectionTriggerCap>
<ThermometryCap><!--optional, xs: EventTriggerCapType--></ThermometryCap>
<VandalProofTriggerCap><!--optional, xs: EventTriggerCapType--></VandalProofTriggerCap>
<BlackListTriggerCap><!--opt, xs: EventTriggerCapType, configuration capability of blacklist arming linkage--></
BlackListTriggerCap>
<WhiteListTriggerCap><!--opt, xs: EventTriggerCapType, configuration capability of whitelist arming linkage--></
WhiteListTriggerCap>
<AllVehicleListTriggerCap><!--optional,xs:EventTriggerCapType, configuration capability of other list arming linkage--
></AllVehicleListTriggerCap>
<OtherVehicleListTriggerCap><!--optional,xs:EventTriggerCapType--></OtherVehicleListTriggerCap>
<PeopleDetectionTriggerCap><!--optional,xs:EventTriggerCapType--></PeopleDetectionTriggerCap>
<PIRAlarmCap><!--optional, xs: EventTriggerCapType--></PIRAlarmCap>
<TamperDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></TamperDetectionTriggerCap>
<DefocusDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></DefocusDetectionTriggerCap>
<FaceDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></FaceDetectionTriggerCap>
<SceneChangeDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></SceneChangeDetectionTriggerCap>
<VandalProofAlarmCap><!--optional, xs: EventTriggerCapType--></VandalProofAlarmCap>
<JudgmentTriggerCap><!--optional, xs: EventTriggerCapType--></JudgmentTriggerCap>
<FightingTriggerCap><!--optional, xs: EventTriggerCapType--></FightingTriggerCap>
<RisingTriggerCap><!--optional, xs: EventTriggerCapType--></RisingTriggerCap>
<DozingTriggerCap><!--optional, xs: EventTriggerCapType--></DozingTriggerCap>
<CountingTriggerCap><!--optional, xs: EventTriggerCapType--></CountingTriggerCap>
<VideoLossTriggerCap><!--optional, xs: EventTriggerCapType--></VideoLossTriggerCap>
<HideTriggerCap><!--optional, xs:EventTriggerCapType--></HideTriggerCap>
<AlarmInTriggerCap><!--optional, xs: EventTriggerCapType--></AlarmInTriggerCap>
<VehicleDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></VehicleDetectionTriggerCap>
<AudioExceptionCap><!--optional, xs: EventTriggerCapType--></AudioExceptionCap>
<FiledDetectTriggerCap><!--optional, xs: EventTriggerCapType--></FiledDetectTriggerCap>
<MotionDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></MotionDetectionTriggerCap>
<TemperatureCap><!--optional, xs: EventTriggerCapType--></TemperatureCap>
<IntelligentTriggerCap><!--optional, xs: EventTriggerCapType--></IntelligentTriggerCap>
<FaceContrastTriggerCap><!--optional, xs: EventTriggerCapType, face picture comparison alarm linkage--></
FaceContrastTriggerCap>
<PersonDensityDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></PersonDensityDetectionTriggerCap>
<PersonQueueDetectionTriggerCap><!--optional, xs: EventTriggerCapType, queue management alarm linkage--></
PersonQueueDetectionTriggerCap>
<HumanRecognitionTriggerCap><!--optional,xs: EventTriggerCapType--></HumanRecognitionTriggerCap>
<FaceSnapTriggerCap><!--optional, xs: EventTriggerCapType--></FaceSnapTriggerCap>
<isSupportWhiteLightAction>
<!--dependent, xs: boolean, see details in EventTriggerCapType, it is valid when isSupportWhiteLight is "true"-->
</isSupportWhiteLightAction>

208
Intelligent Security API (Facial) Developer Guide

<isSupportAudioAction>
<!--dependent, xs: boolean, see details in EventTriggerCapType, it is valid when isSupportBeep is "true"-->
</isSupportAudioAction>
<HFPDTriggerCap><!--optional, xs: EventTriggerCapType--></HFPDTriggerCap>
<MixedTargetDetectionCap><!--optional, xs: EventTriggerCapType--></MixedTargetDetectionCap>
<HVTVehicleDetectionTriggerCap><!--optional, xs: EventTriggerCapType--></HVTVehicleDetectionTriggerCap>
<VCATriggerCap><!--optional, xs: EventTriggerCapType--></VCATriggerCap>
<PIRCap><!--optional, xs: EventTriggerCapType--></PIRCap>
<IllegalParkingTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports illegal parking detection--></
IllegalParkingTriggerCap>
<PedestrianTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports pedestrian detection--></
PedestrianTriggerCap>
<TrafficAccidentTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports traffic accident detection--></
TrafficAccidentTriggerCap>
<ConstructionTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports construction detection--></
ConstructionTriggerCap>
<RoadBlockTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports roadblock detection--></
RoadBlockTriggerCap>
<AbandonedObjectTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports objects dropped down
detection--></AbandonedObjectTriggerCap>
<ParallelParkingTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports parallel parking detection--></
ParallelParkingTriggerCap>
<ParkingStateTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports parking space status detection,
currently this node is not supported--></ParkingStateTriggerCap>
<CongestionTriggerCap><!--optional, xs: EventTriggerCapType, whether it supports congestion detection--></
CongestionTriggerCap>
<IntersectionAnalysisCap><!--optional, xs: EventTriggerCapType, whether it supports intersection analysis--></
IntersectionAnalysisCap>
<ShipsFlowDetectionTriggerCap><!--optional,xs:EventTriggerCapType, ship flow detection--></
ShipsFlowDetectionTriggerCap>
<dredgerDetectionTriggerCap><!--optional,xs:EventTriggerCapType, dredger detection--></
dredgerDetectionTriggerCap>
<voltageInstableTriggerCap><!--optional,xs:EventTriggerCapType, supply voltage exception--></
voltageInstableTriggerCap>
<HighHDTemperatureTriggerCap><!--optional, xs:EventTriggerCapType, HDD high temperature detection--></
HighHDTemperatureTriggerCap>
<LowHDTemperatureTriggerCap><!--optional, xs:EventTriggerCapType, HDD low temperature detection--></
LowHDTemperatureTriggerCap>
<HDImpactTriggerCap><!--optional, xs:EventTriggerCapType, HDD impact detection--></HDImpactTriggerCap>
<HDBadBlockTriggerCap><!--optional, xs:EventTriggerCapType, HDD bad sector detection--></
HDBadBlockTriggerCap>
<SevereHDFailureTriggerCap><!--optional, xs:EventTriggerCapType, HDD severe fault detection--></
SevereHDFailureTriggerCap>
<HUMANATTRIBUTECap><!--optional, xs:EventTriggerCapType--></HUMANATTRIBUTECap>
<HumanAttributeTriggerCap><!--optional, xs:EventTriggerCapType, human body attribute--></
HumanAttributeTriggerCap>
<BlackListFaceContrastTriggerCap><!--opt, xs:EventTriggerCapType, alarm linkage capability of blacklist face
comparison--></BlackListFaceContrastTriggerCap>
<FaceLibTriggerCap><!--optional, xs:EventTriggerCapType--></FaceLibTriggerCap>
<SafetyHelmetDetectionTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of hard hat
detection--></SafetyHelmetDetectionTriggerCap>
<VibrationDetectionTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of vibration detection--

209
Intelligent Security API (Facial) Developer Guide

></VibrationDetectionTriggerCap>
<RadarLineDetectionTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of radar line crossing
detection--></RadarLineDetectionTriggerCap>
<RadarFieldDetectionTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of radar intrusion
detection--></RadarFieldDetectionTriggerCap>
<HBDLibTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of human body picture library--></
HBDLibTriggerCap>
<FaceThermometryCap><!--optional, xs:EventTriggerCapType--></FaceThermometryCap>
<NoMaskDetectionTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of no wearing mask
detection--></NoMaskDetectionTriggerCap>
<TMPATriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of temperature measurement pre-
alarm--></TMPATriggerCap>
<FireEscapeDetectionTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of fire engine access
detection--></FireEscapeDetectionTriggerCap>
<TakingElevatorDetectionTriggerCap><!--optional, xs:EventTriggerCapType, alarm linkage capability of elevator
detection--></TakingElevatorDetectionTriggerCap>
<RuleTriggerCap><!--optional, linkage capability of rule triggered alarm -->
<isSupportCityManagement>
<!--optional, xs:boolean, whether the city management supports setting linkage actions by area; if supports, the
value is true, otherwise, this node will not be returned-->
</isSupportCityManagement>
</RuleTriggerCap>
</EventTriggersCap>

See Also
XML_EventTriggerCapType

7.60 XML_FaceAppendData
FaceAppendData message in XML format
<FaceAppendData version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<bornTime><!--optional, birth date based on ISO 8601 standard, its format is YYYY-MM-DD--></bornTime>
<name><!--required, string type, person name, whose length is between 1 bit and 32 bits--></name>
<sex><!--optional, string type, gender: "male,female"--></sex>
<province><!--optional, string type, province--></province>
<city><!--optional, string type, city--></city>
<certificateType><!--optional, string type, certificate types: "officerID","ID"-identity card, "passportID", and "other"--
></certificateType>
<certificateNumber>
<!--depend, string type, certificate No., its length varies with the certificate type; for "officerID", "ID", "other", the
maximum No. length is between 8 bits and 18 bits; for "passportID", the maximum No. length is between 8 bits and 32
bits-->
</certificateNumber>
<PersonInfoExtendList><!--optional, custom extension information list of person-->
<PersonInfoExtend>
<id><!--required, string type, person extension information No., which starts from 1--></id>
<enable><!--required, boolean type, whethe rto enable person information extension--></enable>
<name><!--optional, string type, name of person extension information--></name>
<value><!--optional, string type, details of person extension information--></value>

210
Intelligent Security API (Facial) Developer Guide

</PersonInfoExtend>
</PersonInfoExtendList>
<caseInfo><!--optional, string type, case information, the maximum information length is between 1 bit and 64 bits---
></caseInfo>
<customHumanID><!--optional, string type, custom face picture ID, the maximum ID length is between 1 bit and 64
bits--></customHumanID>
<phoneNumber><!--optional, string type, phone number, whose lenth is between 1 bit and 64 bits--></
phoneNumber>
<RegionCoordinatesList><!--optional, face target for data modeling-->
<RegionCoordinates><!--required, coordinate list-->
<positionX><!--required, integer type, X-coordinate--></positionX>
<positionY><!--required, integer type, Y-coordinate--></positionY>
</RegionCoordinates>
</RegionCoordinatesList>
</FaceAppendData>

7.61 XML_FaceContrast
FaceContrast message in XML format
<FaceContrast version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id><!--req, xs:integer, No., starts from 1--></id>
<enable><!--opt,xs:boolean, whether to enable face picture comparison, "true,false"--></enable>
<faceContrastType>
<!--rep,xs: string, alarm types: "faceContrast"-face picture comparison alarm, "blacklistFaceContrast"-face matched
alarm, "whitelistFaceContrast"-stranger detection alarm (mismatched)-->
</faceContrastType>
<thresholdValue>
<!--opt,xs:integer, similarity threshold for comparison, which is between 0 and 100, the higher the threshold, the
more accurate the comparison is-->
</thresholdValue>
<FDLibList><!--opt, face picture libraries that linked with channels-->
<FDLib>
<id><!--req,ro,xs:integer,No.--></id>
<FDID><!--req,ro,xs:string, face picture library ID--></FDID>
</FDLib>
</FDLibList>
<faceSnapDataUpload><!--opt,xs:boolen, "true,false", def="true"--></faceSnapDataUpload>
<contrastFailureAlarmUpload>
<!--opt,xs:boolean, "true,false", def="true", whether to upload face picture comparison failed alarm-->
</contrastFailureAlarmUpload>
<alarmOutType>
<!--opt,xs:string,opt="off,pluses", alarm output types: off, pulse-->
</alarmOutType>
<plusesTime>
<!--dep, pulse triggered time, it is valid when <alarmOutType> is "pluses", xs:integer, min="100", max="900", unit:
ms-->
</plusesTime>
<QuickContrast><!--opt, fast face picture comparison-->
<enabled><!--req,xs:boolean, "true,false", whether to enable fast face picture comparison--></enabled>

211
Intelligent Security API (Facial) Developer Guide

<threshold><!--opt, xs:integer, face picture comparison threshold--></threshold>


<snapTime><!--req, xs:float, maximum capture duration, unit: s--></snapTime>
</QuickContrast>
</FaceContrast>

Remarks
<plusesTime>
Pulse triggered time, this node is mainly used for swing barrier, if the pulse is triggered for
multiple times in a specific time period, only one alarm will be uploaded.
<QuickContrast>
Fast face picture comparison. If it is enabled, the device will start comparing the captured face
picture whose face score is higher than the configured threshold, instead of filtering the
captured picture with highest face score for comparison.
<threshold>
Face picture comparison threshold, when the score of the captured face picture is higher than
the threshold, the device will start the comparison.
<snapTime>
Maximum capture duration. The device will keep capturing until the face score of captured
picture is higher than the configured threshold, if the face scores of all pictures captured in the
duration are lower than the threshold, a face picture with highest score in the captured pictures
will be selected for comparison.

7.62 XML_FaceContrastCap
FaceContrastCap message in XML format
<FaceContrastCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<enable opt="true,false">
<!--opt,xs:boolean, whether to enable face picture comparison-->
</enable>
<faceContrastType opt="faceContrast, blacklistFaceContrast, whitelistFaceContrast ">
<!--rep,xs: string, alarm types: face picture comparison alarm, face matched alarm, stranger detection alarm
(mismatched)-->
</faceContrastType>
<thresholdValue min="" max="">
<!--opt,xs:integer, similarity threshold for comparison, which is between 0 and 100, the higher the threshold, the
more accurate the comparison is-->
</thresholdValue>
<SupportFDLibList>
<!--opt,xs:boolean, linked face picture libraries of the camera, support-true, if support, return "true", otherwise, this
node will not be returned-->
</SupportFDLibList>
<faceSnapDataUpload opt="true,false"/><!--opt, upload captured face picture-->
<contrastFailureAlarmUpload opt="true,false">
<!--opt,xs:boolean, def="true", whether to upload face picture comparison failed alarm-->

212
Intelligent Security API (Facial) Developer Guide

</contrastFailureAlarmUpload>
<alarmOutType opt= "off,pluses"><!--opt,xs:string, alarm output mode: off, pulse--></alarmOutType>
<plusesTime min="100" max="900">
<!--dep, pulse triggered time, it is valid when <alarmOutType> is "pluses", xs:integer, unit: ms-->
<plusesTime>
<QuickContrast><!--opt, fast face picture comparison-->
<enabled opt="true,false" def="false">
<!--req,xs:boolean, "true,false", whether to enable fast face picture comparison-->
</enabled>
<threshold min="20" max="80" def="60"> <!--opt, xs:integer, face score threshold--></threshold>
<snapTime min="0.0" max="300.0" def="2.0">
<!--req, xs:float, maximum target capture time, unit: s-->
</snapTime>
</QuickContrast>
</FaceContrast>

Remarks
<plusesTime>
Pulse triggered time, this node is mainly used for swing barrier, if the pulse is triggered for
multiple times in a specific time period, only one alarm will be uploaded.
<QuickContrast>
Fast face picture comparison. If it is enabled, the device will start comparing the captured face
picture whose face score is higher than the configured threshold, instead of filtering the
captured picture with highest face score for comparison.
<threshold>
Face picture comparison threshold, when the score of the captured face picture is higher than
the threshold, the device will start the comparison.
<snapTime>
Maximum capture duration. The device will keep capturing until the face score of captured
picture is higher than the configured threshold, if the face scores of all pictures captured in the
duration are lower than the threshold, a face picture with highest score in the captured pictures
will be selected for comparison.
Example
FaceContrastCap Message Example for Front-End Device
<FaceContrastCap version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<enable opt="true,false"></enable>
<faceContrastType opt="faceContrast"></faceContrastType>
<faceSnapDataUpload opt="true,false"></faceSnapDataUpload>
<AttendanceSaveEnable opt="true,false"></AttendanceSaveEnable>
</FaceContrastCap>

Example
FaceContrastCap Message Example for Rear-End Device

213
Intelligent Security API (Facial) Developer Guide

<FaceContrastCap version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">


<enable opt="true,false" />
<faceContrastType opt="faceContrast,whitelistFaceContrast" />
<thresholdValue min="0" max="100" />
<SupportFDLibList>true</SupportFDLibList>
<contrastFailureAlarmUpload opt="true,false" />
<alarmOutType opt="off,pluses" />
<plusesTime min="100" max="900" />
<isSupportSingleThresholdValue>true</isSupportSingleThresholdValue>
<contrastSuccessAlarmUpload opt="true,false" />
<isSupportFaceScore>true</isSupportFaceScore>
<isSupportCustomFaceLibID>true</isSupportCustomFaceLibID>
</FaceContrastCap>

7.63 XML_FaceContrastList
FaceContrastList message in XML format.
<FaceContrastList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<FaceContrast/><!--see XML_FaceContrast for details-->
</FaceContrastList>

See Also
XML_FaceContrast

7.64 XML_FaceContrastScheduleList
FaceContrastScheduleList message in XML format
<FaceContrastScheduleList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<Schedule/><!--opt, see details in the message XML_Schedule-->
</FaceContrastScheduleList>

See Also
XML_Schedule

7.65 XML_FaceContrastTargetsList
FaceContrastTargetsList message in XML format
<FaceContrastTargetsList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<FaceContrastTarget>
<Rect>
<height><!--req-xs:float--></height>
<width><!--req-xs:float--></width>

214
Intelligent Security API (Facial) Developer Guide

<x><!--req-xs:float--></x>
<y><!--req-xs:float--></y>
</Rect>
<modeData>
<!--xs:string, target modeling data, during transmission process, the binary non-modeling data will be encrypted by
Base64 method-->
</modeData>
</FaceContrastTarget>
</FaceContrastTargetsList >

7.66 XML_faceRule
faceRule message in XML format
<FaceRule version="1.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<enabled><!--req, xs:string "true,false"--></enabled>
<FaceDetectionRegion>
<RegionCoordinatesList>
<RegionCoordinates><!--req-->
<positionX><!--req, xs:integer, X-coordinate--></positionX>
<positionY><!--req, xs:integer, Y-coordinate--></positionY>
</RegionCoordinates>
</RegionCoordinatesList>
</FaceDetectionRegion>
<InterPupileRegion>
<positionX><!--req, xs:integer, X-coordinate--></positionX>
<positionY><!--req, xs:integer, Y-coordinate--></positionY>
<width><!--req, xs: integer, pupil distance--></width>
<height><!--req, xs: integer--></height>
</InterPupileRegion>
</FaceRule>

7.67 XML_FaceSnapScheduleList
FaceSnapScheduleList message in XML format
<FaceSnapScheduleList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<Schedule/><!--opt, arming schedule, see details in XML_Schedule-->
</FaceSnapScheduleList>

See Also
XML_Schedule

7.68 XML_FCSearchDescription
FCSearchDescription message in XML format

215
Intelligent Security API (Facial) Developer Guide

<FCSearchDescription version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">


<searchID>
<!--required, xs:string, search ID, which is used to confirm the upper-level platform or system. If the platform or
system are same during two times of search, the search history will be recorded in the memory for next fast search-->
</searchID>
<searchResultPosition><!--required, xs: integer, start position of search results--></searchResultPosition>
<maxResults><!--required, xs: integer, maximum number of search results, up to 500 results are allowed for one
search--></maxResults>
<snapStartTime>
<!--optional, xs: ISO8601 time, start time of capture, which is used for dual VCA search and searching by picture-->
</snapStartTime>
<snapEndTime>
<!--depend, xs:ISO8601 time, end time of capture, which is used for dual VCA search and searching by picture-->
</snapEndTime>
<faceMatchInfoEnable>
<!--optional, "true,false", whether to enable upload matched information only-->
</faceMatchInfoEnable>
<monitorName>
<!--optional, xs:string, camera name-->
</monitorName>
<similarity>
<!--optional, xs:float, similarity, which is used for dual-VCA search, value range: [1.0,100.0]-->
</similarity>
<eventType>
<!--optional, xs: string, event types: "unlimit"-unlimited, "faceContrast"-face picture comparison,
"whiteFaceContrast"-stranger detection, "faceCapture"-face picture capture, "faceContrastSuccess"-face comparison
failed-->
</eventType>
<FaceModeList><!--optional, add when searching by picture-->
<FaceMode>
<ModeInfo><!--optional, this node is required when searching by picture-->
<similarity><!--optional, xs: float, value range: [0.0,100.0]--></similarity>
<modeData>
<!--optional, xs: string, target model data, the binary none-modeling data will be encrypted by base64 during the
transmission-->
</modeData>
</ModeInfo>
</FaceMode>
</FaceModeList>
<PictureInfoList><!--optional, add when searching by picture-->
<PictureInfo>
<FDID><!--required, xs:string, face picture library ID--></FDID>
<PID><!--required, xs:string, face picture ID--></PID>
</PictureInfo>
</PictureInfoList>
<ChannelList><!--optional, channel list for search, this node is valid only when the search URL does not contain
channel No.-->
<Channel>
<channelID><!--required, xs:integer, channel No.--></channelID>
</Channel>
</ChannelList>
<totalSearchResults>

216
Intelligent Security API (Facial) Developer Guide

<!--optional, xs:integer, the total number of results in a single search, default value: 10000-->
</totalSearchResults>
<FDIDList><!--opt-->
<FDID><!--xs:string, ID of face picture library for search--></FDID>
</FDIDList>
<sortord><!--xs:string,"similarity,time"--></sortord>
<sex><!--optional, xs: string, "male,female"--></sex>
<glass><!--optional, xs: string, "yes,no"--></glass>
<smile><!--optional, xs: string, "yes,no"--></smile>
<high_risk_group><!--optional, xs: string, "yes,no"--></high_risk_group>
<importLib><!--optional, xs: string, "yes,no"--></importLib>
<CustomFaceLibIDList><!--opt-->
<customFaceLibID><!--optional, xs: string--></customFaceLibID>
</CustomFaceLibIDList>
<temperatureStatus><!--optional, xs:string,"all,normal,abnormal", temperature status; corresponds to the node
isAbnomalTemperature in returned message --></temperatureStatus>
</FCSearchDescription>

Example
FCSearchDescription Message Example
<FCSearchDescription>
<searchID>C7E7207E-8030-0001-9072-8F39185517D9</searchID>
<snapStartTime>2018-03-09T00:00:00Z</snapStartTime>
<snapEndTime>2018-03-09T23:59:59Z</snapEndTime>
<maxResults>500</maxResults>
<searchResultPosition>1</searchResultPosition>
</FCSearchDescription>

7.69 XML_FCSearchResult
FCSearchResult message in XML format
<FCSearchResult version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<searchID>
<!--required, xs:string, search ID, which is used to confirm the upper-level platform or system. If the platform or
system are same during two times of search, the search history will be recorded in the memory for next fast search-->
</searchID>
<responseStatus><!--required, xs:string, "true,false"--></responseStatus>
<responseStatusStrg>
<!--required, xs:string, "OK"-search completed, "NO MATCHES"-search failed, "MORE"-searching-->
</responseStatusStrg>
<numOfMatches>
<!--requried, xs: integer, number of returned results-->
</numOfMatches>
<totalMatches>
<!--requried, xs: integer, number of total matched results-->
</totalMatches>
<progress>
<!--optional, xs: integer, search progress, range: [0,100], only when the progress equals to "100', you can get the
data of MatchList-->

217
Intelligent Security API (Facial) Developer Guide

</progress>
<MatchList><!--opt-->
<MatchElement><!--list-->
<snapPicURL><!--optional, xs:string, captured background picture URL--></snapPicURL>
<snapTime><!--optional, xs:datetime, ISO8601 time, picture captured time--></snapTime>
<facePicURL><!--optional, xs:string, face thumbnail URL--></facePicURL>
<FaceMatchInfoList><!--opt-->
<FaceMatchInfo><!--list-->
<FDID><!--required, ro, xs:string, face picture library ID--></FDID>
<FDname><!--opt,ro,xs:string, face picture library name--></FDname>
<thresholdValue><!--optional, xs:integer, threshold, range: [0,100]; the larger the threshold the higher the
accuracy"--></thresholdValue>
<bornTime><!--optional, xs:date,ISO8601 time--></bornTime>
<name><!--optional, xs:string--></name>
<sex><!--optional, xs:"male,female"--></sex>
<province><!--optional, xs:string--></province>
<city><!--optional, xs:string--></city>
<certificateType><!--optional, xs:string, certificate types: "officerID","ID"-identity card, "passportID", and
"other"--></certificateType>
<certificateNumber><!--optional, xs:string,证件号--></certificateNumber>
<picURL><!--required, xs:string, matched picture URL--></picURL>
<PID><!--required, xs:string--></PID>
<PersonInfoExtendList><!--opt-->
<PersonInfoExtend><!--list-->
<id><!--required, xs:integer, ID of person extended information, starts from 1--></id>
<enable><!--required, xs:boolean, enable person extended information--></enable>
<name><!--optional, xs:string, person extended information name--></name>
<value><!--optional, xs:string, person extended information content--></value>
</PersonInfoExtend>
</PersonInfoExtendList>
<phoneNumber><!--optional, xs:string--></phoneNumber>
<caseInfo><!--optional, xs:string, case information--></caseInfo>
<similarity><!--optional, xs:float, range: [0.0,100.0], face picture matching degree--></similarity>
<modelStatus><!--optional, xs:string, modeling status: "modeling" (modeled), "unmodeled", "modelingFailed"--
></modelStatus>
<ModelingStatus>
<FDID><!--required, xs:string, face picture library ID--></FDID>
<PID><!--required, xs:string, face picture ID--></PID>
<name><!--required, xs:string, picture name--></name>
<status><!--required, xs:string, "success,failed,none"--></status>
<reason><!--depend, it is valid when the value of status is failed-->
<!--optional, xs:string, "noface"-no face in the picture, "faceSizeSmall"-picture size is too small, "shadeFace"-
face is tempered, "unknow", "imageURLDownloadFailed"-picture download failed, "noJpgPicture"-picture is not in JPG
format, "errorPictureResolution"-invalid picture resolution, "faceSizeBig"-picture size is too large, "diskError"-disk
error, "diskFull"-disk full, "analysisFailed"-analysis failed, "multipleFaces"-there are multiple faces--></reason>
<customHumanID><!--optional, xs:string, minLen=32, custom person ID--></customHumanID>
<customFaceLibID><!--optional, xs:string, minLen=32, custom face picture library ID--></customFaceLibID>
<modeData><!--xs:string, target modeling data, during transmission process, the binary non-modeling data will
be encrypted by Base64 method--></modeData>
</ModelingStatus>
</FaceMatchInfo>
</FaceMatchInfoList>

218
Intelligent Security API (Facial) Developer Guide

<monitorName><!--optional, xs:string, camera information--></monitorName>


<glass><!--optional, xs:string,"unknown,yes,no"--></glass>
<smile><!--optional, xs:string,"unknown,yes,no"--></smile>
<high_risk_group><!--optional, xs:string,"unknown,yes,no"--></high_risk_group>
<similarity><!--optional, xs:float[0.0,100.0]--></similarity>
<Rect><!--optional, coordinates of matched face picture thumbnail-->
<height><!--required, xs:float--></height>
<width><!--required, xs:float--></width>
<x><!--required, xs:float, origin of left-upper corner--></x>
<y><!--required, xs:float, origin of left-upper corner--></y>
</Rect>
<channelID><!--optional, xs:integer, channel No.--></channelID>
<name><!--optional, xs:string, captured picture name--></name>
<sex><!--optional, xs:string, gender: "unknown,male,female"--></sex>
<ageGroup><!--optional, xs:string, age--></ageGroup>
<mask><!--optional, xs:string, wearig a mask or not--></mask>
<imageQuality><!--optional, xs:integer, image quality--></imageQuality>
<faceExpression><!--optional, xs:string, face expression--></faceExpression>
<contrastStatus><!--optional, xs:boolean, comparison result--></contrastStatus>
<currTemperature><!--optional, xs:float, face temperature, range: [-20.0,150.0]℃, corrects to one decimal point--
></currTemperature>
<isAbnomalTemperature><!--optional, xs:boolean, whether the face temperature is abnormal or not: "true"-yes,
"false"-no, this node does not exist, if not supports--></isAbnomalTemperature>
<thermometryUnit><!--optional, xs:string, thermography unit: "celsius,fahrenheit,kelvin"--></thermometryUnit>
</MatchElement>
</MatchList>
</FCSearchResult>

Example
FCSearchResult Message Example
<FCSearchResult version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<searchID>C7E7207E-8030-0001-9072-8F39185517D9</searchID>
<responseStatus>true</responseStatus>
<responseStatusStrg>MORE</responseStatusStrg>
<numOfMatches>500</numOfMatches>
<totalMatches>2624</totalMatches>
<MatchList>
<MatchElement>
<snapPicURL>http://10.16.96.29:80/picture/Streaming/tracks/103/?
name=ch0001_01000000000016615680000402008&amp;size=402008</snapPicURL>
<snapTime>2018-03-09T05:54:28+08:00</snapTime>
<facePicURL>http://10.16.96.29:80/picture/Streaming/tracks/103/?
name=ch0001_01000000000016606464000091240&amp;size=91240</facePicURL>
<glass>yes</glass>
<smile>no</smile>
<Rect>
<height>0.193000</height>
<width>0.109000</width>
<x>0.160000</x>
<y>0.278000</y>
</Rect>

219
Intelligent Security API (Facial) Developer Guide

<channelID>1</channelID>
<name>ch0001_01000000000016615680000402008</name>
<sex>male</sex>
<ageGroup>young</ageGroup>
<mask>no</mask>
</MatchElement>
<MatchElement>
<snapPicURL>http://10.16.96.29:80/picture/Streaming/tracks/103/?
name=ch0001_01000000000016566630400397516&amp;size=397516</snapPicURL>
<snapTime>2018-03-09T05:49:41+08:00</snapTime>
<facePicURL>http://10.16.96.29:80/picture/Streaming/tracks/103/?
name=ch0001_01000000000016558284800082488&amp;size=82488</facePicURL>
<glass>yes</glass>
<smile>no</smile>
<Rect>
<height>0.193000</height>
<width>0.109000</width>
<x>0.043000</x>
<y>0.444000</y>
</Rect>
<channelID>1</channelID>
<name>ch0001_01000000000016566630400397516</name>
<sex>male</sex>
<ageGroup>young</ageGroup>
<mask>no</mask>
</MatchElement>

</MatchList>
</FCSearchResult>

7.70 XML_FDCoverInfo
FDCoverInfo message inXML format
<FDCoverInfo version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<coverNumber>
<!--opt,xs:integer, get the number of overwritten face pictures in a specific face picture library--->
</coverNumber>
</FDCoverInfo>

7.71 XML_FDLibBaseCfg
FDLibBaseCfg message in XML format
<FDLibBaseCfg version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id><!--req,xs:integer,number of items in the list, which starts from 1--></id>
<FDID><!--opt,xs:string, face picture library ID--></FDID>
<name><!--opt,xs:string, face picture library name--></name>
<thresholdValue>

220
Intelligent Security API (Facial) Developer Guide

<!--opt,xs:integer, similarity threshold for comparison, which is between 0 and 100, the higher the threshold, the
more accurate the comparison is-->
</thresholdValue>
<customInfo><!--opt,xs:string--></customInfo>
<customFaceLibID>
<!--opt,xs:string, a face picture library ID customized by central management system, which should be linked with
FDID by the device, it is read only, and it can be deleted but cannot be edited-->
</customFaceLibID>
<faceLibType>
<!--opt,ro,xs:string, opt="ordinary,private,stranger", face picture library type: "ordinary"-ordinary library, "private"-
private library, "stranger"-stranger library-->
</faceLibType>
</FDLibBaseCfg>

Example
FDLibBaseCfg Message Example for Front-End Devices
<FDLibBaseCfg version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>1</id>
<FDID>1</FDID>
<name>test</name>
<thresholdValue>70</thresholdValue>
<customInfo />
<customFaceLibID />
</FDLibBaseCfg>

Example
FDLibBaseCfg Message Example for Rear-End Devices
<FDLibBaseCfg version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>1</id>
<FDID>9DDD24375C1143629E6EDE0496B3D948</FDID>
<name>cy1</name>
<faceLibType>ordinary</faceLibType>
</FDLibBaseCfg>

7.72 XML_FDLibBaseCfgList
FDLibBaseCfgList message in XML format
<FDLibBaseCfgList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<FDLibBaseCfg/><!--see
XML_FDLibBaseCfg
for details-->
</FDLibBaseCfgList>

Example
FDLibBaseCfgList Message Example for Front-End Devices
<FDLibBaseCfgList version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<FDLibBaseCfg>

221
Intelligent Security API (Facial) Developer Guide

<id>1</id>
<FDID>1</FDID>
<name>Test</name>
<thresholdValue>70</thresholdValue>
<customInfo />
<customFaceLibID />
</FDLibBaseCfg>
<FDLibBaseCfg>
<id>2</id>
<FDID>2</FDID>
<name>Test Library 1</name>
<thresholdValue>100</thresholdValue>
<customInfo>Test</customInfo>
<customFaceLibID>297edeaa61d20c990161d21456580005</customFaceLibID>
</FDLibBaseCfg>
<FDLibBaseCfg>
<id>3</id>
<FDID>3</FDID>
<name>Test Library 2</name>
<thresholdValue>100</thresholdValue>
<customInfo />
<customFaceLibID>8a8606ef61f9f7b00161f9fdd0050000</customFaceLibID>
</FDLibBaseCfg>
</FDLibBaseCfgList>

Example
FDLibBaseCfgList Message Example for Rear-End Devices
<FDLibBaseCfgList version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<FDLibBaseCfg>
<id>1</id>
<FDID>9DDD24375C1143629E6EDE0496B3D948</FDID>
<name>cy1</name>
<faceLibType>ordinary</faceLibType>
</FDLibBaseCfg>
<FDLibBaseCfg>
<id>2</id>
<FDID>55869AFEA1E840958120C97054720372</FDID>
<name>sdk</name>
<faceLibType>ordinary</faceLibType>
</FDLibBaseCfg>
</FDLibBaseCfgList>

7.73 XML_FDLibCap
FDLibCap message in XML format
<FDLibCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<CreateFDLibList size="">
<CreateFDLib>
<id min="" max=""><!--required, xs:integer, number of items in the list, which starts from 1--></id>

222
Intelligent Security API (Facial) Developer Guide

<name min="" max=""><!-- opt, xs:string, face picture library name--></name>


<thresholdValue min="" max="">
<!--optional, xs:integer, similarity threshold for comparison, which is between 0 and 100,the higher the
threshold, the more accurate the comparison is-->
</thresholdValue>
<customInfo min="" max=""><!--optional, xs:string--></customInfo>
<faceDataMax min="" max="">
<!--optional, xs:integer, maximum number of face data items can be supported in the face picture library-->
</faceDataMax>
<customFaceLibID min="0" max="64"> <!--optional, xs:string, custom face picture library ID--></customFaceLibID>
<PersonInfoExtendList size=""><!--opt-->
<PersonInfoExtend><!--list-->
<id min="" max=""><!--required, xs:integer, ID of person extended information, starts from 1--></id>
<enable><!--required, xs:boolean, enable person extended information--></enable>
<name min="" max=""><!--optional, xs:string, extended information name--></name>
<value min="" max=""><!--optional, xs:string, extended information content--></value>
</PersonInfoExtend>
</PersonInfoExtendList>
<indentityKey min="0" max="64"><!--optional, xs:string, secret key of private library--></indentityKey>
<autoUpdata opt="true,false"/><!--optional, xs:boolean, whether to enable automatic updating background
picture of face picture library-->
<qualityThreshold min="0" max="100"/><!--optional, xs:integer, picture quality threshold, range: [0,100], default
value: 50; it is valid only when the value of autoUpdata is true-->
<importFDThreshold min="0" max="100"/><!--optional, xs:integer, similarity threshold, default value: 40; it is valid
only when the value of autoUpdata is true-->
<strangerLibNum min="1" max="1"><!--optional, xs:string, the number of stranger libraries--></strangerLibNum>
</CreateFDLib>
</CreateFDLibList>
<FaceAppendData>
<bornTime><!--optional, xs:ISO8601 time--></bornTime>
<name min="" max=""><!--optional, xs:string--></name>
<sex><!--optional, xs:string, gender, value: "male" or "female"--></sex>
<province><!--optional, xs:string--></province>
<city><!--optional, xs:string--></city>
<certificateType>
<!--optional, xs:string,certificate types, value: "officerID", "ID", "passportID", "other"-->
</certificateType>
<certificateNumber min="1" max="32"><!--dep,xs:string, certificate No.--></certificateNumber>
<PersonInfoExtendList size=""><!--opt-->
<PersonInfoExtend><!--list-->
<id min="" max=""><!--required, xs:integer, ID of person extended information, starts from 1--></id>
<enable><!--required, xs:boolean, enable person extended information--></enable>
<name min="" max=""><!--optional, xs:string, extended information name--></name>
<value min="" max=""><!--optional, xs:string, extended information content--></value>
</PersonInfoExtend>
</PersonInfoExtendList>
<isSupportPhoneNumber><!--optional, xs:boolean--></isSupportPhoneNumber>
</FaceAppendData>
<FDSearchDescription>
<FDID><!--optional, xs:string, face picture library ID--></FDID>
<startTime><!--optional, xs:ISO8601 time--></startTime>
<endTime><!--dep,xs:ISO8601 time--></endTime>

223
Intelligent Security API (Facial) Developer Guide

<name min="" max=""><!--optional, xs:string--></name>


<sex><!--optional, xs:string, gender, value: "male", "female"--></sex>
<province><!--optional, xs:string--></province>
<city><!--optional, xs:string--></city>
<certificateType>
<!--optional, xs:string, certificate types, value: "officerID", "ID", "passportID", "other"-->
</certificateType>
<certificateNumber min="1" max="32"><!--dep,xs:string, certificate No.--></certificateNumber>
<FaceModeCap><!--optional, it is valid when searching picture by picture-->
<FaceMode>
<similarity min=0.0 max=100.0><!--optional, xs:float[0.0,100.0]--></similarity>
</FaceMode>
<maxResultNum>
<!--optional, xs:integer, the number of returned results; to improve the search efficiency, you can limit the
number of search samples and results-->
</maxResultNum>
</FaceModeCap>
<modelStatus opt="modeling,unmodeled,modelingFailed">
<!--optional, xs:string, modeling status: "modeling" (modeled), "unmodeled", "modelingFailed"-->
</modelStatus>
<customFaceLibID min="0" max="64"><!--optional, xs:string--></customFaceLibID>
<indentityKey min="0" max="64"><!--optional, xs:string, secret key of private library--></indentityKey>
<occurrences min="1" max="30"><!--optional, xs:integer, frequency--></occurrences>
<occurrencesSearchType opt="greaterThanOrEqual,lessThan,equal">
<!--optional, xs:string, frequency search type: "greaterThanOrEqual"-larger than or equal to, "lessThan"-less than,
"equal"-equal to-->
</occurrencesSearchType>
</FDSearchDescription>
<isSuportAnalysisFace>
<!--optional, xs:boolean, value: "false"-not support, "true"-support-->
</isSuportAnalysisFace>
<isSuportFDLibImpEmp>
<!--optional, xs:boolean, whether support importing or exporting pictures to/from the face picture library, value:
"false"-not support, "true"-support-->
</isSuportFDLibImpEmp>
<isSuportFCSearch><!--optional, xs:boolean, value: "false"-not support, "true"-support--></isSuportFCSearch>
<FDLibType opt="faceContrast, blacklistFaceContrast, whitelistFaceContrast ">
<!—rep, xs: string, face picture comparison alarm types-->
</FDLibType>
<isSupportFDLibEachImport>
<!--optional, xs:boolean, whether support importing pictures of a face picture library to another library, value:
"false"-not support, "true"-support-->
</isSupportFDLibEachImport>
<FCSearchDescription>
<snapStartTime><!--optional, xs:ISO8601 time--></snapStartTime>
<snapEndTime><!--dependent,xs:ISO8601 time--></snapEndTime>
<faceMatchInfoEnable opt="true,false">
<!--,xs:boolean, whether to only upload the face matched alarm information-->
</faceMatchInfoEnable>
<monitorName min="" max=""><!--optional, xs:string, camera name--></monitorName>
<similarity min="0.0" max="100.0"><!--optional, xs: float, similarity--></similarity>
<eventType opt="unlimit,faceContrast,whiteFaceContrast,faceCapture,faceContrastFailure">

224
Intelligent Security API (Facial) Developer Guide

<!--optional, xs:string, event types: "unlimit"-unlimited, "faceContrast"-face picture comparison,


"whiteFaceContrast"-stranger detection alarm, "faceCapture"-face picture capture, "faceContrastSuccess"-face
comparison failed-->
</eventType>
<FaceModeCap><!--optional, it is valid when searching by face picture-->
<FaceMode>
<similarity min="0.0" max="100.0"><!--optional, xs:float[0.0,100.0]--></similarity>
</FaceMode>
<maxResultNum>
<!--optional, xs:integer, the number of returned results; to improve the search efficiency, you can limit the
number of search samples and results-->
</maxResultNum>
</FaceModeCap>
<PictureSearchCap><!--optional, it is returned when searching by picture ID-->
<maxSearchPictureNum min="1" max="1">
<!--required, xs:integer, maximum number of pictures can be searched-->
</maxSearchPictureNum>
</PictureSearchCap>
<isSupportMultiChannelSearch>
<!--optional, xs:boolean, whether support searching in multiple channels-->
</isSupportMultiChannelSearch>
<isSupportTotalSearchResult>
<!--optional, xs:boolean, whether support setting limitation for the number of result items in one search-->
</isSupportTotalSearchResult>
<temperatureStatus opt="all,normal,abnormal"><!--optional, xs:string, temperature status: "all, normal,
abnormal"--></temperatureStatus>
</FCSearchDescription>
<isSupportFDSearchDataPackage>
<!--optional, xs:boolean, whether support packaging the data in the face picture library-->
</isSupportFDSearchDataPackage>
<isSupportFCSearchDataPackage>
<!--optional, xs:boolean, whether support packaging search results-->
</isSupportFCSearchDataPackage>
<maxFCSearchDataPackageNum>
<!--optional, xs:integer, maximum number of search result packets-->
</maxFCSearchDataPackageNum>
<isSupportFDExecuteControl>
<!--optional, xs:boolean, whether support arming the face picture library-->
</isSupportFDExecuteControl>
<isSupportManualModeling></isSupportManualModeling>
<isSupportSingleManualModeling></isSupportSingleManualModeling>
<isSupportRangeManualModeling></isSupportRangeManualModeling>
<isSupportSingleManualModelingSearch></isSupportSingleManualModelingSearch>
<isSupportRangeManualModelingSearch></isSupportRangeManualModelingSearch>
<isSupportModelingStatusSearch></isSupportModelingStatusSearch>
<Reboot><!--optional, after editing the following parameters, reboot is required to take effect-->
<thresholdValue><!--optional, edit threshold, reboot to take effect--></thresholdValue>
<delFaceLib><!--optional, delete face picture library, reboot to take effect--></delFaceLib>
</Reboot>
<isSupportCoverImportpictures>
<!--whether support importing pictures by overwriting existing ones-->
</isSupportCoverImportpictures>

225
Intelligent Security API (Facial) Developer Guide

<isSupportCoverImportFaceLib>
<!--whether support importing face picture library by overwriting existing ones-->
</isSupportCoverImportFaceLib>
<isSupportConcurrentImportpictures>
<!--whether support importing picture in concurrent mode-->
</isSupportConcurrentImportpictures>
<isSupportSurplusCapacity>
<!--whether support calculating the number of remaining face pictures in the face picture library-->
</isSupportSurplusCapacity>
<isSupportFDlibProgress>
<!--whether support getting the importing and exporting progress of face picture library-->
</isSupportFDlibProgress>
<isSupportFDlibPhotoWall><!--whether support displaying pictures via iVMS-4200--></isSupportFDlibPhotoWall>
<isSupportFDCoverInfo>
<!--whether support getting the number of overwritten face pictures when importing a specific face picture library--
>
</isSupportFDCoverInfo>
<isSupportStandardSearch>
<!--this node is used to compatible with the protocol difference-->
</isSupportStandardSearch>
<isSupportFaceDataExport><!--whether support exporting the data from face picture library--></
isSupportFaceDataExport>
<isSupportNewlyPictureUpload>
<!--optional, xs:boolean, whether support importing pictures to face picture library, it is available to import large
pictures-->
</isSupportNewlyPictureUpload>
<isSupportFCSearchNormal>
<!--optional, xs:boolean, whether support searching for all face data"-->
</isSupportFCSearchNormal>
<FDLibEachImportCap><!--optional, capability of importing pictures of a face picture library to another library-->
<isSupportImportLib>
<!--optional, xs:boolean, whether support importing all pictures of a face picture library to another library-->
</isSupportImportLib>
<isSupportImportLibPicture>
<!--optional, xs:boolean, whether support importing a specific picture of a face picture library to another library-->
</isSupportImportLibPicture>
</FDLibEachImportCap>
<isSupportUploadModeling>
<!--optional, xs:boolean, whether supports uploading modeling data directly: "true"-supports, if the node is not
returned indicates not support-->
</isSupportUploadModeling>
<StrangerLibFaceAppendData><!--optional, additional information of face pictures in stranger library-->
<PersonInfoExtendList size=""><!--opt-->
<PersonInfoExtend><!--list-->
<id min="" max=""><!--required, xs:integer, ID of person extended information, starts from 1--></id>
<enable><!--required, xs:boolean, enable person extended information--></enable>
<name min="" max=""><!--optional, xs:string, extended information name--></name>
<value min="" max=""><!--optional, xs:string, extended information content--></value>
</PersonInfoExtend>
</PersonInfoExtendList>
</StrangerLibFaceAppendData>
<StrangerLibFDSearchDescription>

226
Intelligent Security API (Facial) Developer Guide

<FDID><!--optional, xs:string, face picture library ID--></FDID>


<PersonInfoExtendList size=""><!--opt-->
<PersonInfoExtend><!--list-->
<id min="" max=""><!--required, xs:integer, ID of person extended information, starts from 1--></id>
<enable><!--required, xs:boolean, enable person extended information--></enable>
<name min="" max=""><!--optional, xs:string, extended information name--></name>
<value min="" max=""><!--optional, xs:string, extended information content--></value>
</PersonInfoExtend>
</PersonInfoExtendList>
<occurrences min="1" max="30"><!--optional, xs:integer, frequency--></occurrences>
<occurrencesSearchType opt="greaterThanOrEqual,lessThan,equal">
<!--optional, xs:string, frequency search type: "greaterThanOrEqual"-larger than or equal to, "lessThan"-less than,
"equal"-equal to-->
</occurrencesSearchType>
</StrangerLibFDSearchDescription>
<isSupportOccurrencesData>
<!--optional, xs:boolean, whether device supports getting face picture frequency directly: "ture"-supports, if this
node is not returned indicates not support-->
</isSupportOccurrencesData>
<isSupportCopyFaceRecord><!--optional, xs:boolean,whether device supports copying face records--></
isSupportCopyFaceRecord>
<isSupportConferenceSmartCheck><!--optional, xs:boolean, whether device supports configuring task of facial
recognition check-in--></isSupportConferenceSmartCheck>
<isSupportControlSmartCheck><!--optional, xs:boolean, whether device supports controlling task of facial
recognition check-in--></isSupportControlSmartCheck>
<isSupportSmartCheckStatus><!--optional, xs:boolean, whether device supports getting status of facial recognition
check-in--></isSupportSmartCheckStatus>
<isSupportSmartClockIn><!--optional, xs:boolean, whether device supports configuring task of face attendance
check--></isSupportSmartClockIn>
<isSupportControlSmartClockIn><!--optional, xs:boolean, whether device supports controlling task of face
attendance check--></isSupportControlSmartClockIn>
<isSupportSmartClockInStatus><!--optional, xs:boolean, whether device supports getting status of face attendance
check--></isSupportSmartClockInStatus>
<isSupportSmartClockInTemplate><!--optional, xs:boolean, whether device supports configuring template of face
attendance check--></isSupportSmartClockInTemplate>
<AsyncImportCap><!--opt-->
<singleFileMaxFaceNum max=""/><!--required, xs:integer, the maximum number of supported face pictures in a
single file-->
<singleFileMaxSize max=""/><!--required, xs:integer, the maximum size of a single file, unit: kb-->
</AsyncImportCap>
<isSupportAsyncImportData><!--optional, xs:boolean, whether the device supports asynchronously importing data to
the face picture library (related URI: /ISAPI/Intelligent/FDLib/asyncImportDatas?format=json)--></
isSupportAsyncImportData>
<isSupportTaskStatusSearch><!--optional, xs:boolean, whether the device supports searching for status of
asynchronously importing data to the face picture library (related URI: /ISAPI/Intelligent/FDLib/
asyncImportDatasTasks?format=json,/ISAPI/Intelligent/FDLib/asyncImportDatasTasks/taskID/<ID>?format=json)--></
isSupportTaskStatusSearch>
<SyncDeletePicNum max="10"><!--optional, xs:integer, the maximum number of face pictures can be deleted each
time--></SyncDeletePicNum>
<isSupportFaceLibFormat><!--optional, xs:boolean, whether the device supports formatting face picture libraries
(related URI: /ISAPI/Intelligent/FDLib/format?format=json)--></isSupportFaceLibFormat>
</FDLibCap>

227
Intelligent Security API (Facial) Developer Guide

Remarks
The number of face picture libraries can be created = "size" value of node <CreateFDLibList> -
"max" value of node <strangerLibNum>
Example
FDLibCap Message Example of Front-End Devices
<FDLibCap version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<CreateFDLibList size="3">
<CreateFDLib>
<id>1</id>
<name min="1" max="16" />
<thresholdValue min="1" max="100" />
<customInfo min="0" max="32" />
<faceDataMax>30000</faceDataMax>
<customFaceLibID min="0" max="32" />
</CreateFDLib>
</CreateFDLibList>
<FaceAppendData>
<bornTime />
<name min="0" max="32" />
<sex opt="male,female" />
<province />
<city />
<certificateType opt="officerID,ID" />
<certificateNumber min="8" max="18" />
<PersonInfoExtendList size="2">
<PersonInfoExtend>
<id>1</id>
<enable opt="true,false">false</enable>
<name min="0" max="16" />
<value min="0" max="32" />
</PersonInfoExtend>
</PersonInfoExtendList>
<customHumanID min="0" max="32" />
</FaceAppendData>
<FDSearchDescription>
<searchID />
<searchResultPosition>1</searchResultPosition>
<maxResults>30000</maxResults>
<FDID />
<startTime />
<endTime />
<name min="0" max="32" />
<sex opt="male,female" />
<province />
<city />
<certificateType opt="officerID,ID" />
<certificateNumber min="8" max="18" />
<customFaceLibID min="0" max="32" />
</FDSearchDescription>

228
Intelligent Security API (Facial) Developer Guide

<isSuportFDLibImpEmp opt="true,false">true</isSuportFDLibImpEmp>
<isSuportFCSearch opt="true,false">true</isSuportFCSearch>
<isSupportFDExecuteControl>true</isSupportFDExecuteControl>
<isSupportManualModeling>true</isSupportManualModeling>
<isSupportSingleManualModeling>true</isSupportSingleManualModeling>
<isSupportRangeManualModeling>true</isSupportRangeManualModeling>
<isSupportSingleManualModelingSearch>true</isSupportSingleManualModelingSearch>
<isSupportRangeManualModelingSearch>true</isSupportRangeManualModelingSearch>
<isSupportModelingStatusSearch>true</isSupportModelingStatusSearch>
<Reboot>
<thresholdValue>true</thresholdValue>
<delFaceLib>true</delFaceLib>
</Reboot>
<isSupportCoverImportpictures>true</isSupportCoverImportpictures>
<isSupportCoverImportFaceLib>true</isSupportCoverImportFaceLib>
<isSupportConcurrentImportpictures>true</isSupportConcurrentImportpictures>
<isSupportSurplusCapacity>true</isSupportSurplusCapacity>
<isSupportFDlibProgress>true</isSupportFDlibProgress>
<isSupportFDlibPhotoWall>true</isSupportFDlibPhotoWall>
<isSupportCustomHumanID>true</isSupportCustomHumanID>
<isSupportCustomFaceLibID>true</isSupportCustomFaceLibID>
<isSupportFCSearchAttendancePackage>true</isSupportFCSearchAttendancePackage>
</FDLibCap>

Example
FDLibCap Message Example of Rear-End Devices
<FDLibCap version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<CreateFDLibList size="32">
<CreateFDLib>
<id min="1" max="32" />
<name min="1" max="32" />
<faceDataMax min="1" max="0" />
<customFaceLibID min="0" max="64" />
</CreateFDLib>
</CreateFDLibList>
<FaceAppendData>
<bornTime />
<name min="1" max="64" />
<sex opt="male,female" />
<province />
<city />
<certificateType opt="officerID,ID,passportID,other" />
<certificateNumber min="1" max="32" />
<PersonInfoExtendList size="4" />
<isSupportPhoneNumber>true</isSupportPhoneNumber>
<customHumanID min="0" max="64" />
</FaceAppendData>
<FDSearchDescription>
<FDID>00000000000000000000000000000000</FDID>
<startTime />
<endTime />

229
Intelligent Security API (Facial) Developer Guide

<name min="1" max="64" />


<sex opt="male,female" />
<province />
<city />
<certificateType opt="officerID,ID,passportID,other" />
<certificateNumber min="1" max="32" />
<FaceModeCap>
<FaceMode><similarity min="0.0" max="100.0" /></FaceMode>
</FaceModeCap>
<modelStatus opt="modeling,unmodeled,modelingFailed" />
<modelingStatus opt="success,none,failed" />
<customFaceLibID min="0" max="64" />
</FDSearchDescription>
<isSuportAnalysisFace>true</isSuportAnalysisFace>
<isSuportFCSearch>true</isSuportFCSearch>
<isSupportFDLibEachImport>true</isSupportFDLibEachImport>
<FCSearchDescription>
<snapStartTime>1970-01-01T00:00:00+08:00</snapStartTime>
<snapEndTime>2050-12-30T23:59:59+08:00</snapEndTime>
<eventType opt="unlimit,faceContrast,whiteFaceContrast" />
<FaceModeCap>
<FaceMode><similarity min="0.0" max="100.0" /></FaceMode>
</FaceModeCap>
<PictureSearchCap>
<maxSearchPictureNum min="1" max="1" />
</PictureSearchCap>
<isSupportMultiChannelSearch>true</isSupportMultiChannelSearch>
<isSupportTotalSearchResult>true</isSupportTotalSearchResult>
</FCSearchDescription>
<isSupportFCSearchDataPackage>true</isSupportFCSearchDataPackage>
<maxFCSearchDataPackageNum>1000</maxFCSearchDataPackageNum>
<isSupportStandardSearch>true</isSupportStandardSearch>
<isSupportFaceDataExport>true</isSupportFaceDataExport>
<isSupportNewlyPictureUpload>true</isSupportNewlyPictureUpload>
<isSupportFCSearchNormal>true</isSupportFCSearchNormal>
<isSupportPrompt>true</isSupportPrompt>
<isSupportFCSearchJsonFormat>true</isSupportFCSearchJsonFormat>
<isSupportFCSearchDataPackageJsonFormat>true</isSupportFCSearchDataPackageJsonFormat>
<isSupportManualModeling>true</isSupportManualModeling>
<isSupportModelingStatusSearch>true</isSupportModelingStatusSearch>
<isSupportCustomHumanID>true</isSupportCustomHumanID>
<isSupportCustomFaceLibID>true</isSupportCustomFaceLibID>
<isSupportFDCapacity>true</isSupportFDCapacity>
</FDLibCap>

7.74 XML_FDLibInfoList
FDLibInfoList message in XML format

230
Intelligent Security API (Facial) Developer Guide

<FDLibInfoList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">


<FDLibInfo>
<id><!--req,xs:integer,number of items in the list, which starts from 1--></id>
<name><!--opt,xs:string, face picture library name--></name>
<FDID>
<!--req,ro,xs:string, face picture library ID, if creating a part of libraries failed when creating in batch, "createFailed"
will be returned-->
</FDID>
<statusCode>
<!--opt, ro,xs:integer, status code will be returned if creating library failed,
value: "0","1"-OK, "2"-Device Busy, "3"-Device Error, "4"-Invalid Operation, "5"-Invalid XML Format, "6"-Invalid
XML Content, "7"-Reboot Required--->
</statusCode>
<subStatusCode>
<!--opt, ro,xs:string, sub status code will be returned if creating library failed-->
</subStatusCode>
</FDLibInfo>
</FDLibInfoList>

Example
FDLibInfoList Message Example for Front-End Devices
<FDLibInfoList version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<FDLibInfo>
<id>1</id>
<name>sdk</name>
<FDID>2</FDID>
</FDLibInfo>
</FDLibInfoList>

Example
FDLibInfoList Message Example for Rear-End Devices
<FDLibInfoList version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<FDLibInfo>
<id>1</id>
<name>94713a0410c2fcba249a161918d3ca01</name>
<FDID>55869AFEA1E840958120C97054720372</FDID>
</FDLibInfo>
</FDLibInfoList>

7.75 XML_FDlibProgress
FDlibProgress Message in XML format
<FDlibProgress version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<status>
<!--req,xs:string,"importing,exporting,noStatus"-->
</status>
<progress>

231
Intelligent Security API (Facial) Developer Guide

<!--req,xs:string, progress percentage, which is between 0 and 100%, when status=noStatus, the progress
percentange is 0-->
</progress>
<completeNumber><!--dep,xs:intger, number of imported pictures--></completeNumber>
</FDlibProgress>

7.76 XML_FDLibSource
FDLibSource message in XML format
<FDLibSource version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<FDID><!--req,xs:string, face picture library ID--></FDID>
<Picture><!--opt-->
<PID><!--req,xs:string, face picture ID--></PID>
</Picture>
</FDLibSource>

7.77 XML_FDModelingStatusSearchDescription
FDModelingStatusSearchDescription message in XML format
<FDModelingStatusSearchDescription version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<searchID>
<!--req,xs:string, Search ID, which is used to confirm the upper-level platform or system. If the platform or system
are same during two times of search, the search history will be recorded in the memory for next fast search-->
</searchID>
<searchResultPosition><!-- req, xs: integer, start position of search results--></searchResultPosition>
<maxResults><!-- req, xs: integer, maximum number of search results, up to 500 results are allowed for one search--
></maxResults>
<CondList><!--opt-->
<Cond>
<FDID><!--xs:req, searching in all face picture libraries is not supported, a library for search must be specified--></
FDID>
</Cond>
</CondList>
<taskID>
<!--opt,xs:string, task ID, which is returned by /ISAPI/Intelligent/FDLib/manualModeling?range=&FDID= or /ISAPI/
Intelligent/FDLib/manualModeling?FDID=&&PID=, this node and CondList cannot exist at same time, and taskID is in
prior-->
</taskID>
</FDModelingStatusSearchDescription>

7.78 XML_FDModelingStatusSearchResult
FDModelingStatusSearchResult message in XML format

232
Intelligent Security API (Facial) Developer Guide

<FDModelingStatusSearchResult version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">


<searchID>
<!--req,xs:string; )Search ID, which is used to confirm the upper-level platform or system. If the platform or system
are same during two times of search, the search history will be recorded in the memory for next fast search-->
</searchID>
<responseStatus><!--req,xs:string,"true,false"--></responseStatus>
<responseStatusStrg>
<!--req,xs:string,"OK"-search completed, "NO MATCHES"-search failed, "MORE"-searching-->
</responseStatusStrg>
<numOfMatches>
<!--req, xs: integer, number of returned results-->
</numOfMatches>
<totalMatches>
<!--req, xs: integer, number of total matched results-->
</totalMatches>
<ModelingStatusList/>
</FDModelingStatusSearchResult>

7.79 XML_FDSearchDescription
XML message about conditions of searching in face picture library
<FDSearchDescription version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<searchID>
<!--req,xs:string, Search ID, which is used to confirm the upper-level platform or system. If the platform or system
are same during two times of search, the search history will be recorded in the memory for next fast search-->
</searchID>
<searchResultPosition><!--req, xs: integer--></searchResultPosition>
<maxResults><!--req, xs: integer--></maxResults>
<FDID>
<!--opt,xs:string, face picture library ID, if the node exists, it indicates searching in a specific library, otherwise,
search in all libraries-->
</FDID>
<startTime><!--req,xs:ISO8601 time--></startTime>
<endTime><!--dep,xs:ISO8601 time--></endTime>
<name><!--opt,xs:string, name--></name>
<sex><!--opt,xs:string,"male,female"--></sex>
<province><!--opt,xs:string, province--></province>
<city><!--opt,xs:string, city--></city>
<certificateType><!--opt,xs:string, certificate types, "officerID,ID"--></certificateType>
<certificateNumber><!--dep,xs: string, certificate No--></certificateNumber>
<phoneNumber><!--opt,xs: string--></phoneNumber>
<FaceModeList>
<FaceMode>
<ModeInfo><!--opt, this node is required when searching by picture-->
<similarity>
<!--opt, xs:float, similarity, range: [0.0,100.0]-->
</similarity>
<modeData>
<!--opt,xs:string, target model data, the binary none-modeling data will be encrypted by base64 during the

233
Intelligent Security API (Facial) Developer Guide

transmission-->
</modeData>
</ModeInfo>
</FaceMode>
</FaceModeList>
<modelingStatus>
<!--opt,xs:sting,"success, failed, none", multiple statuses can be selected at same time-->
</modelingStatus>
<customFaceLibID>
<!--opt,xs:string, custom face picture library ID-->
</customFaceLibID>
<StrangerLibFaceAppendData>
<!--opt, additional information of face pictures in stranger library-->
<PersonInfoExtendList size="4" /><!--opt-->
</StrangerLibFaceAppendData>
<OccurrencesInfo><!--opt, frequency information-->
<enabled><!--req, xs:boolean, whether to return frequency information--></enabled>
<occurrences>
<!--dep, xs:integer, frequency, this node exists only when the value of enabled is "true"-->
</occurrences>
<occurrencesSearchType>
<!--opt, xs:string, opt="greaterThanOrEqual,lessThan,equal", frequency search type: "greaterThanOrEqual"-larger
than or equal to, "lessThan"-less than, "equal"-equal to-->
</occurrencesSearchType>
</OccurrencesInfo>
</FDSearchDescription>

Example
Message Example (Front-End Device)
<FDSearchDescription>
<FDID>3</FDID>
<startTime>1970-01-01</startTime>
<endTime>2018-03-09</endTime>
<searchID>C7E71550-2A00-0001-5F38-1A7DF1E81242</searchID>
<maxResults>50</maxResults>
<searchResultPosition>1</searchResultPosition>
</FDSearchDescription>

Example
Message (Rear-End Device)
<FDSearchDescription>
<FDID>55869AFEA1E840958120C97054720372</FDID>
<searchID>C7E7222D-7100-0001-8A85-17581C901550</searchID>
<maxResults>50</maxResults>
<searchResultPosition>0</searchResultPosition>
</FDSearchDescription>

234
Intelligent Security API (Facial) Developer Guide

7.80 XML_FDSearchResult
FDSearchResult message in XML format.
<FDSearchResult version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<searchID>
<!--req,xs:string; )Search ID, which is used to confirm the upper-level platform or system. If the platform or system
are same during two times of search, the search history will be recorded in the memory for next fast search-->
</searchID>
<responseStatus>
<!--req,xs:string, "true,false", search status-->
</responseStatus>
<responseStatusStrg>
<!--req,xs:string, search status descriptions, "OK"-search completed, "NO MATCHES"-search failed, "MORE"-
searching-->
</responseStatusStrg>
<numOfMatches>
<!--req, xs: integer, number of returned results-->
</numOfMatches>
<totalMatches>
<!--req, xs: integer, number of total matched results-->
</totalMatches>
<progress>
<!--opt, xs: integer, search progress, range: [0,100], only when the progress equals to "100', you can get the data of
MatchList-->
</progress>
<MatchList>
<MatchElement><!--opt-->
<FDID><!--opt,xs:string, face picture library ID--></FDID>
<thresholdValue>
<!--opt,xs:integer, detection threshold, value rage: [0,100], higher threshold corresponds to higher detection
accuracy rate-->
</thresholdValue>
<bornTime>
<!--opt, xs:ISO8601 time, e.g., 2004-05-03T17:30:08+08:00-->
</bornTime>
<name><!--opt,xs:string--></name>
<sex><!--opt,xs:"male,female"--></sex>
<province><!--opt,xs:string--></province>
<city><!--opt,xs:string--></city>
<certificateType>
<!--opt,xs:string, certificate types, "officerID,ID"-->
</certificateType>
<certificateNumber>
<!--opt,xs:string, certificate No.-->
</certificateNumber>
<picURL><!--req,xs:string, face picture URL, which is returned when getting picture data--></picURL>
<PID><!--req,xs:string, face picture ID--></PID>
<PersonInfoExtendList/><!--opt-->
<similarity><!--opt,xs:float, similarity, value range: [0.0,100.0]--></similarity>
<ModelingStatus/> <!--see XML_ModelingStatus for details-->

235
Intelligent Security API (Facial) Developer Guide

<occurrences>
<!--opt, xs:integer, frequency, this node is valid only when the frequency information return is enable in search
condition-->
</occurrences>
</MatchElement>
</MatchList>
</FDSearchResult>

See Also
XML_ModelingStatus
Example
FDSearchResult Message Example for Front-End Device
<FDSearchResult version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<searchID>C7E71550-2A00-0001-5F38-1A7DF1E81242</searchID>
<responseStatus>true</responseStatus>
<responseStatusStrg>OK</responseStatusStrg>
<numOfMatches>3</numOfMatches>
<totalMatches>3</totalMatches>
<MatchList>
<MatchElement>
<FDID>3</FDID>
<bornTime>2000-01-01</bornTime>

<name>300778ffaafba90a4faf730eec79045bd653b5f0df9909696f52503148836e2620c945470ff3516fe0e5a48d55abb
b8c</name>
<sex>male</sex>
<province></province>
<city></city>
<certificateType></certificateType>
<certificateNumber></certificateNumber>

<picURL>3d310e453f6919a31e8b016a2caac4b72da65c9dfe670832b8b68e10b4d9d20c55fa49834648d0d293e240f42c
2e32e3d822b504404110c933b6ed3ddef94647

ab9e7cc75159821fe0dfced76e2200939365d3979d2500cf8bd8366a719250cbce582ed1e4610e6012576c62cd5e39629f
9b4e6834af8f26668c6a381f3b709b</picURL>
<PID>1</PID>
<PersonInfoExtendList>
<PersonInfoExtend>
<id>1</id>
<enable>false</enable>
<name>adc1ae2bc31f0599be86a764505a7ac9a41b2c780727403adbd361e41d9cbeef</name>
<value></value>
</PersonInfoExtend>
<PersonInfoExtend>
<id>2</id>
<enable>false</enable>
<name>adc1ae2bc31f0599be86a764505a7ac94982ba39b1f12bb10d75a1b4cead775b</name>
<value></value>
</PersonInfoExtend>

236
Intelligent Security API (Facial) Developer Guide

</PersonInfoExtendList>
<ModelingStatus>
<FDID>3</FDID>
<PID>1</PID>

<name>300778ffaafba90a4faf730eec79045bd653b5f0df9909696f52503148836e2620c945470ff3516fe0e5a48d55abb
b8c</name>
<status>failed</status>
<reason>imageURLDownloadFailed</reason>
<customFaceLibID>sdk</customFaceLibID>
<customHumanID></customHumanID>
</ModelingStatus>
</MatchElement>
<MatchElement>
<FDID>3</FDID>
<bornTime>2000-01-01</bornTime>
<name>f6f61fa7923eebb1507f5ad76048ef9d</name>
<sex>male</sex>
<province></province>
<city></city>
<certificateType></certificateType>
<certificateNumber></certificateNumber>

<picURL>3d310e453f6919a31e8b016a2caac4b72da65c9dfe670832b8b68e10b4d9d20c55fa49834648d0d293e240f42c
2e32e3d822b504404110c933b6ed3ddef94647

ab9e7cc75159821fe0dfced76e2200939365d3979d2500cf8bd8366a719250cbce582ed1e4610e6012576c62cd5e3962c
5e46298c568ad96a778480368306768</picURL>
<PID>2</PID>
<PersonInfoExtendList>
<PersonInfoExtend>
<id>1</id>
<enable>false</enable>
<name>adc1ae2bc31f0599be86a764505a7ac9a41b2c780727403adbd361e41d9cbeef</name>
<value></value>
</PersonInfoExtend>
<PersonInfoExtend>
<id>2</id>
<enable>false</enable>
<name>adc1ae2bc31f0599be86a764505a7ac94982ba39b1f12bb10d75a1b4cead775b</name>
<value></value>
</PersonInfoExtend>
</PersonInfoExtendList>
<ModelingStatus>
<FDID>3</FDID>
<PID>2</PID>
<name>f6f61fa7923eebb1507f5ad76048ef9d</name>
<status>failed</status>
<reason>imageURLDownloadFailed</reason>
<customFaceLibID>sdk</customFaceLibID>
<customHumanID></customHumanID>
</ModelingStatus>

237
Intelligent Security API (Facial) Developer Guide

</MatchElement>
<MatchElement>
<FDID>3</FDID>
<bornTime>2000-01-01</bornTime>

<name>300778ffaafba90a4faf730eec79045b8013944935ec5971ea20b216ff28320f5f74a23e7843bdfd56cb43ed0d82a
c74</name>
<sex/>
<province></province>
<city></city>
<certificateType></certificateType>
<certificateNumber></certificateNumber>

<picURL>3d310e453f6919a31e8b016a2caac4b72da65c9dfe670832b8b68e10b4d9d20c55fa49834648d0d293e240f42c
2e32e3d822b504404110c933b6ed3ddef94647

ab9e7cc75159821fe0dfced76e2200939365d3979d2500cf8bd8366a719250cbce582ed1e4610e6012576c62cd5e39628
214f16467c38f99149d3950fbb1ece3</picURL>
<PID>3</PID>
<PersonInfoExtendList>
<PersonInfoExtend>
<id>1</id>
<enable>false</enable>
<name>adc1ae2bc31f0599be86a764505a7ac9a41b2c780727403adbd361e41d9cbeef</name>
<value></value>
</PersonInfoExtend>
<PersonInfoExtend>
<id>2</id>
<enable>false</enable>
<name>adc1ae2bc31f0599be86a764505a7ac94982ba39b1f12bb10d75a1b4cead775b</name>
<value></value>
</PersonInfoExtend>
</PersonInfoExtendList>
<ModelingStatus>
<FDID>3</FDID>
<PID>3</PID>

<name>300778ffaafba90a4faf730eec79045b8013944935ec5971ea20b216ff28320f5f74a23e7843bdfd56cb43ed0d82a
c74</name>
<status>failed</status>
<reason>imageURLDownloadFailed</reason>
<customFaceLibID>sdk</customFaceLibID>
<customHumanID></customHumanID>
</ModelingStatus>
</MatchElement>
</MatchList>
</FDSearchResult>

Example
FDSearchResult Message Example for Rear-End Device

238
Intelligent Security API (Facial) Developer Guide

<FDSearchResult version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">


<searchID>C7E7222D-7100-0001-8A85-17581C901550</searchID>
<responseStatus>true</responseStatus>
<responseStatusStrg>OK</responseStatusStrg>
<numOfMatches>2</numOfMatches>
<totalMatches>2</totalMatches>
<MatchList>
<MatchElement>
<FDID>55869AFEA1E840958120C97054720372</FDID>
<name>af5ba244c94b63c40a6909b46b99b2cea0e6677cd25875fe17e37757be69193a</name>

<picURL>af6532113b9787fabfc5d9679a975ef223575c1e2ffa0647114115bf9eea9ed68d27b5e83b0ab8ffa371f644bec3
98cbe1cf24c5f3f4de26e1398a4edd10615af742

efd9a215554f8590031b0dcc798f2deef6b024593730d00ef6a418dd1e06dbe70fd6518d2f5a23a2815bd4b4662a245347
afdd855dcf46601b7ec2f4c04c3d96e2dced7421
b401d15634b60fac9b448f436da3ff7db1bcda1e7120d05b67feb4bf60c6d8d8b334bc6ae928ed66da</picURL>
<PID>53A33C5DCE134AA1B3E79B657628E462</PID>
<PersonInfoExtendList>
<PersonInfoExtend>
<id>1</id>
<enable>false</enable>
</PersonInfoExtend>
<PersonInfoExtend>
<id>2</id>
<enable>false</enable>
</PersonInfoExtend>
<PersonInfoExtend>
<id>3</id>
<enable>false</enable>
</PersonInfoExtend>
<PersonInfoExtend>
<id>4</id>
<enable>false</enable>
</PersonInfoExtend>
</PersonInfoExtendList>
<modelStatus>modeling</modelStatus>
<ModelingStatus>
<FDID>55869AFEA1E840958120C97054720372</FDID>
<PID>53A33C5DCE134AA1B3E79B657628E462</PID>
<status>success</status>
</ModelingStatus>
</MatchElement>
<MatchElement>
<FDID>55869AFEA1E840958120C97054720372</FDID>
<name>168a1cca0c662fb6242b19fd0c1b5e45de0d46ffc27ab658f4f754655a72dc62</name>

<picURL>af6532113b9787fabfc5d9679a975ef223575c1e2ffa0647114115bf9eea9ed68d27b5e83b0ab8ffa371f644bec3
98cbe1cf24c5f3f4de26e1398a4edd10615af742

efd9a215554f8590031b0dcc798f2deef6b024593730d00ef6a418dd1e064fb74b1d9b22da4f6aecdacb7beed9e5456203
e7300665e6aeaec02eec7b32c5e007217885

239
Intelligent Security API (Facial) Developer Guide

f7bbf90140f21f5ab4dedd81fddf927cfaf6e2711689f10ae671df2804c9bee2301584fb4c6fdd4c8fc891</picURL>
<PID>78DE2369848A410AAB7BA83984EB10AF</PID>
<PersonInfoExtendList>
<PersonInfoExtend>
<id>1</id>
<enable>false</enable>
</PersonInfoExtend>
<PersonInfoExtend>
<id>2</id>
<enable>false</enable>
</PersonInfoExtend>
<PersonInfoExtend>
<id>3</id>
<enable>false</enable>
</PersonInfoExtend>
<PersonInfoExtend>
<id>4</id>
<enable>false</enable>
</PersonInfoExtend>
</PersonInfoExtendList>
<modelStatus>unmodeled</modelStatus>
<ModelingStatus>
<FDID>55869AFEA1E840958120C97054720372</FDID>
<PID>78DE2369848A410AAB7BA83984EB10AF</PID>
<status>none</status>
</ModelingStatus>
</MatchElement>
</MatchList>
</FDSearchResult>

7.81 XML_HFPDScheduleList
HFPDScheduleList message in XML format
<HFPDScheduleList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<Schedule/><!--opt, see details in XML_Schedule-->
</HFPDScheduleList>

See Also
XML_Schedule

7.82 XML_HttpHostNotification
XML message about parameters of a HTTP listening server
<HttpHostNotification version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id><!--required, xs:string, ID--></id>
<url><!--required, xs:string, the absolute path, e.g., http://<ipAddress>:<portNo>/<uri>--></url>

240
Intelligent Security API (Facial) Developer Guide

<protocolType><!--required, xs:string, "HTTP,HTTPS,EHome"--></protocolType>


<parameterFormatType><!--required, xs:string, alarm/event information format, "XML,JSON"--></
parameterFormatType>
<addressingFormatType><!--required, xs:string, "ipaddress,hostname"--></addressingFormatType>
<hostName><!--dependent, xs:string--></hostName>
<ipAddress><!--dependent, xs:string--></ipAddress>
<ipv6Address><!--dependent, xs:string--></ipv6Address>
<portNo><!--optional, xs:integer--></portNo>
<userName><!--dependent, xs:string--></userName>
<password><!--dependent, xs:string--></password>
<httpAuthenticationMethod><!--required, xs:string, "MD5digest,none"--></httpAuthenticationMethod>
<ANPR><!--optional-->
<detectionUpLoadPicturesType>
<!--optional, xs:string, types of alarm picture to be uploaded: "all, licensePlatePicture, detectionPicture"-->
</detectionUpLoadPicturesType>
</ANPR>
<eventType optional="AID,TFS,TPS"><!--required, xs:string--></eventType>
<uploadImagesDataType>
<!--optional, xs:string, "URL", "binary" (default), for cloud storage, only "URL" is supported-->
</uploadImagesDataType>
<eventMode><!--optional, xs:string, "all,list"--></eventMode>
<EventList><!--dependent, it is valid only when eventMode is "list"-->
<Event><!--required-->
<type><!--required, xs:string--></type>
</Event>
</EventList>
<channels><!--optional, xs:string, "1,2,3,4…"--></channels>
<SubscribeEvent/><!--optional, event subscription parameters, see details in the message of XML_SubscribeEvent-->
</HttpHostNotification>

7.83 XML_HttpHostNotificationCap
XML message about capability of HTTP listening server
<?xml version="1.0" encoding="utf-8"?>
<HttpHostNotificationCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<hostNumber>2</hostNumber>
<urlLen max=""/>
<protocolType opt="HTTP,HTTPS"/>
<parameterFormatType opt="XML,querystring,JSON"/>
<addressingFormatType opt="ipaddress,hostname"/>
<ipAddress opt="ipv4,ipv6"/>
<portNo min="" max=""/>
<userNameLen min="" max=""/>
<passwordLen min="" max=""/>
<httpAuthenticationMethod opt="MD5digest,none"/>
<Extensions>
<intervalBetweenEvents min="" max=""/>
</Extensions>
<uploadImagesDataType opt="URL,binary"/>

241
Intelligent Security API (Facial) Developer Guide

<ANPR><!--optional-->
<detectionUpLoadPicturesType opt="all,licensePlatePicture,detectionPicture…"/><!--optional, xs:string, types of
alarm pictures to be uploaded-->
<alarmHttpPushProtocol opt="baseline,custom"/>
</ANPR>
<httpBroken opt="true,false" def="true" ><!--optional, xs:boolean, whether to enable global ANR: true, false--></
httpBroken>
<SubscribeEventCap>
<heartbeat min="" max=""/><!--optional, heartbeat time interval, unit: second-->
<channelMode opt="all,list"/><!--required, all-subscribe events of all channels, list-subscribe event by channel-->
<eventMode opt="all,list"/><!--required, event subscription mode: all-subscribe all events of all channels, list-
subscribe events by type, channel, and target-->
<!--if the values of the two nodes channelMode and eventMode are both "all", it indicates that the device does not
support subscribe events by type and channel-->
<EventList><!--dependent, alarm uploading mode, this node is valid only when eventMode is "list"-->
<Event><!--required-->
<type><!--required, xs:string, event types--></type>
<pictureURLType opt="binary,localURL,cloudStorageURL" def=""/>
<!--optional, xs:string, transmission format of alarm picture: "binary"-picture binary data, "localURL"-picture URL
from local device, "cloudStorageURL"-picture URL from cloud storage-->
</Event>
</EventList>
<pictureURLType opt="binary,localURL,cloudStorageURL" def=""/>
<!--optional, xs:string, transmission format of all alarm pictures: "binary"-picture binary data (default for camera),
"localURL"-picture URL from local device (default for NVR/DVR), "cloudStorageURL"-picture URL from cloud storage;
this node is in highest priority-->
<ChangedUploadSub>
<interval/><!--optional, xs:integer, the life cycle of arming GUID, unit: second, the default life cycle is 5 minutes; if
the reconnection is not started during the life cycle, a new GUID will be generated-->
<StatusSub>
<all/><!--optional, xs:boolean, whether to subscribe all-->
<channel/><!--optional, xs:boolean, subscribe channel status, this node is not required when the node all is "true"--
>
<hd/><!--optional, xs:boolean, subscribe the HDD status, this node is not required when the node all is "true"-->
<capability/><!--optional, xs:boolean, subscribe the capability changed status, this node is not required when the
node all is "true"-->
</StatusSub>
</ChangedUploadSub>
</SubscribeEventCap>
</HttpHostNotificationCap>

7.84 XML_HttpHostNotificationList
HttpHostNotificationList message in XML format
<HttpHostNotificationList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<HttpHostNotification>
<id><!--req, xs:string, ID--></id>
<url><!--req, xs:string--></url>
<protocolType><!--req, xs:string, "HTTP,HTTPS"--></protocolType>

242
Intelligent Security API (Facial) Developer Guide

<parameterFormatType><!--req, xs:string, alarm/event information format, "XML,JSON"--></parameterFormatType>


<addressingFormatType><!--req, xs:string, "ipaddress,hostname"--></addressingFormatType>
<hostName><!--dep, xs:string--></hostName>
<ipAddress><!--dep, xs:string--></ipAddress>
<ipv6Address><!--dep, xs:string--></ipv6Address>
<portNo><!--opt, xs:integer--></portNo>
<userName><!--dep, xs:string--></userName>
<password><!--dep, xs:string--></password>
<httpAuthenticationMethod><!--req, xs:string, "MD5digest,none"--></httpAuthenticationMethod>
<uploadImagesDataType>
<!--opt, xs:string, "URL", "binary" (default), for cloud storage, only "URL" is supported-->
</uploadImagesDataType>
<eventMode><!--opt, xs:string, "all,list"--></eventMode>
<EventList><!--dep, it is valid only when eventMode is "list"-->
<Event><!--req-->
<type><!--req, xs:string--></type>
</Event>
</EventList>
<channels><!--opt, xs:string, "1,2,3,4…"--></channels>
</HttpHostNotification>
</HttpHostNotificationList>

Example
HttpHostNotificationList Message Example
<HttpHostNotificationList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<HttpHostNotification>
<id>1</id>
<url></url>
<protocolType>HTTP</protocolType>
<parameterFormatType>XML</parameterFormatType>
<addressingFormatType>ipaddress</addressingFormatType>
<ipAddress>0.0.0.0</ipAddress>
<portNo>80</portNo>
<userName></userName>
<httpAuthenticationMethod>none</httpAuthenticationMethod>
</HttpHostNotification>
</HttpHostNotificationList>

7.85 XML_HttpHostTestResult
HttpHostTestResult message in XML format.
<HttpHostTestResult version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<errorDescription>
<!--req, xs:string-->
</errorDescription>
</HttpHostTestResult>

243
Intelligent Security API (Facial) Developer Guide

7.86 XML_ImageData
XML message about image information
Content-Type: multipart/form-data; boundary=---------------------------7e13971310878
-----------------------------7e13971310878
Content-Disposition: form-data; name="FaceAppendData";
Content-Type: text/xml

<ImageData version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">


<picType><!--required, xs:string, picture type: "binary"-picture in binary form format, "url"--></picType>
<picUrl><!--optional, xs:string, picture URL--></picUrl>
</ImageData>

----------------------------7e13971310878
Content-Disposition: form-data; name="importImage";
Content-Type: image/jpeg
Opaque Data,binary image data
-----------------------------7e13971310878

7.87 XML_IntelliCap
XML message about intelligent capability
<IntelliCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<isFaceSupport><!--optional, xs:boolean, whether it supports face detection--></isFaceSupport>
<isBehaviorSupport><!--optional, xs:boolean, whether it supports behavior analysis--></isBehaviorSupport>
<isLineDetectionSupport><!--optional, xs:boolean, whether it supports line crossing detection--></
isLineDetectionSupport>
<isFieldDetectionSupport><!--optional, xs:boolean, whether it supports intrusion detection--></
isFieldDetectionSupport>
<isRegionEntranceSupport><!--optional, xs:boolean, whether it supports region entrance detection--></
isRegionEntranceSupport>
<isRegionExitingSupport><!--optional, xs:boolean, whether it supports region exiting detection--></
isRegionExitingSupport>
<isLoiteringSupport><!--optional, xs:boolean, whether it supports loitering detection--></isLoiteringSupport>
<isGroupSupport><!--optional, xs:boolean, whether it supports people gathering detection--></isGroupSupport>
<isRapidMoveSupport><!--optional, xs:boolean, whether it supports fast moving detection--></
isRapidMoveSupport>
<isParkingSupport><!--optional, xs:boolean, whether it supports parking detection--></isParkingSupport>
<isUnattendedBaggageSupport><!--optional, xs:boolean, whether it supports unattended baggage detection--></
isUnattendedBaggageSupport>
<isAttendedBaggageSupport><!--optional, xs:boolean, whether it supports object removal detection--></
isAttendedBaggageSupport>
<isTeacherSupport><!--optional, xs:boolean, whether it supports teacher's behavior detection--></
isTeacherSupport>
<isStudentSupport><!--optional, xs:boolean, whether it supports student's behavior detection--></
isStudentSupport>
<isCombinedSupport><!--optional, xs:boolean, whether it supports combined detection--></isCombinedSupport>

244
Intelligent Security API (Facial) Developer Guide

<isTrafficSupport><!--optional, xs:boolean, whether it supports traffic detection--></isTrafficSupport>


<RestoreLib>
<libName opt="studentsStoodUp,peopleCounting,shipDetection"><!--optional, xs:string,--></libName>
</RestoreLib>
<RestoreDefParamForbid>
<!--optional, xs:boolean "true, false", forbid restoring algorithm library to default. When the node does not exist, it
indicates restoring to default is not supported. When the node exists and its value is "ture", it indicates support, when
the value is "false", it indicates not support-->
</RestoreDefParamForbid>
<RestoreAlgLibParam>
<!--optional, the capabilities of restoring algorithm library parameters according to algorithm library name-->
<libName opt="faceSnap,HMS,behaviorAnalysis"><!--optional, xs:string--></libName>
</RestoreAlgLibParam>
<isFaceCaptureStatisticsSupport><!--whether it supports face picture statistics--></isFaceCaptureStatisticsSupport>
<isSupportPersonQueueDetection><!--whether it supports queue management--></
isSupportPersonQueueDetection>
<isSupportIntersectionAnalysis>
<!--optional, xs: boolean, whether it supports intersection analysis-->
</isSupportIntersectionAnalysis>
<mixedTargetDetectionWithoutAttribute><!--optional, xs: boolean--></mixedTargetDetectionWithoutAttribute>
<isSupportUploadFacePictureByForm><!--optional, xs:boolean, whether it supports uploading face pictures by form--
></isSupportUploadFacePictureByForm>
<isSupportUploadFacePictureByUrl><!--optional, xs: boolean, whether it supports uploading face pictures by URL--
></isSupportUploadFacePictureByUrl>
<isSupportUploadHumanPictureByForm><!--optional, xs:boolean, whether it supports uploading human pictures in
form--></isSupportUploadHumanPictureByForm>
<isSupportMisinfoFilterStatisticalMode><!--optioal, xs:boolean, whether it supports statistics of filtering face
comparison--></isSupportMisinfoFilterStatisticalMode>
<isSupportFaceScore><!--optional, xs:boolean, whether it supports face grading configuration (camera)--></
isSupportFaceScore>
<HumanRecognitionModeSearchCap>
<searchTargetsNumMax><!--optional, xs:integer, maximum number of sample pictures that can be imported for
searching by picture--></searchTargetsNumMax>
<HumanMode>
<searchCond opt="age_group,gender,jacet_color,glass,bag,ride,unlimit"/><!--setting multiple search conditions is
supported-->
<similarity min="0.0" max="100.0"/><!--optional, xs:float, similarity, range: [0.0,100.0]-->
</HumanMode>
<HumanInfo><!--optional, person attribute information, it is required when searching for picture by attributes-->
<age_group opt="child,infant,kid,middle,middleAged,old,prime,teenager,unknown,young">
<!--optional, xs:string, age group: "child,infant,kid,middle,middleAged,old,prime,teenager,unknown,young"-->
</age_group>
<gender opt="female,male,unknown"><!--optional, xs:string, gender: "female,male,unknown"--></gender>
<jacet_color
opt="black,black,blue,brown,cyan,deepBlue,deepGray,gray,green,mixture,orange,pink,purple,red,silver,unknown,whit
e,yellow">
<!--optional, xs:string, tops color-->
</jacet_color>
<glass opt="yes,no,unknown,sunglasses"><!--optional, xs:string, whether the person is wearing glasses--></glass>
<bag opt="yes,no,unknown"><!--optional, xs:string, whether the person is carrying a bag--></bag>
<ride opt="yes,no,unknown"><!--optional, xs:string, whether the person is riding--></ride>
</HumanInfo>

245
Intelligent Security API (Facial) Developer Guide

<positive opt="true,false"/><!--optional, xs:boolean, whether it is false human body recognition alarm: "true"-yes,
"false"-no-->
<eventType opt="unlimit,humanRecognition">
<!--optional, xs:string, event type: "unlimit"-no limit, "humanRecognition"-human body detection alarm-->
</eventType>
<isSupportMultiChannelSearch>
<!--optional, xs:boolean, whether it supports multi-channel search-->
</isSupportMultiChannelSearch>
<isSupportTotalSearchResult>
<!--optional, xs:boolean, whether it supports limiting number of results that can be obtained after a single search--
>
</isSupportTotalSearchResult>
</HumanRecognitionModeSearchCap>
<VehicleRecognitionModeSearchCap>
<searchTargetsNumMax><!--optional, xs:integer, maximum number of sample pictures that can be imported for
searching by picture--></searchTargetsNumMax>
<eventType opt="unlimit,vehicleBlackList,vehicleWhiteList"/><!--xs:string, event type: "unlimit"-no limit,
"vehicleBlackList"-vehicle blacklist, "vehicleWhiteList"-vehicle whitelist-->
<VehicleMode>
<searchCond opt="licensePlate,vehicleLogo,vehicleSubLogoRecog,vehicleType,vehicleColor,unlimit"/>
<similarity min="0.0" max="100.0"/><!--optional, xs:float, similarity, range: [0.0,100.0]-->
</VehicleMode>
<isSupportMultiChannelSearch>
<!--optional, xs:boolean, whether it supports multi-channel search-->
</isSupportMultiChannelSearch>
<isSupportTotalSearchResult>
<!--optional, xs:boolean, whether it supports limiting number of results that can be obtained after a single search--
>
</isSupportTotalSearchResult>
</VehicleRecognitionModeSearchCap>
<FaceContrastAnalyzeCap><!--capability of manual comparison and analysis of face pictures-->
<isSupportTrigger opt="false,true"><!--optional, xs:boolean--></isSupportTrigger>
<SearchCondition><!--optional-->
<startTime><!--required, xs:time, ISO8601 time--></startTime>
<endTime><!--required, xs:time, ISO8601 time--></endTime>
</SearchCondition>
</FaceContrastAnalyzeCap>
<FramesPeopleCountingCap><!--capability of people counting statistics in a single frame-->
<Statistics>
<SearchCondition>
<startTime><!--required, xs:time,ISO8601 time--></startTime>
<endTime><!--required, xs:time,ISO8601 time--></endTime>
</SearchCondition>
</Statistics>
<MaskRegion><!--optional, shielded region-->
<maxRegionNum><!--optional, xs:integer, number of regions--></maxRegionNum>
<Region>
<vertexNum min="3" max="10"><!--optional, xs:integer, number of region vertexes--></vertexNum>
</Region>
</MaskRegion>
</FramesPeopleCountingCap>
<FaceContrastPersonInfoExtend><!--configuration capability of face comparison tag-->

246
Intelligent Security API (Facial) Developer Guide

<personInfoCap>
<maxPersonInfo min="0" max="4">
<!--optional, xs:integer, maximum number of person tags-->
</maxPersonInfo>
</personInfoCap>
<personInfoFDlibCap>
<maxPersonInfo min="0" max="4">
<!--optional, xs:integer, maximum number of person tags-->
</maxPersonInfo>
</personInfoFDlibCap>
</FaceContrastPersonInfoExtend>
<isSupportSafetyHelmetDetection>
<!-- opt, xs:boolean, whether it supports hard hat detection-->
</isSupportSafetyHelmetDetection>
<isSupportDistanceRecognition><!--optional, xs:boolean, whether supports distance measurement--></
isSupportDistanceRecognition>
<isSupportATM><!--optional, xs:boolean, ATM intelligent configuraiton, corresponds to URI: /ISAPI/Intelligent/ATM/
capabilities?format=json--></isSupportATM>
<isSupportFaceTemperature><!--optional, xs:boolean, whether the device supports face thermography, corresponds
to URI: /ISAPI/Intelligent/faceTemperature/capabilities?format=json--></isSupportFaceTemperature>
<isSupportFireEscapeDetectionSearch>
<!--optional, xs:boolean, whether the device supports searching for fire engine access detection events of multiple
channels (related URI: URI/ISAPI/Intelligent/fireEscapeDetection/search/capabilities?format=json)-->
</isSupportFireEscapeDetectionSearch>
<isSupportTakingElevatorDetectionSearch>
<!--optional, xs:boolean, whether the device supports searching for elevator detection events of multiple channels
(related URI: /ISAPI/Intelligent/takingElevatorDetection/search/capabilities?format=json)-->
</isSupportTakingElevatorDetectionSearch>
<isSupportCityManagementSearch>
<!--optional, xs:boolean, whether the device supports searching for city management events of multiple channels
(related URI: /ISAPI/Intelligent/cityManagement/search/capabilities?format=json)-->
</isSupportCityManagementSearch>
<isSupportSafetyHelmetDetectionSearch>
<!--optional, xs:boolean, whether the device supports searching for hard hat detection events of multiple channels
(related URI: /ISAPI/Intelligent/safetyHelmetDetection/search/capabilities?format=json)-->
</isSupportSafetyHelmetDetectionSearch>
</IntelliCap>

7.88 XML_IntelliResource
Message about intelligent resource parameters in XML format
<IntelliResourceCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<BehaviorInfo><!--dep-->
<IntelliImage>
<isUpload><!--req, xs:boolean, whether to upload pictures, "true,false"--></isUpload>
<imgQuality><!--req, xs:string, picture quality, "best,good,general"--></imgQuality>
<imgResolutionWidth><!—req, xs:integer, picture resolution (width)--></imgResolutionWidth>
<imgResolutionHeight><!—req, xs:integer, picture resolution (height)--></imgResolutionHeight>
<isImgTargetOverlap>

247
Intelligent Security API (Facial) Developer Guide

<!--req, xs:boolean, whether to overlay target information on captured picture, "true,false"-->


</isImgTargetOverlap>
<isImgRuleOverlap>
<!--req, xs:boolean, whether to overlay rule information on captured picture, "true,false"-->
</isImgRuleOverlap>
</IntelliImage>
<VideoOverlapInfo>
<isOverlapIntelli>
<!--req, xs:boolean, whether to overlay intelligent information, "true,false"-->
</isOverlapIntelli>
<isOverlapTarget><!--req, xs:boolean, "true,false"--></isOverlapTarget>
<isOverlapRule><!--req, xs:boolean, "true,false"--></isOverlapRule>
</VideoOverlapInfo>
<IntelliAnalysisEnable><!--req, xs:boolean, whether to enable VCA, "true,false"--></IntelliAnalysisEnable>
<DisplayTrajectory><!--opt, display the target's moving path in live view-->
<enabled><!--req, xs:boolen "true,false", enable or not--></enabled>
<durationLimit> <!--opt, xs:string "5s,10s,20s,30s", the max. time duration of display--> </durationLimit>
</DisplayTrajectory>
<targetMarkingColorEnabled>
<!--req, xs:boolen "true,false", whether enables marking different attributes with different colors-->
</targetMarkingColorEnabled>
</BehaviorInfo>
<FaceCaptureInfo><!--dep-->
<imgQuality><!--req, xs:string, picture quality, "best,good,general"-->
<isImgTargetOverlap>
<!--req, xs:boolean, whether to overlay target information on captured picture, "true,false"-->
</isImgTargetOverlap>
<VideoOverlapInfo>
<isOverlapIntelli>
<!--req, xs:boolean, whether to overlay intelligent information, "true,false"-->
</isOverlapIntelli>
<isOverlapTarget><!--req, xs:boolean, "true,false"--></isOverlapTarget>
<isOverlapRule><!--req, xs:boolean, "true,false"--></isOverlapRule>
</VideoOverlapInfo>
<backgroundUpload><!--opt, xs: boolean, "true,false"--></backgroundUpload>
<imgResolutionWidth>
<!--req, xs: integer, background picture resolution, it should be same with the supported resolution of main
stream-->
</imgResolutionWidth>
<imgResolutionHeight><!--req, xs:integer, background picture resolution--></imgResolutionHeight>
<TargetImgInfo><!--opt, capture configuration parameters-->
<targetImgType>
<!--opt, xs:string, capture type: custom, head, headShoulders (head and shoulder), human (all body)-->
</targetImgType>
<TargetImgSize><!--dep, capturd target picture size, it is valid when targetImgType is custom-->
<widthRatio>
<!--req, xs: float, width ratio of captured target picture-->
</widthRatio>
<upperPartHeightRatio>
<!--req, xs:float, height ratio of upper part (above the chin) of captured target picture-->
</upperPartHeightRatio>
<underPartHeightRatio>

248
Intelligent Security API (Facial) Developer Guide

<!--req, xs:float, height ratio of lower part (below the chin) of captured target picture-->
</underPartHeightRatio>
</TargetImgSize>
<fixedPixelEnable>
<!--opt, xs:boolean, whether to enable fixed pixel for capture-->
</fixedPixelEnable>
<heightPixel>
<!--dep, xs:integer, height pixels of captured target picture-->
</heightPixel>
</TargetImgInfo>
<backgroundIntervalUpload>
<!--optional, xs:intger, upload interval of the captured face picture, unit: second, range: [0,65535); it is invalid when
the value of backgroundUpload is false-->
<!--this parameter is applicable to user who cares network traffic and storage, if the face thermography alarm is
triggered or no face appears in the scene, ignore this node; if the value of this node is 0, it indicates uploading the real-
time captured face picture-->
</backgroundIntervalUpload>
</FaceCaptureInfo>
<AlgVersionInfo>
<AlgItem>
<id><!—ro, xs:string --></id>
<algName><!—ro, xs:string --></algName>
</AlgItem>
</AlgVersionInfo>
</IntelliResourceCap>

7.89 XML_IntelliResourceCap
Message about intelligent resource configuration capability in XML format
<IntelliResourceCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<BehaviorInfo><!--dep-->
<IntelliImage>
<isUpload opt="true,false" /><!--req, xs:boolean, whether to upload pictures-->
<imgQuality opt="best,good,general" /><!--req, xs:string, picture quality-->
<isSupportImgResolutionCfg>
<!--req, xs: string, whether support configuring picture resolution-->
</isSupportImgResolutionCfg>
<isImgTargetOverlap opt="true,false" /><!--req, xs:boolean, whether to overlay target information on captured
picture-->
<isImgRuleOverlap opt="true,false" /><!--req, xs:boolean, whether to overlay rule information on captured
picture-->
</IntelliImage>
<VideoOverlapInfo>
<isOverlapIntelli opt="true,false" /><!--req, xs:boolean, whether to overlay intelligent information-->
<isOverlapTarget opt="true,false" /><!--req, xs:boolean-->
<isOverlapRule opt="true,false" /><!--req, xs:boolean-->
</VideoOverlapInfo>
<IntelliAnalysisEnable opt="true,false" /><!--req, xs:boolean, whether to enable VCA-->
<DisplayTrajectory><!--opt, display the target's moving path in live view-->

249
Intelligent Security API (Facial) Developer Guide

<enabled opt="true,false"><!--req, xs:boolen, enable or not--></enabled>


<durationLimit opt="5s,10s,20s,30s"> <!--opt, xs:string, the max. time duration of display--></durationLimit>
</DisplayTrajectory>
<targetMarkingColorEnabled opt="true,false">
<!--req, xs:boolen, whether enables marking different attributes with different colors-->
</targetMarkingColorEnabled>
</BehaviorInfo>
<FaceCaptureInfo><!--dep-->
<imgQuality opt="best,good,general" /><!--req, xs:string, picture quality-->
<isImgTargetOverlap opt="true,false" /><!--req, xs:boolean, whether to overlay target information on captured
picture-->
<VideoOverlapInfo>
<isOverlapIntelli opt="true,false" /><!--req, xs:boolean, whether to overlay intelligent information-->
<isOverlapTarget opt="true,false" /><!--req, xs:boolean-->
<isOverlapRule opt="true,false" /><!--req, xs:boolean-->
</VideoOverlapInfo>
<backgroundUpload opt="true,false" /><!--opt, xs: boolean-->
<imgResolutionWidth opt="1280,1280,1920,2560,3072,3840"/>
<imgResolutionHeight opt="720,960,1080,1440,1720,2160"/>
<TargetImgInfoCap><!--opt, capture configuration capability-->
<targetImgType opt="custom,head,headShoulders,human">
<!--opt, xs:string, capture type: custom, head, headShoulders (head and shoulder), human (all body)-->
</targetImgType>
<TargetImgSize><!--dep, capturd target picture size, it is valid when targetImgType is custom-->
<widthRatio min="1.0" max="5.0">
<!--req, xs: float, width ratio of captured target picture-->
</widthRatio>
<upperPartHeightRatio min="1.0" max="3.0">
<!--req, xs:float, height ratio of upper part (above the chin) of captured target picture-->
</upperPartHeightRatio>
<underPartHeightRatio min="0" max="10.0">
<!--req, xs:float, height ratio of lower part (below the chin) of captured target picture-->
</underPartHeightRatio>
</TargetImgSize>
<fixedPixelEnable opt="true,false">
<!--opt, xs:boolean, whether to enable fixed pixel for capture-->
</fixedPixelEnable>
<heightPixel min="50" max="1000" def="100">
<!--dep, xs:integer, height pixels of captured target picture-->
</heightPixel>
<HeadTargetImgSizeCap><!--opt, face picture size capability-->
<widthRatio></widthRatio>
<upperPartHeightRatio></upperPartHeightRatio>
<underPartHeightRatio></underPartHeightRatio>
</HeadTargetImgSizeCap>
<HeadShouldersTargetImgSizeCap><!--opt, size capability of upper human body picture-->
<widthRatio></widthRatio>
<upperPartHeightRatio></upperPartHeightRatio>
<underPartHeightRatio></underPartHeightRatio>
</HeadShouldersTargetImgSizeCap>
<HumanShouldersTargetImgSizeCap><!--opt, size capability of whole human body picture-->
<widthRatio></widthRatio>

250
Intelligent Security API (Facial) Developer Guide

<upperPartHeightRatio></upperPartHeightRatio>
<underPartHeightRatio></underPartHeightRatio>
</HumanShouldersTargetImgSizeCap>
</TargetImgInfoCap>
<backgroundIntervalUpload min="0" max="65535">
<!--optional, xs:intger, upload interval of the captured face picture, unit: second, range: [0,65535); it is invalid when
the value of backgroundUpload is false-->
<!--this parameter is applicable to user who cares network traffic and storage, if the face thermography alarm is
triggered or no face appears in the scene, ignore this node; if the value of this node is 0, it indicates uploading the real-
time captured face picture-->
</backgroundIntervalUpload>
</FaceCaptureInfo>
<isSupportAlgVersionInfoCfg><!--req, xs: boolean, whether support configuring algorithm library version--></
isSupportAlgVersionInfoCfg>
<AlgVersionInfo>
<AlgItem>
<id><!--ro, xs: string--></id>
<algName><!--ro, xs: string--></algName>
</AlgItem>
</AlgVersionInfo>
</IntelliResourceCap>

Remarks
The resolutions of captured picture and video should be same.

7.90 XML_MaskInfo
XML message about result of importing pictures and additional information to list library
<?xml version="1.0" encoding="UTF-8"?>
<MaskInfo version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<PID><!--optional, xs:string, picture ID returned after importing the picture, which is linked with the structured
information--></PID>
<picURL>
<!--optional, xs:string, picture URL generated after importing the picture; this node will not be returned if the value
of pictureSaveMode is noSave-->
</picURL>
<isNoSaveFDPicture>
<!--optional, xs:boolean, whether to save pictures in list library; it is true if the value of pictureSaveMode is noSave,
otherwise this node will not be returned-->
</isNoSaveFDPicture>
</MaskInfo>

7.91 XML_ModelingRangeList
ModelingRangeList message in XML format

251
Intelligent Security API (Facial) Developer Guide

<ModelingRangeList version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">


<ModelingRange>
<FDID><!--req,xs:string, face picture library ID--></FDID>
<PID><!--req,xs:string, face picture ID--></PID>
</ModelingRange>
</ModelingRangeList>

Example
ModelingRangeList Message Example
<ModelingRangeList>
<ModelingRange>
<FDID>3</FDID>
<PID>5</PID>
</ModelingRange>
</ModelingRangeList>

7.92 XML_ModelingRangeTaskState
ModelingRangeTaskState message in XML format
<ModelingRangeTaskState version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<taskTotalNumber>
<!--req,xs:integer, total number of tasks-->
</taskTotalNumber>
<completeNumber>
<!--req,xs:integer, number of completed tasks-->
</completeNumber>
<failedNumber>
<!--opt,xs:integer, number of face pictures with modeling failed, if all pictures are modeled, this node will not be
returned-->
</failedNumber>
</ModelingRangeTaskState>

Example
ModelingRangeTaskState Message Example
<ModelingRangeTaskState version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<taskTotalNumber>1</taskTotalNumber>
<completeNumber>0</completeNumber>
<failedNumber>0</failedNumber>
</ModelingRangeTaskState>

7.93 XML_ModelingStatus
XML message about modeling status

252
Intelligent Security API (Facial) Developer Guide

<ModelingStatus version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">


<FDID><!--required, xs:string, face picture library ID--></FDID>
<PID><!--required, xs:string, face picture ID--></PID>
<name><!--required, xs:string, pictur name--></name>
<status><!--required, xs:string, "success,failed,none"--></status>
<reason><!--depend, it is valid when the value of status is "failed"-->
<!--optional, xs:string,
"noface,faceSizeSmall,shadeFace,unknow,imageURLDownloadFailed,imageURLDownloadNotStart"-->
</reason>
<customHumanID><!--optional, xs:string, minLen=32, custom face picture ID--><customHumanID>
<customFaceLibID><!--optional, xs:string, minLen=32, custom face picture library ID--><customFaceLibID>
</ModelingStatus>

Example
Message Example
<ModelingStatus version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<FDID>1</FDID>
<PID>1</PID>
<name>face_540258350_20160712175253141</name>
<status>none</status>
<customFaceLibID />
<customHumanID />
</ModelingStatus>

7.94 XML_ModelingStatusList
ModelingStatusList message in XML format
<ModelingStatusList version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<ModelingStatus/><!--see
XML_ModelingStatus
for details-->
</ModelingStatusList>

7.95 XML_PersonInfoExtend
PersonInfoExtend message in XML format
<PersonInfoExtend version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id min="" max="">
<!--req,xs:integer,person extension information No., which starts from 1-->
</id>
<enable>
<!--req,xs:boolean, enable person extension information-->
</enable>
<name min="" max="">
<!--opt,xs:string, label name of person extension information-->

253
Intelligent Security API (Facial) Developer Guide

</name>
<value min="" max="">
<!--opt,xs:string, label content of person extension information-->
</value>
</PersonInfoExtend>

7.96 XML_PersonInfoExtendList
PersonInfoExtendList message in XML format
<PersonInfoExtendList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<PersonInfoExtend/><!--see
XML_PersonInfoExtend
for details-->
</PersonInfoExtendList>

7.97 XML_PicInfoOverlap
PicInfoOverlap message in XML format
<PicInfoOverlap version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<Overlap>
<enabled> <!-- opt, xs: boolean--> </enabled>
<OverlapItemList><!--opt-->
<OverlapItem>
<id><!--req, xs:integer --></id>
<item opt="positionInfo,cameraNo,captureTime,sex,age,GPS">
<!--req, xs:string, overlay information type: positionInfo (detection position information), cameraNo (device No.),
captureTime (captured time), sex (gender), age, GPS (device longitude and latitude information)-->
</item>
</OverlapItem>
<OverlapItemList>
</Overlap>
</PicInfoOverlap>

Example
PicInfoOverlap Message Example
<PicInfoOverlap version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<Overlap>
<enabled />
<OverlapItemList>
<OverlapItem>
<id />
<item opt="positionInfo,cameraNo,captureTime" />
</OverlapItem>
</OverlapItemList>

254
Intelligent Security API (Facial) Developer Guide

</Overlap>
</PicInfoOverlap>

7.98 XML_PictureUploadData
PictureUploadData message in XML format
<PictureUploadData version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<FDID><!--req,xs:string, face picture library ID--></FDID>
<FaceAppendData><!--see the message XML_FaceAppendData for details-->
</PictureUploadData>

See Also
XML_FaceAppendData

7.99 XML_PictureUploadDataList
XML message about data file in URL format
<?xml version="1.0" encoding="utf-8"?>
<PictureUploadDataList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<PictureUploadData>
<customFaceLibID><!--required, xs:string, ID of custom face picture library--></customFaceLibID>
<FaceAppendData>
<bornTime><!--optional, xs:string, date of birth, ISO8601 time format, the maximum length is 32--></bornTime>
<name><!--required, xs:string, person name, whose length is between 1 bit and 32 bits--></--></name>
<sex><!--optional, xs:string,gender: "male,female"--></sex>
<province><!--optional, xs:string, province--></province>
<city><!--optional, xs:string, city--></city>
<certificateType>
<!--optional, xs:string, certificate types: "officerID","ID"-identity card, "passportID", and "other"-->
</certificateType>
<certificateNumber>
<!--dependent, xs:string, certificate No., its length varies with the certificate type; for "officerID", "ID", "other",
the maximum No. length is between 8 bits and 18 bits; for "passportID", the maximum No. length is between 8 bits
and 32 bits-->
</certificateNumber>
<PersonInfoExtendList><!--optional, custom extension information list of person-->
<PersonInfoExtend><!--list-->
<id><!--required, xs:integer,person extension information No., which starts from 1--></id>
<enable><!--required, xs:boolean, whethe rto enable person information extension--></enable>
<name><!--optional, xs:string, name of person extension information--></name>
<value><!--optional, xs:string, details of person extension information--></value>
</PersonInfoExtend>
</PersonInfoExtendList>
<phoneNumber><!--optional, xs:string, phone number, whose length is between 1 bit and 64 bits--></
phoneNumber>
<RegionCoordinatesList><!--optional, face target for data modeling-->

255
Intelligent Security API (Facial) Developer Guide

<RegionCoordinates><!--required, coordinate list-->


<positionX><!--required, xs:integer, x-coordinate--></positionX>
<positionY><!--required, xs:integer, y-coordinate--></positionY>
</RegionCoordinates>
</RegionCoordinatesList>
<customHumanID><!--required, xs:string, custom person ID, whose length is between 1 bit and 64 bits--></
customHumanID>
<faceDescribe><!--optional, xs:string, face description information--></faceDescribe>
</FaceAppendData>
<picURL><!--required, xs:string, picture URL--></picURL>
<URLCertificationType><!--required, xs:string, authentication mode of picture URL: " CEOSSToken", "AWS2_0"--></
URLCertificationType>
</PictureUploadData>
</PictureUploadDataList>

7.100 XML_ResponseStatus
XML message about response status
<ResponseStatus version="2.0" xmlns="http://www.std-cgi.org/ver20/XMLSchema">
<requestURL>
<!--required, read-only, xs:string, request URL-->
</requestURL>
<statusCode>
<!--required, read-only, xs:integer, status code: 0,1-OK, 2-Device Busy, 3-Device Error, 4-Invalid Operation, 5-Invalid
XML Format, 6-Invalid XML Content, 7-Reboot Required, 9-Additional Error-->
</statusCode>
<statusString>
<!--required, read-only, xs:string, status description: OK, Device Busy, Device Error, Invalid Operation, Invalid XML
Format, Invalid XML Content, Reboot, Additional Error-->
</statusString>
<subStatusCode>
<!--required, read-only, xs:string, describe the error reason in detail-->
</subStatusCode>
</ResponseStatus>

Note
See Response Codes of Text Protocol for details about sub status codes and corresponding error
codes.

7.101 XML_Schedule
Schedule message in XML format
<Schedule version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<id><!--required, xs:string, ID--></id>
<eventType>
<!--optional, xs:string, alarm/event types, see details in the "Remarks" below-->

256
Intelligent Security API (Facial) Developer Guide

</eventType>
<inputIOPortID><!--read-only, dependent, xs:string, alarm input No.--></inputIOPortID>
<outputIOPortID><!--read-only, dependent, xs:string, alarm output No.--></inputIOPortID>
<videoInputChannelID><!--read-only, dependent, xs:string, video input channel ID--></videoInputChannelID>
<TimeBlockList size="8"><!--required-->
<TimeBlock><!--list-->
<dayOfWeek>
<!--optional, xs:integer, day of the week based on ISO8601, "1"=Monday, ...-->
</dayOfWeek>
<TimeRange><!--required-->
<beginTime><!--required, xs:time, ISO8601 time--></beginTime>
<endTime><!--required, xs:time, ISO8601 time--></endTime>
</TimeRange>
<CustomExtension>
<vehicleDetectSceneID>
<!--required, xs:interger-->
</vehicleDetectSceneID>
</CustomExtension>
</TimeBlock>
</TimeBlockList>
<HolidayBlockList><!--optional-->
<TimeBlock><!--list-->
<TimeRange><!--required-->
<beginTime><!--required, xs:time, ISO8601 time--></beginTime>
<endTime><!--required, xs:time, ISO8601 time--></endTime>
</TimeRange>
</TimeBlock>
</HolidayBlockList>
</Schedule>

Remarks
The node <eventType> can be set to the following values: IO, VMD,videoloss, PIR,linedetection,
fielddetection, audioexception, facedetection, regionEntrance, regionExiting, loitering, group,
rapidMove, parking, unattendedBaggage,attendedBaggage, storageDetection, shipsDetection,
HUMANATTRIBUTE, humanAttribute, faceContrast, faceSnap, faceLib, whiteListFaceContrast,
personDensityDetection, personQueueDetection, mixedTargetDetection, fireDetection,
illegalParking, pedestrian, trafficAccident,construction, roadblock, abandonedObject,
parallelParking, parkingState, congestion, intersectionAnalysis, heatMap, reverseEntrance,
vehicledetect, safetyHelmetDetection, vibrationDetection, TMPA, faceThermometry, HBDLib.

7.102 XML_SmartCap
SmartCap capability message in XML format
<SmartCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<isSupportROI><!--opt, xs:boolean, whether to support ROI (Region of Interest)--></isSupportROI>
<isSupportFaceDetect><!--opt, xs:boolean, whether to support face detection--></isSupportFaceDetect>
<isSupportIntelliTrace><!--opt, xs:boolean--></isSupportIntelliTrace>
<isSupportFieldDetection><!--opt, xs:boolean, whether to support region detection--></isSupportFieldDetection>

257
Intelligent Security API (Facial) Developer Guide

<isSupportDefocusDetection><!--opt, xs:boolean--></isSupportDefocusDetection>
<isSupportAudioDetection><!--opt, xs:boolean--></isSupportAudioDetection>
<isSupportSceneChangeDetection><!--opt, xs:boolean, whether to support scene change detection--></
isSupportSceneChangeDetection>
<isSupportLineDetection><!--opt, xs:boolean--></isSupportLineDetection>
<isSupportRegionEntrance><!--opt, xs:boolean--></isSupportRegionEntrance>
<isSupportRegionExiting><!--opt, xs:boolean--></isSupportRegionExiting>
<isSupportLoitering><!--opt, xs:boolean--></isSupportLoitering>
<isSupportGroup><!--opt, xs:boolean--></isSupportGroup>
<isSupportRapidMove><!--opt, xs:boolean--></isSupportRapidMove>
<isSupportParking><!--opt, xs:boolean--></isSupportParking>
<isSupportUnattendedBaggage><!--opt, xs:boolean--></isSupportUnattendedBaggage>
<isSupportAttendedBaggage><!--opt, xs:boolean--></isSupportAttendedBaggage>
<isSupportPeopleDetection><!--opt, xs:boolean--></isSupportPeopleDetection>
<isSupportStorageDetection><!--opt, xs:boolean--></isSupportStorageDetection>
<isSupportShipsDetection><!--opt, xs:boolean--></isSupportShipsDetection>
<isSupportSmartCalibration><!--opt, xs:boolean--></isSupportSmartCalibration>
<isSupportShield><!--opt, xs:boolean, whether to support shielded area--></isSupportShield>
<isSupportAlgVersion><!--opt, xs:boolean, whether to support algorithm library version--></isSupportAlgVersion>
<isSupportVideoOverlap><!--opt, xs:boolean, whether to support text overlay--></isSupportVideoOverlap>
<isSupportParkingState><!--opt, xs:boolean, whether to support parking space status detection--></
isSupportParkingState>
<isSupportChannelResource><!--opt, xs:boolean--></ isSupportChannelResource>
<isSupportAnalysisUnitSwitch opt="true,false"><!--opt, xs:boolean, whether to support analysis unit switch--></
isSupportAnalysisUnitSwitch>
<isSupportHFPD><!--opt, xs:boolean, whether to support frequently appeared person detection--></isSupportHFPD>
<isSupportImageROI<!--opt, xs:boolean, whether to support smartJpeg (image ROI (Region of Interest))--></
isSupportImageROI>
</SmartCap>

7.103 XML_SubscribeEvent
SubscribeEvent message in XML format
<SubscribeEvent version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema" >
<heartbeat>
<!--optional, xs:integer, heartbeat interval, unit: second, the default value is 30s-->
</heartbeat>
<eventMode>
<!--required, xs:string, "all"-upload all alarms/events, "list"-upload specified alarm/event-->
</eventMode>
<EventList>
<Event><!--uploading mode of specified alarm/event, this node exists only when eventMode is "list"-->
<type>
<!--required, xs:string, alarm/event types, which are obtained from the capability, refer to Alarm/Event Types for
Subscription for its values-->
</type>
<minorAlarm>
<!--opt, xs:string, minor alarm type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type. This
node is required when type is "AccessControllerEvent"-->

258
Intelligent Security API (Facial) Developer Guide

</minorAlarm>
<minorException>
<!--opt, xs:string, minor exception type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type.
This node is required when type is "AccessControllerEvent"-->
</minorException>
<minorOperation>
<!--opt, xs:string, minor operation type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type.
This node is required when type is "AccessControllerEvent"-->
</minorOperation>
<minorEvent>
<!--opt, xs:string, minor event type: "0x01,0x02,0x03,0x04", see details in Access Control Event Type. This node is
required when type is "AccessControllerEvent"-->
</minorEvent>
<pictureURLType>
<!--opt, xs:string, alarm picture format: "binary"-binary, "localURL"-device local URL, "cloudStorageURL"-cloud
storage URL-->
</pictureURLType>
</Event>
</EventList>
<channels>
<!--optional, xs:string, event linked channel information, and multiple channels can be linked, each channel is
separated by comma, e.g., "1,2,3,4…"-->
</channels>
<channels>
<!--optional, xs:string, specify channels (each channel is separated by comma, e.g., "1,2,3,4…") to be armed, this
node does not exist if you want to arm all channels, and if this node exists, the sub node <channels> in the node
<Event> is invalid-->
</channels>
<identityKey max="64"/>
<!--opt, xs: string, interaction command of subscription, supports subscribing comparison results of face picture
library (importing with this command), the maximum length is 64-->
</SubscribeEvent>

7.104 XML_SubscribeEventCap
SubscribeEventCap capability message in XML format
<SubscribeEventCap version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<heartbeat min="" max="" />
<!--optional, heartbeat time interval, unit: second-->
<format opt="xml,json"/><!--req, supported message format-->
<channelMode opt="all,list" />
<!--required, channel subscription mode: "all"-subscribe events/alarms of all channels, "list"-subscribe events/
alarms of specific channels-->
<eventMode opt="all,list" />
<!--required, event subscription mode: "all"-subscribe all event types (must be supported), "list"-subscribe specific
event types, if "list" is returned, "all" will also be returned-->
<!--if both the channelMode and eventMode returns "all", it indicates that the device does not support subscribing
event/alarm by event type or channel-->
<EventList><!--required, dependent, upload mode of specified alarms/events, it is valid only when eventMode is

259
Intelligent Security API (Facial) Developer Guide

"list"-->
<Event><!--required-->
<type><!--required, xs:string, refer to Supported Alarm/Event Types for details--></type>
<minorAlarm opt="0x400,0x401,0x402,0x403">
<!--opt, xs:string, minor alarm type, see details in Access Control Event Type. This node is required when type is
"AccessControllerEvent"-->
</minorAlarm>
<minorException opt="0x400,0x401,0x402,0x403">
<!--opt, xs:string, minor exception type, see details in Access Control Event Type. This node is required when type
is "AccessControllerEvent"-->
</minorException>
<minorOperation opt="0x400,0x401,0x402,0x403">
<!--opt, xs:string, minor operation type, see details in Access Control Event Type. This node is required when type
is "AccessControllerEvent"-->
</minorOperation>
<minorEvent opt="0x01,0x02,0x03,0x04">
<!--opt, xs:string, minor event type, see details in Access Control Event Type. This node is required when type is
"AccessControllerEvent"-->
</minorEvent>
<pictureURLType opt="binary,localURL,cloudStorageURL" def=""/>
<!--opt, xs:string, alarm picture format: "binary"-binary, "localURL"-device local URL, "cloudStorageURL"-cloud
storage URL, and the def is followed by the default format-->
</Event>
</EventList>
<pictureURLType opt="binary,localURL,cloudStorageURL" def=""/>
<!--opt, xs:string, alarm picture format: "binary"-binary picture, "localURL"-device local URL, "cloudStorageURL"-
cloud storage URL. This node is the method of uploading all pictures related to the event. If this node is applied,
<pictureURLType> in <Event> is invalid; otherwise, pictures will be uploaded using the default method returned by the
device capability. For front-end devices, the default method is uploading binary pictures; for back-end devices, the
default method is by device local URL-->
<ChangedUploadSub><!--message subscription-->
<interval/><!--opt, xs:integer, lifecycle of arming GUID, the default value is 5 minutes, unit: second. The device will
generate new GUID for the arming connection after it is disconnected for the set lifecycle-->
<StatusSub>
<all/><!-- opt, xs:boolean, whether to subscribe all events-->
<channel/><!--opt, xs:boolean, whether to subscribe channel status. This node is not required when <all> is
"true"-->
<hd/><!--opt, xs:boolean, whether to subscribe disk status. This node is not required when <all> is "true"-->
<capability/><!--opt, xs:boolean, whether to subscribe capability change status. This node is not required when
<all> is "true"-->
</StatusSub>
</ChangedUploadSub>
<identityKey max="64"/>
<!--opt, xs: string, interaction command of subscription, supports subscribing comparison results of face picture
library (importing with this command), the maximum length is 64-->
</SubscribeEventCap>

7.105 XML_SubscribeEventResponse
SubscribeEventResponse message in XML format

260
Intelligent Security API (Facial) Developer Guide

<SubscribeEventResponse>
<id><!--req, xs:integer, subscription ID--></id>
<FailedEventList>
<!--opt, list of subscription failed events. When subscription failed, it should be returned, and the upper layer can
check whether all event/alarm subscriptions are succeeded via the existence of node FailedEventList-->
<Event>
<type>
<!--req, xs:string, refer to Supported Alarm/Event Types for details-->
</type>
<minorAlarm>
<!--opt, xs:string, minor alarm type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type. This
node is required when type is "AccessControllerEvent"-->
</minorAlarm>
<minorException>
<!--opt, xs:string, minor exception type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type.
This node is required when type is "AccessControllerEvent"-->
</minorException>
<minorOperation>
<!--opt, xs:string, minor operation type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type.
This node is required when type is "AccessControllerEvent"-->
</minorOperation>
<minorEvent>
<!--opt, xs:string, minor event type: "0x01,0x02,0x03,0x04", see details in Access Control Event Type. This node is
required when type is "AccessControllerEvent"-->
</minorEvent>
<pictureURLType>
<!--opt,xs:string, opt="binary,localURL,cloudStorageURL", alarm picture transmission mode: "binary"-binary,
"localURL"-device local URL, "cloudStorageURL"-cloud storage URL-->
</pictureURLType>
<channels>
<!--opt, xs:string, "1,2,3,4…", event related channel ID, supports multiple channels, and the channel ID is
separated by commas-->
</channels>
<subStatusCode>
<!--req, string, subscription failure error code-->
</subStatusCode>
</Event>
</FailedEventList>
</SubscribeEventResponse>

7.106 XML_SurplusCapacity
SurplusCapacity message in XML format
<SurplusCapacity version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<FDPicturesNumber>
<!--opt,xs:integer, supported number of remaining face pictures in the face picture library-->
</FDPicturesNumber>
</SurplusCapacity>

261
Intelligent Security API (Facial) Developer Guide

Example
SurplusCapacity Message Example for Front-End Device
<SurplusCapacity version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<FDPicturesNumber>29987</FDPicturesNumber>
</SurplusCapacity>

7.107 WhiteListFaceContrastScheduleList
WhiteListFaceContrastScheduleList message in XML format.
<WhiteListFaceContrastScheduleList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema">
<Schedule/><!-- opt -->
</WhiteListFaceContrastScheduleList>

262
Intelligent Security API (Facial) Developer Guide

Appendix A. Response Codes of Text Protocol


The response codes returned during the text protocol integration is based on the status codes of
HTTP. 7 kinds of status codes are predefined, including 1 (OK), 2 (Device Busy), 3 (Device Error), 4
(Invalid Operation), 5 (Invalid Message Format), 6 (Invalid Message Content), and 7 (Reboot
Required). Each kind of status code contains multiple sub status codes, and the response codes are
in a one-to-one correspondence with the sub status codes.

StatusCode=1

SubStatusCode Error Code Description


ok 0x1 Operation completed.
riskPassword 0x10000002 Risky password.
armProcess 0x10000005 Arming process.

StatusCode=2

Sub Status Code Error Code Description


noMemory 0x20000001 Insufficient memory.
serviceUnavailable 0x20000002 The service is not available.
upgrading 0x20000003 Upgrading.
deviceBusy 0x20000004 The device is busy or no
response.
reConnectIpc 0x20000005 The video server is
reconnected.
transferUpgradePackageFailed 0x20000006 Transmitting device upgrade
data failed.
startUpgradeFailed 0x20000007 Starting upgrading device
failed.
getUpgradeProcessfailed. 0x20000008 Getting upgrade status failed.
certificateExist 0x2000000B The Authentication certificate
already exists.

263
Intelligent Security API (Facial) Developer Guide

StatusCode=3

Sub Status Code Error Code Description


deviceError 0x30000001 Hardware error.
badFlash 0x30000002 Flash operation error.
28181Uninitialized 0x30000003 The 28181 configuration is not
initialized.
socketConnectError 0x30000005 Connecting to socket failed.
receiveError 0x30000007 Receive response message
failed.
deletePictureError 0x3000000A Deleting picture failed.
pictureSizeExceedLimit 0x3000000C Too large picture size.
clearCacheError 0x3000000D Clearing cache failed.
updateDatabasError 0x3000000F Updating database failed.
searchDatabaseError 0x30000010 Searching in the database
failed.
writeDatabaseError 0x30000011 Writing to database failed.
deleteDatabaseError 0x30000012 Deleting database element
failed.
searchDatabaseElementError 0x30000013 Getting number of database
elements failed.
cloudAutoUpgradeException 0x30000016 Downloading upgrade packet
from cloud and upgrading
failed.
HBPException 0x30001000 HBP exception.
UDEPException 0x30001001 UDEP exception
elasticSearchException 0x30001002 Elastic exception.
kafkaException 0x30001003 Kafka exception.
HBaseException 0x30001004 Hbase exception.
sparkException 0x30001005 Spark exception.
yarnException 0x30001006 Yarn exception.
cacheException 0x30001007 Cache exception.

264
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


trafficException 0x30001008 Monitoring point big data
server exception.
faceException 0x30001009 Human face big data server
exception.
SSDFileSystemIsError 0x30001013 SSD file system error (Error
occurs when it is non-Ext4 file
system)
insufficientSSDCapacityForFPD 0x30001014 Insufficient SSD space for
person frequency detection
wifiException 0x3000100A Wi-Fi big data server exception
structException 0x3000100D Video parameters structure
server exception.
calibrationTimeout 0x30002051 Calibration timed out.
captureTimeout 0x30006000 Data collection timed out.
lowScore 0x30006001 Low quality of collected data.
uploadingFailed 0x30007004 Uploading failed.

StatusCode=4

Sub Status Code Error Code Description


notSupport 0x40000001 Not supported.
lowPrivilege 0x40000002 No permission.
badAuthorization 0x40000003 Authentication failed.
methodNotAllowed 0x40000004 Invalid HTTP method.
notSetHdiskRedund 0x40000005 Setting spare HDD failed.
invalidOperation 0x40000006 Invalid operation.
notActivated 0x40000007 Inactivated.
hasActivated 0x40000008 Activated.
certificateAlreadyExist 0x40000009 The certificate already exists.
operateFailed 0x4000000F Operation failed.
USBNotExist 0x40000010 USB device is not connected.

265
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


upgradePackageMoret 0x40001000 Up to 2GB upgrade package is allowed to be
han2GB uploaded.
IDNotexist 0x40001001 The ID does not exist.
synchronizationError 0x40001003 Synchronization failed.
synchronizing 0x40001004 Synchronizing.
importError 0x40001005 Importing failed.
importing 0x40001006 Importing.
fileAlreadyExists 0x40001007 The file already exists.
invalidID 0x40001008 Invalid ID.
backupnodeNotAllowe 0x40001009 Accessing to backup node is not allowed.
Log
exportingError 0x4000100A Exporting failed.
exporting 0x4000100B Exporting.
exportEnded 0x4000100C Exporting stopped.
exported 0x4000100D Exported.
IPOccupied 0x4000100E The IP address is already occupied.
IDAlreadyExists 0x4000100F The ID already exists.
exportItemsExceedLimi 0x40001010 No more items can be exported.
t
noFiles 0x40001011 The file does not exist.
beingExportedByAnoth 0x40001012 Being exported by others.
erUser
needReAuthentication 0x40001013 Authentication is needed after upgrade.
unitAddNotOnline 0x40001015 The added data analysis server is offline.
unitControl 0x40001016 The data analysis server is already added.
analysis unitFull 0x40001017 No more data analysis server can be added.
unitIDError 0x40001018 The data analysis server ID does not exist.
unitExit 0x40001019 The data analysis server already exists in the
list.
unitSearch 0x4000101A Searching data analysis server in the list failed.

266
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


unitNotOnline 0x4000101B The data analysis server is offline.
unitInfoEror 0x4000101C Getting data analysis server information failed.
unitGetNodeInfoError 0x4000101D Getting node information failed.
unitGetNetworkInfoErr 0x4000101E Getting the network information of data
or analysis server failed
unitSetNetworkInfoErr 0x4000101F Setting the network information of data analysis
or server failed
setSmartNodeInfoError 0x40001020 Setting node information failed.
setUnitNetworkInfoErr 0x40001021 Setting data analysis server network
or information failed.
unitRestartCloseError 0x40001022 Rebooting or shutting down data analysis server
failed.
virtualIPnotAllowed 0x40001023 Adding virtual IP address is not allowed.
unitInstalled 0x40001024 The data analysis server is already installed.
badSubnetMask 0x40001025 Invalid subnet mask.
uintVersionMismatche 0x40001026 Data analysis server version mismatches.
d
deviceMOdelMismatch 0x40001027 Adding failed. Device model mismatches.
ed
unitAddNotSelf 0x40001028 Adding peripherals is not allowed.
noValidUnit 0x40001029 No valid data analysis server.
unitNameDuplicate 0x4000102A Duplicated data analysis server name.
deleteUnitFirst 0x4000102B Delete the added data analysis server of the
node first.
getLocalInfoFailed 0x4000102C Getting the server information failed.
getClientAddedNodeFa 0x4000102D Getting the added node information of data
iled analysis server failed.
taskExit 0x4000102E The task already exists.
taskInitError 0x4000102F Initializing task failed.
taskSubmitError 0x40001030 Submiting task failed.
taskDelError 0x40001031 Deleting task failed.

267
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


taskPauseError 0x40001032 Pausing task failed.
taskContinueError 0x40001033 Starting task failed.
taskSeverNoCfg 0x40001035 Full-text search server is not configured.
taskPicSeverNoCfg 0x40001036 The picture server is not configured.
taskStreamError 0x40001037 Streaming information exception.
taskRecSDK 0x40001038 History recording is not supported.
taskCasaError 0x4000103A Cascading is not supported.
taskVCARuleError 0x4000103B Invalid VCA rule.
taskNoRun 0x4000103C The task is not executed.
unitLinksNoStorageNo 0x4000103D No node is linked with the data analysis server.
de Configure the node first.
searchFailed 0x4000103E Searching video files failed.
searchNull 0x4000103F No video clip.
userScheOffline 0x40001040 The task scheduler service is offline.
updateTypeUnmatche 0x40001041 The upgrade package type mismatches.
d
userExist 0x40001043 The user already exists.
userCannotDelAdmin 0x40001044 The administrator cannot be deleted.
userInexistence 0x40001045 The user name does not exist.
userCannotCreatAdmi 0x40001046 The administrator cannot be created.
n
monitorCamExceed 0x40001048 Up to 3000 cameras can be added.
monitorCunitOverLimit 0x40001049 Adding failed. Up to 5 lower-levels are
supported by the control center.
monitorReginOverLimit 0x4000104A Adding failed. Up to 5 lower-levels are
supported by the area.
monitorArming 0x4000104B The camera is already armed. Disarm the
camera and try again.
monitorSyncCfgNotSet 0x4000104C The system parameters are not configured.
monitorFdSyncing 0x4000104E Synchronizing. Try again after completing the
synchronization.

268
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


monitorParseFailed 0x4000104F Parsing camera information failed.
monitorCreatRootFaile 0x40001050 Creating resource node failed.
d
deleteArmingInfo 0x40001051 The camera is already . Disarm the camera and
try again.
cannotModify 0x40001052 Editing is not allowed. Select again.
cannotDel 0x40001053 Deletion is not allowed. Select again.
deviceExist 0x40001054 The device already exists.
IPErrorConnectFailed 0x40001056 Connection failed. Check the network port.
cannotAdd 0x40001057 Only the capture cameras can be added.
serverExist 0x40001058 The server already exists.
fullTextParamError 0x40001059 Incorrect full-text search parameters.
storParamError 0x4000105A Incorrect storage server parameters.
picServerFull 0x4000105B The storage space of picture storage server is
full.
NTPUnconnect 0x4000105C Connecting to NTP server failed. Check the
parameters.
storSerConnectFailed 0x4000105D Connecting to storage server failed. Check the
network port.
storSerLoginFailed 0x4000105E Logging in to storage server failed. Check the
user name and password.
searchSerConnectFaile 0x4000105F Connecting to full-text search server failed.
d Check the network port.
searchSerLoginFailed 0x40001060 Logging in to full-text search server failed.
Check the user name and password.
kafkaConnectFailed 0x40001061 Connecting to Kafka failed. Check the network
port.
mgmtConnectFailed 0x40001062 Connecting to system failed. Check the network
port.
mgmtLoginFailed 0x40001063 Logging in to system failed. Check the user
name and password.

269
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


TDAConnectFailed 0x40001064 Connecting to traffic data access server failed.
Checking the server status.
86sdkConnectFailed 0x40001065 Connecting to listening port of iVMS-8600
System failed. Check the parameters.
nameExist 0x40001066 Duplicated server name.
batchProcessFailed 0x40001067 Processing in batch failed.
IDNotExist 0x40001068 The server ID does not exist.
serviceNumberReache 0x40001069 No more service can be added.
sLimit
invalidServiceType. 0x4000106A Invalid service type.
clusterGetInfo 0x4000106B Getting cluster group information failed.
clusterDelNode 0x4000106C Deletion node failed.
clusterAddNode 0x4000106D Adding node failed.
clusterInstalling 0x4000106E Creating cluster…Do not operate.
clusterUninstall 0x4000106F Reseting cluster…Do not operate.
clusterInstall 0x40001070 Creating cluster failed.
clusterIpError 0x40001071 Invalid IP address of task scheduler server.
clusterNotSameSeg 0x40001072 The master node and slave node must be in the
same network segment.
clusterVirIpError 0x40001073 Automatically getting virtual IP address failed.
Enter manually.
clusterNodeUnadd 0x40001074 The specified master(slave) node is not added.
clusterNodeOffline 0x40001075 The task scheduler server is offline.
nodeNotCurrentIP 0x40001076 The analysis node of the current IP address is
required when adding master and slave nodes.
addNodeNetFailed 0x40001077 Adding node failed. The network disconnected.
needTwoMgmtNode 0x40001078 Two management nodes are required when
adding master and slave nodes.
ipConflict 0x40001079 The virtual IP address and data analysis server's
IP address conflicted.
ipUsed 0x4000107A The virtual IP address has been occupied.

270
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


cloudAlalyseOnline 0x4000107B The cloud analytic server is online.
virIP&mainIPnotSame 0x4000107C The virtual IP address is not in the same
NetSegment network segment with the IP address of
master/slave node.
getNodeDispatchInfoFa 0x4000107D Getting node scheduler information failed.
iled
unableModifyManage 0x4000107E Editing management network interface failed.
mentNetworkIP The analysis board is in the cluster.
notSpecifyVirtualIP 0x4000107F Virtual IP address should be specified for
master and slave cluster.
armingFull 0x40001080 No more device can be armed.
armingNoFind 0x40001081 The arming information does not exist.
disArming 0x40001082 Disarming failed.
getArmingError 0x40001084 Getting arming information failed.
refreshArmingError 0x40001085 Refreshing arming information failed.
ArmingPlateSame 0x40001086 The license plate number is repeatedly armed.
ArmingParseXLSError 0x40001087 Parsing arming information file failed.
ArmingTimeError 0x40001088 Invalid arming time period.
ArmingSearchTimeErro 0x40001089 Invalid search time period.
r
armingRelationshipRea 0x4000108A No more relation can be created.
chesLimit
duplicateAarmingNam 0x4000108B The relation name already exists.
e
noMoreArmingListAdd 0x4000108C No more blacklist library can be armed.
ed
noMoreCamerasAdded 0x4000108D No more camera can be armed.
noMoreArmingListAdd 0x4000108E No more library can be linked to the camera.
edWithCamera
noMoreArmingPeriodA 0x4000108F No more time period can be added to the
dded arming schedule.

271
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


armingPeriodsOverlap 0x40001090 The time periods in the arming schedule are
ped overlapped.
noArmingAlarmInfo 0x40001091 The alarm information does not exist.
armingAlarmUnRead 0x40001092 Getting number of unread alarms failed.
getArmingAlarmError 0x40001093 Getting alarm information failed.
searchByPictureTimed 0x40001094 Searching picture by picture timeout. Search
Out again.
comparisonTimeRange 0x40001095 Comparison time period error.
Error
selectMonitorNumber 0x40001096 No more monitoring point ID can be filtered.
UpperLimit
noMoreComparisonTas 0x40001097 No more comparison task can be executed at
ksAdded the same time.
GetComparisonResultF 0x40001098 Getting comparison result failed.
ailed
comparisonTypeError 0x40001099 Comparison type error.
comparisonUnfinished 0x4000109A The comparison is not completed.
facePictureModelInvali 0x4000109B Invalid face model.
d
duplicateLibraryName. 0x4000109C The library name already exists.
noRecord 0x4000109D No record found.
countingRecordsFailed. 0x4000109E Calculate the number of records failed.
getHumanFaceFrameF 0x4000109F Getting face thumbnail from the picture failed.
ailed
modelingFailed. 0x400010A0 Modeling face according to picture URL failed.
1V1FacePictureCompar 0x400010A1 Comparison 1 VS 1 face picture failed.
isonFailed
libraryArmed 0x400010A2 The blacklist library is armed.
licenseExeedLimit 0x400010A3 Dongle limited.
licenseExpired 0x400010A4 Dongle expired.
licenseDisabled 0x400010A5 Unavailable dongle.

272
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


licenseNotExist 0x400010A6 The dongle does not exist.
SessionExpired 0x400010A7 Session expired .
beyondConcurrentLimi 0x400010A8 Out of concurrent limit.
t
stopSync 0x400010A9 Synchronization stopped.
getProgressFaild 0x400010AA Getting progress failed.
uploadExtraCaps 0x400010AB No more files can be uploaded.
timeRangeError 0x400010AC Time period error.
dataPortNotConnected 0x400010AD The data port is not connected.
addClusterNodeFailed 0x400010AE Adding to the cluster failed. The device is
already added to other cluster.
taskNotExist 0x400010AF The task does not exist.
taskQueryFailed 0x400010B0 Searching task failed.
modifyTimeRuleFailed 0x400010B2 The task already exists. Editing time rule is not
allowed.
modifySmartRuleFailed 0x400010B3 The task already exists. Editing VAC rule is not
allowed.
queryHistoryVideoFaile 0x400010B4 Searching history video failed.
d
addDeviceFailed 0x400010B5 Adding device failed.
addVideoFailed 0x400010B6 Adding video files failed.
deleteAllVideoFailed 0x400010B7 Deleting all video files failed.
createVideoIndexFailed 0x400010B8 Indexing video files failed.
videoCheckTypeFailed 0x400010B9 Verifying video files types failed.
configStructuredAddre 0x400010BA Configuring IP address of structured server
ssFailed failed.
configPictureServerAd 0x400010BB Configuring IP address of picture storaged
dressFailed server failed.
storageServiceIPNotExi 0x400010BD The storage server IP address does not exist.
st

273
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


syncBackupDatabaseFa 0x400010BE Synchronizing slave database failed. Try again.
iled
syncBackupNTPTimeFa 0x400010BF Synchronizing NTP time of slave server failed.
iled
clusterNotSelectLoopb 0x400010C0 Loopbacl address is not supported by the
ackAddress master or slave cluster.
addFaceRecordFailed 0x400010C1 Adding face record failed.
deleteFaceRecordFaile 0x400010C2 Deleting face record failed.
d
modifyFaceRecordFaile 0x400010C3 Editing face record failed.
d
queryFaceRecordFailed 0x400010C4 Searching face record failed.
faceDetectFailed 0x400010C5 Detecting face failed.
libraryNotExist 0x400010C6 The library does not exist.
blackListQueryExportin 0x400010C7 Exporting matched blacklists.
g
blackListQueryExporte 0x400010C8 The matched blacklists are exported.
d
blackListQueryStopExp 0x400010C9 Exporting matched blacklists is stopped.
orting
blackListAlarmQueryEx 0x400010CA Exporting matched blacklist alarms.
porting
blackListAlarmQueryEx 0x400010CB The matched blacklists alarms are exported.
ported
blackListAlarmQuerySt 0x400010CC Exporting matched blacklist alarms is stopped.
opExporting
getBigDataCloudAnalys 0x400010CD Getting big data cloud analytic information
isFailed failed.
setBigDataCloudAnalys 0x400010CE Configuring big data cloud analytic failed.
isFailed
submitMapSearchFaile 0x400010CF Submitting search by picture task failed.
d

274
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


controlRelationshipNot 0x400010D0 The relation does not exist.
Exist
getHistoryAlarmInfoFai 0x400010D1 Getting history alarm information failed.
led
getFlowReportFailed 0x400010D2 Getting people counting report failed.
addGuardFailed 0x400010D3 Adding arming configuration failed.
deleteGuardFailed 0x400010D4 Deleting arming configuration failed.
modifyGuardFailed 0x400010D5 Editing arming configuration failed.
queryGuardFailed 0x400010D6 Searching arming configurations failed.
uploadUserSuperCaps 0x400010D7 No more user information can be uploaded.
bigDataServerConnect 0x400010D8 Connecting to big data server failed.
Failed
microVideoCloudRequ 0x400010D9 Adding response information of micro video
estInfoBuildFailed cloud failed.
microVideoCloudRespo 0x400010DA Parsing response information of micro video
nseInfoBuildFailed cloud failed.
transcodingServerRequ 0x400010DB Adding response information of transcoding
estInfoBuildFailed server failed.
transcodingServerResp 0x400010DC Parsing response information of transcoding
onseInfoParseFailed server failed.
transcodingServerOffli 0x400010DD Transcoding server is offline.
ne
microVideoCloudOfflin 0x400010DE Micro video cloud is offline.
e
UPSServerOffline 0x400010DF UPS monitor server is offline.
statisticReportRequestI 0x400010E0 Adding response information of statistics report
nfoBuildFailed failed.
statisticReportRespons 0x400010E1 Parsing response information of statistics report
eInfoParseFailed failed.
DisplayConfigInfoBuild 0x400010E2 Adding display configuration information failed.
Failed
DisplayConfigInfoParse 0x400010E3 Parsing display configuration information failed.
Failed

275
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


DisplayConfigInfoSaveF 0x400010E4 Saving display configuration information failed.
ailed
notSupportDisplayConf 0x400010E5 The display configuration type is not supported.
igType
passError 0x400010E7 Incorrect password.
upgradePackageLarge 0x400010EB Too large upgrade package.
sesssionUserReachesLi 0x400010EC No more user can log in via session.
mit
ISO 0x400010ED Invalid ISO8601 time format.
8601TimeFormatError
clusterDissolutionFaile 0x400010EE Deleting cluster failed.
d
getServiceNodeInfoFail 0x400010EF Getting service node information failed.
ed
getUPSInfoFailed 0x400010F0 Getting UPS configuration information failed.
getDataStatisticsRepor 0x400010F1 Getting data statistic report failed.
tFailed
getDisplayConfigInfoFai 0x400010F2 Getting display configuration failed.
led
namingAnalysisBoardN 0x400010F3 Renaming analysis board is not allowed.
otAllowed
onlyDrawRegionsOfCo 0x400010F4 Only drawing convex polygon area is supported.
nvexPolygon
bigDataServerRespons 0x400010F5 Parsing response message of big data service
eInfoParseFailed failed.
bigDataServerReturnFa 0x400010F6 No response is returned by big data service.
iled
microVideoReturnFaile 0x400010F7 No response is returned by micro video cloud
d service.
transcodingServerRetu 0x400010F8 No response is returned by transcoding service.
rnFailed
UPSServerReturnFailed 0x400010F9 No response is returned by UPS monitoring
service.

276
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


forwardingServer 0x400010FA No response is returned by forwarding service.
ReturnFailed
storageServer 0x400010FB No response is returned by storage service.
ReturnFailed
cloudAnalysisServerRet 0x400010FC No response is returned by cloud analytic
urnFailed service.
modelEmpty 0x400010FD No model is obtained.
mainAndBackupNodeC 0x400010FE Editing the management interface IP address of
annotModifyManagem master node and backup node is not allowed.
entNetworkInterfaceIP
IDTooLong 0x400010FF The ID is too long.
pictureCheckFailed 0x40001100 Detecting picture failed.
pictureModelingFailed 0x40001101 Modeling picture failed.
setCloudAnalsisDefault 0x40001102 Setting default province of cloud analytic
ProvinceFailed service failed.
InspectionAreasNumbe 0x40001103 No more detection regions can be added.
rExceedLimit
picturePixelsTooLarge 0x40001105 The picture resolution is too high.
picturePixelsTooSmall 0x40001106 The picture resolution is too low.
storageServiceIPEmpty 0x40001107 The storage server IP address is required.
bigDataServerRequestI 0x40001108 Creating request message of big data service
nfoBuildFail failed.
analysiTimedOut 0x40001109 Analysis time out.
high- 0x4000110A Please enable high-performance mode.
performanceModeDisa
bled.
configuringUPSMonito 0x4000110B Configurating the UPS monitoring server time
ringServerTimedOut out. Check IP address.
cloudAnalysisRequestI 0x4000110C Creating request message of cloud analytic
nformationBuildFailed service failed.
cloudAnalysisResponse 0x4000110D Parsing response message of cloud analytic
InformationParseFailed service failed.

277
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


allCloudAnalysisInterfa 0x4000110E Calling API for cloud analytic service failed.
ceFailed
cloudAnalysisModelCo 0x4000110F Model comparison of cloud analytic service
mpareFailed failed.
cloudAnalysisFacePictu 0x40001110 Getting face quality grading of cloud analytic
reQualityRatingFailed service failed.
cloudAnalysisExtractFe 0x40001111 Extracting feature of cloud analytic service
aturePointsFailed failed.
cloudAnalysisExtractPr 0x40001112 Extracting property of cloud analytic service
opertyFailed failed.
getAddedNodeInformat 0x40001113 Getting the added nodes information of data
ionFailed analysis server failed.
noMoreAnalysisUnitsA 0x40001114 No more data analysis servers can be added.
dded
detectionAreaInvalid 0x40001115 Invalid detection region.
shieldAreaInvalid 0x40001116 Invalid shield region.
noMoreShieldAreasAd 0x40001117 No more shield region can be drawn.
ded
onlyAreaOfRectangleS 0x40001118 Only drawing rectangle is allowed in detection
hapeAllowed area.
numberReachedLlimit 0x40001119 Number reached the limit.
wait1~3MinutesGetIPAf 0x4000111A Wait 1 to 3 minutes to get IP address after
terSetupDHCP configuring DHCP.
plannedTimeMustbeH 0x4000111B Schedule must be half an hour.
alfAnHour
oneDeviceCannotBuild 0x4000111C Creating master and backup cluster requires at
Cluster least two devices.
updatePackageFileNot 0x4000111E Upgrade package is not uploaded.
Uploaded
highPerformanceTasks 0x4000111F Drawing detection area is not allowed under
NotSupportDrawingDe high-performance mode.
tectionRegions

278
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


controlCenterIDDoesN 0x40001120 The control center ID does not exist.
otExist
regionIDDoesNotExist 0x40001121 The area ID does not exist.
licensePlateFormatErro 0x40001122 Invalid license plate format.
r
managementNodeDoe 0x40001123 The operation is not supported.
sNotSupportThisOperat
ion
searchByPictureResour 0x40001124 The conditions for searching picture by picture
ceNotConfiged are not configured.
videoFileEncapsulation 0x40001125 The video container format is not supported.
FormatNotSupported
videoPackageFailure 0x40001126 Converting video container format failed.
videoCodingFormatNot 0x40001127 Video coding format is not supported.
Supported
monitorOfDeviceArmin 0x40001129 The camera is armed. Disarm it and try again.
gdeleteArmingInfo
getVideoSourceTypeFai 0x4000112A Getting video source type failed.
led
smartRulesBuildFailed 0x4000112B Creating VAC rule failed.
smartRulesParseFailed 0x4000112C Parsing VAC rule failed.
timeRulesBuildFailed 0x4000112D Creating time rule failed.
timeRulesParseFailed 0x4000112E Parsing time rule failed.
monitoInfoInvalid 0x4000112F Invalid camera information.
addingFailedVersionMi 0x40001130 Adding failed. The device version mismatches.
smatches
theInformationReturne 0x40001131 No response is returned by the cloud analytic
dAfterCloudAnalysisIsE service.
mpty
selectingIpAddressOfH 0x40001132 Setting IP address for master node and backup
ostAndSpareNodeFaile node failed. Check the node status.
dCheckTheStatus

279
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


theSearchIdDoesNotEx 0x40001133 The search ID does not exist.
ist
theSynchronizationIdD 0x40001134 The synchronization ID does not exist.
oesNotExist
theUserIdDoesNotExist 0x40001136 The user ID does not exist.
theIndexCodeDoesNot 0x40001138 The index code does not exist.
Exist
theControlCenterIdDoe 0x40001139 The control center ID does not exist.
sNotExist
theAreaIdDoesNotExist 0x4000113A The area ID does not exist.
theArmingLinkageIdDo 0x4000113C The arming relationship ID does not exist.
esNotExist
theListLibraryIdDoesNo 0x4000113D The list library ID does not exist.
tExist
invalidCityCode 0x4000113E Invalid city code.
synchronizingThePass 0x4000113F Synchronizing backup system password failed.
wordOfSpareServerFail
ed
editingStreamingTypeIs 0x40001140 Editing streaming type is not supported.
NotSupported
switchingScheduledTas 0x40001141 Switching scheduled task to temporary task is
kToTemporaryTaskIsNo not supported.
tSupported
switchingTemporaryTas 0x40001142 Switching temporary task to scheduled task is
kToScheduledTaskIsNot not supported.
Supported
theTaskIsNotDispatche 0x40001143 The task is not dispatched or is updating.
dOrItIsUpdating
thisTaskDoesNotExist 0x40001144 This task does not exist in the cloud analytic
serice.
duplicatedSchedule 0x40001145 Schedule period cannot be overlapped.
continuousScheduleWi 0x40001146 The continuous schedule periods with same
thSameAlgorithmType algorithm type should be merged.
ShouldBeMerged

280
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


invalidStreamingTimeR 0x40001147 Invalid streaming time period.
ange
invalidListLibraryType 0x40001148 Invalid list library type.
theNumberOfMatched 0x40001149 The number of search results should be larger
ResultsShouldBeLarger than 0.
Than0
invalidValueRangeOfSi 0x4000114A Invalid similarity range.
milarity
invalidSortingType 0x4000114B Invalid sorting type.
noMoreListLibraryCanB 0x4000114C No more lists can be added to one device.
eLinkedToTheDevice
InvalidRecipientAddres 0x4000114D Invalid address format of result receiver.
sFormat
creatingClusterFailedT 0x4000114E Insert the dongle before creating cluster.
heDongleIsNotPlugged
In
theURLIsTooLong 0x4000114F No schedule configured for the task.
noScheduleIsConfigure 0x40001150 No schedule configured for the task.
dForTheTask
theDongleIsExpiried 0x40001151 Dongle has expired.
dongleException 0x40001152 Dongle exception.
invalidKey 0x40001153 Invalid authorization service key.
decryptionFailed 0x40001154 Decrypting authorization service failed.
encryptionFailed 0x40001155 Encrypting authorization service failed.
AuthorizeServiceRespo 0x40001156 Authorization service response exception.
nseError
incorrectParameter 0x40001157 Authorization service parameters error.
operationFailed 0x40001158 Operating authorization service error.
noAnalysisResourceOr 0x40001159 No cloud analytic resources or no data in the list
NoDataInTheListLibrary library.
calculationException 0x4000115A Calculation exception.
allocatingList 0x4000115B Allocating list.

281
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


thisOperationIsNotSup 0x4000115C This operation is not supported by the cloud
portedByTheCloudAnal analytic serice.
ytics
theCloudAnalyticsIsInt 0x4000115D The operation of cloud analytic serice is
errupted interrupted.
theServiceIsNotReady 0x4000115E The service is not ready.
searchingForExternalA 0x4000115F Searching external interfaces failed.
piFailed
noOnlineNode 0x40001160 No node is online.
noNodeAllocated 0x40001161 No allocated node.
noMatchedList 0x40001162 No matched list.
allocatingFailedTooMa 0x40001163 Allocation failed. Too many lists of big data
nyFacePictureLists service.
searchIsNotCompleted 0x40001164 Current searching is not completed. Search
SearchAgain again.
allocatingListIsNotCom 0x40001165 Allocating list is not completed.
pleted
searchingForCloudAnal 0x40001166 Searching cloud analytic serice overtime.
yticsResultsFailed
noDataOfTheCurrentLi 0x40001167 No data in the current library. Make sure there
braryFound is data in the Hbase.
noFacePictureLibraryIs 0x40001168 No face picture library is armed for big data
Armed service.
noAvailableDataSlicing 0x40001169 Invalid standard version information.
VersionInformationAr
mFirstAndSliceTheData
duplicatedOperationDa 0x4000116A Slicing failed. Duplicated operation.
taSlicingIsExecuting
slicinDataFailedNoArm 0x4000116B Slicing failed. No arming information in the face
edFacePictureLibrary big data.
GenerateBenchmarkFil 0x4000116C Generating sliced file failed. Slice again.
eFailedSlicingAgain

282
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


NonprimaryNodeIsPro 0x4000116D Slicing is not allowed by the backup node.
hibitedFromSlcingData
NoReadyNodeToCluste 0x4000116E Creating the cluster failed. No ready node.
rServers
NodeManagementServ 0x4000116F The node management server is offline.
iceIsOffline
theCamera(s)OfTheCo 0x40001170 Some cameras in control center are already
ntrolCenterAreAlready armed. Disarm them and try again.
Armed.DisarmThemFir
st
theCamera(s)OfTheAre 0x40001171 Some cameras in this area are already armed.
aAreAlreadyArmed.Dis Disarm them and try again.
armThemFirst
configuringHigh- 0x40001172 Configuring high frequency people detection
frequencyPeopleDetect failed.
ionFailed
searchingForHigh- 0x40001173 Searching detection event logs of high-
frequencyPeopleDetect frequency people detection failed.
ionLogsFailed.
gettingDetailsOfSearch 0x40001174 Getting the search result details of high
edHigh- frequency alarms failed.
frequencyPeopleDetect
ionLogsFailed.
theArmedCamerasAlre 0x40001175 Some cameras in control center are already
adyExistInTheControlC armed.
enter
disarmingFailedTheCa 0x40001177 Disarming failed. The camera is not armed.
meraIsNotArmed
noDataReturned 0x40001178 No response is returned by the big data service.
preallocFailure 0x40001179 Pre-​allocating algorithm resource failed.
overDogLimit 0x4000117A Configuration failed. No more resources can be
pre-allocated.
analysisServicesDoNot 0x4000117B Not supported.
Support

283
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


commandAndDispatch 0x4000117C Scheduling service of cloud analytic serice error.
ServiceError
engineModuleError 0x4000117D Engine module of cloud analytic serice error.
streamingServiceError 0x4000117E Streaming component of cloud analytic serice
error.
faceAnalysisModuleErr 0x4000117F Face analysis module of cloud analytic serice
or error.
vehicleAnalysisModule 0x40001180 Vehicle pictures analytic module of cloud
Error analytic serice error.
videoStructuralAnalysis 0x40001181 Video structuring module of cloud analytic
ModuleError serice error.
postprocessingModule 0x40001182 Post-processing module of cloud analytic serice
Error error.
frequentlyAppearedPe 0x40001183 High frequency alarm is already armed for
rsonAlarmIsAlreadyCo blacklist library.
nfiguredForListLibrary
creatingListLibraryFaile 0x40001184 Creating list library failed.
d
invalidIdentiryKeyOfLis 0x40001185 Invalid identity key of list library.
tLibrary
noMoreDevicesCanBe 0x40001186 No more camera can be added.
Armed
settingAlgorithmTypeF 0x40001187 Allocating task resource failed.
orDeviceFailed
gettingHighFrequencyP 0x40001188 Setting high frequency alarm failed.
ersonDetectionAlarmIn
formationFailed
invalidSearchConfition 0x40001189 Invalid result.
theTaskIsNotComplete 0x4000118B The task is not completed.
d
resourceOverRemainLi 0x4000118C No more resource can be pre-allocated.
mit

284
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


frequentlyAppearedPe 0x4000118D The high frequency alarm of this camera is
rsonAlarmIs configured. Delete the arming information and
AlreadyConfiguredForT try again.
heCameraDisarmFirstA
ndTryAgain
switchtimedifflesslimit 0x4000123b Time difference between power on and off
should be less than 10 minutes.
associatedFaceLibNum 0x40001279 Maximum number of linked face picture
OverLimit libraries reached.
noMorePeopleNumCh 0x4000128A Maximum number of people number changing
angeRulesAdded rules reached.
noMoreViolentMotion 0x4000128D Maximum number of violent motion rules
RulesAdded reached.
noMoreLeavePositionR 0x4000128E Maximum number of leaving position rules
ulesAdded reached.
SMRDiskNotSupportRa 0x40001291 SMR disk does not support RAID.
id
OnlySupportHikAndCus 0x400012A3 IPv6 camera can only be added via Device
tomProtocol Network SDK or custom protocols.
vehicleEnginesNoReso 0x400012A6 Insufficient vehicle engine resources.
urce
noMoreRunningRulesA 0x400012A9 Maximum number of running rules reached.
dded
noMoreGroupRulesAd 0x400012AA Maximum number of people gathering rules
ded reached.
noMoreFailDownRules 0x400012AB Maximum number of people falling down rules
Added reached.
noMorePlayCellphone 0x400012AC Maximum number of playing cellphone rules
RulesAdded reached.
ruleEventTypeDuplicat 0x400012C8 Event type duplicated.
e
noMoreRetentionRules 0x400015AD Maximum number of people retention rules
Added reached.

285
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


noMoreSleepOnDutyR 0x400015AE Maximum number of sleeping on duty rules
ulesAdded reached.
polygonNotAllowCrossi 0x400015C2 Polygons are not allowed to cross.
ng
AITargetBPCaptureFail 0x400019C5 Capturing reference picture for AI target
comparison failed.
AITargetBPToDSPFail 0x400019C6 Sending reference picture to DSP for AI target
comparison failed.
AITargetBPDuplicateNa 0x400019C7 Duplicated name of reference picture for AI
me target comparison.
audioFileNameWrong 0x400019D0 Incorrect audio file name.
audioFileImportFail 0x400019D1 Importing audio file failed.
alreadyRunning 0x40002026 The application program is running.
notRunning 0x40002027 The application program is stopped.
packNotFound 0x40002028 The software packet does not exist.
alreadyExist 0x40002029 The application program already exists.
noMemory 0x4000202A Insufficient memory.
invalLicense 0x4000202B Invalid License.
noClientCertificate 0x40002036 The client certificate is not installed.
noCACertificate 0x40002037 The CA certificate is not installed.
authenticationFailed 0x40002038 Authenticating certificate failed. Check the
certificate.
clientCertificateExpired 0x40002039 The client certificate is expired.
clientCertificateRevocat 0x4000203A The client certificate is revoked.
ion
CACertificateExpired 0x4000203B The CA certificate is expired.
CACertificateRevocatio 0x4000203C The CA certificate is revoked.
n
connectFail 0x4000203D Connection failed.
loginNumExceedLimit 0x4000203F No more user can log in.

286
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


HDMIResolutionIllegal 0x40002040 The HDMI video resolution cannot be larger
than that of main and sub stream.
hdFormatFail 0x40002049 Formatting HDD failed.
formattingFailed 0x40002056 Formatting HDD failed.
encryptedFormattingFa 0x40002057 Formatting encrypted HDD failed.
iled
wrongPassword 0x40002058 Verifying password of SD card failed. Incorrect
password.
audioIsPlayingPleaseW 0x40002067 Audio is playing. Please wait.
ait
twoWayAudioInProgre 0x40002068 Two-way audio in progress. Please wait.
ssPleaseWait
calibrationPointNumFu 0x40002069 The maximum number of calibration points
ll reached.
completeTheLevelCalib 0x4000206A The level calibration is not set.
rationFirst
completeTheRadarCam 0x4000206B The radar-camera calibration is not set.
eraCalibrationFirst
pointsOnStraightLine 0x4000209C Calibrating failed. The calibration points cannot
be one the same line.
TValueLessThanOrEqua 0x4000209D Calibration failed. The T value of the calibration
lZero points should be larger than 0.
HBDLibNumOverLimit 0x40002092 The number of human body picture libraries
reaches the upper limit
theShieldRegionError 0x40002093 Saving failed. The shielded area should be the
ground area where the shielded object is
located.
theDetectionAreaError 0x40002094 Saving failed. The detection area should only
cover the ground area.
invalidLaneLine 0x40002096 Saving failed. Invalid lane line.
enableITSFunctionOfTh 0x400020A2 Enable ITS function of this channel first.
isChannelFirst
noCloudStorageServer 0x400020C5 No cloud storage server

287
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


NotSupportWithVideo 0x400020F3 This function is not supported.
Task
incorrectConsolePassw 0x40002106 Saving failed. Incorrect console command.
ord
noDetectionArea 0x400050df No detection area
armingFailed 0x40008000 Arming failed.
disarmingFailed 0x40008001 Disarming failed.
clearAlarmFailed 0x40008002 Clearing alarm failed.
bypassFailed 0x40008003 Bypass failed.
bypassRecoverFailed 0x40008004 Bypass recovery failed.
outputsOpenFailed 0x40008005 Opening relay failed.
outputsCloseFailed 0x40008006 Closing relay failed.
registerTimeOut 0x40008007 Registering timed out.
registerFailed 0x40008008 Registering failed.
addedByOtherHost 0x40008009 The peripheral is already added by other
security control panel.
alreadyAdded 0x4000800A The peripheral is already added.
armedStatus 0x4000800B The partition is armed.
bypassStatus 0x4000800C Bypassed.
zoneNotSupport 0x4000800D This operation is not supported by the zone.
zoneFault 0x4000800E The zone is in fault status.
pwdConflict 0x4000800F Password conflicted.
audioTestEntryFailed 0x40008010 Enabling audio test mode failed.
audioTestRecoveryFaile 0x40008011 Disabling audio test mode failed.
d
addCardMode 0x40008012 Adding card mode.
searchMode 0x40008013 Search mode.
addRemoterMode 0x40008014 Adding keyfob mode.
registerMode 0x40008015 Registration mode.
exDevNotExist 0x40008016 The peripheral does not exist.

288
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


theNumberOfExDevLi 0x40008017 No peripheral can be added.
mited
sirenConfigFailed 0x40008018 Setting siren failed.
chanCannotRepeatedB 0x40008019 This channel is already linked by the zone.
inded
inProgramMode 0x4000801B The keypad is in programming mode.
inPaceTest 0x4000801C In pacing mode.
arming 0x4000801D Arming.
masterSlaveIsEnable 0x4000802c The master-slave relationship has taken effect,
the slave radar does not support this operation.
forceTrackNotEnabled 0x4000802d Mandatory tracking is disabled.
isNotSupportZoneConfi 0x4000802e This area does not support the zone type.
gByLocalArea
alarmLineCross 0x4000802f Trigger lines are overlapped.
zoneDrawingOutOfRan 0x40008030 The drawn zone is out of detection range.
ge
alarmLineDrawingOut 0x40008031 The drawn alarm trigger line is out of detection
OfRange range.
hasTargetInWarningAr 0x40008032 The warning zone already contains targets.
ea Whether to enable mandatory arming?
radarMoudleConnectF 0x40008033 Radar module communication failed.
ail
importCfgFilePassword 0x40008034 Incorrect password for importing configuration
Err files.
overAudioFileNumLimi 0x40008038 The number of audio files exceeds the limit.
t
audioFileNameIsLong 0x40008039 The audio file name is too long.
audioFormatIsWrong 0x4000803a The audio file format is invalid.
audioFileIsLarge 0x4000803b The size of the audio file exceeds the limit.
pircamCapTimeOut 0x4000803c Capturing of pircam timed out.
pircamCapFail 0x4000803d Capturing of pircam failed.
pircamIsCaping 0x4000803e The pircam is capturing.

289
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


audioFileHasExisted 0x4000803f The audio file already exists.
subscribeTypeErr 0x4000a016 This metadata type is not supported to be
subscribed.
startAppFail / Starting running application program failed.
yuvconflict / The raw video stream conflicted.
overMaxAppNum / No more application program can be uploaded.
noFlash / Insufficient flash.
noFlash / The platform mismatches.

StatusCode=5

Sub Status Code Error Code Description


badXmlFormat 0x50000001 Invalid XML format.

StatusCode=6

Sub Status Code Error Code Description


badParameters 0x60000001 Invalid parameter.
badHostAddress 0x60000002 Invalid host IP address.
badXmlContent 0x60000003 Invalid XML content.
badIPv4Address 0x60000004 Invalid IPv4 address.
badIPv6Address 0x60000005 Invalid IPv6 address.
conflictIPv4Address 0x60000006 IPv4 address conflicted.
conflictIPv6Address 0x60000007 IPv6 address conflicted.
badDomainName 0x60000008 Invalid domain name.
connectSreverFail 0x60000009 Connecting to server failed.
conflictDomainName 0x6000000A Domain name conflicted.
badPort 0x6000000B Port number conflicted.
portError 0x6000000C Port error.
exportErrorData 0x6000000D Importing data failed.
badNetMask 0x6000000E Invalid sub-net mask.
badVersion 0x6000000F Version mismatches.

290
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


badDevType 0x60000010 Device type mismatches.
badLanguage 0x60000011 Language mismatches.
incorrentUserNameOrPasswor 0x600000012 Incorrect user name or
d password.
invalidStoragePoolOfCloudServ 0x600000013 Invalid storage pool. The
er storage pool is not configured
or incorrect ID.
noFreeSpaceOfStoragePool 0x600000014 Storage pool is full.
riskPassword 0x600000015 Risky password.
UnSupportCapture 0x600000016 Capturing in 4096*2160 or
3072*2048 resolution is not
supported when H.264+ is
enabled.
userPwdLenUnder8 0x60000023 At least two kinds of
characters, including digits,
letters, and symbols, should be
contained in the password.
userPwdNameSame 0x60000025 Duplicated password.
userPwdNameMirror 0x60000026 The password cannot be the
reverse order of user name.
beyondARGSRangeLimit 0x60000027 The parameter value is out of
limit.
DetectionLineOutofDetectionR 0x60000085 The rule line is out of region.
egion
DetectionRegionError 0x60000086 Rule region error. Make sure
the rule region is convex
polygon.
DetectionRegionOutOfCountin 0x60000087 The rule region must be
gRegion marked as red frame.
PedalAreaError 0x60000088 The pedal area must be in the
rule region.
DetectionAreaABError 0x60000089 The detection region A and B
must be in the a rule frame.

291
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


ABRegionCannotIntersect 0x6000008a Region A and B cannot be
overlapped.
customHBPIDError 0x6000008b Incorrect ID of custom human
body picture library
customHBPIDRepeat 0x6000008c Duplicated ID of custom human
body picture library
dataVersionsInHBDLibMismatc 0x6000008d Database versions mismatches
hes of human body picture library
invalidHBPID 0x6000008e Invalid human body picture PID
invalidHBDID 0x6000008f Invalid ID of human body
picture library
humanLibraryError 0x60000090 Error of human body picture
library
humanLibraryNumError 0x60000091 No more human body picture
library can be added
humanImagesNumError 0x60000092 No more human body picture
can be added
noHumanInThePicture 0x60000093 Modeling failed, no human
body in the picture
analysisEnginesNoResourceErr 0x60001000 No analysis engine.
or
analysisEnginesUsageExcced 0x60001001 The engine usage is
overloaded.
PicAnalysisNoResourceError 0x60001002 No analysis engine provided for
picture secondary recognition.
analysisEnginesLoadingError 0x60001003 Initializing analysis engine.
analysisEnginesAbnormaError 0x60001004 Analysis engine exception.
analysisEnginesFacelibImportin 0x60001005 Importing pictures to face
g picture library. Failed to edit
analysis engine parameters.
analysisEnginesAssociatedChan 0x60001006 The analysis engine is linked to
nel channel.

292
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


smdEncodingNoResource 0x60001007 Insufficient motion detection
encoding resources.
smdDecodingNoResource 0x60001008 Insufficient motion detection
decoding resources.
diskError 0x60001009 HDD error.
diskFull 0x6000100a HDD full.
facelibDataProcessing 0x6000100b Handling face picture library
data.
capturePackageFailed 0x6000100c Capturing packet failed.
capturePackageProcessing 0x6000100d Capturing packet.
noSupportWithPlaybackAbstra 0x6000100e This function is not supported.
ct Playback by video synopsis is
enabled.
insufficientNetworkBandwidth 0x6000100f Insufficient network
bandwidth.
tapeLibNeedStopArchive 0x60001010 Stop the filing operation of
tape library first.
identityKeyError 0x60001011 Incorrect interaction command.
identityKeyMissing 0x60001012 The interaction command is
lost.
noSupportWithPersonDensityD 0x60001013 This function is not supported.
etect The people density detection is
enabled.
ipcResolutionOverflow 0x60001014 The configured resolution of
network camera is invalid.
ipcBitrateOverflow 0x60001015 The configured bit rate of
network camera is invalid.
tooGreatTimeDifference 0x60001016 Too large time difference
between device and server.
noSupportWithPlayback 0x60001017 This function is not supported.
Playback is enabled.
channelNoSupportWithSMD 0x60001018 This function is not supported.
Motion detection is enabled.

293
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


channelNoSupportWithFD 0x60001019 This function is not supported.
Face capture is enabled.
illegalPhoneNumber 0x6000101a Invalid phone number.
illegalCertificateNumber 0x6000101b Invalid certificate No.
linkedCameraOutLimit 0x6000101c Connecting camera timed out.
achieveMaxChannelLimit 0x6000101e No more channels are allowed.
humanMisInfoFilterEnabledCha 0x6000101f No more channels are allowed
nNumError to enable preventing false
alarm.
humanEnginesNoResource 0x60001020 Insufficient human body
analysis engine resources.
taskNumberOverflow 0x60001021 No more tasks can be added.
collisionTimeOverflow 0x60001022 No more comparison duration
can be configured.
invalidTaskID 0x60001023 Invalid task ID.
eventNotSupport 0x60001024 Event subscription is not
supported.
invalidEZVIZSecretKey 0x60001034 Invalid verification code for Hik-
Connect.
needDoubleVerification 0x60001042 Double verification required
noDoubleVerificationUser 0x60001043 No double verification user
timeSpanNumOverLimit 0x60001044 Max. number of time buckets
reached
channelNumOverLimit 0x60001045 Max. number of channels
reached
noSearchIDResource 0x60001046 Insufficient searchID resources
noSupportDeleteStrangerLib 0x60001051 Deleting stranger library is not
supported
noSupportCreateStrangerLib 0x60001052 Creating stranger library is not
supported
behaviorAnalysisRuleInfoError 0x60001053 Behavior analysis rule
parameters error.

294
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


safetyHelmetParamError 0x60001054 Hard hat parameters error.
OneChannelOnlyCanBindOneE 0x60001077 No more engines can be
ngine bound.
engineTypeMismatch 0x60001079 Engine type mismatched.
badUpgradePackage 0x6000107A Invalid upgrade package.
AudioFileNameDuplicate 0x60001135 Duplicated audio file name.
CurrentAudioFileAIRuleInUseAl 0x60001136 The AI rule linkage related to
readyDelete current audio file has been
deleted.
TransitionUseEmmc 0x60002000 Starting device failed. The
EMMC is overused.
AdaptiveStreamNotEnabled 0x60002001 The stream self-​adaptive
function is not enabled.
AdaptiveStreamAndVariableBit 0x60002002 Stream self-​adptive and
rateEnabled variable bitrate function cannot
be enabled at the same time.
noSafetyHelmetRegion 0x60002023 The hard hat detection area is
not configured (if users save
their settings without
configuring the arming area,
they should be prompted to
configure one).
unclosedSafetyHelmet 0x60002024 The hard hat detection is
enabled (If users save their
settings after deleting the
arming area, they should be
prompted to disable hard hat
detection first and then delete
the arming area).
width/ 0x6000202C The width/height ratio of the
heightRatioOfPictureError uploaded picture should be in
the range from 1:2 to 2:1.
PTZNotInitialized 0x6000202E PTZ is not initialized.
PTZSelfChecking 0x6000202F PTZ is self-checking.
PTZLocked 0x60002030 PTZ is locked.

295
Intelligent Security API (Facial) Developer Guide

Sub Status Code Error Code Description


advancedParametersError 0x60002031 Auto-switch interval in
advanced parameters cannot
be shorter than parking
tolerance for illegal parking
detection in speed dome rule
settings.
resolutionError 0x60005003 Invalid resolution
deployExceedMax 0x60006018 The arming connections exceed
the maximum number.
detectorTypeMismatch 0x60008000 The detector type mismatched.
nameExist 0x60008001 The name already exists.
uploadImageSizeError 0x60008016 The size of the uploaded
picture is larger than 5 MB.
laneAndRegionOverlap / The lanes are overlapped.
unitConfigurationNotInEffect / Invalid unit parameter.
ruleAndShieldingMaskConflict / The line-rule region overlaps
with the shielded area.
wholeRuleInShieldingMask / There are complete
temperature measurement
rules in the shielded area.
LogDiskNotSetReadOnlyInGrou 0x60001100 The log HDD in the HDD group
pMode cannot be set to read-only.
LogDiskNotSetReDundancyInGr 0x60001101 The log HDD in the HDD group
oupMode cannot be set to redundancy.

StatusCode=7

SubStatusCode Error Code Description


rebootRequired 0x70000001 Reboot to take effect.

296

You might also like