Intelbras HTTP API v3.10
Intelbras HTTP API v3.10
DA
HU
A_
HT
TP
_A
PI
fo
r
In
te
lb
ra
s
V3.10
2022-04-20
Cybersecurity Recommendations
Mandatory actions to be taken towards cybersecurity
1. Change Passwords and Use Strong Passwords:
The number one reason systems get "hacked" is due to having weak or default passwords. It is
recommended to change default passwords immediately and choose a strong password whenever
possible. A strong password should be made up of at least 8 characters and a combination of special
characters, numbers, and upper and lower case letters.
2. Update Firmware
As is standard procedure in the tech-industry, we recommend keeping NVR, DVR, and IP camera
firmware up-to-date to ensure the system is current with the latest security patches and fixes.
"Nice to have" recommendations to improve your network security
DA
Regularly change the credentials to your devices to help ensure that only authorized users are able to
A_
● Change default HTTP and TCP ports for systems. These are the two ports used to communicate and
to view video feeds remotely.
_A
● These ports can be changed to any set of numbers between 1025-65535. Avoiding the default ports
PI
reduces the risk of outsiders being able to guess which ports you are using.
3. Enable HTTPS/SSL:
fo
Set up an SSL Certificate to enable HTTPS. This will encrypt all communication between your devices
r
and recorder.
In
4. Enable IP Filter:
te
Enabling your IP filter will prevent everyone, except those with specified IP addresses, from accessing
lb
the system.
5. Change ONVIF Password:
ra
On older IP Camera firmware, the ONVIF password does not change when you change the system's
s
credentials. You will need to either update the camera's firmware to the latest revision or manually
change the ONVIF password.
6. Forward Only Ports You Need:
● Only forward the HTTP and TCP ports that you need to use. Do not forward a huge range of numbers
to the device. Do not DMZ the device's IP address.
● You do not need to forward any ports for individual cameras if they are all connected to a recorder on
site; just the NVR is needed.
7. Limit Features of Guest Accounts:
If your system is set up for multiple users, ensure that each user only has rights to features and functions
they need to use to perform their job.
8. UPnP:
Cybersecurity Recommendations I
● UPnP will automatically try to forward ports in your router or modem. Normally this would be a good
thing. However, if your system automatically forwards the ports and you leave the credentials defaulted,
you may end up with unwanted visitors.
● If you manually forwarded the HTTP and TCP ports in your router/modem, this feature should be
turned off regardless. Disabling UPnP is recommended when the function is not used in real
applications.
9. SNMP:
Disable SNMP if you are not using it. If you are using SNMP, you should do so only temporarily, for
tracing and testing purposes only.
10. Multicast:
Multicast is used to share video streams between two recorders. Currently there are no known issues
involving Multicast, but if you are not using this feature, deactivation can enhance your network security.
11. Check the Log:
If you think that someone has gained unauthorized access to your system, you can check the system log.
The system log will show you which IP addresses were used to login to your system and what was
DA
accessed.
HU
this is to install the recorder in a lockbox, locking server rack, or in a room that is behind a lock and key.
HT
Cameras connected to the PoE ports on the back of an NVR are isolated from the outside world and
_A
The network your NVR and IP camera resides on should not be the same network as your public
fo
computer network. This will prevent any visitors or unwanted guests from getting access to the same
network the security system needs in order to function properly.
r
In
te
lb
ra
s
Cybersecurity Recommendations II
Foreword
Purpose
Reader
Safety Instructions
HU
The following categorized signal words with defined meaning might appear in the Manual.
A_
Indicates a high potential hazard which, if not avoided, will result in death
TP
TIPS Provides methods to help you solve a problem or save you time.
te
lb
text.
s
Revision History
2 V2.60 Add find media file with TrafficCar info. September 12, 2018
Add the "错误!未找到引用源。 错误!未找到引用源。"
3 V2.61 October 24, 2018
chapter.
4 V2.62 Add find media files with NonMotor info November 06, 2018
5 V2.63 Add close door and access control custom password November 27, 2018
6 V2.64 Add access control and video talk settings. December 12, 2018
7 V2.65 Add intelligent caps and resource usage info January 17, 2019
Foreword III
No. Version Revision Content Release Time
8 V2.66 Add people heat map, realtime trace, history trace info February 13, 2019
9 V2.67 Add subscribe heat map raw data April 18, 2019
10 V2.68 Add get traffic snap event info record May 15, 2019
11 V2.69 Add export traffic blacklist/redlist record May 20, 2019
12 V2.70 Add privacy masking May 29, 2019
13 V2.71 Add get the max and min temperature values June 3, 2019
14 V2.72 Add smart motion detection config June 27, 2019
15 V2.73 Add ecrypted download media file July 16, 2019
Adjust Camera Image, Exposure, Backlight, White
16 V2.74 Balance, Day-Night, Zoom and Focus, Lighting, Video July 25, 2019
in Options config.
17 V2.75 Add adjust angle and depth field August 13, 2019
DA
20 V2.78 Add face recognition event handler config October 30, 2019
HT
Add ObjectPlacementDetection
lb
Foreword IV
No. Version Revision Content Release Time
Add VideoAnalyseRule head. Type add ObjectPlacement
39 V2.97 April 25,2021
and ObjectRemoval
40 V2.98 Modify WorkSuitCompareServer May 11,2021
41 V2.99 Modify WorkSuitCompareServer doFind May 11,2021
Add trafficFlowStat stopFind, trafficFlowStat doFind and
42 V3.00 May 27,2021
trafficFlowStat startFind
Add configManager setConfig
43 V3.01 June 3,2021
IntelliSchemeTour.Enable
44 V3.02 Add configManager getConfig IntelliSchemeTour June 11,2021
45 V3.03 Add method cancel upgrade June 21, 2021
46 V3.04 doFindHistoryByPic Add Time Sept 29, 2021
47 V3.05 Add Cloud Upgrade, add find smd data December 22, 2021
48 V3.06 Add OpenAI January 11,2022
DA
As the device user or data controller, you might collect personal data of other such as face,
fo
fingerprints, car plate number, Email address, phone number, GPS and so on. You need to be in
r
compliance with the local privacy protection laws and regulations to protect the legitimate rights and
interests of other people by implementing measures include but not limited to: providing clear and
In
visible identification to inform data subject the existence of surveillance area and providing related
te
contact.
lb
ra
The Manual is for reference only. If there is inconsistency between the Manual and the
actual product, the actual product shall prevail.
We are not liable for any loss caused by the operations that do not comply with the Manual.
The Manual would be updated according to the latest laws and regulations of related
regions. For detailed information, see the paper manual, CD-ROM, QR code or our official
website. If there is inconsistency between paper manual and the electronic version, the
electronic version shall prevail.
All the designs and software are subject to change without prior written notice. The product
updates might cause some differences between the actual product and the Manual. Please
contact the customer service for the latest program and supplementary documentation.
There still might be deviation in technical data, functions and operations description, or
errors in print. If there is any doubt or dispute, please refer to our final explanation.
Foreword V
Upgrade the reader software or try other mainstream reader software if the Manual (in PDF
format) cannot be opened.
All trademarks, registered trademarks and the company names in the Manual are the
properties of their respective owners.
Please visit our website, contact the supplier or customer service if there is any problem
occurred when using the device.
If there is any uncertainty or controversy, please refer to our final explanation.
DA
HU
A_
HT
TP
_A
PI
fo
r
In
te
lb
ra
s
Foreword VI
Table of Contents
Cybersecurity Recommendations ........................................................................................................... I
Foreword .................................................................................................................................................. III
1 Overview................................................................................................................................................. 1
2 References........................................................................................................................................... 2
3 Definitions ........................................................................................................................................... 3
3.1 Abbreviations................................................................................................................................. 3
3.2 Syntax Convention ........................................................................................................................ 3
3.3 API Request Format...................................................................................................................... 3
3.4 Server Response Format .............................................................................................................. 4
3.5 Authentication................................................................................................................................ 5
DA
4 General APIs........................................................................................................................................ 7
A_
4.8.6 WLan................................................................................................................................. 96
4.8.7 Scan Wlan Devices........................................................................................................... 97
fo
4.8.8 UPnP................................................................................................................................. 98
r
Table of Contents IX
4.9.12 Storage Access Failure Event .......................................................................................116
4.9.13 Storage Low Space Event .............................................................................................116
4.9.14 Net Abort Event..............................................................................................................117
4.9.15 IP Conflict Event ............................................................................................................118
4.9.16 Get Channels Event Happened .....................................................................................118
4.9.17 Subscribe to Event Message .........................................................................................119
4.9.18 Get Capability of Event Management........................................................................... 121
4.9.19 [Config] Net Alarm Event .............................................................................................. 122
4.9.20 Set Net Alarm State ...................................................................................................... 123
4.9.21 GetSupportedEvents .................................................................................................... 124
4.10 Record ..................................................................................................................................... 124
4.10.1 Get Capability of Recording.......................................................................................... 124
4.10.2 Record Config ............................................................................................................... 125
4.10.3 Record Mode ................................................................................................................ 126
4.10.4 Media Global ................................................................................................................. 127
4.10.5 Find Media Files ........................................................................................................... 128
DA
4.10.14 Encrypted Download Media File with the File Name ................................................. 149
4.11 Log........................................................................................................................................... 149
fo
Table of Contents X
4.13.8 People Flow Heat Map Report Data Upload ................................................................ 168
4.13.9 ANPR Report Data Upload ........................................................................................... 169
4.13.10 Crowd Distribution Report Data upload ...................................................................... 170
4.13.11 Vehicle Density Report Data Upload .......................................................................... 171
5 Camera APIs ...................................................................................................................................... 173
5.1 Image ........................................................................................................................................ 173
5.1.1 Brightness, Contrast and Saturation .............................................................................. 173
5.1.2 Sharpness ....................................................................................................................... 174
5.1.3 Flip, Mirror and Rotate90 ................................................................................................ 175
5.2 Exposure ................................................................................................................................... 176
5.2.1 Exposure Config ............................................................................................................. 176
5.3 Backlight .................................................................................................................................... 178
5.3.1 Backlight Config .............................................................................................................. 178
5.4 White Balance ........................................................................................................................... 179
5.4.1 White Balance Config ..................................................................................................... 179
5.5 Day-Night .................................................................................................................................. 180
DA
Table of Contents XI
7 Display APIs ..................................................................................................................................... 207
7.1 GUI ............................................................................................................................................ 207
7.1.1 GUISet ............................................................................................................................ 207
7.2 Split Screen ............................................................................................................................... 208
7.2.1 Split Screen Mode .......................................................................................................... 208
7.3 Moniter Tour .............................................................................................................................. 209
7.3.1 Moniter Tour .................................................................................................................... 209
7.3.2 Enable Tour ..................................................................................................................... 210
7.3.3 Monitor Collection ........................................................................................................... 210
8 Comm APIs ....................................................................................................................................... 212
8.1 PTZ............................................................................................................................................ 212
8.1.1 PTZ Config ...................................................................................................................... 212
8.1.2 Get PTZ Protocol List ..................................................................................................... 213
8.1.3 Get PTZ Capability of Current Protocol .......................................................................... 213
8.1.4 Get PTZ Status ............................................................................................................... 215
8.1.5 PTZ Control .................................................................................................................... 215
DA
Table of Contents XV
13.2.15 Get Current Hot Cold Spot ......................................................................................... 370
13.2.16 Heat Image Temper PreAlarm Event.......................................................................... 371
13.2.17 Get Heat Map Info ...................................................................................................... 372
13.3 TemperCustom ........................................................................................................................ 374
13.3.1 Set Environment Temperature ...................................................................................... 374
14 Access Control APIs ..................................................................................................................... 375
14.1 Access User ............................................................................................................................ 375
14.1.1 Add Access User Face ................................................................................................. 375
14.1.2 Modify Access User Face ............................................................................................. 376
14.1.3 Delete Access User Face ............................................................................................. 376
14.1.4 Find Access User Face................................................................................................. 377
14.1.5 Add Access User Card and Fingerprint ........................................................................ 378
14.1.6 Modify Access User Card and Fingerprint.................................................................... 381
14.1.7 Delete Access User Card and Fingerprint .................................................................... 382
14.1.8 Find Access User Card and Fingerprint ....................................................................... 383
14.1.9 Get the Total Number of Records of Access User Card and Fingerprint ..................... 387
DA
15.2.5 Get the Total Number of Records of Access Control Custom Password ..................... 404
15.2.6 Get Access Control Caps ............................................................................................. 404
15.2.7 Get Lock Status ............................................................................................................ 405
15.2.8 [Config] Access Control General Setting ...................................................................... 406
15.2.9 [Config] Access Control Setting .................................................................................... 408
15.2.10 [Config] Wiegand Setting ............................................................................................ 412
15.2.11 [Config] Access Time Schedule Setting ...................................................................... 413
15.2.12 [Config] Special Day Group Setting............................................................................ 414
15.2.13 [Config] Special Days Schedule Setting ..................................................................... 415
15.2.14 [Config] MeasureTemperature Setting ....................................................................... 417
15.2.15 [Config] CitizenPictureCompare Setting ..................................................................... 420
15.2.16 Sending User Information ........................................................................................... 421
15.2.17 Updating User Information.......................................................................................... 423
15.2.18 Deleting All User Information ...................................................................................... 425
15.2.39 Starting Searching for Card Number Related Information ......................................... 442
TP
17.1.3 Get the File Information Found by the Finder .............................................................. 480
17.1.4 Stop the Finder ............................................................................................................. 481
te
Table of Contents XX
1 Overview
This document specifies the HTTP-based application programming interface of video products.
The HTTP-based interface provides the functionality for requesting snapshot and media stream,
controlling camera functions (for example, PTZ and focus), and getting and setting internal
parameter values.
The video products serve as a server. The client sends requests to server, and then server handles
requests and returns resources accordingly.
DA
HU
A_
HT
TP
_A
PI
fo
r
In
te
lb
ra
s
Overview 1
[1] RFC 2326 Real Time Streaming Protocol (RTSP)
2 References
References 2
3 Definitions
3.1 Abbreviations
The following abbreviations are used throughout this document.
Application Programming Interface. In the document, it especially presents
API
application programming interface of video products.
String shown in bold face denotes a brief explanatory note of the string close to it.
A_
Name-value pair in square brackets denotes content that is optional. For example,
"http ://<server>/cgi-bin/snapshot.cgi[?channel=1]" can be like this
HT
"http ://<server>/cgi-bin/snapshot.cgi".
TP
The API syntax must follow the standard of URI. (RFC 3986: Uniform Resource Identifiers
_A
(URI) Generic Syntax); that is, spaces and other reserved characters (e.g, ":", "/", "?", "@",
PI
";", "=", "+", ",", "$", "&") within a name-value pair should be replaced with %< ASCII hex>.
For example, the blank should be replaced with %20.
fo
To describe the range of a variable, we use some symbols such as "[]" and "{}". For
example, "[0-100]" denotes an integer not less than 0 and not larger than 100. "{0, 1, 2, 3}"
r
"[]" following a string denotes an array. The index is an integer and starts from 0. For
te
The variable may be different types: string, integer, bool or float. Integer is 32 bits. The
range of bool is "true" and "false".
ra
"O"means optional.
<protocol>://<server><abs_path>[?query]
protocol: URL scheme for the particular request. The http and https protocols are both supported in
this specification. So "http", as most of the APIs' default protocol except several RTSP APIs, can be
replaced by "https".
server: Server could be "hostname[:port]". The hostname can be IP address or the fully qualified
domain name of an IP device. The port is the port number of server listening for TCP connections.
If the port is not given, the default port is assumed. For HTTP, the default port is 80. For HTTPS, the
default port is 443.
Definitions 3
abs_path: The Request-URI for the resources is abs_path. The abs_path in this specification is
most often of the form "/cgi-bin/*.cgi".
query: The query field is a string of information to be interpreted by the resource. It consists of
resource-related parameters. And it must be listed in name-value pair syntax
(p1=v1&p2=v2&…&pn=vn).
For example: http://192.168.1.108/cgi-bin/snapshot.cgi?channel=1
Table 3-1
DA
501 Not Implemented The server has not implemented the service.
lb
If the HTTP code is 200, means the API execute success, and the response data in http body
ra
( maybe multipart ) can be a multiline key=value data, or a json object, or just a line with a word
"OK".
s
status.Focus=0.5
status.Zoom=0.5
…
Example: success respose with a word "OK"
HTTP/1.1 200 OK
Server: xxx
Content-Length: <length>
Definitions 4
OK
If the HTTP code is not 200, means the API execute failed, and the response data in http body
maybe empty, or just two line, first line is a word "Error"to indicate error happened, the second line
contain error detail.
Example: request does not fit with syntax.
HTTP/1.1 404 Not Found
Server: xxxx
Example: Request spells wrong.
HTTP/1.1 400 Bad Request
Server: xxx
Content-Length: <length>
Error
Bad Request!
Example: If the request fits with syntax but an error occurs while the server handles it, the response
DA
Server: xxx
A_
Content-Length: <length>
HT
TP
Error
Internal Server Error!
_A
PI
3.5 Authentication
fo
Video products support digest authentication, see RFC 7616 for detail. If the http request sent by
r
client does not provide valid "Authorization" header information, video products would return HTTP
In
status code 401 and some information for authentication, then client should calculate authentication
information according to RFC 7616, and sent request again with authentication information using
te
“Authorization” header. Video products return the required resource only if authorization information
lb
correct.
ra
For example:
s
1. When the client does not provoding digest authentication or the client calculates digest
authentication with expired "nonce" data, video product’s response is :
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Digest realm="DH_00408CA5EA04", qop="auth"
nonce="000562fdY631973ef04f77a3ede7c1832ff48720ef95ad",
opaque="5ccc069c403ebaf9f0171e9517f40e41", stale=TRUE
The "stale=TRUE" indicates that the "nonce" data in the request is expired and the client should use
the new "nonce" data to calculate the digest authorization and request again.
2. Then the client generate "nc" and "cnonce", calculates the digest authorization using
"username" "password" "HTTP method" "URI" "nc" "cnonce" "realm" "nonce" , according to
RFC 7616, and then sends it to video product :
Definitions 5
GET /cgi-bin/magicBox.cgi?action=getLanguageCaps HTTP/1.1
Authorization: Digest username="admin", realm="DH_00408CA5EA04", qop="auth",
nonce="000562fdY631973ef04f77a3ede7c1832ff48720ef95ad",
opaque="5ccc069c403ebaf9f0171e9517f40e41"
nc=00000001, cnonce="0a4f113b",
uri="/cgi-bin/magicBox.cgi?action=getLanguageCaps",
response="65002de02df697e946b750590b44f8bf"
If the digest authorization is correct, the video product will reply HTTP status code 200 with the
response data. If digest authorization is not correct, the video product will reply HTTP status code
403 . If the "nonce" data used to calculates digest authentication is expired, the video product will
reply HTTP status code 401 with stale=TRUE and new "nonce" data, then the client should use the
new "nonce" data to calculate the digest authorization and request again .
3.6 Conventions
DA
3.6.1 Channels
HU
A_
http://<server>/cgi-bin/mjpg/video.cgi[?channel=<ChannelNo>
TP
ChannelNo: integer, must starts from 1. Default is 1 if not present. But for response, the ‘ChannelNo’
_A
should start from 0. In other words, the request channel 1 equals response channel 0.
PI
fo
r
In
te
lb
ra
s
Definitions 6
4
The APIs specified in this section are supported by all video products.
General APIs
The format of the RTSP URL parameter for getting real-time media stream is as follows.
DA
URL rtsp://<server>:[port]/cam/realmonitor
Method DESCRIBE, SETUP, PLAY, PAUSE, TEARDOWN, ...
HU
Optional values:
r
0: Main stream
In
1: Sub stream 1
2: Sub stream 2
te
URL Example
lb
rtsp://192.168.1.108:554/cam/realmonitor?channel=1&subtype=0
ra
s
Response Example
RTSP/1.0 200 OK
CSeq: 1
Server: Rtsp Server/3.0
Content-Base: rtsp://192.168.1.108/cam/realmonitor?channel=1&subtype=0/
Content-Length: xxx
Content-Type: application/sdp
General APIs 7
v=0
o=- 2253484289 2253484289 IN IP4 0.0.0.0
s=Media Server
c=IN IP4 0.0.0.0
t=0 0
a=control:*
a=range:npt=now-
m=video 0 RTP/AVP 98
a=control:trackID=0
a=framerate:25.000000
a=rtpmap:98 H265/90000
a=recvonly
Step 2: Establish a transmission channel for each media by executing the SETUP command.
Take RTP over UDP as an example:
Establish the UDP socket for receiving and sending UDP packages on 63088 and 63089 interfaces.
DA
Request Example
HU
CSeq: 2
HT
User-Agent: LibVLC/3.0.5
Transport: RTP/AVP;unicast;client_port=63088-63089
TP
_A
Response Example
PI
RTSP/1.0 200 OK
CSeq: 2
fo
Session: 1546116282447;timeout=60
In
Transport: RTP/AVP/UDP;unicast;client_port=63088-63089;server_port=24764-24765;ssrc=71B0AFDC
te
lb
Step 3: Execute the play command to play the media, and receive and send RTP and RTCP data
ra
Request Example
PLAY rtsp://192.168.1.108/cam/realmonitor?channel=1&subtype=0/ RTSP/1.0
CSeq: 3
User-Agent: LibVLC/3.0.5
Session: 1546116282447
Range: npt=0.000-
Response Example
RTSP/1.0 200 OK
CSeq: 3
Server: Rtsp Server/3.0
Session: 1546116282447
Range: npt=0.000-
RTP-Info: url=trackID=0;seq=45020;rtptime=1907404764
General APIs 8
Step 4: Execute the TEARDOWN command to stop playing the media, and then disable the UDP
socket.
Request Example
TEARDOWN rtsp://192.168.1.108/cam/realmonitor?channel=1&subtype=0/ RTSP/1.0
CSeq: 4
User-Agent: LibVLC/3.0.5
Session: 1546116282447
Response Example
RTSP/1.0 200 OK
CSeq: 4
Server: Rtsp Server/3.0
Session: 1546116282447
DA
HU
A_
It's similar with "4.1.1 Get Real-Time Stream", except that there are parameters "starttime" and
TP
"endtime".
_A
URL rtsp://<server>:[port]/cam/playback
PI
from 1
te
URL Example
ra
rtsp://192.168.1.108:554/cam/playback?channel=1&starttime=2012_09_15_12_37_05&endtime=2012_
s
09_15_18_34_14
General APIs 9
4.1.4 Get MJPG Stream
Get a video stream encoded by mjpg ( motion jpeg ).
HTTP/1.1 200 OK
HT
Server: Device/1.0
TP
--<boundary>
Content-Type: image/jpeg
Content-Length:<image size>
fo
r
--<boundary>
te
Content-Type: image/jpeg
Content-Length:<image size>
lb
ra
--<boundary>
General APIs 10
Stop, Faster, Slower, Back,
NextFile, PreFile, NetFrame,
PrevFrame, Up, Down, Left,
Right, Enter, and Escape.
Request Example
{
"action": "Play"
}
Method POST
HT
slow play).
In
Request Example
te
{
lb
"action": "Speed"
}
ra
s
General APIs 11
Response Example
{
"result": "Slower 1×"
}
Method
Request Params ( key=value format in URL )
HU
Request Example
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=General
TP
_A
Response Example
ra
table.General.MachineID=20832748927
s
table.General.MachineName=DVR001
table.General.MachineAddress=XXX Road
…
Set Configure
Set configure detail by name. Each configure name has it’s specific configure detail. Please refer to
configure detail APIs in later [Config] chapters.
General APIs 12
ject[] configure detail. Please refer to configure
detail apis in later chapters.
Request Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&General.MachineID=20832748927&
General.MachineName=DVR001&General.MachineAddress=XXX%20Road
Method GET
A_
string/o
Each configure name has it’s specific
_A
http://192.168.1.108/cgi-bin/configManager.cgi?action=addConfig&General.MachineAddress=XXX%20
r
Road
In
Response Example
lb
OK
ra
Remove configure
s
Specific configuration fields can be obtained through getConfig. Only configuration fields can be deleted,
not configuration items. Each configure name has it’s specific configure detail. Please refer to configure
detail APIs in later [Config] chapters.
General APIs 13
OK
Response Example
_A
HTTP/1.1 200 OK
PI
Connection: close
Content-Length: 743087
fo
{
In
"ATM" : {
te
"DataSource" : "RS232",
lb
"DisplayPostion" : "lefttop",
"EncodeBlend" : true,
ra
"PreviewBlend" : true,
s
"ProtocolAbility" : [ "POS" ],
"ProtocolName" : "ATM\/POS",
"RecordChannels" : [ 0, 1, 2, 3 ]
},
……
}
General APIs 14
Request Params ( key=value format in URL )
Name Type R/O Description Example
names char[][32] R Array of the configuration names that [ "General", "UPnP" ]
needs to be restored to the default
values.
Request Example
http://<server>/cgi-bin/configManager.cgi?action=restore&names[0]=General&names[1]=UPnp
Method GET
A_
default values.
PI
Request Example
http://<server>/cgi-bin/configManager.cgi?action=restoreExcept&names[0]=General&names[1]=UPnp
fo
r
Response Example
te
OK
lb
ra
4.3 Audio
s
General APIs 15
Name Type R/O Description Example
result int R audio input channel number. 1
Response Example
result=1
Response Example
HT
result=2
TP
_A
Post audio stream to device, request is very long and client continues to send audio data. If client
fo
Method POST
te
audio packets
httptype string R
multipart: HTTP content type is
multipart/x-mixed-replace, and each audio packet
ends with a boundary string
channel int R The audio channel index which starts from 1. 1
Request Example ( singlepart )
POST http://192.168.1.108/cgi-bin/audio.cgi?action=postAudio&httptype=singlepart&channel=1 HTTP/
1.1
User-Agent: client/1.0
Content-Type: Audio/G.711A
Content-Length: 9999999
<Audio data>
<Audio data>
General APIs 16
…
Request Example ( multipart )
POST http://192.168.1.108/cgi-bin/audio.cgi?action=postAudio&httptype=multipart&channel=1 HTTP/
1.1
User-Agent: client/1.0
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
--<boundary>
Content-Type: Audio/G.711A
Content-Length: 800
<Audio data>
--<boundary>
Content-Type: Audio/G.711A
Content-Length: 800
DA
<Audio data>
HU
--<boundary>
…
A_
HT
( N/A )
PI
Audio/PCM PCM
In
Audio/ADPCM ADPCM
te
Audio/G.726 G.726
ra
Audio/G.729 G.729
s
Audio/MPEG2 MPEG2
Audio/AMR AMR
Audio/AAC AAC
General APIs 17
singlepart: HTTP content is a continuous flow of
audio packets
multipart: HTTP content type is
multipart/x-mixed-replace, and each audio packet
ends with a boundary string
channel int R The audio channel index which starts from 1. 1
Request Example
http://192.168.1.108/cgi-bin/audio.cgi?action=getAudio&httptype=singlepart&channel=1
<Audio data>
HU
<Audio data>
A_
…
HT
200 OK HTTP/1.1
Server: device/1.0
_A
--<boundary>
fo
Content-Type: Audio/G.711A
r
Content-Length: 800
In
<Audio data>
te
--<boundary>
lb
Content-Type: Audio/G.711A
ra
Content-Length: 800
s
<Audio data>
--<boundary>
…
General APIs 18
audio output channel, and the range is
[1-100].
For getting and setting the configurations, see "4.2.1 Get and Set Configure" .
Get Config Request Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=AudioOutputVolume
Get Config Response Example
table.AudioOutputVolume[0]=80
table.AudioOutputVolume[1]=50
…
4.4 Snapshot
HT
TP
General APIs 19
mm: Minute; range: [0–59]
ss: Description; ranges [0 to 59]
Mask: record type.
Meaning of each bit:
Bit0: Normal snapshot
Bit1: Motion detection snapshot
Bit2: Alarm snapshot
Bit3: Card-swiping snapshot
Bit6: POS snapshot
Bit4, Bit5, Bit7–Bit31: Reserved.
For getting and setting the configurations, see "4.2.1 Get and Set Configure" .
Get Config Request Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Snap
Get Config Response Example
table.Snap[0].HolidayEnable=true
DA
table.Snap[0].TimeSection[0][0]=6 00:00:00-23:59:59
HU
table.Snap[0].TimeSection[0][1]=0 00:00:00-23:59:59
A_
…
table.Snap[1].HolidayEnable=false
HT
table.Snap[1].TimeSection[0][1]=0 00:00:00-23:59:59
TP
table.Snap[1].TimeSection[0][1]=0 00:00:00-23:59:59
_A
…
PI
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Snap[0].HolidayEnable=true&Snap
r
0:00:00-23:59:59
te
OK
ra
s
General APIs 20
<binary data>: images in JPEG format
Response Example
HTTP/1.1 200 OK
Server: Device/1.0
Content-Type: image/jpeg
Content-Length:<image size>
<jpeg data>
For details on the event name and parameters, see the corresponding [Event] sections.
Method GET
HU
Unit: s
Range: [1–60], and the default value is 5.
PI
itself alive.
r
General APIs 21
in the parking space
TrafficParkingSpaceOverLine: A vehicle
crosses the line of a parking space
TrafficManualSnap: Manual snapshot
capturing
TrafficSuspiciousCar: Suspect vehicle
detection
FaceRecognition: Face recognition
TrafficParkingStatistics: Parking space
counting
AccessControl: Access control unlocking
CitizenPictureCompare: Comparison
between the person and the credential card
…
Request Example
http://192.168.1.108/cgi-bin/snapManager.cgi?action=attachFileProc&channel=1&heartbeat=5&Flags[0]
DA
=Event&Events=[VideoMotion%2CVideoLoss]
HU
++Index int
starting from 0
In
Response Example
ra
HTTP/1.1 200 OK
s
Server: Device/1.0
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
Connection: closed
--<boundary>
Content-Type: text/plain
Content-Length: <data length>
Events[0].EventBaseInfo.Code=TrafficJunction
Events[0].EventBaseInfo.Action=Pulse
Events[0].EventBaseInfo.Index=0
Events[0].CountInGroup=3
Events[0].IndexInGroup=1
Events[0].Lane=1
General APIs 22
Events[0].PTS=42949485818.0
Events[0].TrafficCar.PlateNumber=Z A12345
Events[0].TrafficCar.DeviceAddress=Hangzhou
……
Events[1].EventBaseInfo.Code=TrafficJunction
Events[1].EventBaseInfo.Action=Pulse
Events[1].EventBaseInfo.Index=1
Events[1].CountInGroup=3
Events[1].IndexInGroup=2
Events[1].Lane=1
……
--<boundary>
Content-Type: image/jpeg
Content-Length:<image size>
--<boundary>
Content-Type: text/plain
HU
Content-Length:<data length>
A_
HT
Heartbeat
TP
--<boundary>
……
_A
PI
Method GET
s
General APIs 23
4.5.2 Get Encode Capability
Get encoding capabilities.
+PreviewSplitNum The live view page can be split to multiple [1, 4, 9, 16]
HU
int[] O
List windows
A_
Values:
_A
Encoding capability
te
+VideoEncodeDe
object[] O Each element of the array represents a
vices
lb
channel.
ra
General APIs 24
Response Example
caps.MaxExtraStream=3
caps.PreviewSplitNumList[0]=1
caps.PreviewSplitNumList[1]=4
caps.PreviewSplitNumList[2]=9
caps.PlaybackCompressSplitNumList[0]=1
caps.PlaybackCompressSplitNumList[1]=4
caps.PlaybackCompressSplitNumList[2]=9
caps.PreviewMode=SplitSnap
caps.VideoEncodeDevices[0].SupportIndividualResolution=true
caps.VideoEncodeDevices[0].RecordIndividualResolution=true
caps.VideoEncodeDevices[0].MaxCIFPFrameSize=40
caps.VideoEncodeDevices[0].MinCIFPFrameSize=7
caps.CoriaDisplay[0].CoriaDisplaySwitchs[0]=0
caps.CoriaDisplay[0].CoriaDisplaySwitchs[1]=1
caps.CoriaDisplay[0].CoriaDisplaySwitchs[2]=2
DA
HU
Method GET
PI
number is 1.
te
General APIs 25
Unit: kbps
+ExtraFormat object[] O Sub stream
Each element of the array represents a sub
stream.
0: Sub stream 1
1: Sub stream 2
2: Sub stream 3
++Video object O Video format
+++Compressi char[16] O Video encoding mode "H.264"
on For example, "MPEG4", "H.264", "H.265"
+++Width int O Video width 720
Unit: pixels
+++Height int O Video height 576
Unit: pixels
+++BitRate int O Video stream 512
Unit: kbps
DA
Request Example
http://192.168.1.108/cgi-bin/encode.cgi?action=getConfigCaps&channel=1&Encode[0].MainFormat[0].V
HU
ideo.Compression=H.264&Encode[0].MainFormat[0].Video.Width=1920&Encode[0].MainFormat[0].Vide
A_
o.Height=1080
HT
TP
recording type.
r
0: General encoding
In
2: Alarm encoding
++Audio object O Audio encoding capability
lb
General APIs 26
Sub stream.
Each element of the array represents a sub
stream.
+ExtraFormat object[] O
0: Sub stream 1
1: Sub stream 2
2: Sub stream 3
Audio In object O Audio encoding capabilities
+++CompressionT char[] O Supported audio encoding formats: PCM, G.711A, AMR
ypes ADPCM, G.711A, G.711Mu, G.726, G.729,
MPEG2, AMR, and SVAC.
++Video object O Video encoding capability
+++CompressionT char[] O Supported video encoding formats: MPEG4, MPEG4,
ypes MPEG2, MPEG1, MJPG, H.263, H.264 and H.264, H.265
H.265.
+++ResolutionTyp char[] O Supported video resolutions. D1, 1280x720
es See the table below for the options.
DA
2: Alarm snapshot
In
JPEG
ypes For example, "JPEG"
lb
General APIs 27
caps.SnapFormat[0].Video.FPSMax=2
General APIs 28
Fixed Resolution Name Size in PAL Size in NTSC
"2592x2048" 2592 x 2048 —
"2448x2048" 2448 x 2048 —
"1920x1440" 1920x1440 —
"2752x2208" 2752x2208 —
"3840x2160" 3840x2160 —
"4096x2160" 4096x2160 —
"3072x2048" 3072x2048 —
Table 4-1
DA
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Encode
Method GET
HU
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Encode
HT
table.Encode[0].MainFormat[0].Audio.Bitrate=64
TP
table.Encode[0].MainFormat[0].Audio.Channels[0]=0
_A
table.Encode[0].MainFormat[0].Audio.Compression=G.711A
table.Encode[0].MainFormat[0].Audio.Depth=16
PI
table.Encode[0].MainFormat[0].Audio.Frequency=8000
table.Encode[0].MainFormat[0].Audio.Mode=0
fo
table.Encode[0].MainFormat[0].Audio.Pack=DHAV
r
table.Encode[0].MainFormat[0].AudioEnable=true
In
table.Encode[0].MainFormat[0].Video.resolution=1920x1080
te
table.Encode[0].MainFormat[0].Video.BitRate=4096
table.Encode[0].MainFormat[0].Video.BitRateControl=CBR
lb
table.Encode[0].MainFormat[0].Video.Compression=H.264
ra
table.Encode[0].MainFormat[0].Video.CustomResolutionName=1080P
Success
s
table.Encode[0].MainFormat[0].Video.FPS=18
Return
table.Encode[0].MainFormat[0].Video.GOP=36
table.Encode[0].MainFormat[0].Video.Height=1080
table.Encode[0].MainFormat[0].Video.Pack=DHAV
table.Encode[0].MainFormat[0].Video.Profile=High
table.Encode[0].MainFormat[0].Video.Quality=4
table.Encode[0].MainFormat[0].Video.QualityRange=6
table.Encode[0].MainFormat[0].Video.SVCTLayer=1
table.Encode[0].MainFormat[0].Video.Width=1920
table.Encode[0].MainFormat[0].Video.Priority=0
table.Encode[0].MainFormat[0].VideoEnable=true
table.Encode[0].MainFormat[1].Audio.Bitrate=64
table.Encode[0].MainFormat[1].Audio.Channels[0]=0
table.Encode[0].MainFormat[1].Audio.Compression=G.711A
General APIs 29
table.Encode[0].MainFormat[1].Audio.Depth=16
table.Encode[0].MainFormat[1].Audio.Frequency=8000
table.Encode[0].MainFormat[1].Audio.Mode=0
table.Encode[0].MainFormat[1].Audio.Pack=DHAV
table.Encode[0].MainFormat[1].AudioEnable=true
table.Encode[0].MainFormat[1].Video.resolution=1920x1080
table.Encode[0].MainFormat[1].Video.BitRate=4096
table.Encode[0].MainFormat[1].Video.BitRateControl=CBR
table.Encode[0].MainFormat[1].Video.Compression=H.264
table.Encode[0].MainFormat[1].Video.CustomResolutionName=1080P
table.Encode[0].MainFormat[1].Video.FPS=18
table.Encode[0].MainFormat[1].Video.GOP=36
table.Encode[0].MainFormat[1].Video.Height=1080
table.Encode[0].MainFormat[1].Video.Pack=DHAV
table.Encode[0].MainFormat[1].Video.Profile=High
table.Encode[0].MainFormat[1].Video.Quality=4
DA
table.Encode[0].MainFormat[1].Video.QualityRange=6
HU
table.Encode[0].MainFormat[1].Video.SVCTLayer=1
table.Encode[0].MainFormat[1].Video.Width=1920
A_
table.Encode[0].MainFormat[1].Video.Priority=0
HT
table.Encode[0].MainFormat[1].VideoEnable=true
TP
table.Encode[0].MainFormat[2].Audio.Bitrate=64
_A
table.Encode[0].MainFormat[2].Audio.Channels[0]=0
table.Encode[0].MainFormat[2].Audio.Compression=G.711A
PI
table.Encode[0].MainFormat[2].Audio.Depth=16
table.Encode[0].MainFormat[2].Audio.Frequency=8000
fo
table.Encode[0].MainFormat[2].Audio.Mode=0
r
table.Encode[0].MainFormat[2].Audio.Pack=DHAV
In
table.Encode[0].MainFormat[2].AudioEnable=true
te
table.Encode[0].MainFormat[2].Video.resolution=1920x1080
table.Encode[0].MainFormat[2].Video.BitRate=4096
lb
table.Encode[0].MainFormat[2].Video.BitRateControl=CBR
ra
table.Encode[0].MainFormat[2].Video.Compression=H.264
s
table.Encode[0].MainFormat[2].Video.CustomResolutionName=1080P
table.Encode[0].MainFormat[2].Video.FPS=18
table.Encode[0].MainFormat[2].Video.GOP=36
table.Encode[0].MainFormat[2].Video.Height=1080
table.Encode[0].MainFormat[2].Video.Pack=DHAV
table.Encode[0].MainFormat[2].Video.Profile=High
table.Encode[0].MainFormat[2].Video.Quality=4
table.Encode[0].MainFormat[2].Video.QualityRange=6
table.Encode[0].MainFormat[2].Video.SVCTLayer=1
table.Encode[0].MainFormat[2].Video.Width=1920
table.Encode[0].MainFormat[2].Video.Priority=0
table.Encode[0].MainFormat[2].VideoEnable=true
table.Encode[0].MainFormat[3].Audio.Bitrate=64
table.Encode[0].MainFormat[3].Audio.Channels[0]=0
General APIs 30
table.Encode[0].MainFormat[3].Audio.Compression=G.711A
table.Encode[0].MainFormat[3].Audio.Depth=16
table.Encode[0].MainFormat[3].Audio.Frequency=8000
table.Encode[0].MainFormat[3].Audio.Mode=0
table.Encode[0].MainFormat[3].Audio.Pack=DHAV
table.Encode[0].MainFormat[3].AudioEnable=true
table.Encode[0].MainFormat[3].Video.resolution=704x576
table.Encode[0].MainFormat[3].Video.BitRate=2048
table.Encode[0].MainFormat[3].Video.BitRateControl=VBR
table.Encode[0].MainFormat[3].Video.Compression=H.264
table.Encode[0].MainFormat[3].Video.FPS=25
table.Encode[0].MainFormat[3].Video.GOP=50
table.Encode[0].MainFormat[3].Video.Height=576
table.Encode[0].MainFormat[3].Video.Pack=DHAV
table.Encode[0].MainFormat[3].Video.Profile=Main
table.Encode[0].MainFormat[3].Video.Quality=4
DA
table.Encode[0].MainFormat[3].Video.QualityRange=6
HU
table.Encode[0].MainFormat[3].Video.SVCTLayer=1
table.Encode[0].MainFormat[3].Video.Width=704
A_
table.Encode[0].MainFormat[3].Video.Priority=0
HT
table.Encode[0].MainFormat[3].VideoEnable=true
TP
table.Encode[0].ExtraFormat[0].Audio.Bitrate=64
…
_A
table.Encode[0].SnapFormat[0].Audio.Bitrate=64
PI
…
Parameters in Response:
fo
Channel: integer, array index starts from 0, which means video channel (equals to video
ra
Type:
Comment
0 = regular encode
1 = motion detection encode
2 = alarm encode
3= emergency encode
ExtraStream:
0 = extra stream 1
1 = extra stream 2
2 = extra stream 3
The configItems are list as bellow.
Set encode config
Table 4-2
General APIs 31
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>...]
Method GET
Description Set encode config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Encode[1].MainForm
Example
at[0].Video.Compression=MPEG4&
Success
OK
Return
Parameters in URL:
In table below,
head=Encode[Channel].MainFormat[RecordType] (or)
Encode[Channel].ExtraFormat[ExtraStream]
Channel: integer, array index starts from 0, which means video channel(equals to video
channel index -1, and so 0 means channel 1).
Comment RecordType:
DA
0 = regular record
HU
ExtraStream:
HT
0 = extra stream 1
TP
1 = extra stream 2
_A
2 = extra stream 3
PI
Unit is Kbps
r
head.Video.BitRate integer
Range depends on capability in GetVideoConfigCaps
In
General APIs 32
ParamName ParamValue type Description
Range is { Baseline, Main , Extended , High }
head.Video.Profile String
Only when video compression is H.264, it's effective.
Range is [1—6].
Image Quality, available when
head.Video.Quality integer Video.BitRateControl=VBR
1: worst quality
6: best quality
Range is 0 or 1
head.Video.Priority integer 0 for Image Quality first
1 for Bitstream first
head.VideoEnable bool True: enable video
GetAudioConfigCaps
Range depends on capacity in
A_
head.Audio.Compression string
GetAudioConfigCaps
HT
Range is {0,1,2,3,4,5,6,7}
Audio encode mode.
PI
0: 4.75kbps,
fo
1: 5.15 kbps,
2: 5.9 kbps,
r
head.Audio.Mode integer
3: 6.7 kbps,
In
4: 7.4 kbps,
te
5: 7.95 kbps,
lb
6: 10.2 kbps,
7: 12.2 kbps,
ra
Table 4-3
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoEncodeROI
Method GET
Description Get video encode config of region interested.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoEncode
Example
ROI
Success head.Regions[0][0]=0
Return head.Regions[0][1]=0
General APIs 33
head.Regions[0][2]=0
head.Regions[0][3]=0
head.Regions[1][0]=0
…
head.Quality=4,
head.Main=true,
head.Extra1=true,
head.Extra2=true,
head.Extra3=true,
head.Snapshot=true
head.DynamicTrack=true,
head.DynamicDelayTime=60
Parameters in Response:
head=table.VideoEncodeROI[ChannelNo]
Comment
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
DA
Table 4-4
A_
HT
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
TP
Method GET
_A
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoEncodeROI[0].
Example
DynamicTrack=true
fo
Success
OK
r
Return
Parameters in URL:
In
In table below,
Comment
lb
head = VideoEncodeROI[ChannelNo]
ra
ChannelNo: integer, array index starts from 0, which means video channel(equals to
video channel index -1, and so 0 means channel 1).
s
Appendix:
ParamName ParamValue type Description
head. DynamicTrack bool Enable/Disable
General APIs 34
The content represented in the form of "CAM1|123"
string.
+Name char[] R
'|' means line change, and up to two
lines are supported.
For getting and setting the configurations, see "4.2.1 Get and Set Configure" .
Get Config Request Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=ChannelTitle
Get Config Response Example
table.ChannelTitle[0].Name=CAM1|123
table.ChannelTitle[1].Name=CAM2|456
…
OK
A_
HT
Table 4-5
PI
Syntax http://<server>/cgi-bin/devVideoInput.cgi?action=getCollect
fo
Method GET
r
Example http://192.168.1.108/cgi-bin/devVideoInput.cgi?action=getCollect
Success
te
result=1
Return
lb
Comment —
ra
s
Table 4-6
Syntax http://<server>/cgi-bin/devVideoOutput.cgi?action=getCollect
Method GET
Description Get the video output channel numbers.
Example http://192.168.1.108/cgi-bin/devVideoOutput.cgi?action=getCollect
Success result=2
Return
Comment —
General APIs 35
4.5.9 Get Max Remote Input Channels
Table 4-7
Syntax http://<server>/cgi-bin/magicBox.cgi?action=getProductDefinition&name=MaxRemoteI
nputChannels
Method GET
Description Get max remote input channels.
Example http://192.168.1.108/cgi-bin/magicBox.cgi?action=getProductDefinition&name=MaxRe
moteInputChannels
Success table.MaxRemoteInputChannels=16
Return
Comment MaxRemoteInputChannels: max remote input channels.
Table 4-8
HT
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoStandard
TP
Method GET
_A
d
fo
Success table.VideoStandard=PAL
Return
r
Comment —
In
Table 4-9
ra
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&VideoStandard=<paramV
s
alue>
Method GET
Description Set video standard config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoStandard=PAL
Success OK
Return
Comment VideoStandard: string, range is {PAL, NTSC} Video Standard.
Table 4-10
General APIs 36
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoWidget
Method GET
Description Video widget config contains Channel Title, User-defined Title, Covers and Time Title
parameters, defines the background color, front color and positions of channel title and
time title, User-defined title and defines the regions which are not visible (cover).
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoWidget
Success head.BackColor[0]=0
Return head.BackColor[1]=0
head.BackColor[2]=0
head.BackColor[3]=128
head.EncodeBlend=true
head.FrontColor[0]=255
head.FrontColor[1]=255
head.FrontColor[2]=255
head.FrontColor[3]=0
head.Rect[0]=0
DA
head.Rect[1]=8191
HU
head.Rect[2]=0
head.Rect[3]=8191
A_
…
HT
head=table.VideoWidget[Channel].ChannelTitle (or)
_A
table.VideoWidget[Channel].Covers[CoReg] (or)
table.VideoWidget[Channel].TimeTitle
PI
table.VideoWidget[Channel].UserDefinedTitle[Index]
fo
Channel: integer, array index starts from 0, which means video channel (equals to
r
CoReg: Cover Region, Covers is an array which sustains multi- Cover regions
te
0 = region 1
1 = region 2
lb
2 = region 3
ra
3 = region 4
s
Index: integer, User-defined title index, now only index 0 is valid, others are reserved.
Set video widget config
Table 4-11
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set video widget config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoWidget[1].Cov
Example ers[0].BackColor[0]=128&VideoWidget[1].Covers[0].BackColor[1]=128&VideoWidget[1]
.Covers[0].BackColor[2]=128&VideoWidget[1].Covers[0].BackColor[3]=0
Success
OK
Return
General APIs 37
Parameters in URL:
In table below,
headChannelTitle = VideoWidget[Channel].ChannelTitle
headCover = VideoWidget[Channel].Covers[CoReg]
headTimeTitle = VideoWidget[Channel].TimeTitle
headUserDefinedTitle = VideoWidget[Channel].UserDefinedTitle[Index]
Comment Channel: integer, array index starts from 0, which means video channel(equals to video
channel index -1, and so 0 means channel 1).
CoReg: Cover region index. Covers is an array which contains multiple cover regions
0 = region 1
1 = region 2
2 = region 3
3 = region 4
Index: integer, User-defined title index, now only index 0 is valid, others are reserved.
Appendix:
DA
HU
headCover.BackColor[0]
BackColor[0]:red value
HT
headCover.BackColor[1]
integer BackColor[1]:green value
headCover.BackColor[2]
TP
BackColor[2]:blue value
headCover.BackColor[3]
_A
Range is [0—255].
headCover.FrontColor[0]
FrontColor[0]:red value
fo
headCover.FrontColor[1]
integer FrontColor[1]:green value
r
headCover.FrontColor[2]
FrontColor[2]:blue value
headCover.FrontColor[3]
In
Range is [0—8191].
headCover.Rect[0] Rect[0]: top left corner x coordinate (left)
lb
integer
headCover.Rect[2] Rect[2]: bottom right x coordinate (right)
s
General APIs 38
ParamName ParamValue type Description
Only use the value of (left, top),the value
headChannelTitle.Rect[0]
of (right, bottom) is the same as (left, top)
headChannelTitle.Rect[1]
integer Rect[0], Rect[1] are used, and Rect[2]
headChannelTitle.Rect[2]
must be same with Rect[0], Rect[3] must
headChannelTitle.Rect[3]
be same with Rect[1].
Title content. Character '|' means
headUserDefinedTitle.Text string newlines.
Limit: Support 2 lines at most.
headUserDefinedTitle.TextAlign integer Range is the same with
headUserDefinedTitle.BackColor[0] headChannelTitle
headUserDefinedTitle.BackColor[1] These are configs about User-defined
integer
headUserDefinedTitle.BackColor[2] title.
headUserDefinedTitle.BackColor[3]
headUserDefinedTitle.EncodeBlend bool
headUserDefinedTitle.FrontColor[0]
DA
headUserDefinedTitle.FrontColor[1]
integer
HU
headUserDefinedTitle.FrontColor[2]
headUserDefinedTitle.FrontColor[3]
A_
headUserDefinedTitle.Rect[0]
HT
headUserDefinedTitle.Rect[1]
integer
TP
headUserDefinedTitle.Rect[2]
_A
headUserDefinedTitle.Rect[3]
headTimeTitle.BackColor[0]
PI
headTimeTitle.BackColor[1]
integer
fo
headTimeTitle.BackColor[2]
headTimeTitle.BackColor[3]
r
headTimeTitle.EncodeBlend bool
In
headTimeTitle.FrontColor[1] headChannelTitle.
integer
These are configs about time title.
lb
headTimeTitle.FrontColor[2]
headTimeTitle.FrontColor[3]
ra
headTimeTitle.Rect[0]
s
headTimeTitle.Rect[1]
integer
headTimeTitle.Rect[2]
headTimeTitle.Rect[3]
headTimeTitle.ShowWeek bool True: Display week within the time title.
Table 4-12
Syntax http://<server>/cgi-bin/devVideoInput.cgi?action=getCaps&channel=<ChannelNo>
Method GET
Description Get video input capabilities.
Example http://192.168.1.108/cgi-bin/devVideoInput.cgi?action=getCaps&channel=1
General APIs 39
caps.AutoSyncPhase=false
caps.Backlight=2
caps.BrightnessCompensation=true
caps.ChipID=0
caps.CoverCount=4
caps.CoverType=1
caps.CustomManualExposure=true
caps.DayNightColor=true
caps.DayNightColorIO=false
caps.DoubleExposure=0
caps.DownScaling=false
caps.EEModeRange=100
caps.ElectricFocus=false
caps.Exposure=16
caps.ExposureMode=31
caps.ExternalSyncInput=false
DA
caps.FishEye=false
caps.FlashAdjust=false
HU
caps.Flip=true
A_
caps.FormatCount=5
HT
caps.Gain=true
TP
caps.GainAuto=true
caps.Gamma=true
_A
Success
caps.GammaModeRange=100
PI
Return
caps.GlareInhibition=1
caps.HorizontalBinning=0
fo
caps.IRCUT=true
r
caps.ImageEnhancement.LevelRange[0]=0
In
caps.ImageEnhancement.LevelRange[1]=100
caps.ImageEnhancement.Support=true
te
caps.InfraRed=true
lb
caps.Iris=true
ra
caps.IrisAuto=true
s
caps.LadenBitrate=972000
caps.LimitedAutoExposure=true
caps.MaxExposureTime=300.0
caps.MaxExposureTime1=0.0
caps.MaxHeight=1080
caps.MaxMultiProfile=3
caps.MaxWidth=1920
caps.MeteringRegionCount=0
caps.MinExposureTime=1.0
caps.MinExposureTime1=0.0
caps.Mirror=true
caps.MultiOptions=false
caps.NightOptions=true
caps.ReferenceLevel=false
General APIs 40
caps.Rotate90=true
caps.SetColor=true
caps.SignalFormats=Inside
caps.SignalType[0]=VGA
caps.SnapshotExposure=false
caps.SupportProfile=false
caps.SupportWhiteLevel=true
caps.SupportWriteLevel=false
caps.SyncChipChannels=false
caps.SyncFocus=false
caps.TitleCount=4
caps.TridimDenoise=2
caps.TridimDenoiseDetails=0
caps.UTC=0
caps.UpScaling=false
caps.Version=0
DA
caps.VerticalBinning=0
caps.VideoInDenoise.2D.LevelRange[0]=0
HU
caps.VideoInDenoise.2D.LevelRange[1]=100
A_
caps.VideoInDenoise.2D.Support=true
HT
caps.VideoInDenoise.3D.3DAutoType.ModRange[0]=0
TP
caps.VideoInDenoise.3D.3DAutoType.ModRange[1]=100
caps.VideoInDenoise.3D.Support=true
_A
caps.VideoInDenoise.Support=true
PI
caps.WhiteBalance=3
caps.WideDynamicRange=1
fo
Parameters in URL:
r
Parameters in Response:
see table below
te
lb
Appendix:
ra
General APIs 41
Field in response Value type Description
FlashAdjust bool true: support flash adjust
Flip bool true: support picture flip.
Gain bool true: support gain control.
GainAuto bool true: support auto gain.
HorizontalBinning integer Horizontal/Vertical pixel binning mask,
1 — support 2 pixel binning,
2 — support 3 pixel binning
VerticalBinning integer 4 — support 4 pixel binning
…
2^n — support n+2 pixel binning
InfraRed bool true: support Infra compensation
Iris bool true: support Iris adjust
IrisAuto bool true: support auto Iris adjust
Unit is Kbps.
LadenBitrate integer Maximum value of video stream bitrates, 16bpp, not in
DA
binning mode.
HU
General APIs 42
Field in response Value type Description
Range is {0, 1, 2, 3}
0: don't support white balance.
1: support auto white balance
WhiteBalance integer
2: support auto and pre defined white balance.
3: support auto, pre defined and user defined white
balance
Table 4-13
http://<server>/cgi-bin/devVideoInput.cgi?action=getCurrentWindow&channel=<Chann
Syntax
elNo>
Method GET
Description Get the coordinates of the current window.
DA
Example http://192.168.1.108/cgi-bin/devVideoInput.cgi?action=getCurrentWindow&channel=1
HU
rect[0]=500
Success rect[1]=500
A_
Return rect[2]=5000
HT
rect[3]=5000
TP
Parameters in URL:
_A
Table 4-14
lb
http://<server>/cgi-bin/devVideoInput.cgi?action=setCurrentWindow&channel=<Chann
ra
Syntax
elNo>&rect[0]=<rect0>&rect[1]=<rect1>&rect[2]=<rect2>&rect[3]=<rect3>
s
Method GET
Description Set the coordinates of the current window.
http://192.168.1.108/cgi-bin/devVideoInput.cgi?action=setCurrentWindow&channel=1&
Example
rect[0]=0&rect[1]=0&rect[2]=5000&rect[3]=5000
Success
OK
Return
Parameters in URL:
ChannelNo: integer, video channel index which starts from 1.
Comment
rect0 & rect1 & rect2 & rect3: relative coordinates, range is 0-8192.{0,0,0,0} top-left,
{8192,0,0,0} top-right, {0,8192,0,0} bottom-left, {8192,8192,0,0} bottom-right
General APIs 43
Table 4-15
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoOut
Method GET
Description Get video out config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoOut
head.Margin[0]=0
head.Margin[1]=0
head.Margin[2]=0
head.Margin[3]=0
head.Color.Brightness=50
head.Color. Contrast =50
Success head.Color. Satuation =50
Return head.Color. Hue =50
head.Mode. Width =800
head.Mode. Height=600
DA
…
HT
Parameters in Response:
TP
head = table.VideoOut[ChannelNo].
Comment
_A
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
PI
Table 4-16
r
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
In
Syntax
alue>[&<paramName>=<paramValue>…]
te
Method GET
lb
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&table.VideoOut[1].Co
Example
lor.Brightness=50
s
Success
OK
Return
Parameters in URL:
In table below,
Comment head = table.VideoOut[ChannelNo].
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
Appendix:
General APIs 44
ParamName ParamValue type Description
head. Margin[0]
head. Margin[1]
integer Margin.
head. Margin[2]
head. Margin[3]
head. Color.Brightness integer Brightness.
head. Color.Contrast =50 integer Contrast.
head.Color.Satuation =50 integer Satuation.
head. Color.Hue =50 integer Hue.
head. Mode.Width =800
integer Resolution.
head. Mode.Height=600
head. Mode.BPP =16 integer Bits per pixel.
The range is {"Auto","TV","VGA","DVI","HDMI",
head.Mode.Format="Auto" string
"SPOT","SDI", "HDMI/VGA"}.
head.Mode.RefreshRate=60 integer Refresh rate.
DA
Table 4-17
TP
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=SmartEncode
_A
Method GET
PI
Success head.Enable=false
r
Return head.Extra[0]=false
In
Parameters in Response:
head = table.SmartEncode[ChannelNo].
te
Comment
ChannelNo: integer, array index starts from 0, which means video channel (equals to
lb
Table 4-18
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set smart code config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&SmartEncode[0].Ena
Example
ble=true
Success
OK
Return
Parameters in URL:
Comment In table below,
head = SmartEncode[ChannelNo].
General APIs 45
ChannelNo: integer, array index starts from 0, which means video channel(equals to
video channel index -1, and so 0 means channel 1).
Appendix:
etc.
The maximum decoding capability that the device supports
HT
= 7776000
_A
[ Example ]
PI
Response Video.StreamType[1]=h265
r
Video.LadenBitrate=7776000
In
te
Method GET
Description Get privacy masking setting
[ Request Params ] (None )
[ Response Params ] (key=value format)
Name Type R/O Param Description
table object R Config info table.
Array<Array<object> PrivacyMasking config, each channel has several
+PrivacyMasking R
> masking region
++Enable bool R Enable/Disable
Size is 3
Postion[0] is horizontal angle, range is [-1—1]
++Postion Array<double> O
Postion[1] is vertical angel, range is [-1—1]
Postion[2] is zoom, range is [ 0—1]
General APIs 46
++ShapeType string O Shape type,can be: “Rect”, “Polygon”
It is valid if ShapeType is Rect , top left and bottom
++Rect Array<int> O right point, each point has x and y value, oordinate
remap to 0 — 8192.
It is valid if ShapeType is Polygon
the first array is point list, minimum item is 3, the
++Polygon Array<Array<int>> O
second array is point, must be two int, means x and
y value, coordinate remap to 0 — 8192.
++Color Array<int> O Mask color, RGBA color, 4 integer range is 0-255
Mosaic type, Range is {0, 8, 16, 24, 32}
0: no mosaic
8: mosaic size 8*8
++Mosaic int O
16: mosaic size 16*16
24: mosaic size 24*24
32: mosaic size 32*32
++ViewAngle double O View angle, range is [0.0, 360.0], unit: degree
DA
[ Example ]
HU
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=PrivacyMaskin
Request
g
A_
table.PrivacyMasking[0][0].Enable=true
HT
table.PrivacyMasking[0][0].Postion[0]=0.0
TP
table.PrivacyMasking[0][0].Postion[1]=0.0
_A
table.PrivacyMasking[0][0].Postion[2]=1.0
table.PrivacyMasking[0][0].ShapeType=Rect
PI
table.PrivacyMasking[0][0].Rect[0]=0
fo
table.PrivacyMasking[0][0].Rect[1]=0
table.PrivacyMasking[0][0].Rect[2]=50
r
Response table.PrivacyMasking[0][0].Rect[3]=100
In
table.PrivacyMasking[0][0].Color[0]=128
te
table.PrivacyMasking[0][0].Color[1]=128
table.PrivacyMasking[0][0].Color[2]=128
lb
table.PrivacyMasking[0][0].Color[3]=255
ra
table.PrivacyMasking[0][0].Mosaic=8
s
table.PrivacyMasking[0][0].ViewAngle=30.0
table.PrivacyMasking[0][1].Enable=true
…
General APIs 47
Size is 3
Postion[0] is horizontal angle, range is [-1—1]
+Postion Array<double> O
Postion[1] is vertical angel, range is [-1—1]
Postion[2] is zoom, range is [ 0—1]
+ShapeType string O Shape type,can be: “Rect”, “Polygon”
It is valid if ShapeType is Rect , top left and bottom
+Rect Array<int> O right point, each point has x and y value, oordinate
remap to 0 — 8192.
It is valid if ShapeType is Polygon
the first array is point list, minimum item is 3, the
+Polygon Array<Array<int>> O
second array is point, must be two int, means x
and y value, coordinate remap to 0 — 8192.
+Color Array<int> O Mask color, RGBA color, 4 integer range is 0-255
Mosaic type, Range is {0, 8, 16, 24, 32}
0: no mosaic
8: mosaic size 8*8
+Mosaic int O
DA
[ Response Params ] ( OK )
TP
[ Example ]
_A
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&PrivacyMasking[0][0].En
able=true&PrivacyMasking[0][0].Postion[0]=0.0&PrivacyMasking[0][0].Postion[1]=0.0&Priv
PI
acyMasking[0][0].Postion[2]=1.0&PrivacyMasking[0][0].ShapeType=Rect&PrivacyMasking
Request
fo
[0][0].Rect[0]=0&PrivacyMasking[0][0].Rect[1]=0&PrivacyMasking[0][0].Rect[2]=50&Privac
yMasking[0][0].Rect[3]=100&PrivacyMasking[0][0].Mosaic=8&PrivacyMasking[0][0].ViewA
r
ngle=30.0
In
Response OK
te
lb
Syntax http://<server>/cgi-bin/PrivacyMasking.cgi?action=getPrivacyMasking
Method GET
Description Get privacy masking
[ Request Params ] (key=value format at URL)
Name Type R/O Param Description
channel int R video channel index which starts from 1
offset int R Offset in the result record set, range is [0, Total – 1].
limit int R Count of result to get.
[ Response Params ] (key=value format)
Name Type R/O Param Description
total int R Count of result
PrivacyMasking Array<object > R PrivacyMasking config
+Index int R Index of PrivacyMasking which starts from 0
General APIs 48
+Name string O PrivacyMasking name
+Enable int R 1: enable; 0: disable
+ShapeType string O Shape type,can be: “Rect”, “Polygon”
It is valid if ShapeType is Rect , top left and bottom
+Rect Array<int> O right point, each point has x and y value, oordinate
remap to 0 — 8192.
It is valid if ShapeType is Polygon
the first array is point list, minimum item is 3, the
+Polygon Array<Array<int>> O
second array is point, must be two int, means x
and y value, coordinate remap to 0 — 8192.
+Color Array<int> O Mask color, RGBA color, 4 integer range is 0-255
Mosaic type, Range is {0, 8, 16, 24, 32}
0: no mosaic
8: mosaic size 8*8
+Mosaic int O
16: mosaic size 16*16
24: mosaic size 24*24
DA
[ Example ]
http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=getPrivacyMasking&channel=1&
A_
Request
offset=2&limit =5
HT
total=5
TP
PrivacyMasking[0].Index=0
_A
PrivacyMasking[0].Name=Privacy Masking1
PrivacyMasking[0].Enable=1
PI
PrivacyMasking[0].ShapeType=Polygon
fo
PrivacyMasking[0].Polygon[0][0]= 0
PrivacyMasking[0].Polygon[0][1]=0
r
PrivacyMasking[0].Polygon[1][0]=128
In
PrivacyMasking[0].Polygon[1][1]=128
te
PrivacyMasking[0].Polygon[2][0]=256
Response
PrivacyMasking[0].Polygon[2][1]=200
lb
…
ra
PrivacyMasking[0].Color[0]=128,
s
PrivacyMasking[0].Color[1]=128,
PrivacyMasking[0].Color[2]=128,
PrivacyMasking[0].Color[3]=255,
PrivacyMasking[0].Mosaic=8,
PrivacyMasking[1].Index =1,
PrivacyMasking[1].Enable=1,
…
General APIs 49
Description Set privacy masking
[ Request Params ] (key=value format at URL)
Name Type R/O Param Description
channel int R video channel index which starts from 1
PrivacyMasking object R Privacy masking config
+Index int R Index of PrivacyMasking which starts from 0
+Name string O PrivacyMasking name
+Enable int R 1: enable; 0: disable
+ShapeType string R Shape type,can be: “Rect”, “Polygon”
It is valid if ShapeType is Rect , top left and
bottom right point, each point has x and y value,
+Rect Array<int> RO
oordinate remap to 0 — 8192.
mandatory when ShapeType is "Rect"
It is valid if ShapeType is Polygon
the first array is point list, minimum item is 3, the
+Polygon Array<Array<int>> RO second array is point, must be two int, means x
DA
0: no mosaic
_A
[ Example ]
In
http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=setPrivacyMasking&channel=2&
te
PrivacyMasking.Index=3&PrivacyMasking.Name=Privacy%20Masking1&PrivacyMasking.
lb
Request Enable=1&PrivacyMasking.ShapeType=Rect&PrivacyMasking.Rect[0]=0&PrivacyMaskin
g.Rect[1]=0&PrivacyMasking.Rect[2]=50&PrivacyMasking.Rect[3]=100&PrivacyMasking.
ra
Mosaic=8
s
Response OK
General APIs 50
[ Example ]
http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=gotoPrivacyMasking&channel=
Request
2&index=3
Response OK
[ Example ]
HU
http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=deletePrivacyMasking&channel
Request
A_
=2&index=3
HT
Response OK
TP
_A
Syntax http://<server>/cgi-bin/PrivacyMasking.cgi?action=clearPrivacyMasking
fo
Method GET
r
[ Response Params ] ( OK )
ra
[ Example ]
s
Request http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=clearPrivacyMasking&channel=2
Response OK
General APIs 51
[ Response Params ] (key=value format )
Name Type R/O Param Description
Rect, top left and bottom right point, each point has x and y
Rect Array<int> R
value, oordinate remap to 0 — 8192.
[ Example ]
Request http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=getRealRect&channel=2&index=1
Rect[0]=0
Rect[1]=0
Response
Rect[2]=50
Rect[3]=100
Table 4-19
DA
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=MotionDetect
HU
Method GET
A_
Description Motion detect config of a video channel contains Enable, MotionDetectWindow and
HT
EventHandler.
Example
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=MotionDetect
Success table.MotionDetect[0].Enable=false
_A
Return table.MotionDetect[0].EventHandler.AlarmOut=1
PI
table.MotionDetect[0].EventHandler.AlarmOutChannels[0]=0
table.MotionDetect[0].EventHandler.AlarmOutEnable=true
fo
table.MotionDetect[0].EventHandler.AlarmOutLatch=10
r
table.MotionDetect[0].EventHandler.BeepEnable=false
In
table.MotionDetect[0].EventHandler.Dejitter=5
table.MotionDetect[0].EventHandler.Delay=0
te
table.MotionDetect[0].EventHandler.ExAlarmOut=1
lb
table.MotionDetect[0].EventHandler.ExAlarmOutChannels[0]=0
ra
table.MotionDetect[0].EventHandler.ExAlarmOutEnable=false
s
table.MotionDetect[0].EventHandler.FlashEnable=false
table.MotionDetect[0].EventHandler.FlashLatch=10
table.MotionDetect[0].EventHandler.LogEnable=true
table.MotionDetect[0].EventHandler.MailEnable=false
table.MotionDetect[0].EventHandler.Matrix=1
table.MotionDetect[0].EventHandler.MatrixChannels[0]=0
table.MotionDetect[0].EventHandler.MatrixEnable=false
table.MotionDetect[0].EventHandler.MessageEnable=false
table.MotionDetect[0].EventHandler.PtzLink[0][0]=None
table.MotionDetect[0].EventHandler.PtzLink[0][1]=1
table.MotionDetect[0].EventHandler.PtzLinkEnable=false
table.MotionDetect[0].EventHandler.Record=1
table.MotionDetect[0].EventHandler.RecordChannels[0]=0
table.MotionDetect[0].EventHandler.RecordEnable=true
General APIs 52
table.MotionDetect[0].EventHandler.RecordLatch=10
table.MotionDetect[0].EventHandler.Snapshot=1
table.MotionDetect[0].EventHandler.SnapshotChannels[0]=0
table.MotionDetect[0].EventHandler.SnapshotEnable=false
table.MotionDetect[0].EventHandler.TimeSection[0][0]=1 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[0][1]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[0][2]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[0][3]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[0][4]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[0][5]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[1][0]=1 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[1][1]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[1][2]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[1][3]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[1][4]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[1][5]=0 00:00:00-23:59:59
DA
table.MotionDetect[0].EventHandler.TimeSection[2][0]=1 00:00:00-23:59:59
HU
table.MotionDetect[0].EventHandler.TimeSection[2][1]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[2][2]=0 00:00:00-23:59:59
A_
table.MotionDetect[0].EventHandler.TimeSection[2][3]=0 00:00:00-23:59:59
HT
table.MotionDetect[0].EventHandler.TimeSection[2][4]=0 00:00:00-23:59:59
TP
table.MotionDetect[0].EventHandler.TimeSection[2][5]=0 00:00:00-23:59:59
_A
table.MotionDetect[0].EventHandler.TimeSection[3][0]=1 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[3][1]=0 00:00:00-23:59:59
PI
table.MotionDetect[0].EventHandler.TimeSection[3][2]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[3][3]=0 00:00:00-23:59:59
fo
table.MotionDetect[0].EventHandler.TimeSection[3][4]=0 00:00:00-23:59:59
r
table.MotionDetect[0].EventHandler.TimeSection[3][5]=0 00:00:00-23:59:59
In
table.MotionDetect[0].EventHandler.TimeSection[4][0]=1 00:00:00-23:59:59
te
table.MotionDetect[0].EventHandler.TimeSection[4][1]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[4][2]=0 00:00:00-23:59:59
lb
table.MotionDetect[0].EventHandler.TimeSection[4][3]=0 00:00:00-23:59:59
ra
table.MotionDetect[0].EventHandler.TimeSection[4][4]=0 00:00:00-23:59:59
s
table.MotionDetect[0].EventHandler.TimeSection[4][5]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[5][0]=1 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[5][1]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[5][2]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[5][3]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[5][4]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[5][5]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[6][0]=1 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[6][1]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[6][2]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[6][3]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[6][4]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TimeSection[6][5]=0 00:00:00-23:59:59
table.MotionDetect[0].EventHandler.TipEnable=false
General APIs 53
table.MotionDetect[0].EventHandler.Tour=1
table.MotionDetect[0].EventHandler.TourChannels[0]=0
table.MotionDetect[0].EventHandler.TourEnable=false
table.MotionDetect[0].EventHandler.Voice.AudioFileName=
table.MotionDetect[0].EventHandler.VoiceEnable=false
table.MotionDetect[0].MotionDetectWindow[0].Id=0
table.MotionDetect[0].MotionDetectWindow[0].Name=Region1
table.MotionDetect[0].MotionDetectWindow[0].Region[0]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[1]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[2]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[3]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[4]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[5]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[6]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[7]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[8]=4194303
DA
table.MotionDetect[0].MotionDetectWindow[0].Region[9]=4194303
HU
table.MotionDetect[0].MotionDetectWindow[0].Region[10]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[11]=4194303
A_
table.MotionDetect[0].MotionDetectWindow[0].Region[12]=4194303
HT
table.MotionDetect[0].MotionDetectWindow[0].Region[13]=4194303
TP
table.MotionDetect[0].MotionDetectWindow[0].Region[14]=4194303
_A
table.MotionDetect[0].MotionDetectWindow[0].Region[15]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Region[16]=4194303
PI
table.MotionDetect[0].MotionDetectWindow[0].Region[17]=4194303
table.MotionDetect[0].MotionDetectWindow[0].Sensitive=60
fo
table.MotionDetect[0].MotionDetectWindow[0].Threshold=5
r
table.MotionDetect[0].MotionDetectWindow[0].Window[0]=0
In
table.MotionDetect[0].MotionDetectWindow[0].Window[1]=0
te
table.MotionDetect[0].MotionDetectWindow[0].Window[2]=8191
table.MotionDetect[0].MotionDetectWindow[0].Window[3]=8191
lb
table.MotionDetect[0].MotionDetectWindow[1].Id=1
ra
table.MotionDetect[0].MotionDetectWindow[1].Name=Region2
s
table.MotionDetect[0].MotionDetectWindow[1].Region[0]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[1]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[2]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[3]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[4]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[5]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[6]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[7]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[8]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[9]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[10]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[11]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[12]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[13]=0
General APIs 54
table.MotionDetect[0].MotionDetectWindow[1].Region[14]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[15]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[16]=0
table.MotionDetect[0].MotionDetectWindow[1].Region[17]=0
table.MotionDetect[0].MotionDetectWindow[1].Sensitive=60
table.MotionDetect[0].MotionDetectWindow[1].Threshold=5
table.MotionDetect[0].MotionDetectWindow[1].Window[0]=0
table.MotionDetect[0].MotionDetectWindow[1].Window[1]=0
table.MotionDetect[0].MotionDetectWindow[1].Window[2]=0
table.MotionDetect[0].MotionDetectWindow[1].Window[3]=0
table.MotionDetect[0].MotionDetectWindow[2].Id=2
table.MotionDetect[0].MotionDetectWindow[2].Name=Region3
table.MotionDetect[0].MotionDetectWindow[2].Region[0]=0
table.MotionDetect[0].MotionDetectWindow[2].Region[1]=0
table.MotionDetect[0].MotionDetectWindow[2].Region[2]=0
table.MotionDetect[0].MotionDetectWindow[2].Region[3]=0
DA
table.MotionDetect[0].MotionDetectWindow[2].Region[4]=0
HU
table.MotionDetect[0].MotionDetectWindow[2].Region[5]=0
table.MotionDetect[0].MotionDetectWindow[2].Region[6]=0
A_
table.MotionDetect[0].MotionDetectWindow[2].Region[7]=0
HT
table.MotionDetect[0].MotionDetectWindow[2].Region[8]=0
TP
table.MotionDetect[0].MotionDetectWindow[2].Region[9]=0
_A
table.MotionDetect[0].MotionDetectWindow[2].Region[10]=0
table.MotionDetect[0].MotionDetectWindow[2].Region[11]=0
PI
table.MotionDetect[0].MotionDetectWindow[2].Region[12]=0
table.MotionDetect[0].MotionDetectWindow[2].Region[13]=0
fo
table.MotionDetect[0].MotionDetectWindow[2].Region[14]=0
r
table.MotionDetect[0].MotionDetectWindow[2].Region[15]=0
In
table.MotionDetect[0].MotionDetectWindow[2].Region[16]=0
te
table.MotionDetect[0].MotionDetectWindow[2].Region[17]=0
table.MotionDetect[0].MotionDetectWindow[2].Sensitive=60
lb
table.MotionDetect[0].MotionDetectWindow[2].Threshold=5
ra
table.MotionDetect[0].MotionDetectWindow[2].Window[0]=0
s
table.MotionDetect[0].MotionDetectWindow[2].Window[1]=0
table.MotionDetect[0].MotionDetectWindow[2].Window[2]=0
table.MotionDetect[0].MotionDetectWindow[2].Window[3]=0
table.MotionDetect[0].MotionDetectWindow[3].Id=3
table.MotionDetect[0].MotionDetectWindow[3].Name=Region4
table.MotionDetect[0].MotionDetectWindow[3].Region[0]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[1]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[2]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[3]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[4]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[5]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[6]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[7]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[8]=0
General APIs 55
table.MotionDetect[0].MotionDetectWindow[3].Region[9]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[10]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[11]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[12]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[13]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[14]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[15]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[16]=0
table.MotionDetect[0].MotionDetectWindow[3].Region[17]=0
table.MotionDetect[0].MotionDetectWindow[3].Sensitive=60
table.MotionDetect[0].MotionDetectWindow[3].Threshold=5
table.MotionDetect[0].MotionDetectWindow[3].Window[0]=0
table.MotionDetect[0].MotionDetectWindow[3].Window[1]=0
table.MotionDetect[0].MotionDetectWindow[3].Window[2]=0
table.MotionDetect[0].MotionDetectWindow[3].Window[3]=0
table.MotionDetect[0].OsdTwinkleEnable=false
DA
table.MotionDetect[0].PirMotionLevel=3
Comment
HU
—
Set motion detect config
A_
HT
Table 4-20
TP
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
_A
alue>[&<paramName>=<paramValue>…]
PI
Method GET
Description Set motion detection config.
fo
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&MotionDetect[0].Ena
ble=true
In
te
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&MotionDetect[0].Moti
ra
onDetectWindow[0].Region[0]=1&MotionDetect[0].MotionDetectWindow[0].Region[1]=
1&MotionDetect[0].MotionDetectWindow[0].Region[2]=1&MotionDetect[0].MotionDetec
s
tWindow[0].Region[3]=1&MotionDetect[0].MotionDetectWindow[0].Region[4]=1&Motion
Detect[0].DetectVersion=V3.0
Success
OK
Return
In table below,
head = MotionDetect[ChannelNo]
ChannelNo: integer, array index starts from 0, which means video channel(equals to
video channel index -1, and so 0 means channel 1).
Comment LineNum
Index of region, region is divided into lines and each line has several blocks, a line is
described by a 32 bit integer, a bit for a block.
0=Line 1
1=Line 2
General APIs 56
…
WinNum
Index of detect window, there are 4 detect windows at present. Each window is divided
into 18 lines and 22 blocks per line.
Appendix:
head.TimeDivide. array<array<strin
TimeSchedule
TP
TimeSchedule g>>
head.TimeDivide.Level integer sensitive in timesection, different with global sensitive.
_A
head.MotionDetectWin
s
General APIs 57
ParamName ParamValue type Description
It is similar with head.Region [LineNum].
Currently, a region is divided into 18 lines and 22 blocks
per line.
A bit describes a block in the line.
Bit = 1: motion in this block is monitored.
head.MotionDetectWin
Example:
dow[WinNum].Region[ integer
MotionDetect [0].Region [0] = 4194303 (0x3FFFFF): the
LineNum]
22 blocks in channel 0 line 0 is monitored.
MotionDetect [0].Region [1] =0: the 22 blocks in channel
0 line 1 is not monitored.
MotionDetect [0].Region [17] = 3: the left two blocks in
the last line of channel 0 is monitored.
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=SmartMotionDete
Syntax
ct
A_
Method GET
HT
"High"
lb
[ Example ]
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=SmartMotionDe
Request
tect
table.SmartMotionDetect[0].Enable=true
table.SmartMotionDetect[0].Sensitivity=Middle
Response table.SmartMotionDetect[0].ObjectTypes.Human=true
table.SmartMotionDetect[0].ObjectTypes.Vehicle=true
…
General APIs 58
[ Request Params ] (key=value format )
Name Type R/O Param Description
SmartMotionDet Smart motion detection config, each channel has
Array<object> R
ect one config object
+Enable bool R Enable/Disable
Detection sensitivity, can be: "Low", "Middle",
+Sensitivity string R
"High"
+ObjectTypes object R Detection object type
++Human bool R Whether detect motion of human
++Vehicle bool R Whether detect motion of vehicle
[ Response Params ] ( OK )
[ Example ]
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&SmartMotionDetect[0].E
Request nable=true&SmartMotionDetect[0].Sensitivity=Middle&SmartMotionDetect[0].ObjectTypes.
Human=true&SmartMotionDetect[0].ObjectTypes.Vehicle=true
Response OK
DA
HU
A_
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=LAEConfig
_A
Method GET
PI
Success table.LAEConfig.Enable=true
r
Return table.LAEConfig.ManulEn=1
table.LAEConfig.YSIGMA =1
In
table.LAEConfig.Dethr =1
te
table.LAEConfig.STS =1
lb
table.LAEConfig.GauFilter0=1
ra
table.LAEConfig.GauFilter1=1
table.LAEConfig.GauFilter2=1
s
table.LAEConfig.UVGauFilter0=1
table.LAEConfig.UVGauFilter1=1
table.LAEConfig.UVGauFilter2=1
table.LAEConfig.UVSigma =1
table.LAEConfig.EEGauFilter0=1
table.LAEConfig.EEGauFilter1=1
table.LAEConfig.EEGauFilter2=1
table.LAEConfig.EEratio =1
table.LAEConfig.GEnable =1
table.LAEConfig.GainLevel =1
table.LAEConfig.DebugPin =1
Comment
General APIs 59
Set LAEConfig setting
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramVal
ue>[&<paramName>=<paramValue>…]
Method GET
Description Set LAE Configs.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&LAEConfig.Enable=tru
e&LAEConfig.ManulEn=1
Success OK
Return
Comment
Appendix:
table.LAEConfig.Dethr integer
The smaller the stronger(fuzzier)
_A
256
table.LAEConfig.GauFilter1 integer Y channel pre filter1
r
256
table.LAEConfig.UVGauFilter1 integer UV channel pre filter1
ra
General APIs 60
4.5.28 Enable/Disable all privacy masking covers
Syntax http://<server>/cgi-bin/PrivacyMasking.cgi?action=setPrivacyMaskingEnable
Method GET
Description Enable/Disable all privacy masking covers
[ Request Params ] (key=value format at URL )
Name Type R/O Param Description
channel int R video channel index which starts from 1
Enable bool R true: Enable, false: Disable
[ Response Params ] ( OK )
[ Example ]
http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=setPrivacyMaskingEnable&ch
Request
annel=2&Enable=true
Response OK
Syntax http://<server>/cgi-bin/PrivacyMasking.cgi?action=getPrivacyMaskingEnable
A_
Method GET
HT
[ Example ]
In
http://192.168.1.108/cgi-bin/PrivacyMasking.cgi?action=getPrivacyMaskingEnable&ch
Request
te
annel=2
Response Enable=false
lb
ra
s
4.6 System
4.6.1 General
Get general config
Table 4-21
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=General
Method GET
Description Get general config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=General
Success table.General.LocalNo=8,
General APIs 61
Return table.General.MachineID=20832748927,
table.General.MachineName=Dahua001,
table.General.MachineAddress=滨江区.江南大道.伟业路口,
table.General.MachineGroup=交警一队,
table.General.LockLoginEnable=true,
table.General.CheckDuration=30,
table.General.LockLoginTimes=3,
table.General.LoginFailLockTime=1800,
table.General.MaxOnlineTime=1800,
table.General.LocalPolicy.LockLoginEnable=true,
table.General.LocalPolicy.CheckDuration=30,
table.General.LocalPolicy.LockLoginTimes=3,
table.General.LocalPolicy.LoginFailLockTime=1800
table.General.ActivationTime=2000-01-01 00:00:00
Comment —
Set general config
DA
HU
Table 4-22
A_
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
HT
alue>[&<paramName>=<paramValue>…]
Method GET
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&General.MachineNa
Example
PI
me=MyIPC
Success
OK
fo
Return
r
Comment —
In
Appendix:
te
Table 4-23
Syntax http://<server>/cgi-bin/global.cgi?action=getCurrentTime
Method GET
Description Get current time.
Example http://192.168.1.108/cgi-bin/global.cgi?action=getCurrentTime
Success
result = 2011-7-3 21:02:32
Return
Comment The time format is "Y-M-D H-m-S". It's not be effected by Locales. TimeFormat in
General APIs 62
SetLocalesConfig.
Table 4-24
Syntax http://<server>/cgi-bin/global.cgi?action=setCurrentTime&time=2011-7-3%2021:02:32
Method GET
Description Set current time.
http://192.168.1.108/cgi-bin/global.cgi?action=setCurrentTime&time=2016-01-01%202
Example
1:02:32
Success
OK
Return
The time format is "Y-M-D H-m-S". It's not be effected by Locales. TimeFormat in
Comment
SetLocalesConfig.
DA
4.6.4 Locales
HU
HT
Table 4-25
TP
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Locales
_A
Method GET
PI
table.Locales.DSTEnable=false
r
table.Locales.DSTEnd.Day=1
In
table.Locales.DSTEnd.Hour=0
table.Locales.DSTEnd.Minute=0
te
table.Locales.DSTEnd.Month=1
lb
table.Locales.DSTEnd.Week=2
ra
Success table.Locales.DSTEnd.Year=2011
s
Return table.Locales.DSTStart.Day=0
table.Locales.DSTStart.Hour=0
table.Locales.DSTStart.Minute=0
table.Locales.DSTStart.Month=1
table.Locales.DSTStart.Week=1
table.Locales.DSTStart.Year=2011
table.Locales.TimeFormat=yyyy-MM-dd HH:mm:ss
Comment —
Set locales config
Table 4-26
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
General APIs 63
Method GET
Description Set Locales config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Locales.DSTEnable
Example
=false
Success
OK
Return
Comment —
Appendix:
last.
Locales.DSTEnd.Year Integer Range is [2000-2038]
fo
Locales.DSTStart.Day
Locales.DSTStart.Hour
r
Locales.DSTStart.Week
lb
Locales.DSTStart.Year
ra
s
General APIs 64
ParamName ParamValue type Description
Defines time format displayed in video time title.
String form is: year-month-day hour:mm:ss.
Position of year, month and day can be exchanged.
Example:
yyyy-MM-dd HH:mm:ss or
HU
MM-dd-yyyy HH:mm:ss or
A_
dd-M-yy hh:mm:ss
HT
TP
Table 4-27
Syntax http://<server>/cgi-bin/magicBox.cgi?action=getLanguageCaps
fo
Method GET
r
Example http://192.168.1.108/cgi-bin/magicBox.cgi?action=getLanguageCaps
te
Success
Languages=SimpChinese,English,French
Return
lb
4.6.6 Language
Get language config
Table 4-28
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Language
Method GET
Description Get system language config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Language
Success
table.Language=SimpChinese
Return
General APIs 65
Comment —
Set language config
Table 4-29
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set system language config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Language=SimpChi
Example
nese
Success
OK
Return
Comment NOTE: After changing language setting, system will automatically reboot!
Appendix:
DA
Language string
GetLanguageCaps
A_
HT
Table 4-30
PI
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=AccessFilter
Method GET
fo
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=AccessFilter
In
Success table.AccessFilter.Enable=false
Return table.AccessFilter.TrustList[0]=10.6.10.23
te
table.AccessFilter.TrustList[1]=10.6.10.62
lb
table.AccessFilter.Type=TrustList
ra
Appendix:
General APIs 66
4.6.8 Auto Maintain
Get auto maintain config
Table 4-31
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=AutoMaintain
Method GET
Description Get Auto Maintain config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=AutoMaintain
table.AutoMaintain.AutoRebootDay=3
table.AutoMaintain.AutoRebootHour=0
table.AutoMaintain.AutoRebootMinute=0
table.AutoMaintain.AutoShutdownDay=1
Success
table.AutoMaintain.AutoShutdownHour=0
Return
table.AutoMaintain.AutoShutdownMinute=0
DA
table.AutoMaintain.AutoStartUpDay=1
HU
table.AutoMaintain.AutoStartUpHour=2
table.AutoMaintain.AutoStartUpMinute=0
A_
Comment —
HT
Table 4-32
PI
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
fo
Method GET
r
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&AutoMaintain.AutoR
Example
ebootDay=7
te
Success
lb
OK
Return
ra
Comment —
s
Appendix:
General APIs 67
ParamName ParamValue type Description
AutoMaintain.AutoShutdownMinute AutoOpenHour and AutoOpenMinute.
AutoMaintain.AutoStartUpDay Auto shutdown time.
AutoMaintain.AutoStartUpHour integer Range is same with AutoOpenDay,
AutoMaintain.AutoStartUpMinute AutoOpenHour, and AutoOpenMinute.
Table 4-33
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Holiday
Method GET
Description Get holiday config for record or snap.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Holiday
DA
table.Holiday.MonthMask[0]=3
table.Holiday.MonthMask[1]=0
HU
table.Holiday.MonthMask[2]=0
A_
table.Holiday.MonthMask[3]=0
HT
table.Holiday.MonthMask[4]=0
Success table.Holiday.MonthMask[5]=0
TP
Return table.Holiday.MonthMask[6]=0
_A
table.Holiday.MonthMask[7]=0
PI
table.Holiday.MonthMask[8]=0
table.Holiday.MonthMask[9]=1610612739
fo
table.Holiday.MonthMask[10]=0
r
table.Holiday.MonthMask[11]=0
In
Comment —
Set holiday config
te
lb
Table 4-34
ra
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
s
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set holiday config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Holiday.MonthMask[
Example
0]=3
Success
OK
Return
Parameters in URL:
In table below,
Comment
monthIndex presents the index of a month. 0 presents January, 1 presents February,
11 presents December.
Appendix:
General APIs 68
ParamName ParamValue type Description
It is the mask of a month.Every bit present a
day. For example, 0x0001 presents the first
day of a month is holiday. 0x0002 presents the
Holiday.MonthMask[monthIndex] integer
second day of a month is holiday, 0x0003
presents the first day and second day of a
month is holiday.
Response Example
TP
type=DVR
_A
Method GET
In
Request Example
http://192.168.1.108/cgi-bin/magicBox.cgi?action=getHardwareVersion
lb
ra
General APIs 69
Request Params ( none )
Request Example
http://192.168.1.108/cgi-bin/magicBox.cgi?action=getSerialNo
Request Example
HU
http://192.168.1.108/cgi-bin/magicBox.cgi?action=getMachineName
A_
Response Example
name=my machine
PI
Method GET
Request Params ( none )
lb
Request Example
ra
http://192.168.1.108/cgi-bin/magicBox.cgi?action=getSystemInfo
s
General APIs 70
Request URL http://<server>/cgi-bin/magicBox.cgi?action=getSystemInfoNew
Method GET
Request Params ( none )
Request Example
http://192.168.1.108/cgi-bin/magicBox.cgi?action=getSystemInfoNew
}
+2DCode char[32] O security code 123456
A_
Unit: s
+cameraNum uint8 O The number of cameras 1
_A
true: supported
false: not supported
fo
64,127,127,200]
In
No RTC: false
Response Example
info.SyncTime.Strategy=“PerLogin”,
info.2DCode=“123456”,
info.TotalRunTime=123456
info.cameraNum=0
info.cardReader=false
info.flashID[0]=200
info.flashID[1]=209
info.flashID[2]=128
info.flashID[3]=149
info.flashID[4]=64
info.flashID[5]=127
info.flashID[6]=127
General APIs 71
info.flashID[7]=200
info.hasRTC=true
Table 4-35
Syntax http://<server>/cgi-bin/magicBox.cgi?action=getVendor
Method GET
Description Get the vendor information.
Example http://192.168.1.108/cgi-bin/magicBox.cgi?action=getVendor
Success
vendor=TTT
Return
Comment —
DA
Table 4-36
HT
Syntax http://<server>/cgi-bin/magicBox.cgi?action=getSoftwareVersion
TP
Method GET
_A
Success
version=2.212.0000.0.R,build:2013-11-14
fo
Return
Comment —
r
In
Table 4-37
ra
Syntax http://<server>/cgi-bin/IntervideoManager.cgi?action=getVersion&Name=Onvif
s
Method GET
Description Get onvif version.
Example http://192.168.1.108/cgi-bin/IntervideoManager.cgi?action=getVersion&Name=Onvif
Success
version=2.4.2
Return
Comment —
Table 4-38
Syntax http://<server>/cgi-bin/IntervideoManager.cgi?action=getVersion&Name=CGI
Method GET
General APIs 72
Description Get CGI version.
Example http://192.168.1.108/cgi-bin/IntervideoManager.cgi?action=getVersion&Name=CGI
Success
version=2.0.0
Return
Comment —
class=HDVR
HT
TP
4.6.21 Reboot
_A
PI
Table 4-39
Syntax http://<server>/cgi-bin/magicBox.cgi?action=reboot[&delay=<paramValue>]
fo
Method GET
r
Example http://192.168.1.108/cgi-bin/magicBox.cgi?action=reboot
te
Success
OK
lb
Return
Comment If successful, response OK. If fail, response Error.
ra
s
4.6.22 Shutdown
Table 4-40
Syntax http://<server>/cgi-bin/magicBox.cgi?action=shutdown
Method GET
Description Shutdown the device.
Example http://192.168.1.108/cgi-bin/magicBox.cgi?action=shutdown
Success
OK
Return
Comment If successful, response OK. If fail, response Error.
General APIs 73
4.6.23 FactoryReset
Table 4-41
Syntax http://<server>/cgi-bin/magicBox.cgi?action=resetSystemEx[&type=<type>]
Method GET
Description Reset the configuration for the device to the factory default.
Example http://192.168.1.108/cgi-bin/magicBox.cgi?action=resetSystemEx&type=0
Success
OK
Return
Parameters in URL:
Type: integer, it can be 0 or1.
0 means all parameters are set to their factory default value;
1 means all parameters are set to their factory default value expect the specific
Comment parameters;
The specific parameters of different device types are different. But it always contains the
DA
network settings and user settings. After resetting, the device is reachable on the same
HU
When the Type parameter is not present in the URL, the default value of the Type is 0.
HT
Table 4-42
PI
Syntax http://<server>/cgi-bin/magicBox.cgi?action=getTracingCode
fo
Method GET
r
Example http://192.168.1.108/cgi-bin/magicBox.cgi?action=getTracingCode
Success
te
tc=0001...1101
Return
lb
General APIs 74
ProtocolType is not
Private, 554 by default.
HTTP port: Required when
+++HttpPort int No ProtocolType is not 80
Private, 80 by default.
TCP port: Required when
+++Port int No ProtocolType is Private, 37777
37777 by default.
+++UserName char[32] Yes Username admin
+++Password char[32] Yes Password, plain text admin123
Protocol Type
+++ProtocolTy char[12 "Private","Dahua2","Dahua
Yes "Private"
pe 8] 3","General","Onvif","GB28
181","Ehome"
+++Address char[16] Yes Device address 172.11.1.161
++cameras object[] Yes Video source information
DA
POST http://192.168.1.108/cgi-bin/LogicDeviceManager.cgi?action=addCameraByGroup
HT
{
TP
"group":[{
_A
"DeviceInfo":{
"UserName":"admin",
PI
"Password":"admin123",
fo
"ProtocolType":"Private",
"Port":37777,
r
"Address":"172.11.1.161"
In
},
te
"cameras":[{
lb
"uniqueChannel":1
}]
ra
}]
s
General APIs 75
Request URL http://<server>/cgi-bin/api/LogicDeviceManager/getCameraAll
Method GET
Request Params ( JSON format in body )
Name Type R/O Description Example
Request Example
{}
DeviceID to add/delete
TP
through DeviceInfo.
PI
status through
In
getCameraState.
te
General APIs 76
in DeviceInfo. We
recommend sending the
Enable in DeviceInfo.
+DeviceInfo DeviceInfo O Device details.
Use the Enable in the
structure to add/delete
devices.
True: Add devices.
False: delete devices from
the channel.
A device can be added only
when "DeviceID" is " " and
Info is not NULL.
++Enable bool O The device is enabled or true
not.
++EncryptStrea int O Device stream encryption 0
DA
NVR).
(If other encryption
A_
7: Tianjin HUISUN
encryption algorithm.
fo
domain name.
In
General APIs 77
UserName/Password is not
required.
}
++UserName char[32] O Username "admin"
++Password char[32] O Password in plain text. "admin"
++ProtocolType enumchar[32 O The protocol type of the "Private"
] connected device. For the
value range, see the
ProtocolType field of the
RemoteDevice
configuration.
enumchar[32]{
"Private"
"Dahua2"
"Dahua3"
"General"
DA
"Onvif"
HU
"GB28181"
"Ehome"
A_
}
s
General APIs 78
ss Jiangnan Avenue, Binjiang
District”
++SerialNo char[48] O Device serial number "DH12345678910"
++VendorAbbr char[32] O Vendor abbreviation "GY"
(optional)
Vendor type: Dahua (for
example).
++HardID char[64] O Hardware ID (optional) "454"
Customer’s requirements
without indicating the
specific hardware type
++SoftwareVersi char[64] O Software version (optional) "2.420.0000006.0.R.150311
on "
++ActivationTime char[24] O The date when starting "2000-01-01 00:00:00"
using the device.
Date format: "yyyy-MM-dd
DA
HH:mm:ss”
HU
“Year–Month–Day Hour:
Minute: Second"
A_
Range {"2000-01-01
HT
"2099-01-01
_A
00:00:00",/*Maximum
date*/}
PI
(DataNodeManager.addDat
In
aNode) in N + M cluster
te
mode.
++Mac char[] O MAC address "08:00:20:0A:8C:6D"
lb
General APIs 79
information in the
RemoteDevice
configuration.
+Type enumchar[32 O Input channel type. "Remote"
] enumchar[32]{
"Local": Local channel
(physical channel).
"Remote": Remote channel.
"Reserved32": Reserve 32
channels (compatible with
the device protocol of the
second generation).
"Output": Output channel.
"Matrix”: Analog matrix
channel.
"Compose": Composite
DA
channel.
"Cascade": Optical fiber
HU
cascading channel.
A_
}
HT
] enumchar[32]{
"Main": Main stream
_A
"Auto": Automatically
r
stream.
te
}
+Channel uint O Channel number of the 0
remote device (optional).
DeviceID is unique.
+UniqueChannel int O Unique channel number of 0
uniform device number
(required).
You can obtain video/audio
streams by specifying the
channel number with
0x11/0xF4
second-generation protocol.
Notes: When implementing
any addressing function of
General APIs 80
DeviceID+Channel,
LogicDeviceManager.getCa
meraAll() must be
implemented, and the
device must support
“DeviceID=Unique” unified
numbering method for input
channels For details, see
explanation on "Unique"
unified channel numbering
of Dahua Information
Exchange Format.
For setCamera(),
uniqueChannel-1 means
that the device
automatically assigns a
DA
channel number.
+DataNodeId int O Indicates the data node to 1
HU
cluster).
TP
Counted from 0. If it is -1 or
when the field does not
_A
allocated currently.
+DataNodeChan int O Indicates the local channel 2
fo
Counted from 0. If it is -1 or
when the field does not
lb
currently allocated.
s
General APIs 81
channel to be idle (that is,
the video source attribute
Enable=false ).
+VideoStandard enumchar[32 O Current video standard "PAL"
] enumchar[32]{
"PAL"
"NTSC"
"SECAM"
}
+Label enumchar[32 O Device label "Indoor"
] enumchar[32]{
"Indoor": Indoor
"Outdoor": Outdoor
}
+ImageInfo object O Device snapshot
When adding a device, take
DA
local computer.
++FilePath char[256] R Image path "/var/local/ch1.jpg"
A_
ype ] method
TP
enumchar[32]{
_A
"UserInput": Entered by
users.
PI
"Auto": Automatically
generated.
fo
}
r
Response Example
In
{
te
"camera":[{
"ControlID": "5001",
lb
"Name": "杭州",
ra
"Enable": true,
s
"DeviceInfo":{
"Enable": true,
"EncryptStream": 0,
"Address": "10.6.5.10",
"Port": 37777,
"usePreSecret": 1,
"UserName": "admin",
"Password": "admin",
"ProtocolType": "Private",
"VideoInputChannels": 16,
"AudioInputChannels": 4,
"DeviceClass": "IPC",
"DeviceType": "IPC-HF3300",
"HttpPort": 80,
General APIs 82
"HttpsPort": 443,
"RtspPort": 554,
"Name": "IPC1",
"MachineAddress": “Intersection of Weiye Road, Jiangnan Avenue, Binjiang District”
"SerialNo": "DH12345678910",
"VendorAbbr": "GY",
"HardID": "454",
"SoftwareVersion": "2.420.0000006.0.R.150311",
"ActivationTime": "2000-01-01 00:00:00",
"NodeType": ",
"Mac": "08:00:20:0A:8C:6D",
"OEMVendor": "SONY"
}
"DeviceID": "dev123",
"Type": "Remote",
"VideoStream": "Main",
DA
"Channel": 0,
"UniqueChannel": 0,
HU
"DataNodeId": 1,
A_
"DataNodeChannel": 2,
HT
"AutoReset": false,
TP
"VideoStandard": "PAL",
"Label": "Indoor",
_A
"ImageInfo": {
PI
"FilePath": "/var/local/ch1.jpg"
},
fo
"PasswordGenType": "UserInput"
r
},…{}]
In
}
te
lb
ra
General APIs 83
Response Params (multipart in body)
Name Type R/O Description Example
state object R The new status of the camera
+channel int32 R Unique channel number (the 1
channel number with changed
status)
+connectionState enumchar[12] R Connection status “Connected”
enumchar[12]{
"Connecting"
"Connected"
"Unconnect": Not connected
"Empty": The channel is not
configured and there is no
information.
"Disable": The channel is
DA
channel is changed.
_A
"Hibernation"
}
PI
Response Example
HTTP/1.1 200 OK
fo
Connection: close
In
te
--<boundary>
Content-Type: application/json
lb
{
"channel" : 1,
"connectionState" : "Connected"
}
--<boundary>
Content-Type: text/plain
Content-Length: 11
Heartbeat
--<boundary>
General APIs 84
4.7 User management
Table 4-43
Syntax http://<server>/cgi-bin/userManager.cgi?action=getUserInfo&name=<userName>
Method GET
Description Get user information with name userName.
Example http://192.168.1.108/cgi-bin/userManager.cgi?action=getUserInfo&name=admin
user.Name=admin
user.Memo=admin 's account
user.Group=admin
Success
user.Reserved=true
Return
user.Sharable=true
DA
user.PwdValidPeriod=30
HU
user. AuthList=<authList>
Comment —
A_
HT
Table 4-44
PI
Syntax http://<server>/cgi-bin/userManager.cgi?action=getUserInfoAll
fo
Method GET
Description Get information of all users.
r
Example http://192.168.1.108/cgi-bin/userManager.cgi?action=getUserInfoAll
In
users[0].Group=admin
te
users[0].Id=1
lb
Success users[0].Reserved=true
s
Return users[0].Sharable=true
users[0].PwdValidPeriod=30
users[0]. AuthList=<authList>
users[1].Group=admin
…
Comment —
Table 4-45
Syntax http://<server>/cgi-bin/userManager.cgi?action=getActiveUserInfoAll
Method GET
Description Get active users.
General APIs 85
Example http://192.168.1.108/cgi-bin/userManager.cgi?action=getActiveUserInfoAll
users[0].name=admin
users[0].ip=10.43.2.16
Success
users[0].group=admin
Return
users[0].clienttype=web3.0
users[0].logintime=2011-11-08 09:51:03
Comment —
Table 4-46
Syntax http://<server>/cgi-bin/userManager.cgi?action=getGroupInfo&name=<groupName>
Method GET
Description Get group setting with name groupName.
Example http://192.168.1.108/cgi-bin/userManager.cgi?action=getGroupInfo&name=admin
DA
group.Name=admin
Success
HU
group.Memo=administrator group
Return
group.AuthorityList=<authList>
A_
Parameters in URL:
HT
The device has one or two default user groups: "admin"or "admin"and "user". The
TP
"admin"group has all the authorities of operating the device. The "user"group only has
Comment
_A
If the group named groupName does not exist, the device returns Error.
fo
Table 4-47
te
lb
Syntax http://<server>/cgi-bin/userManager.cgi?action=getGroupInfoAll
Method GET
ra
Example http://192.168.1.108/cgi-bin/userManager.cgi?action=getGroupInfoAll
group[0].Id=1
group[0].Name=admin
group[0].Memo=administrator group
group[0].AuthorityList=<authList>
group[0].AuthorityDetail.Bypass[0]=1
group[0].AuthorityDetail.Bypass[1]=2
Success
group[0].AuthorityDetail.Bypass[2]=3
Return
…
group[0].AuthorityDetail.AccessControl[0]=1
group[0].AuthorityDetail.AccessControl[1]=3
group[0].AuthorityDetail.AccessControl[2]=5
…
group[1].Id=1
General APIs 86
group[1].Name=user
group[1].Memo=user group
group[1].AuthorityList=<authList>
group[1]….
…
Comment —
Table 4-48
http://<server>/cgi-bin/userManager.cgi?action=addUser&user.Name=<userName>&u
Syntax ser.Password=<userPassword>&user.Group=<userGroup>&user.Sharable=<userSh
DA
arable>[&user.Memo=<userMemo>&user.Reserved=<userReserved>]
Method GET
HU
http://192.168.1.108/cgi-bin/userManager.cgi?action=addUser&user.Name=George&us
Example
HT
er.Password=123456&user.Group=user&user.Sharable=true&user.Reserved=false
TP
Success
OK
Return
_A
Parameters in URL:
PI
userGroup: string, the range is "admin"and "user". In different group, the user has
Comment different authorities.
fo
Table 4-49
Syntax http://<server>/cgi-bin/userManager.cgi?action=deleteUser&name=<userName>
Method GET
Description Delete user with name username.
Example http://192.168.1.108/cgi-bin/userManager.cgi?action=deleteUser&name=George
Success
OK
Return
Comment —
General APIs 87
Table 4-50
http://<server>/cgi-bin/userManager.cgi?action=modifyUser&name=<UserName>&user
Syntax .Memo=<userMemo>&user.Group=<userGroup>&user.Reserved=<userReserved>&us
er.Sharable=<userSharable>
Method GET
Description Modify user info.
http://192.168.1.108/cgi-bin/userManager.cgi?action=modifyUser&name=George&user
Example
.Group=admin
Success
OK
Return
Comment User is identified by <UserName>, other params are the same with AddUser.
Table 4-51
TP
http://<server>/cgi-bin/userManager.cgi?action=modifyPassword&name=<username>
Syntax
_A
&pwd=<newPwd>&pwdOld=<oldPwd>
PI
Method GET
Description Modify user password.
fo
http://192.168.1.108/cgi-bin/userManager.cgi?action=modifyPassword&name=George
Example
&pwd=abcdef&pwdOld=123456
r
Success
In
OK
Return
te
Table 4-52
http://<server>/cgi-bin/userManager.cgi?action=modifyPasswordByManager&userNam
Syntax e=<username>&pwd=<newPwd>&managerName=<managerName>&managerPwd=
<managerPwd>&accountType=<accountType>
Method GET
Description Manager Modify common user's password.
http://192.168.1.108/cgi-bin/userManager.cgi?action=modifyPasswordByManager&use
Example rName=Geoge&pwd=123456&managerName=admin&managerPwd=abc123&account
Type=0
Success OK
General APIs 88
Return
the name of common user to be modified is username
new password is newPwd
Comment manager name is only admin
manager password is managerPwd, that is password of admin
accountType support 0 is Dahua account, 1 is Onvif account
Table 4-53
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set User Login Authenticate Policy
DA
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&LoginAuthCtrl.PriSvr
Example
HU
Policy=2
Success
A_
OK
Return
HT
4.8 Network
fo
r
Table 4-54
lb
ra
Syntax http://<server>/cgi-bin/netApp.cgi?action=getInterfaces
s
Method GET
Description Get all of the system network interfaces.
Example http://192.168.1.108/cgi-bin/netApp.cgi?action=getInterfaces
netInterface[0].Name=eth0
netInterface[0].Type=Normal
netInterface[0].Valid=true
Success …
Return netInterface[1].Name=3g
netInterface[1].Type=Auto,WCDMA,TD-SCDMA,TD-LTE,FDD-LTE
netInterface[1].Valid=true
…
result item value:
Comment Name: network interface name.
"eth0" - wired network interface
General APIs 89
"eth2" - wireless network interface
"3G" - 3G network interface
"bond0" - bond network interface
"bond1" - bond network interface
Not listed in detail
Table 4-55
A_
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Network
HT
Method GET
TP
Get network basic config. The basic config contains basic network parameters (default
_A
Description
interface, domain name, host name), and configuration of each network interface.
PI
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Network
table.Network.DefaultInterface=eth0
fo
table.Network.Domain=ttt
r
table.Network.Hostname=badak
table.Network.interface.DefaultGateway=10.7.0.1
In
table.Network.interface.DhcpEnable=false
te
Success
table.Network.interface.DnsServers[0]=221.123.33.228
Return
lb
table.Network.interface.DnsServers[1]=221.12.1.228
ra
table.Network.interface.IPAddress=10.7.2.3
table.Network.interface.MTU=1500
s
table.Network.interface.PhysicalAddress=00:10:5c:f2:1c:b4
table.Network.interface.SubnetMask=255.255.0.0
Comment interface in response is network interface name, such as eth0, eth2…
Set network config
Table 4-56
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set network basic config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&NetWork.Domain=ttt
Example
&NetWork.eth0.DhcpEnable=true
Success OK
General APIs 90
Return
Comment interface in below ParamName is network interface name, such as eth0 and eth2
Appendix:
xx:xx:xx:xx:xx:xx.
TP
Example:
PI
00:10:5c:f2:1c:b4
00:10:5C:F2:1C:B5
fo
Network.interface.SubnetMask string
Example:
In
255.255.255.0
te
Enable/Disable
Network.interface.EnableDhcpReserv
lb
4.8.3 PPPoE
Get PPPoE config
Table 4-57
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=PPPoE
Method GET
Description Get PPPoE config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=PPPoE
table.PPPoE.Enable=true,
Success table.PPPoE.AuthType[0]=PAP,
Return table.PPPoE.UserName=hz150260,
table.PPPoE.Password=Dont Know,
General APIs 91
table.PPPoE.Mode=Default,
table.PPPoE.Eth=eth0,
table.PPPoE.DefaultPPPoEInterface=ppp0,
table.PPPoE.PPPOE1.Enable=true,
table.PPPoE.PPPOE1.AuthType[0]=PAP,
table.PPPoE.PPPOE1.UserName=hz150260,
table.PPPoE.PPPOE1.Password=Don’t Know,
table.PPPoE.PPPOE1.Mode=Custom,
table.PPPoE.PPPOE1.Eth=eth1
Comment —
Table 4-58
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
DA
Method GET
HU
Example
user1&PPPoE.Password=123456
HT
Success
OK
TP
Return
_A
Comment —
PI
Appendix:
fo
4.8.4 DDNS
lb
ra
Table 4-59
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=DDNS
Method GET
Description Get DDNS config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=DDNS
Success table.DDNS[index].Address=www.ttt.com
Return table.DDNS[index].Enable=true
table.DDNS[index].HostName=www.ttt.com
table.DDNS[index].KeepAlive=10
table.DDNS[index].Password=none
table.DDNS[index].Port=5050
table.DDNS[index].Protocol= Quick DDNS
General APIs 92
table.DDNS[index].UserName=user1
table.DDNS[index].DefaultHostName.Enable=false
table.DDNS[index].DefaultHostName.HostName=9002A9D77133.quickddns.com
Comment index in response is the DDNS protocol table index, start from 0.
The meaning of parameters can refer to SetDDNSConfig chapter.
Set DDNS config
Table 4-60
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set DDNS config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&DDNS[0].Address=w
ww.ttt.com&DDNS[0].Enable=true
Success OK
Return
DA
Comment index in below ParamName is the DDNS protocol table index, start from 0.
HU
Appendix:
A_
HT
Range is [1—65535].
DDNS[index].KeepAlive integer
r
Unit is minutes.
In
DDNS[index].Port integer
Port of DDNS server
lb
ra
s
General APIs 93
ParamName ParamValue type Description
DDNS protocol type.
Range is {
"PRIVATE DDNS": 大华一代
"Private DDNS": 大华二代(使用 quickddns 域
名)
"CN99 DDNS"
"NO-IP DDNS"
"Dyndns DDNS"
"LUPUS DDNS"
"Oray DDNS"
"CP Plus DDNS"
"Ipplus DDNS"
"Q-See DDNS"
"SYSDNS DDNS"
"Videotrend DDNS"
DA
"CEPSA DDNS"
"G4IP DDNS"
HU
"HOSS DDNS"
A_
DDNS[index].Protocol string
"Intelbras DDNS"
HT
"HSY DDNS"
TP
"Flir DDNS"
"Private P2P DDNS": 大华 P2P 设备注册
_A
"ByDemes DDNS"
"DYNDNS OLD DDNS": 针对存储 dyndns 协
fo
议
r
"WATASHI DDNS"
In
"MINT DDNS"
lb
"SPECO DDNS"
ra
"SHANY DDNS"
s
General APIs 94
4.8.5 Email
Get email config
Table 4-61
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Email
Method GET
Description Get Email config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Email
table.Email.Address=www.ttt.com
table.Email.Anonymous=true
table.Email.AttachEnable=true
table.Email.Enable=true
table.Email.HealthReport.Enable=false
table.Email.HealthReport.Interval=61
DA
table.Email.Password=123456
HU
table.Email.Port=26
table.Email.Receivers[0][email protected]
A_
Success
table.Email.Receivers[1][email protected]
HT
Return
table.Email.Receivers[2][email protected]
TP
table.Email.SslEnable=false
table.Email.TlsEnable=false
PI
table.Email.Authentication=false
table.Email.OnlyAttachment=false
fo
table.Email.SendInterv=10
r
table.Email.Title=DVRMessage
In
table.Email.UserName=anonymity
te
Comment —
Set email config
lb
ra
Table 4-62
s
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set Email config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Email.Address=mail.
Example
ttt.com&Email.Anonymous=false
Success
OK
Return
Comment —
Appendix:
General APIs 95
ParamName ParamValue type Description
Email.Anonymous bool Enable/Disable anonymous email.
Email.AttachEnable bool Enable/Disable email attachment
Email.AttachmentEnable bool Enable/Disable email attachment
Email.Enable bool Enable/Disable email function
Email.HealthReport.Enable bool Enable/Disable report device status by email.
Range is [30-1440].
Email.HealthReport.Interval integer
Unit is minutes
Email.Password string User password of email account.
Email.Port integer Range is [1-65535]
Email.Receivers[0] string
Email.Receivers[1] string Email addresses of 3 receivers.
Email.Receivers[2] string
Email.SendAddress string Sender email address.
Email.SslEnable bool True: enable SSL email.
Email.Title string Title of email.
DA
4.8.6 WLan
HT
Table 4-63
PI
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=WLan
Method GET
fo
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=WLan
In
table.WLan.eth2.Enable=true
te
table.WLan.eth2.Encryption=off
table.WLan.eth2.KeyFlag=false
lb
table.WLan.eth2.KeyID=0
ra
table.WLan.eth2.KeyType=Hex
Success
s
table.WLan.eth2.Keys[0]=password1
Return
table.WLan.eth2.Keys[1]=password2
table.WLan.eth2.Keys[2]=password3
table.WLan.eth2.Keys[3]=password4
table.WLan.eth2.LinkMode=Auto
table.WLan.eth2.SSID=ttt
Comment —
Set WLan config
Table 4-64
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
General APIs 96
Description Set WLan config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&WLan.eth2.Enable=t
Example
rue&WLan.eth2.KeyType=Hex
Success
OK
Return
Comment In below ParamName, interface is name of wireless interface.
Appendix:
0: WLan.interface.Keys[0] is used.
HU
WLan.interface.Keys[0] string For ASCII key type: 64bits encryption key length is 5,
WLan.interface.Keys[1] string 128bits encryption key length is 13, consists of [0—9,
HT
a—z, A—Z]
Range is {Auto, Ad-hoc, and Infrastructure}.
fo
Table 4-65
http://<server>/cgi-bin/wlan.cgi?action=scanWlanDevices&<paramName>=<paramVal
Syntax
ue>[&<paramName>=<paramValue>…]
Method GET
Description Search Wi-Fi device information.
http://192.168.1.108/cgi-bin/wlan.cgi?action=scanWlanDevices&SSID=xia_yuguo
Example
13098 Internet
found=1
Success
wlanDevice[0].ApConnected=0
Return
wlanDevice[0].ApMaxBitRate=54000000
General APIs 97
wlanDevice[0].ApNetWorkType=255
wlanDevice[0].AuthMode=7
wlanDevice[0].BSSID=28:2c:b2:5c:de:36
wlanDevice[0].EncrAlgr=3
wlanDevice[0].LinkMode=0
wlanDevice[0].LinkQuality=31
wlanDevice[0].RSSIQuality=0
wlanDevice[0].SSID=xia_yuguo 13098 Internet
Comment —
Appendix:
4.8.8 UPnP
DA
HU
Table 4-66
HT
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=UPnP
TP
Method GET
_A
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=UPnP
Success table.UPnP.Enable=true
fo
Return table.UPnP.MapTable[index].Enable=true
r
table.UPnP.MapTable[index].InnerPort=80
In
table.UPnP.MapTable[index].OuterPort=8080
table.UPnP.MapTable[index].Protocol=TCP
te
table.UPnP.MapTable[index].ServiceName=HTTP
lb
Comment index in response is the UPNP map table index, start from 0.
ra
Table 4-67
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set UPnP config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&UPnP.Enable=true&
UPnP.MapTable[0].Protocol=TCP
Success OK
Return
Comment index in below ParamName is UPNP map table index, range is [0-255]
Appendix:
General APIs 98
ParamName ParamValue type Description
UPnP.Enable bool Enable/Disable UPNP feature.
UPnP.MapTable[index].Enable bool Enable/Disable this UPNP map.
Range is [1—65535].
UPnP.MapTable[index].InnerPort integer
Inner port number
Range is [1—65535].
UPnP.MapTable[index].OuterPort integer
Outer port number.
UPnP.MapTable[index].Protocol string Range is {TCP, UDP]
UPnP.MapTable[index].ServiceName string User defined UPnP service name.
Table 4-68
Syntax http://<server>/cgi-bin/netApp.cgi?action=getUPnPStatus
Method GET
DA
Example http://192.168.1.108/cgi-bin/netApp.cgi?action=getUPnPStatus
A_
status.InnerAddress=0.0.0.0
status.OuterAddress=0.0.0.0
HT
status.PortMapStatus[0]=Failed
TP
Success status.PortMapStatus[1]=Failed
_A
Return status.PortMapStatus[2]=Failed
PI
status.PortMapStatus[3]=Failed
status.Status=Unknown
fo
status.Working=false
Comment —
r
In
4.8.10 NTP
te
lb
Table 4-69
s
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=NTP
Method GET
Description Get NTP config
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=NTP
table.NTP.Address=clock.isc.org
table.NTP.Enable=false
table.NTP.Port=38
table.NTP.TimeZone=9
Success
table.NTP.UpdatePeriod=31
Return
table.NTP.ServerList[0].Enable=true,
table.NTP.ServerList[0].Address=192.168.1.108,
table.NTP.ServerList[0].Port=123
table.NTP.Tolerance=5,
General APIs 99
table.NTP.TimeZoneDesc=Beijing
Comment —
Set NTP config
Table 4-70
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<param
Syntax
Value>[&<paramName>=<paramValue>…]
Method GET
Description Set NTP config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&NTP.Address=time.tt
Example
t.com&NTP.Enable=true
Success
OK
Return
Comment —
4.8.11 RTSP
DA
HU
Table 4-71
TP
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=RTSP
_A
Method GET
PI
table.RTSP.Enable=true
Success table.RTSP.Port=554
r
Return table.RTSP.RTP.EndPort=40000
In
table.RTSP.RTP.StartPort=20000
te
Comment —
lb
Table 4-72
s
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<param
Syntax
Value>[&<paramName>=<paramValue>…]
Method GET
Description Set RTSP config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&RTSP.Enable=true&
Example
RTSP.Port=554
Success
OK
Return
Comment —
Appendix:
Table 4-73
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=AlarmServer
Method GET
Description Get alarm server config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=AlarmServer
table.AlarmServer.Address=10.7.8.9
DA
table.AlarmServer.Enable=false
table.AlarmServer.Password=
HU
Success table.AlarmServer.Port=8888
A_
Return table.AlarmServer.Protocol=ttt
HT
table.AlarmServer.ReportTime=02:00:00
table.AlarmServer.ReportWeekDay=2
TP
table.AlarmServer.UserName=admin
_A
Comment —
PI
Table 4-74
r
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<param
In
Syntax
Value>[&<paramName>=<paramValue>…]
te
Method GET
lb
Example
s=as.ttt.com&AlarmServer.Enable=false
s
Success
OK
Return
Comment —
Appendix:
NetworkSniffer.
HU
DefaultSaveDirectory
A_
and NetworkSniffer.
HT
FileNamedRule).
saveType string O Types "Wireshark/Tcpdump"
TP
of packet capture
_A
storage file:
PI
1.
fo
"Wireshark/Tcpdump":
r
type.
te
lb
2. Remotecap:
ra
Streaming remote
packet capture, that is,
s
Optional rules: 1)
Target IP
3) Protocol type
quintuples. The
HU
number of arrays
should not exceed 8.
A_
+CapType O Filtering 0
types:
r
In
condition.
ra
s
networkSnifferID=1387
Syntax http://<server>/cgi-bin/NetworkSnifferManager.cgi?action=stop
Method GET
HU
uniquely
identifies a packet
fo
capture.
r
Example
In
GET http://<server>/cgi-bin/NetworkSnifferManager.cgi?action=stop&networkSnifferID=1387
te
Response Params OK
lb
of disabling packet
capture
Example
OK
Table 4-75
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=UserGlobal
Table 4-76
http://<server>/cgi-bin/configManager.cgi?action=setConfig&UserGlobal.OnvifLoginCh
Syntax
eck=<flag>
Method GET
Description Enable onvif login check or not.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&UserGlobal.OnvifLog
Example
DA
inCheck=true
Success
HU
OK
Return
A_
Parameters in URL:
Comment
HT
Table 4-77
r
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&&name=SSHD
In
Method GET
te
Example http://<server>/192.168.1.108/configManager.cgi?action=getConfig&&name=SSHD
Success table.SSHD.Enable=true
ra
Return table.SSHD.Port=22
s
Comment —
Table 4-78
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramVal
ue>[&<paramName>=<paramValue>...]
Method GET
Description Set SSHD Config
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&SSHD.Enable=true&S
SHD.Port=22
Success OK
Return
4.9 Event
Table 4-79
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=<handlerName>
Method GET
Description Get event handler settings.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Alarm[0].Eve
Example
ntHandler
DA
handlerName.EventHandler.AlarmOutChannels[0]=1
HU
handlerName.EventHandler.AlarmOutChannels[1]=1
A_
…
handlerName.EventHandler.AlarmOutEnable=false
HT
handlerName.EventHandler.AlarmOutLatch=10
TP
handlerName.EventHandler.BeepEnable=true
_A
handlerName.EventHandler.Dejitter=0
PI
handlerName.EventHandler.Delay=30
handlerName.EventHandler.LogEnable=true
fo
handlerName.EventHandler.MailEnable=true
handlerName.EventHandler.PtzLink[0][0]=None
r
handlerName.EventHandler.PtzLink[0][1]=0
In
handlerName.EventHandler.PtzLink[1][0]=None
te
handlerName.EventHandler.PtzLink[1][1]=0
lb
…
Success
handlerName.EventHandler.PtzLinkEnable=false
ra
Return
handlerName.EventHandler.RecordChannels[0]=1
s
handlerName.EventHandler.RecordChannels[1]=2
…
handlerName.EventHandler.RecordEnable=true
handlerName.EventHandler.RecordLatch=10
handlerName.EventHandler.SnapshotChannels[0]=1
handlerName.EventHandler.SnapshotChannels[1]=1
…
handlerName.EventHandler.SnapshotEnable=false
handlerName.EventHandler.SnapshotPeriod=3
handlerName.EventHandler.SnapshotTimes=0
handlerName.EventHandler.TimeSection[0][0]=1 01:00:00-24:00:00
handlerName.EventHandler.TimeSection[0][1]=1 01:00:00-24:00:00…
…
handlerName.EventHandler.TimeSection[6][5]=1 01:00:00-24:00:00
MotionDetect[ChannelNo].EventHandler
HU
BlindDetect[ChannelNo].EventHandler
LossDetect[ChannelNo].EventHandler
A_
Table 4-80
_A
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
PI
alue>[&<paramName>=<paramValue>…]
Method GET
fo
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Alarm[0].EventHandl
Example
er.AlarmOutChannels[0]=1&Alarm[0].EventHandler.AlarmOutEnable=true
In
Success
te
OK
Return
lb
Appendix:
s
Pattern}
This is PTZ action linked with
A_
handlerName.EventHandler.PtzLink[ch][0] string
events.
HT
starts from 0.
_A
If PtzLink[ch]][0] is
handlerName.EventHandler.PtzLink[ch][1] integer
fo
handlerName.EventHandler.RecordLatch integer
to record after input alarm is
cleared.
handlerName.EventHandler.SnapshotChann
array<integer> snapshot channel list
els
Enable/Disable snapshot
handlerName.EventHandler.SnapshotEnable bool
function.
Range is [0—255].
Frames between snapshots.
handlerName.EventHandler.SnapshotPeriod integer
0 means continuously snapshot
for every frame.
Range is [0—65535]
handlerName.EventHandler.SnapshotTimes integer Snapshot times before stop, 0
means don't stop snapshot.
Format: mask
hh:mm:ss-hh:mm:ss
Mask: {0,1}, hh: [0—24], mm: [00
handlerName.EventHandler.TimeSection[wd]
String —59], ss: [00—59]
[ts]
Mask 0: this time section is not
used.
Mask 1: this time section is used.
DA
Example:
TimeSection[1][0]=1
HU
12:00:00-18:00:00
A_
at Monday.
Enable/Disable local message
_A
handlerName.EventHandler.TipEnable bool
box tip.
PI
handlerName.EventHandler.LightingLink.Ena
r
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Alarm
Method GET
Description Get alarm config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Alarm
table.Alarm[0].Enable=false
table.Alarm[0].EventHandler….(output of EventHandler is described in
GetEventHandler)
Success
table.Alarm[0].Name=Door1
Return
table.Alarm[0].SensorType=NC
table.Alarm[1]….
…
Comment —
Set alarm config
DA
Table 4-82
HU
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramVal
Syntax
A_
ue>[&<paramName>=<paramValue>…]
HT
Method GET
Description Set alarm config.
TP
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Alarm[0].Enable=true
_A
Success
OK
PI
Return
In below ParamName, input is external alarm input channel which starts from 0.
fo
Comment EventHandler defines parameter of relevant actions when alarm or event happens. It's
r
Appendix:
te
SetEventHandler.
Alarm[input].Name string Name of alarm input channel.
Range is {NC, NO].
Alarm[input].SensorType string NC: normal close
NO: normal open
Table 4-83
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=AlarmOut
Method GET
Table 4-84
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set alarm out config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&AlarmOut[0].Mode=0
Example
&AlarmOut[0].Name=port1
DA
Success
OK
Return
HU
Comment port in below ParamName is alarm out port index, start form 0.
A_
Appendix:
HT
TP
0: automatically alarm
PI
AlarmOut[port].Mode integer
1: force alarm
2: close alarm
fo
Table 4-85
ra
Syntax http://<server>/cgi-bin/alarm.cgi?action=getInSlots
s
Method GET
Description Get alarm input channel number.
Example http://192.168.1.108/cgi-bin/alarm.cgi?action=getInSlots
Success
result=2
Return
Comment —
Table 4-86
Syntax http://<server>/cgi-bin/alarm.cgi?action=getOutSlots
Method GET
Description Get alarm output channel number.
Table 4-87
Syntax http://<server>/cgi-bin/alarm.cgi?action=getInState
Method GET
Description Get alarm input state for all channels.
Example http://192.168.1.108/cgi-bin/alarm.cgi?action=getInState
Success
result=3
Return
A bit in the response result indicates a channel alarm states, result 3 means alarm
DA
Comment
channel 1 and channel 2 have alarm now.
HU
Table 4-88
TP
_A
Syntax http://<server>/cgi-bin/alarm.cgi?action=getOutState
PI
Method GET
Description Get alarm output state for all channels.
fo
Example http://192.168.1.108/cgi-bin/alarm.cgi?action=getOutState
Success
r
result=0
Return
In
Comment A bit in the response result indicates a channel, result 1 means alarm is present.
te
lb
Table 4-89
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=BlindDetect
Method GET
Description Get blind detect config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=BlindDetect
head.Enable=false
Success
head.EventHandler= (output of EventHandler is described in GetEventHandler)
Return
head.Level=3
Parameters in Response:
head=table.BlindDetect[ChannelNo]
Comment
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
Table 4-90
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set blind detect config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&BlindDetect[0].Enabl
Example
e=true
Success
OK
Return
Parameters in URL:
In table below,
Comment head=BlindDetect[ChannelNo]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
DA
HU
Appendix:
A_
Range is [1—6].
PI
6: highest sensitivity.
r
In
Table 4-91
s
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=LossDetect
Method GET
Description Get video loss detect config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=LossDetect
Success head. Enable=false
Return head. EventHandler= (output of EventHandler is described in GetEventHandler)
Parameters in Response:
head=table.LossDetect [ChannelNo]
Comment
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
Set video loss detect config
Table 4-92
Appendix:
SetEventHandler.
HT
Table 4-93
fo
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=LoginFailureAlarm
r
Method GET
In
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=LoginFailureA
Example
larm
lb
Success head.Enable=false
ra
Parameters in Response:
Comment
head=table.LoginFailureAlarm
Set login failure alarm config
Table 4-94
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set login failure alarm config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&LoginFailureAlarm.E
Example
nable=true
Success
OK
Return
Appendix:
Table 4-95
A_
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=StorageNotExist
HT
Method GET
Description Get storage not exist event config.
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=StorageNotE
_A
Example
xist
PI
table.StorageNotExist.Enable=false
Success
table.StorageNotExist.EventHandler= (output of EventHandler is described in
fo
Return
GetEventHandler)
r
Comment —
In
Table 4-96
lb
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
ra
Syntax
alue>[&<paramName>=<paramValue>…]
s
Method GET
Description Set storage not exist event config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&StorageNotExist.Ena
Example
ble=true
Success
OK
Return
Comment —
Appendix:
Table 4-97
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=StorageFailure
Method GET
Description Get storage failure event config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=StorageFailur
Example
e
table.StorageFailure.Enable=false
Success
table.StorageFailure.EventHandler= (output of EventHandler is described in
Return
GetEventHandler)
Comment —
Set storage access failure event config
DA
HU
Table 4-98
A_
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
HT
alue>[&<paramName>=<paramValue>…]
Method GET
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&StorageFailure.Enab
Example
PI
le=true
Success
fo
OK
Return
r
Comment —
In
Appendix:
te
SetEventHandler.
Table 4-99
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=StorageLowSpace
Method GET
Description Get storage low space event config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=StorageLowS
Example
pace
Success table.StorageLowSpace.Enable=false
Table 4-100
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set storage low space event config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&StorageLowSpace.E
Example
nable=true
Success
OK
Return
Comment —
DA
Appendix:
HU
SetEventHandler.
_A
Table 4-101
In
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=NetAbort
te
Method GET
lb
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=NetAbort
table.NetAbort.Enable=false
s
Success
table.NetAbort.EventHandler= (output of EventHandler is described in
Return
GetEventHandler)
Comment —
Set net abort event config
Table 4-102
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set net abort event config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&NetAbort.Enable=tru
Example
e
Success OK
Appendix:
Table 4-103
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=IPConflict
DA
Method GET
Description Get IP conflict event config.
HU
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=IPConflict
A_
Success table.IPConflict.Enable=false
HT
GetEventHandler)
Comment —
_A
Table 4-104
fo
r
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
alue>[&<paramName>=<paramValue>…]
In
Method GET
te
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&IPConflict.Enable=tr
ra
ue
Success OK
s
Return
Comment —
Appendix:
Table 4-105
Comment
AlarmLocal: alarm detection event.
HT
For details on the event name and parameters, see the corresponding [Event] sections.
te
Method GET
ra
corresponding section.
Response Example
_A
HTTP/1.1 200 OK
PI
Cache-Control: no-cache
Pragma: no-cache
fo
Connection: close
In
--myboundary
lb
Content-Type: text/plain
ra
Content-Length: 39
s
Code=VideoMotion;action=Start;index=0
--myboundary
Content-Type: text/plain
Content-Length: 38
Code=FaceDetection;action=Start;index=0;data={
“Faces”: [ { “BoundingBox”: [2992,136,6960,8192],
“Sex”: “Man”,
“Age”: 40,
“Feature”: [ “WearGlasses”, “Smile”],
“Eye”: 2,
“Mouth”: 1,
--myboundary
Content-Type: text/plain
Content-Length: 9
Heartbeat
--myboundary
……
Table 4-106
HU
Syntax http://<server>/cgi-bin/eventManager.cgi?action=getCaps
A_
Method GET
HT
Example http://192.168.1.108/cgi-bin/eventManager.cgi?action=getCaps
_A
caps.AlarmOutEnable=true
caps.BeepEnable=true
PI
caps.DejitterEnable=true
caps.MMSEnable=true
fo
caps.MailEnable=true
r
caps.MonitorTourEnable=true
In
caps.PtzLinkEnable=true
te
caps.RecordEnable=true
caps.SnapshotEnable=true
lb
caps.TimeSectionEnable=true
ra
caps.TipEnable=true
s
caps.RecordCloudEnable=true,
Success
caps.SnapshotCloudEnable=false,
Return
caps.SnapshotTimes[0]=3,
caps.SnapshotTimes[1]=10,
caps.SupportAlarmBell=false,
caps.SupportAccessControl=false,
caps.SipCallEnable=false,
caps.SupportAlarmServer=false,
caps.SupportPtzLinkDelay=false,
caps.SupportPSTNAlarmServer=false,
caps.SupportICR=false,
caps.BeepTime=false,
caps.DejitterRange.Min=0,
caps.DejitterRange.Max=60
caps.SupportDisableLinkage[0]=0
caps.SupportDisableLinkage[1]=0
HU
caps.SupportDisableLinkage[2]=0
A_
caps.SupportDisableLinkage[3]=0
HT
caps.SupportHTTPUpload.PictureHttpUploadEnable=false
TP
caps.SupportHTTPUpload.EventHttpUploadEnable=false
Comment —
_A
PI
NetAlarm object[] R
corresponding channel which starts
ra
from 0.
s
}
Alarm linkage
HU
SetEventHandler.
HT
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=NetAlarm
Get Config Response Example
fo
table.NetAlarm[0].Enable=false
table.NetAlarm[0].Name=channel1
r
table.NetAlarm[0].SensorType=NO
In
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&NetAlarm[0].Enable=true
Set Config Response Example
s
OK
4.9.21 GetSupportedEvents
DA
Request Example
TP
http://192.168.1.108/cgi-bin/eventManager.cgi?action=getExposureEvents
_A
PI
Response Example
In
events[0]=VideoMotion
te
events[1]=AlarmLocal
lb
events[2]=FaceDetection
events[3]=VideoMotion
ra
…
s
4.10 Record
Table 4-107
Syntax http://<server>/cgi-bin/recordManager.cgi?action=getCaps
Method GET
Description Get record manager capabilities.
Example http://192.168.1.108/cgi-bin/recordManager.cgi?action=getCaps
Success caps.MaxPreRecordTime=30
Return caps.PacketLengthRange[0]=1
Table 4-108
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Record
DA
Method GET
HU
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Record
HT
table.Record[channel].PreRecord=6
table.Record[channel].TimeSection[weekday][0]=65535 00:00:00-24:00:00
TP
table.Record[channel].TimeSection[weekday][1]=0 02:00:00-24:00:00
_A
Success
table.Record[channel].TimeSection[weekday][2]=0 03:00:00-24:00:00
Return
PI
table.Record[channel].TimeSection[weekday][3]=0 04:00:00-24:00:00
table.Record[channel].TimeSection[weekday][4]=0 05:00:00-24:00:00
fo
table.Record[channel].TimeSection[weekday][5]=0 06:00:00-24:00:00
r
Parameters in Response:
channel: integer, array index starts from 0, which means video channel(equals to video
In
Record config contains pre record time and record time sections of every day.
ra
Table 4-109
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set record config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Record[0].TimeSecti
on[0][0]=6 00:00:00-23:59:59
Example Set record time to every Sunday all day. Record type is motion detection and alarm.
In this example, "6 00:00:00-23:59:59" means motion detection and alarm record all day
(6 = 4 & 2, alarm is 4, motion detection is 2.).
Success
OK
Return
Comment Parameters in URL:
Appendix:
Table 4-110
lb
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=RecordMode
ra
Method GET
Description Get record mode config.
s
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=RecordMode
Success
table.RecordMode[Channel].Mode=0
Return
Parameters in Response:
Comment Channel: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
Set record mode config
Table 4-111
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>
Method GET
Description Set record mode config.
Appendix:
HT
Table 4-112
TP
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=MediaGlobal
_A
Method GET
PI
table.MediaGlobal.OverWrite=true,
r
table.MediaGlobal.PacketType=0,
In
table.MediaGlobal.PacketLength=60,
Success
table.MediaGlobal.PacketSize=1024,
te
Return
table.MediaGlobal.LogRecord=false,
lb
table.MediaGlobal.LogEncode=false,
ra
table.MediaGlobal.SnapFormatAs=MainFormat
s
Comment —
Set media global config
Table 4-113
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>
Method GET
Description Set media global config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&MediaGlobal.SnapF
Example
ormatAs=MainFormat
Success
OK
Return
Comment —
Response Example
A_
result=08137
HT
Step 2 Start to find media files satisfied the conditions with the finder.
TP
Method GET
PI
05:00"
+EndTime string R End time "2010-05-25 12:
s
10:00"
+Dirs string[] O The directory where the recordings are ["/mnt/dvr/sda0",
saved; array; the index starts from 0; optional "/mnt/dvr/sda1"]
values: {"dav", "jpg", "mp4"}
If this parameter does not exist, the system
will search for all directories.
+Types string[] O The type of file that is being searched for; ["dav"]
array; the index starts from 0; optional
values: {"dav", "jpg", "mp4"}
If this parameter does not exist, the system
will search for all file types.
+Flags string[] O Search parameter; array; the index starts ["Timing"]
from 0; optional values: {"Timing", "Manual",
s[1]=VideoMotion&condition.StartTime=2014-1-1%2012:00:00&condition.EndTime=2015-1-10%2012:0
0:00&condition.VideoStream=Main
HU
A_
Response Example
TP
OK
_A
PI
Method GET
r
count int R Get the number of files that have been found, 100
and the maximum number is 100.
s
Request Example
http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=findNextFile&object=08137&count=100
items[0].VideoStream=Main
items[0].FilePath=/mnt/dvr/sda0/2010/8/11/dav/15:40:50.jpg
HU
items[0].Length=790
A_
items[0].Duration=3600
HT
TP
Method GET
PI
Request Example
http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=close&object=08137
lb
ra
Response Example
OK
Table 4-114
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findFile
Method GET
DA
Start to find media files satisfied the common conditions and FaceDetection conditions
HU
Description
with the finder.
A_
Search directory list, if omit, search all. Each dir path max
+Dirs array<string> O
s
Table 4-115
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findNextFile
Method GET
Description Get the media file information found by the finder.
DA
+CutLength int O File length that cut between start time and end time
ra
items[0].SummaryNew[0].Value.Sex=Man
HU
items[0].SummaryNew[0].Value.Age=30
items[0].SummaryNew[0].Value.Glasses=1
A_
items[0].SummaryNew[0].Value.Mask=2
HT
items[0].SummaryNew[0].Value.Beard=1
TP
…
Step 4 Close the finder.
_A
This API is the same as the API in "4.10.5 Find Media Files".
PI
Step 2 Start to find media files satisfied the common conditions and FaceRecognition
ra
Table 4-116
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findFile
Method GET
Description Start to find media files satisfied the common conditions and FaceRecognition conditions
with the finder.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
object int R The finder object id
condition object R The search conditions
+Channel int R The video channel to search, video channel index start from
1, use -1 to search all video channel.
+StartTime string O Start time to search, ex: "2010-05-25 12:05:00"
+++Person object O Search condition of history person and the similar face group
person candidates
HT
++++GroupID string O The identity of the Face Group that this Person in. max string
lb
length is 63
ra
++++Mask int O Mask Status, 0: all, 1: not wearing mask, 2: wearing mask
++++Beard int O Beard Status, 0: all, 1: no beard, 2: has beard
+++GroupID array<string> O GroupID list
+++SimilaryRa array<int> O Similary Range, ex: [40, 100]
nge
[ Response Params ] ( OK )
[ Example ]
Request GET
http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=findFile&object=08137&condition.Ch
annel=1&condition.StartTime=2014-1-1%2012:00:00&condition.EndTime=2015-1-10%201
2:00:00&condition.Types[0]=jpg&condition.Flags[0]=Event&condition.Events[0]=FaceRecog
nition&condition.DB.FaceRecognitionRecordFilter.RegType=RecSuccess&condition.DB.Fa
ceRecognitionRecordFilter.StartTime=2014-1-1%2012:00:00&condition.DB.FaceRecognitio
Table 4-117
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findNextFile
Method GET
Description Get the media file information found by the finder
DA
+CutLength int O File length that cut between start time and end time
ra
+++++Certificat
string O Certificate Type. It can be: "IC', "Passport", "Unknown"
A_
eType
+++++ID string O Person ID of CertificateType, max string length is 31
HT
+++++Feature
TP
[ Example ]
PI
GET
Request http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=findNextFile&object=08137&count=1
fo
00
r
found=100
items[0].Channel=1
In
items[0].StartTime=2011-1-1 12:00:00
te
items[0].EndTime=2011-1-1 13:00:00
lb
items[0].Type=jpg
ra
items[0].Events[0]=FaceRecognition
items[0].FilePath =/mnt/dvr/sda0/2010/8/11/dav/15:40:50.jpg
s
items[0].Length =790
items[0].SummaryNew[0].Key=FaceRecognitionRecord
Respons items[0].SummaryNew[0].Value.RecResult=1
e items[0].SummaryNew[0].Value.MachineAddress=BinJiang
items[0].SummaryNew[0].Value.IsGlobalScene=true
items[0].SummaryNew[0].Value.ImageInfo.Length=123
items[0].SummaryNew[0].Value.ImageInfo.FilePath=/tmp/1.jpg
items[0].SummaryNew[0].Value.Object.Sex=Man
items[0].SummaryNew[0].Value.Object.Age=40
items[0].SummaryNew[0].Value.Object.Glasses=1
items[0].SummaryNew[0].Value.Object.Eye=2
items[0].SummaryNew[0].Value.Object.Mouth=1
items[0].SummaryNew[0].Value.Candidates[0].Similarity=50
This API is the same as the API in "4.10.5 Find Media Files".
A_
Step 2 Start to find media files satisfied the common conditions and HumanTrait conditions
HT
Table 4-118
_A
PI
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findFile
Method GET
fo
Start to find media files satisfied the common conditions and HumanTrait conditions with
Description
r
the finder.
[ Request Params ] ( key=value format at URL )
In
[ Example ]
HU
GET
A_
http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=findFile&object=08137&condition.Ch
annel=1&condition.StartTime=2014-1-1%2012:00:00&condition.EndTime=2015-1-10%201
HT
2:00:00&condition.Types[0]=jpg&condition.Flags[0]=Event&condition.Events[0]=HumanTrai
TP
t&condition.DB.HumanTraitRecordFilter.HumanAttributes.CoatColor[0]=White&condition.D
_A
Request B.HumanTraitRecordFilter.HumanAttributes.CoatColor[1]=Yellow&condition.DB.HumanTrait
PI
RecordFilter.HumanAttributes.CoatType=1&condition.DB.HumanTraitRecordFilter.HumanAt
tributes.HasHat=2&condition.DB.HumanTraitRecordFilter.HumanAttributes.Sex=Man&cond
fo
ition.DB.HumanTraitRecordFilter.HumanAttributes.Age[0]=30&condition.DB.HumanTraitRe
cordFilter.HumanAttributes.Age[1]=50&condition.DB.HumanTraitRecordFilter.HumanAttribu
r
tes.HairStyle=1
In
Respons
OK
te
e
lb
Table 4-119
s
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findNextFile
Method GET
Descripti
Get the media file information found by the finder
on
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
object int R The finder object id
count int R Record num to get, should less than 100.
[ Response Params ] ( key=value format )
Name Type R/O Param Description
found int R Record num that found.
items array<object> R Result record items.
+Channel int O The video channel index start from 0,
++++HasHat int O Has hat or not, 0: unknown, 1: not has hat, 2: has hat
TP
++++HasBag int O Has bag or not, 0: unknown, 1: not has bag, 2: has bag
_A
4: updo, 5: hiddened
r
++++Bag int O
knapsack, 4: draw-bar box
lb
+++FaceAttribu
object O Face attributes
tes
s
items[0].SummaryNew.Key=HumanTraitRecord
HU
items[0].SummaryNew.Value.HumanAttributes.CoatColor=White
items[0].SummaryNew.Value.HumanAttributes.CoatType=1
A_
items[0].SummaryNew.Value.HumanAttributes.TrousersColor=Black
HT
items[0].SummaryNew.Value.HumanAttributes.TrousersType=1
TP
items[0].SummaryNew.Value.HumanAttributes.HasHat=2
_A
Respons items[0].SummaryNew.Value.HumanAttributes.HasBag=1
e items[0].SummaryNew.Value.HumanAttributes.Sex=Man
PI
items[0].SummaryNew.Value.HumanAttributes.Age=30
items[0].SummaryNew.Value.HumanAttributes.HairStyle=2
fo
items[0].SummaryNew.Value.HumanAttributes.HasUmbrella=1
r
items[0].SummaryNew.Value.HumanAttributes.Bag=0
In
items[0].SummaryNew.Value.HumanAttributes.Cap=2
te
items[0].SummaryNew.Value.FaceAttributes.Sex=Man
items[0].SummaryNew.Value.FaceAttributes.Age=35
lb
items[0].SummaryNew.Value.FaceAttributes.Mask=0
ra
items[0].SummaryNew.Value.FaceAttributes.Beard=1
s
items[0].SummaryNew.Value.FaceAttributes.Glass=2
items[0].SummaryNew.Value.FaceAttributes.Emotion=Smile
items[0].SummaryNew.Value.FacePath=/mnt/2010/8/11/dav/15:40:50.jpg
items[0].SummaryNew.Value.FaceScenePath=/mnt/2010/8/11/dav/15:40:51.jpg
…
Step 4 Close the finder.
This API is the same as the API in "4.10.5 Find Media Files".
Step 5 Destroy the finder.
This API is the same as the API in "4.10.5 Find Media Files".
Table 4-120
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findFile
Method GET
Start to find media files satisfied the common conditions and TrafficCar conditions with
the finder.
Note: some request params can use compare condition, it's value is an array, first item is
a string of compare condition type, and the following items are compare values.
Compare condition type can be:
Description
"==": means equal, followed with one param, if param type is string, then param value
can contain some “*” to match any string.
"||": means equal one of the params, followed with one or more params.
"<>": means inside range, followed by two integer param,
"><": means outside range, followed by two integer param,
DA
+Channel int R
1, use -1 to search all video channel.
_A
"Mosaic", "Cutout"
In
Search directory list, if omit, search all. Each dir path max
lb
+Dirs array<string> O
string length is 259.
ra
Table 4-121
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findNextFile
Method GET
Descripti
Get the media file information found by the finder
on
DA
+CutLength int O File length that cut between start time and end time
ra
items[0].Summary.TrafficCar.Event=TrafficJunction
…
HU
This API is the same as the API in "4.10.5 Find Media Files".
HT
This API is the same as the API in "4.10.5 Find Media Files".
_A
This API is the same as the API in "4.10.5 Find Media Files".
r
Step 2 Start to find media files satisfied the common conditions and IVS conditions with the
In
finder
te
Table 4-122
lb
ra
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findFile
Method GET
s
Start to find media files satisfied the common conditions and IVS conditions with the
Description
finder.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
object int R The finder object id
condition object R The search conditions
The video channel to search, video channel index start from
+Channel int R
1, use -1 to search all video channel.
+StartTime string O Start time to search, ex: "2010-05-25 12:05:00"
+EndTime string O End time to search, ex: "2010-06-25 12:05:00"
+Types array<string> O Search file types
Search flags. It can be: "Timing", "Manual", "Marker", "Event",
+Flags array<string> O
"Mosaic", "Cutout"
[ Example ]
HU
GET http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=findFile&object=08137&condit
ion.Channel=1&condition.StartTime=2014-1-1%2012:00:00&condition.EndTime=2015-1-1
A_
Request 0%2012:00:00&condition.Types[0]=jpg&condition.DB.IVS.Rule=CrossLineDetection&cond
HT
ition.DB.IVS.Action=Cross&condition.DB.IVS.ObjectType[0]=Human&condition.DB.IVS.Ob
TP
jectType[1]=NonMotor
_A
Response OK
Step 3 Get the media file information found by the finder
PI
fo
Table 4-123
r
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findNextFile
In
Method GET
Description Get the media file information found by the finder
te
items[0].Summary.IVS.Action=Cross
HU
items[0].Summary.IVS.ObjectType=Human
…
A_
This API is the same as the API in "4.10.5 Find Media Files".
TP
This API is the same as the API in "4.10.5 Find Media Files".
PI
This API is the same as the API in "4.10.5 Find Media Files".
In
Step 2 Start to find media files satisfied the common conditions and NonMotor conditions with
te
the finder
lb
Table 4-124
ra
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findFile
s
Method GET
Start to find media files satisfied the common conditions and NonMotor conditions with
Description
the finder.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
object int R The finder object id
condition object R The search conditions
The video channel to search, video channel index start from
+Channel int R
1, use -1 to search all video channel.
+StartTime string O Start time to search, ex: "2010-05-25 12:05:00"
+EndTime string O End time to search, ex: "2010-06-25 12:05:00"
+Types array<string> O Search file types
+Flags array<string> O Search flags. It can be: "Timing", "Manual", "Marker", "Event",
"CoachMotorcycle"
HT
[ Response Params ] ( OK )
_A
[ Example ]
GET http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=findFile&object=08137&condit
PI
ion.Channel=1&condition.StartTime=2014-1-1%2012:00:00&condition.EndTime=2015-1-1
fo
Request 0%2012:00:00&condition.Types[0]=jpg&condition.DB.NonMotorRecordFilter.NumOfCyclin
g=2&condition.DB.NonMotorRecordFilter.Color=White&condition.DB.NonMotorRecordFilt
r
er.Category=Bicycle&condition.DB.NonMotorRecordFilter.Helmet=1
In
Response OK
te
Table 4-125
ra
s
URL http://<server>/cgi-bin/mediaFileFind.cgi?action=findNextFile
Method GET
Description Get the media file information found by the finder
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
object int R The finder object id
count int R Record num to get, should less than 100.
[ Response Params ] ( key=value format )
Name Type R/O Param Description
found int R Record num that found.
items array<object> R Result record items.
+Channel int O The video channel index start from 0,
+StartTime string R Start time to search, ex: "2010-05-25 12:05:00"
+EndTime string R End time to search, ex: "2010-06-25 12:05:00"
"CoachMotorcycle"
TP
[ Example ]
PI
GET http://192.168.1.108/cgi-bin/mediaFileFind.cgi?action=findNextFile&object=08137&
Request
count=100
fo
found=100
items[0].Channel=1
r
items[0].StartTime=2011-1-1 12:00:00
In
items[0].EndTime=2011-1-1 13:00:00
te
items[0].Type=jpg
lb
items[0].Events[0]=NonMotorDetect
items[0].FilePath=/mnt/dvr/sda0/2010/8/11/dav/15:40:50.jpg
ra
Response
items[0].Length=790
s
items[0].SummaryNew.Key=NonMotorRecordFilter
items[0].SummaryNew.Value.NumOfCycling=2
items[0].SummaryNew.Value.Color=White
items[0].SummaryNew.Value.Category=Bicycle
items[0].SummaryNew.Value.Helmet=1
…
Step 4 Close the finder.
This API is the same as the API in "4.10.5 Find Media Files".
Step 5 Destroy the finder.
This API is the same as the API in "4.10.5 Find Media Files".
<file data>
DA
HU
Download the media data between start time and end time.
HT
Method GET
_A
startTime string R Start time of the recording in the format “2010-05-25 12:05:00”
r
default value is 0.
0: Main stream
s
1: Sub stream 1
2: Sub stream 2
Types string O The type of files that are being “dav”
searched for
Request Example
http://192.168.1.108/cgi-bin/loadfile.cgi?action=startLoad&channel=1&startTime=2012-10-8%2013:00:0
1&endTime=2012-10-8%2014:00:01&subtype=0&Types=dav
<file data>
Table 4-126
http://<server>/cgi-bin/RecordStreamInterleaved.cgi?action=attachStream&path=<File
Syntax
name>[&password=<password>]
Method GET
Description Encrypted Download a file by filename. To get filename by chapter file finding.
http://172.29.2.241/cgi-bin/RecordStreamInterleaved.cgi?action=attachStream&path=/
Example
mnt/sd/2019-07-01/001/dav/12/12.36.16-12.36.26[F][0@0][0].dav
HTTP Code: 200 OK
DA
Content-Type: Application/octet-stream
HU
<data>
HT
<data>
TP
Parameters in URL:
_A
preset password
fo
4.11 Log
r
In
Table 4-127
s
http://<server>/cgi-bin/log.cgi?action=startFind&condition.StartTime=<start>&condition
Syntax
.EndTime=<end>[&condition.Type=<type>]
Method GET
Description Start to find log.
Find log between 2011-1-1 12:00:00 and 2011-1-10 12:00:00, URL is:
Example http://192.168.1.108/cgi-bin/log.cgi?action=startFind&condition.StartTime=2011-1-1%2
012:00:00&condition.EndTime=2011-1-10%2012:00:00
Success token=1
Return count=100
Parameters in URL:
start/end: the start/end time of log. Format is: yyyy-mm-dd hh:mm:ss.
Comment
In response, there is a token for further log finding process. If token is greater than 0,
logs are found; otherwise no logs are found.
Table 4-128
Syntax http://<server>/cgi-bin/log.cgi?action=doFind&token=<TokenValue>&count=<logCount>
Method GET
Description Find log with token TokenValue and count logCount.
Example http://192.168.1.108/cgi-bin/log.cgi?action=doFind&token=1&count=100
found=2
items[0].RecNo=789
items[0].Time=2011-05-20 11:59:10
items[0].Type=ClearLog
items[0].User=admin
Success items[1].Detail.Compression=H.264->MJPG
DA
Return items[1].Detail.Data=Encode
HU
items[1].RecNo=790
A_
items[1].Time=2011-05-20 11:59:21
HT
items[1].Type=SaveConfig
items[1].User=System
TP
…
_A
Parameters in URL:
PI
The TokenValue is got by startFind in the above section, and logCount is the count of
Comment
logs for this query.
fo
Appendix:
In
Field in Description
te
Response
lb
Table 4-129
Syntax http://<server>/cgi-bin/log.cgi?action=stopFind&token=<TokenValue>
Method GET
Description Stop query log by token TokenValue.
Example http://192.168.1.108/cgi-bin/log.cgi?action=stopFind&token=1
Success
OK
Return
Table 4-130
Syntax http://<server>/cgi-bin/log.cgi?action=clear
Method GET
Description Clear all the logs.
Example http://192.168.1.108/cgi-bin/log.cgi?action=clear
Success
OK
Return
Comment —
DA
Table 4-131
HT
http://<server>/cgi-bin/Log.backup?action=All&condition.StartTime=<startTime>&cond
TP
Syntax
ition.EndTime=<endTime>
_A
Method GET
PI
Download the log information between the start time and the end time as a file named
Description
Log.Backup default.
fo
http://192.168.1.108/cgi-bin/Log.backup?action=All&condition.StartTime=2014-8-25%2
Example
000:02:32&condition.EndTime=2020-8-25%2001:02:32
r
HTTP/1.1 200 OK
In
CONTENT-LENGTH: 743087
te
CONNECTION: close
lb
&w_User: default
s
Success
&Time: 2014-09-01 15:20:45
Return
&Type: VideoLoss
&Content: EventType: VideoLoss
channel: <8>
StartTime: 2014-09-01 15:20:45
…
Parameters in URL:
startTime/endTime: the start/end time when log info built. 24 hour Format, as:
yyyy-mm-dd hh:mm:ss.
Comment
For example:
2014-8-25 00:02:32
2020-8-25 01:02:32
items[0].Detail.Compression=H.264->MJPG
HU
items[0].Detail.Data=Encode
Success
items[1].RecNo=790
A_
Return
items[1].Time=2011-05-20 11:59:21
HT
items[1].Type=SaveConfig
TP
items[1].User=System
_A
items[1].Detail.Compression=H.264->MJPG
items[1].Detail.Data=Encode
PI
…
fo
Parameters in URL:
r
Comme The TokenValue is got by startFind in the above section, and logCount is the count of logs
In
nt for this query.offsetValue is the number which count from the first matched.
te
Syntax http://<server>/cgi-bin/Log.exportEncrypedLog?action=All&condition.StartTime=<start
Time>&condition.EndTime=<endTime>&condition.Password=<password>
Method GET
Description Get encrypted log in zip format
Example http://192.168.1.108/cgi-bin/Log.exportEncrypedLog?action=All&condition.StartTime=2
014-8-25%2000:02:32&condition.EndTime=2020-8-25%2001:02:32&condition.Passwo
rd=12345
Success HTTP/1.1 200 OK
Return Transfer-Encoding: chunked
CONNECTION: keep_alive
Content-type: application/binarytet-stream; charset=utf-8
The binary data of encrypted log in zip format
4.12 Upgrader
Table 4-132
Syntax http://<server>/cgi-bin/upgrader.cgi?action=uploadFirmware
DA
Method POST
HU
Use this message to upload the firmware, and when the device receiving all the data
A_
Description successfully, it will start to upgrade the device, and then use the getState method to get
HT
the state.
TP
Connection: keep-alive
PI
Example -----------------------------8655433224198
In
Firmware data….
ra
s
-----------------------------8655433224198--
Success
OK
Return
Comment —
Table 4-133
Syntax http://<server>/cgi-bin/upgrader.cgi?action=getState
Method GET
Use this message to upload the firmware, and when the device receiving all the data
Description successfully, it will start to upgrade the device, and then use the getState method to get
the state.
Format
A_
address
_A
enumint8{
0: MD5
fo
}
checkSum string N Upgrade package f38ad920
r
checksum
In
Example
te
http://<server>/cgi-bin/upgrader.cgi?action=updateFirmwareByUrl=http://yfssp.dahuatech.com/#/approv
lb
al/dhReview/browse/210617165614&checkType=0&checkSum=f38ad920
ra
Response
s
enumint8{ 0:
Updating by updating
HT
connection. 1:
_A
Checking through
PI
proxy server. 2:
Detecting by acquiring
fo
(optional).
te
{
s
"way" : 0,
"proxy" : {
"IP" : "10.1.2.3",
"Port" : 8080
}
}
needs to be enabled)}
+PackageType enumchar[32 O Update package type of "all"
HU
enumchar[32]{
TP
package.
PI
"web"
"logo"
fo
"custom"
r
"gui"
In
"pd"
"data"
te
}
+OldVersion char[64] O Old version, which needs to "0000"
be returned when State is
not None.
+NewVersion char[64] O New version, which needs "0004"
to be returned when State is
not None.
+Attention char[2048] O Updated content of the new "What is new"
update package.
+PackageUrl char[256] O Download address of "https://lechange.com/1.zip"
update package (required
for agent upgrade).
+PackageId char[64] O Update package ID "1d2ee7"
+CheckSum char[64] O SHA-256 checksum of the "F3D288AB"
}
HU
A_
Method POST
Request Params ( JSON format in body )
fo
version is
te
obtained in the
ra
update fails.
way enumint8 R Update method 0
enumint8{ 0:
Updating by
updating server
through direct
connection. 1:
Updating by
proxy server}.
proxy object O Proxy server
address, which
is valid when
way=1
(optional).
package ID
+CheckSum char[64] O SHA-256 "F3D288AB"
A_
checksum of
HT
the update
TP
package
_A
Request Example
{
PI
"NewVersion" : "2.42.00.001",
"way" : 0,
fo
"proxy" : {
r
"IP" : "10.1.2.3",
In
"Port" : 8080
te
},
"info" : {
lb
"PackageUrl" : "https://lechange.com/1.zip",
ra
"PackageId" : "1d2ee7",
s
"CheckSum" : "F3D288AB"
}
}
Configure the device to upload images and events to the specified address. Before configuration,
HT
the client should monitor in the specified address. Once the configuration is complete, the device would
TP
upload images and event data to this address using the command described in chapter " 4.13.2 Active
Image and Event Uploading ".
_A
PictureHttpUpload object
image and event
In
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&PictureHttpUpload.PictureHttpUpload
HU
.Enable=true&PictureHttpUpload.PictureHttpUpload.Type=digest&PictureHttpUpload.UploadServerList[
0].Address=192.168.1.208&PictureHttpUpload.UploadServerList[0].Port=80&PictureHttpUpload.Upload
A_
ServerList[0].UserName=abc&PictureHttpUpload.UploadServerList[0].Password=123&PictureHttpUploa
HT
d.UploadServerList[0].Uploadpath=/example/handlepic.php&PictureHttpUpload.UploadServerList[0].Ev
TP
entType[0]=CrossLineDetection&PictureHttpUpload.UploadServerList[0].EventType[1]=FaceDetection
_A
The device uploads images and event data to the specified address based on the client
In
configuration. For details on the parameters for each event, please refer to the corresponding [Event]
te
chapters. The IP address, port and URL of the uploaded target server is specified by the
PictureHttpUpload. Each set of images and events are sent within one separate HTTP request, in which
lb
Method POST
Request Params ( multipart ; JSON in body; binary data in body )
Name Type R/O Description Example
Channel int R video channel, which start from 0 0
Time char[32] R "2022-03-30
Snap picture time
15:40:01"
Events object[] R Event Information list
+Code char[32] R Event Code "FaceRecognition"
+Action char[16] R Event action, with the values of "Start", "Pulse”
"Stop" "Pulse".
+Index int R Event channel number, starting from 0. 0
+Data object R For specific parameters of each event,
please refer to the corresponding chapters
for reference.
--<boundary>
Content-Type: application/json
Content-Length: <data length>
{
"Channel" : 0,
"TIme" : "2022-03-30 15:40:01"
"Events" : [ {
"Code" : "FaceRecognition",
"Action" : "Pulse",
DA
"Index" : 0
"Data" : {
HU
"UTC" : 123456789,
A_
……
HT
}
TP
}, …, { } ]
}
_A
--<boundary>
PI
Content-Type: image/jpeg
Content-Length: <data length>
fo
r
<jpeg data>
In
--<boundary>
…
te
--<boundary>--
lb
ra
Response Example
OK
Please refer to "4.2.1 Get and Set Configuration" for configuration. The specific example is as
HU
follows:
A_
table.EventHttpUpload.EventHttpUpload.Enable=true
_A
table.EventHttpUpload.EventHttpUpload.Type=digest
PI
table.EventHttpUpload.UploadServerList[0].Address=192.168.1.208
table.EventHttpUpload.UploadServerList[0].Port=80
fo
table.EventHttpUpload.UploadServerList[0].UserName=abc
table.EventHttpUpload.UploadServerList[0].Password=123
r
table.EventHttpUpload.UploadServerList[0].Uploadpath=/example/handleevt.php
In
te
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&EventHttpUpload.EventHttpUpload.E
ra
nable=true&EventHttpUpload.EventHttpUpload.Type=digest&EventHttpUpload.UploadServerList[0].Add
ress=192.168.1.208&EventHttpUpload.UploadServerList[0].Port=80&EventHttpUpload.UploadServerLis
s
t[0].UserName=abc&EventHttpUpload.UploadServerList[0].Password=123&EventHttpUpload.UploadSe
rverList[0].Uploadpath=/example/handleevt.php
Set Config Response Example
OK
{
"Code" : "FaceRecognition",
DA
"Action" : "Pulse",
"Index" : 0
HU
Data
A_
"UTC" : 123456789,
HT
...
TP
}
}
_A
PI
OK
r
In
Configure the device to upload report data to the specified address. Before configuration, the client
lb
should monitor in the specified IP address. Once the configuration is complete, the device would upload
ra
report data to this address using the command described in chapters 4.13.6 ~ 4.13.11.
s
Please refer to "4.2.1 Get and Set Configuration" for configuration. The specific example is as
follows:
Get Config Request Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=EventHttpUpload
DA
table.ReportHttpUpload.ReportHttpUpload.Enable=true
A_
table.ReportHttpUpload.ReportHttpUpload.Type=digest
table.ReportHttpUpload.ReportHttpUpload.Period=1
HT
table.ReportHttpUpload.UploadServerList[0].Address=192.168.1.208
TP
table.ReportHttpUpload.UploadServerList[0].Port=80
_A
table.ReportHttpUpload.UploadServerList[0].UserName=abc
PI
table.ReportHttpUpload.UploadServerList[0].Password=123
table.ReportHttpUpload.UploadServerList[0].Uploadpath=/example/handlerpt.php
fo
table.ReportHttpUpload.UploadServerList[0].ReportType[0]=NumberStat
table.ReportHttpUpload.UploadServerList[0].ReportType[1]=ObjectDetect
r
In
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&ReportHttpUpload.ReportHttpUpload.
lb
Enable=true&ReportHttpUpload.ReportHttpUpload.Type=digest&ReportHttpUpload.ReportHttpUpload.
ra
Period=1&ReportHttpUpload.UploadServerList[0].Address=192.168.1.208&ReportHttpUpload.UploadS
erverList[0].Port=80&ReportHttpUpload.UploadServerList[0].UserName=abc&ReportHttpUpload.Upload
s
ServerList[0].Password=123&ReportHttpUpload.UploadServerList[0].Uploadpath=/example/handlerpt.p
hp&ReportHttpUpload.UploadServerList[0].ReportType[0]=NumberStat&ReportHttpUpload.UploadServ
erList[0].ReportType[1]=ObjectDetect
Set Config Response Example
OK
port
HT
00:00:00"
te
al ManNumDetection,QueueDetection, the
s
{
DA
"NumberStat" : [ {
"SN" : "6M053FDYAQ00003"
HU
"ManNumDetection" : [ {
A_
"Channel" : 0,
HT
"EnteredSubtotal" : 0,
"ExitedSubtotal" : 0,
_A
}, {
"Channel" : 0,
fo
"EnteredSubtotal" : 0,
In
"ExitedSubtotal" : 0,
"StartTime" : "2021-03-11 6:00:00 PM"
te
}, …, { } ],
lb
"PeopleCount" : [ {
ra
"Channel" : 0,
s
When the client subscribes ObjectDetect (video Structuring) dashboard, the device will upload video
HT
structuring dashboard to the specified address. The target service address and port, URL are designated
TP
by ReportHttpUpload. Each video structuring report data is sent within one separate HTTP request.
_A
+UTC uint O The end time of statistical Cycle (local UTC 1608508800
ra
time)
s
{
"ObjectDetect" : [ [ {
"MotoVehicles" : 8,
"Period" : 60,
"PeriodBySeconds" : 0,
"SN" : "6J0CB81YAG10101",
"UTC" : 1615492800,
"UTCMS" : 0,
"VehicleTypeFlow" : {
"PasserbyVehicles" : 6
},
"Vehicles" : 17
DA
}, …, { } ], …, [ ] ]
}
HU
A_
Response Example
TP
OK
_A
When the client subscribes HeatMap (customer flow heat map report data, the device will upload
fo
video structuring data to the specified address. The target service address and port, URL are designated
r
by ReportHttpUpload. Each people flow heat map report data is sent within one separate HTTP request.
In
Method POST
Request Params ( JSON in body )
lb
{
"HeatMap" : [ {
"Channel" : 0,
"SN" : "66:66:66:56:78:9a",
"StartTime" : "2021-03-12 14:00:00",
"EndTime" : "2021-03-12 15:00:00",
"height" : 64,
"width" : 64
"EncodeData" : "abcd=",
}, …, {} ]
}
OK
HU
When the client subscribes RoadFlowStat (road monitoring) report data, the device will upload video
TP
structuring datato the specified address. The target service address and port, URL are designated by
_A
ReportHttpUpload. Each ANPR report data is sent within one separate HTTP request.
Request URL http://<Address>:<Port>/<Uploadpath_of_ReportHttpUpload>
PI
Method POST
Request Params ( JSON in body )
fo
{
"RoadFlowStat" : [ [ {
"SN" : "6J0CB81YAG10101",
"UTC" : 1615485600,
"UTCMS" : 0,
"Lane" : 1,
"PresetID" : 0,
"Period" : 60,
"PeriodBySeconds" : 0,
"MotoVehicles" : 0,
DA
"Vehicles" : 26506
"VehicleTypeFlow" : {
HU
"PasserbyVehicles" : 0
A_
},
HT
}, …, { } ], … , [ ] ]
TP
}
_A
Response Example
OK
fo
r
When the client subscribes CrowdDistriMap (Crowd Distribution) report data, the device will upload
video structuring data to the specified address. The target service address and port, URL are designated
lb
by ReportHttpUpload. Each crowd distribution report data is sent within one separate HTTP request.
ra
Method POST
Request Params ( JSON in body )
Name Type R/O Description Example
CrowdDistriMap Object[] R Data statistics on crowd distribution.
Each dimension is the data of a
channel.
SN char[32] O Device SN "1C03E08YAZ00020"
+CrowdDistriMap object O Report Data on Crowd Distribution
Map
++DataList object[64] O Return Crowd Distribution Map data 1
list. The array size is 64 at most.
+++UTC uint32 O UTC time (local UTC time) when the 6555478
data is recorded
+++AreaName char[32] O Statistics Area name "CMD-5"
{
"CrowdDistriMap" : [ {
"CrowdDistriMap" : {
"DataList" : [ {
"AreaName" : "CDM-1",
"PeopleNum" : 0,
"UTC" : 1617375600
}, {
"AreaName" : "CDM-1",
DA
"PeopleNum" : 0,
"UTC" : 1617379200
HU
}]
A_
},
HT
"SN" : "7B0606BYAQ00010"
TP
}, … , { } ]
}
_A
PI
OK
r
In
When the client subscribes VehiclesDistri vehicle density) report data, the device will upload video
lb
structuring data to the specified address. The target service address and port, URL are designated by
ra
ReportHttpUpload. Each vehicle density report data is sent within one separate HTTP request.
s
User-Agent: Device/1.0
HU
Content-Type: application/json
Content-Length: <data length>
A_
HT
{
TP
"VehiclesDistri" : [ {
"CongestionDetection" : {
_A
"DataList" : [ {
PI
"RuleName" : "VD-1",
"UTC" : 1617375600,
fo
"VehiclesNum" : 0
r
}, {
In
"RuleName" : "VD-1",
te
"UTC" : 1617379200,
"VehiclesNum" : 0
lb
} ],
ra
"DataNum" : 2
s
},
"SN" : "7B0606BYAQ00010",
"VehicleLimitDetection" : {
"DataNum" : 0
}
}, … , { } ]
}
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor
Method GET
Description Get brightness, contrast and saturation
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor
DA
Success head.Name=Day,
HU
Return head.Brightness=50,
head.Contrast=50,
A_
head.Saturation=50,
HT
head.Hue=50,
TP
head.Gamma=50,
_A
head.ChromaSuppress=50,
head.Style=Standard,
PI
head.TimeSection=1 00:00:00-24:00:00
Comment Parameters in URL:
fo
In table below,
In
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
lb
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
ra
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method SET
Description Set brightness, contrast and saturation
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoColor[0][0].Brig
Example
htness=50
Success
OK
Return
Parameters in URL:
Comment paramName and paramValue are as table below.
In table below,
Appendix:
5.1.2 Sharpness
Get sharpness
DA
Table 5-1
HU
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInSharpness
A_
Method GET
HT
Example
ness
_A
Success head.Level=4
PI
Return head.Sharpness=8
Parameters in URL:
fo
In table below,
In
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
ra
Set sharpness
Table 5-2
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method SET
Description Set sharpness
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInSharpness[0]
Example
[0].Level=10&VideoInSharpness[0][0].Mode=1&VideoInSharpness[0][0].Sharpness=0
Success
OK
Return
Parameters in URL:
Comment
paramName and paramValue are as table below.
Appendix:
Table 5-3
HU
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoImageControl
A_
Method GET
HT
Example
ontrol
_A
head.Flip=true
Success
PI
head.Mirror=false
Return
head.Rotate90=0
fo
Parameters in Response:
r
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment
video channel index -1, and so 0 means channel 1).
te
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
lb
Table 5-4
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method SET
Description Set flip, mirror and Rotate90
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoImageControl[
Example
0].Flip=true
Success
OK
Return
Parameters in URL:
Comment head = VideoImageControl [ChannelNo]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Appendix:
5.2 Exposure
A_
HT
Get exposure
_A
PI
Table 5-5
fo
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInExposure
Method GET
r
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoInExpos
Example
te
ure
lb
head.AntiFlicker=0
head.Gain=50
ra
head.GainMax=50
s
head.GainMin=0
Success
head.Iris=50
Return
head.IrisAuto=false
head.Mode=0
head.Value1=40
head.Value2=40
Parameters in Response:
head = table.VideoInExposure[ChannelNo][ConfigNo]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment
video channel index -1, and so 0 means channel 1).
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
night, and 2 means config for normal scene.
Set exposure
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method SET
Description Set exposure
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInExposure[0][
Example
0].Iris=50
Success
OK
Return
Parameters in URL:
head = VideoInExposure[ChannelNo][ConfigNo]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment
video channel index -1, and so 0 means channel 1).
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
night, and 2 means config for normal scene.
DA
Appendix:
HU
Range is {0,1,2}
HT
AntiFlicker mode:
TP
1: 50 Hz AntiFlicker
2: 60 Hz AntiFlicker
PI
Range is [0—100]
fo
head.GainMax integer
GainMin.
te
GainMax.
head.Iris integer Manual Iris setting. Range is 0–100.
ra
true: IrisAuto
head.IrisAuto bool
false: No IrisAuto
0: "Auto" by default
1: Low noise
2: Anti-smear
4: Manual (range)
head.Mode integer 5: Aperture priority
6: Manual (fixed)
7: Gain priority
8: Shutter priority
9: Flash light matching mode
Range is [0-1000], unit is millisecond
head.Value1 float
If ExposureSpeed is 0(AutoExposure enable), it's
5.3 Backlight
Table 5-7
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInBacklight
DA
Method GET
HU
Example
ght
HT
head.GlareInhibition=50
Success
TP
head.Mode=Off
Return
_A
head.WideDynamicRange=50
Parameters in Response:
PI
head = table.VideoInBacklight[ChannelNo][ConfigNo]
fo
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment
video channel index -1, and so 0 means channel 1).
r
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
In
Set backlight
lb
ra
Table 5-8
s
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method SET
Description Set backlight
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInBacklight[0][
Example
0].GlareInhibition=50
Success
OK
Return
Parameters in URL:
head = VideoInBacklight[ChannelNo][ConfigNo]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment
video channel index -1, and so 0 means channel 1).
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
night, and 2 means config for normal scene.
Table 5-9
A_
HT
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInWhiteBalan
Syntax
TP
ce
Method GET
_A
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoInWhite
Example
Balance
fo
head.GainBlue=50
Success
r
head.GainRed=50
Return
In
head.Mode=Auto
Parameters in Response:
te
head = table.VideoInWhiteBalance[ChannelNo][ColorConfigNo]
lb
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment
ra
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for
night, and 2 means config for normal scene.
Table 5-10
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method SET
Description Set white balance
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInWhiteBalanc
Example
e[0][0].GainBlue=50
Success
OK
Return
Appendix:
5.5 Day-Night
HT
TP
Get day-night
fo
Table 5-11
r
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDayNight
In
Method GET
te
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDayNight
ra
head.Delay=10
Success head.Mode=Brightness
s
Return head.Sensitivity=2
head.Type=Mechanism
head = table.VideoInDayNight[ChannelNo][ConfigNo]:
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment video channel index -1, and so 0 means channel 1).
ConfigNo: array index, can be 0, 1 or 2. 0 means config for day, 1 means config for night,
and 2 means config for normal scene.
Set Day-Night
Table 5-12
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Range is [2-10].
head.Delay integer
_A
To get the capability set of video input, refer to 4.5.12. For instance, you can use the following URL:
r
http://192.168.1.108/cgi-bin/devVideoInput.cgi?action=getCaps&channel=1
In
If ElectricFocus or SyncFocus of the return value is true, use 5.6.1 ~ 5.6.4; Otherwise, use 5.6.5 ~ 5.6.6 .
te
-1: No operation
0: Stop
HT
-1: No operation
0: Stop
fo
Request Example
r
http://192.168.1.108/cgi-bin/devVideoInput.cgi?action=adjustFocusContinuously&channel=1&focus=0.0
2&zoom=-1
In
te
Response Example
ra
OK
s
range: [0,1]
Relative stepping position of the zooming motor; 0.3
TP
+Zoom double R
range: [0,1]
_A
Response Example
r
status.Focus=0.8
In
status.Zoom=0.3
status.Status=Normal
te
lb
Get zoom
HU
A_
Table 5-13
HT
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInZoom
TP
Method GET
_A
Example
m
fo
head.DigitalZoom=true
Success Return
head.Speed=7
r
Parameters in URL:
In
head = table.VideoInZoom[ChannelNo][ConfigNo]
te
Comment ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
lb
Set zoom
Table 5-14
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method SET
Description Set zoom
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInZoom[0][0].D
Example
igitalZoom=false&VideoInZoom[0][0].Speed=8
Success
OK
Return
Parameters in URL:
Comment head = VideoInZoom[ChannelNo][ConfigNo]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Appendix:
two-dimensional array.
HU
scene.
+Name char[16] O Scene name "Day"
PI
4: Manual focus
ra
For getting and setting the configurations, see 4.2.1 Get and Set Configure”.
Get Config Request Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoInFocus
Get Config Response Example
table.VideoInFocus[0][0].Name=Day
table.VideoInFocus[0][0].Mode=0
table.VideoInFocus[0][0].Sensitivity=1
DA
table.VideoInFocus[0][0].FocusLimitSelectMode=Manual,
HU
table.VideoInFocus[0][0].FocusLimit=2000
A_
table.VideoInFocus[0][0].FocusFarLimit=5000
table.VideoInFocus[0][0].AutoFocusTrace=0
HT
table.VideoInFocus[0][0].IRCorrection=0
TP
…
_A
PI
&VideoInFocus[0][0].FocusFarLimit=5000&VideoInFocus[0][0].Sensitivity=1
r
5.7 Lighting
lb
ra
Get lighting
Table 5-15
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Lighting
Method GET
Description Get lighting
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Lighting
head.Correction=50
head.FarLight[0].Angle=0
Success
head.FarLight[0].Light=0
Return
head.Mode=ZoomPrio
head.NearLight[0].Angle=0
Set lighting
Table 5-16
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set lighting
DA
Turn on light:
HU
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Lighting[0][0].FarLig
A_
ht[0].Light=10&Lighting[0][0].NearLight[0].Light=90&Lighting[0][0].Mode=Manual
Example
HT
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Lighting[0][0].Correct
_A
ion=50&Lighting[0][0].Mode=ZoomPrio
PI
Success
OK
Return
fo
Parameters in URL:
paramName and paramValue are as table below.
r
In table below,
In
Appendix:
Table 5-17
DA
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInOptions
HU
Method GET
Get video in options config, such as Backlight, ExposureSpeed, DayNightColor,
A_
Description
DayOptions, NightOptions, and NormalOptions.
HT
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoInOptio
Example
TP
ns
_A
head.Backlight=0
PI
head.DayNightColor=false
head.ExposureSpeed=0
fo
head.ExposureValue1=0.100000
head.ExposureValue2=80.000000
r
head.ExternalSync=0
In
head.ExternalSyncPhase=0
te
head.FlashControl.Mode=0
lb
head.FlashControl.Pole=0
head.FlashControl.Value=0
ra
head.FlashControl.PreValue=0
s
head.Flip=false
Success
head.Gain=50
Return
head.GainAuto=true
head.IrisAuto=false
head.Mirror=false
head.NightOptions.AntiFlicker=0
head.NightOptions.Backlight=0
head.NightOptions.BacklightRegion[0]=3096
head.NightOptions.BacklightRegion[1]=3096
head.NightOptions.BacklightRegion[2]=5096
head.NightOptions.BacklightRegion[3]=5096
head.NightOptions.BrightnessThreshold=50
head.NightOptions.DayNightColor=2
head.NightOptions.ExposureMode=0
head.NightOptions.ReferenceLevel=50
HU
head.NightOptions.Rotate90=0
head.NightOptions.SunriseHour=0
A_
head.NightOptions.SunriseMinute=0
HT
head.NightOptions.SunriseSecond=0
TP
head.NightOptions.SunsetHour=23
_A
head.NightOptions.SunsetMinute=59
head.NightOptions.SunsetSecond=59
PI
head.NightOptions.SwitchMode=4
head.NightOptions.WhiteBalance=Auto
fo
head.NightOptions.WideDynamicRange=0
r
head.NightOptions.WideDynamicRangeMode=0
In
head.NormalOptions.AntiFlicker=0
te
head.NormalOptions.Backlight=0
head.NormalOptions.BacklightRegion[0]=3096
lb
head.NormalOptions.BacklightRegion[1]=3096
ra
head.NormalOptions.BacklightRegion[2]=5096
s
head.NormalOptions.BacklightRegion[3]=5096
head.NormalOptions.BrightnessThreshold=50
head.NormalOptions.DayNightColor=1
head.NormalOptions.ExposureMode=0
head.NormalOptions.ExposureSpeed=0
head.NormalOptions.ExposureValue1=0
head.NormalOptions.ExposureValue2=40
head.NormalOptions.ExternalSyncPhase=125
head.NormalOptions.Flip=false
head.NormalOptions.Gain=50
head.NormalOptions.GainAuto=true
head.NormalOptions.GainBlue=50
head.NormalOptions.GainGreen=50
head.NormalOptions.GainMax=50
head.ReferenceLevelEnable=false
HU
head.Rotate90=0
head.SignalFormat=BT656
A_
head.WhiteBalance=Disable
HT
Parameters in Response:
TP
head = table.VideoInOptions[ChannelNo]
Comment
ChannelNo: integer, array index starts from 0, which means video channel (equals to
_A
Table 5-18
r
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
In
Syntax
alue>[&<paramName>=<paramValue>…]
te
Method GET
lb
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].E
xposureMode=0&VideoInOptions[0].ExposureSpeed=0
Set SmartIRExposure:
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].S
martIRExposure=true
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].Mi
rror=true
HU
Or turn 90°:
A_
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].R
HT
otate90=1
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].W
PI
hiteBalance=Night
Or
fo
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].W
r
hiteBalance=Custom&VideoInOptions[0].GainRed=50&VideoInOptions[0].GainBlue=50
In
&VideoInOptions[0].GainGreen=50
(Sometimes you should set mode first before set GainRed or GainBlue:
te
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].W
lb
hiteBalance=Custom )
ra
Success
OK
s
Return
Parameters in URL:
In table below, head = VideoInOptions[ChannelNo]
Comment
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
Appendix:
head.ExposureValue1 float
lower limit of AutoExposure time, otherwise it's
HT
time of manualExposure
TP
Range is {0,1}
External Synchronous
fo
head.ExternalSync integer
0: Internal Synchronization
r
1: External Synchronous
In
Range is [0°—360°]
head.ExternalSyncPhase foat
te
head.SmartIRExposure
Range is {0,1,2}
ra
0: forbid flash
integer
s
head.FlashControl.Mode
1: always flash
2: auto flash
Range is {0,1, 2, 3}
Trigger mode:
0: low level
head.FlashControl.Pole integer
1: high level
2: rising-edge
3: falling-edge
Range is [0—100]
head.GainBlue integer Gain for blue value, Value is effective when
A_
WhiteBalance is "Custom."
HT
Range is [0—100]
TP
WhiteBalance is "Custom."
Range is [0—100]
PI
true: GainAuto
r
head.GainAuto bool
false: No GainAuto
In
true: IrisAuto
head.IrisAuto bool
te
false: No IrisAuto
lb
0: Close GlareInhibition.
HU
integer
sThreshold when brightness is less than the
TP
Nightoptions.
true: IrisAuto
PI
head.NightOptions.IrisAuto bool
false: No IrisAuto
Range is [00—23]
fo
head.NightOptions.SunriseH
integer
our Sunrise hour.
r
head.NightOptions.SunsetHo
ra
integer
ur Sunset time. Its range is same with sunrise time,
s
n
HU
head.NightOptions.GainRed integer
A_
head.NightOptions.WhiteBal
String Range is the same as relevant items of day
ance
HT
integer Example:
eLevel
Value range of head.NightOptions.ExposureSpeed
_A
head.NightOptions.ExternalS
float is the same with head. ExposureSpeed.
PI
yncPhase
head.NightOptions.AntiFlicke
integer
fo
r
integer
r
head.NightOptions.Backlight
head.NightOptions.DayNight
In
integer
Color
te
head.NightOptions.Exposure
integer
lb
Mode
ra
head.NightOptions.GlareInhi
integer
bition
s
head.NightOptions.Mirror integer
head.NightOptions.Flip integer
head.NightOptions.Rotate90 integer
head.NomalOptions.Brightne
integer
ssThreshold
head.NormalOptions.IrisAuto bool
NomalOptions contain a set of parameters similar
head.NormalOptions.Sunrise
integer with NightOptions.
Hour
Range is the same as relevant items of
head.NormalOptions.Sunrise
integer NightOptions in this table.
Minute
head.NormalOptions.Sunrise
integer
Second
head.NormalOptions.GainBlu
integer
HU
e
A_
head.NormalOptions.GainGr
integer
een
HT
head.NormalOptions.GainRe
TP
integer
d
_A
head.NormalOptions.WhiteB
String
PI
alance
head.NormalOptions.Referen
integer
fo
ceLevel
r
head.NormalOptions.Externa
float
lSyncPhase
In
head.NormalOptions.AntiFlic
integer
te
ker
lb
head.NormalOptions.Backlig
integer
ht
ra
head.NormalOptions.DayNig
s
integer
htColor
head.NormalOptions.Exposu
integer
reMode
head.NormalOptions.GlareIn
integer
hibition
head.NormalOptions.Mirror integer
head.NormalOptions.Flip integer
head.NormalOptions.Rotate9
integer
0
http://192.168.1.108/cgi-bin/storageDevice.cgi?action=factory.getPortInfo
HU
expansion bus.
+Plug uint O The number of the mounted IDE (damaged IDEs 1
PI
are excluded)
+Mask uint64 O Indicates whether there is an IDE (including 1
fo
device "/dev/sg1"]
A_
Response Example
HT
list[0]="/dev/sda0"
list[1]="/dev/sda1"
TP
list[2]="/dev/sg1"
_A
PI
Method GET
te
Request Example
ra
http://192.168.1.108/cgi-bin/storageDevice.cgi?action=getDeviceAllInfo
s
Table 6-1
HT
Syntax http://<server>/cgi-bin/storage.cgi?action=getCaps
TP
Method GET
_A
Success caps.RedundantDisk.Support=false
Return
fo
caps.SupportRemoteLimit=true
Comment —
r
In
Table 6-2
ra
http://<server>/cgi-bin/storageDevice.cgi?action=setDevice&type=FormatPatition&path=<p
Syntax
s
ath> [&<paramName>=<paramValue>…]
Method GET
Descriptio
Format camera SD card.
n
[ Request Params ] (key=value format at URL )
Name Type R/O Param Description
type string R operation
path string O disk part path
formattype Array<object> O disk part information
+fs string R File system type
http://192.168.1.108/cgi-bin/storageDevice.cgi?action=setDevice&type=FormatPatition&pa
Example
th= /dev/sda&formattype[0].fs=fat32
Success OK
6.2 NAS
Table 6-3
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=NAS
Method GET
DA
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=NAS
A_
table.NAS[0].Name="FTP1"
table.NAS[0].Enable=true
HT
table.NAS[0].Protocol="FTP"
TP
Success table.NAS[0].Address="www.ttt.com"
_A
Return table.NAS[0].Port=21
PI
table.NAS[0].UserName="anonymity"
table.NAS[0].Password="none"
fo
table.NAS[0].Directory="share"
Comment —
r
Table 6-4
lb
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
ra
alue>[&<paramName>=<paramValue>…]
s
Method GET
Description Set NAS config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&NAS[0].Name=nas0
Example
1&NAS[0].Enable=true
Success
OK
Return
Parameters in URL:
In table below,
Comment
Head=NAS[index]
index: The index of the NAS Server
Appendix:
Table 6-5
HU
A_
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=RecordStoragePoi
Syntax
nt
HT
Method GET
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=RecordStora
Example
PI
gePoint
table.RecordStoragePoint [0].TimingRecord.Local=1
fo
table.RecordStoragePoint [0].TimingRecord.Redundant=Redundant
table.RecordStoragePoint [0].TimingRecord.Remote=FTP
r
Success
table.RecordStoragePoint [0].TimingRecord.AutoSync=false
In
Return
table.RecordStoragePoint [0].TimingRecord.AutoSyncRange=0
te
table.RecordStoragePoint [0].TimingRecord.LocalForEmergency=false
lb
table.RecordStoragePoint [0].TimingRecord.CompressBefore=15
Comment —
ra
Table 6-6
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set record storage point config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&RecordStoragePoint[
Example
0].TimingRecord.Local=local
Success
OK
Return
Parameters in URL:
Comment In table below,
ch: integer, array index starts from 0, which means video channel(equals to video
Appendix:
directory or not.
From the remote directory recovering
HT
integer
ressBefore compressed.
te
Table 6-7
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=StorageGroup
Method GET
Description Get storage group config.
http://192.168.1.168/cgi-bin/configManager.cgi?action=getConfig&name=StorageGrou
Example
p
table.StorageGroup[0].Channels[0].MaxPictures=0
table.StorageGroup[0].FileHoldTime=0
Success table.StorageGroup[0].Memo=For Reading & Writing Files
Return table.StorageGroup[0].Name=ReadWrite
table.StorageGroup[0].OverWrite=true
table.StorageGroup[0].PicturePathRule=%y-%M-%d/%c/jpg/%h/%m/%s[%E][%O@%S
Table 6-8
DA
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
HU
Syntax
alue>[&<paramName>=<paramValue>…]
A_
Method GET
HT
Example
me=main
_A
Success
OK
PI
Return
Parameters in URL:
fo
In table below,
r
ch: integer, array index starts from 0, which means video channel (equals to video
channel index -1, and so 0 means channel 1).
te
Appendix:
lb
ra
Table 6-9
http://<server>/cgi-bin/SDEncrypt.cgi?action=encrypt&deviceName=<deviceName>&p
Syntax
assword=<password>
Method GET
Description SD encryption operation.
http://192.168.1.108/cgi-bin/SDEncrypt.cgi?action=encrypt&deviceName=/dev/mmc0&
Example
password=123456
Success
OK
Return
If set successfully, return true, else return false.
DA
deviceName: The stringValue is got from cgi API Get storage device information
Comment
HU
(cgi-bin/storageDevice.cgi?action=getDeviceAllInfo).
password: The stringValue Card is Encrypted
A_
HT
Table 6-10
PI
http://<server>/cgi-bin/SDEncrypt.cgi?action=decrypt&deviceName=<deviceName>&p
Syntax
fo
assword=<password>
Method GET
r
http://192.168.1.108/cgi-bin/SDEncrypt.cgi?action=decrypt&deviceName=/dev/mmc0&
Example
te
password=123456
lb
Success
OK
Return
ra
deviceName: The stringValue is got from cgi API Get storage device information
Comment
(cgi-bin/storageDevice.cgi?action=getDeviceAllInfo).
password: The stringValue ard is Encrypted
Table 6-11
http://<server>/cgi-bin/SDEncrypt.cgi?action=clearPassword&deviceName=<deviceNa
Syntax
me>&password=<password>
Method GET
Description SD clear password operation.
Example http://192.168.1.108/cgi-bin/SDEncrypt.cgi?action=clearPassword&deviceName=/dev/
Table 6-12
http://<server>/cgi-bin/SDEncrypt.cgi?action=modifyPassword&deviceName=<device
Syntax
Name>&password=<password>&oldPassword=<oldPassword>
Method GET
Description SD change password operation.
DA
http://192.168.1.108/cgi-bin/SDEncrypt.cgi?action=clearPassword&deviceName=/dev/
Example
HU
mmc0&password=123456&oldPassword=admin123
Success
A_
OK
Return
HT
deviceName: The stringValue is got from cgi API Get storage device information
_A
Comment (cgi-bin/storageDevice.cgi?action=getDeviceAllInfo).
password: The new stringValue Card is Encrypted
PI
Table 6-13
te
lb
http://<server>/cgi-bin/SDEncrypt.cgi?action=getOperateErrorPolicy&deviceName=<de
Syntax
viceName>&operate=<operate>
ra
Method GET
s
When decrypt, clearPassword, modifyPassword failed, get the error info, leftTimes and
Description
left time.
http://192.168.1.108/cgi-bin/SDEncrypt.cgi?action=getOperateErrorPolicy&deviceNam
Example
e=/dev/mmc0&operate=decrypt
Success policy.leftTimes=5
Return policy.lockSeconds=30
If set successfully, return true, else return false.
deviceName: the stringValue is got from cgi API Get storage device information
(cgi-bin/storageDevice.cgi?action=getDeviceAllInfo).
Comment
Operate: operate type, can be: decrypt, modifyPassword and clearPassword
leftTimes : remain operate times, max is 5
lockSeconds : lock operate time, unit is seconds, max is 30
Table 6-14
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=StorageHealthAlar
Syntax
m
Method GET
Description Get SD health info alarm config.
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=StorageHealthAlar
Example
m
table.StorageHealthAlarm.Enable=true
Success table.StorageHealthAlarm.LowerLimit=10
Return table.StorageHealthAlarm.EventHandler= (output of EventHandler is described in
GetEventHandler)
DA
Comment —
HU
Table 6-15
HT
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
TP
Syntax
alue>[&<paramName>=<paramValue>…]
_A
Method GET
PI
Example
Enable=true
r
Success
OK
In
Return
Comment —
te
lb
ra
s
7.1.1 GUISet
Get GUISet config
Table 7-1
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=GUISet
Method GET
Description Get the GUI settings. Every video out screen has a group setting.
DA
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=GUISet
HU
table.GUISet[index].WindowAlpha=128
table.GUISet[index].TimeTitleEnable=true
A_
table.GUISet[index].TimeTitlePos[0]=0
HT
table.GUISet[index].TimeTitlePos[1]=0
TP
table.GUISet[index].TimeTitlePos[2]=8191
_A
table.GUISet[index].TimeTitlePos[3]=8191
table.GUISet[index].MenuShowOption=0
PI
Success table.GUISet[index].MenuAutoHideTime=10
Return table.GUISet[index].AutoLogout=10
fo
table.GUISet[index].ChannelTitleShowEnable=true
r
table.GUISet[index].ChannelTitlePos[0]=0
In
table.GUISet[index].ChannelTitlePos[1]=0
te
table.GUISet[index].ChannelTitlePos[2]=8191
table.GUISet[index].ChannelTitlePos[3]=8191
lb
table.GUISet[index].AutoGuideEnable=true
ra
…
s
Parameters in Response :
Comment
index: the array index which starts from 0.
Set GUISet config
Table 7-2
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set the GUI settings. Every video out screen has a group setting.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&GUISet[0].WindowAl
Example
pha=192&GUISet[0].TimeTitleEnable=false&GUISet[0].MenuShowOption=1
Success
OK
Return
Appendix:
directory.
How many minutes to auto logout.
HT
logout.
_A
GUISet[index].ChannelTitlePos[0] integer
GUISet[index].ChannelTitlePos[1] integer
The position of the channel title.
fo
GUISet[index].ChannelTitlePos[2] integer
GUISet[index].ChannelTitlePos[3]
r
integer
GUISet[index].AutoGuideEnable bool Auto guide or not when startup.
In
te
Table 7-3
Syntax http://<server>/cgi-bin/split.cgi?action=getMode&channel=<ChannelNo>
Method GET
Description Get the split screen mode.
Example http://192.168.1.108/cgi-bin/split.cgi?action=getMode&channel=1
Success mode=split1
Return group=4
Parameters in URL:
Comment
ChannelNo: the display screen No. Start from 1 and <= 2.
Set split screen mode
http://<server>/cgi-bin/split.cgi?action=setMode&channel=<ChannelNo>&mode=<mo
Syntax
de>&group=<group>
Method GET
Description Set the split screen mode.
http://192.168.1.108/cgi-bin/split.cgi?action=setMode&channel=1&mode=split4&group
Example
=1
Success
OK
Return
Parameters in URL:
ChannelNo: the display screen No. Start from 1.
mode:enum{split1,split2,split4,split6,split8,split9,split12,split16,split20,split25,split36,sp
lit64,split144,pip1,pip3, "Free", "CompositeSplit1" / "FitDisplayUnit1", "CompositeSplit1"
Comment
/ "FitDisplayUnit4"};
group: the No. of a group which contains certain number channels. For example, if 16
DA
video channels display in split4 Mode which contains 4 video channels on Screen, then
HU
Table 7-5
r
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=MonitorTour
In
Method GET
te
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=MonitorTour
table.MonitorTour[ch].Enable=128
ra
table.MonitorTour[ch].Interval=true
s
Success
table.MonitorTour[ch].Mask.Split1=0,1,5
Return
table.MonitorTour[ch].Mask.Split8=0,1,5
table.MonitorTour[ch].Collections=Favortite1, Favortite2…
Comment —
Set moniter tour config
Table 7-6
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set monitor tour config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&MonitorTour[0].Enabl
Example
e=true
Appendix:
Table 7-7
DA
HU
http://<server>/cgi-bin/split.cgi?action=enableTour&channel=<ChannelNo>&enable=<fl
Syntax
A_
ag>
Method GET
HT
Example http://192.168.1.108/cgi-bin/split.cgi?action=enableTour&channel=1&enable=true
_A
Success
OK
PI
Return
ChannelNo: the display screen No. Start from 1 and <= 2.
Comment
fo
Table 7-8
ra
s
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=MonitorCollection
Method GET
Description Get monitor collection config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=MonitorCollec
Example
tion
table.MonitorCollection.collectionname. Mode=Split1
table.MonitorCollection.collectionname.Windows[winno].Enable= true
table.MonitorCollection.collectionname.Windows[winno].Device=device1
Success table.MonitorCollection.collectionname.Windows[winno].VideoChannel=5
Return table.MonitorCollection.collectionname.Windows[winno].VideoStream=Main
table.MonitorCollection.collectionname.Windows[winno].AudioChannel=5
table.MonitorCollection.collectionname.Windows[winno].AudioStream=Main
…
Comment Parameters in Response :
Table 7-9
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set monitor collection config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&MonitorCollection.Fa
Example vorite1.Mode=split4&MonitorCollection.Favorite1.Windows[1].Enable=true&MonitorColl
ection.Favorite1.Windows[1].VideoChannel=2
Success
OK
Return
Parameters in URL:
DA
Comment Collect=MonitorCollection.collectionname.
A_
winno: integer, the array index which equals to the window index in a screen and starts
from 0.
TP
_A
Appendix:
PI
Collect.Mode string
SetSplitMode.
r
Collect.Windows[winno].VideoStream string
"Extra2", "Extra3", "Auto"}.
ra
Table 8-1
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Ptz
Method GET
Description Get PTZ config.
DA
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Ptz
HU
table.Ptz[port].Address=8
A_
table.Ptz[port].Attribute[0]=115200
HT
table.Ptz[port].Attribute[1]=8
table.Ptz[port].Attribute[2]=Even
TP
Success
table.Ptz[port].Attribute[3]=1
_A
Return
table.Ptz[port].Homing[0]=0
PI
table.Ptz[port].Homing[1]=30
table.Ptz[port].NumberInMatrixs=0
fo
table.Ptz[port].ProtocolName=NONE
r
Parameters in Response:
Comment
port is PTZ port index, start form 0.
In
Table 8-2
ra
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
s
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set PTZ config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&Ptz[0].Address=192.
168.0.1&Ptz[0].Attribute[0]=9600
Success OK
Return
Comment port in below ParamName is PTZ port index, start form 0.
Appendix:
set in Ptz[port].Homing[0].
HU
default : "Net"
_A
Table 8-3
r
Syntax http://<server>/cgi-bin/ptz.cgi?action=getProtocolList[&channel=<ChannelNo>]
In
Method GET
te
Description Get the protocol list that PTZ can support. Unsupported now.
lb
Example http://192.168.1.108/cgi-bin/ptz.cgi?action=getProtocolList&channel=1
info.RS[0]=Pelco
ra
Success info.RS[1]=DH-SD1
s
Return info.Coaxial[0]=HD-CVI
info.Coaxial[1]=HD-CVI2.0
Response contains all support PTZ protocols of the server.
Comment
ChannelNo: integer, video channel index which starts from 1.
Table 8-4
Syntax http://<server>/cgi-bin/ptz.cgi?action=getCurrentProtocolCaps[&channel=<ChannelNo>]
Method GET
Description Get PTZ channel protocol capabilities.
Example http://192.168.1.108/cgi-bin/ptz.cgi?action=getCurrentProtocolCaps&channel=1
caps.PatternMax=5
Return
caps.PatternMin=1
HU
caps.PresetMax=80
A_
caps.PresetMin=1
HT
caps.Tile=false
TP
caps.TileSpeedMax=255
caps.TileSpeedMin=1
_A
caps.TourMax=7
PI
caps.TourMin=0
caps.Type=1
fo
caps.Zoom=false
r
caps.PtzMotionRange.HorizontalAngle[0]=0
In
caps.PtzMotionRange.HorizontalAngle[1]=360
caps.PtzMotionRange.VerticalAngle[0]=-20
te
caps.PtzMotionRange.VerticalAngle[1]=90
lb
caps.ZoomMax=30
ra
caps.ZoomMin=1
s
Parameters in URL:
Comment
ChannelNo: PTZ channel index which starts from 1.
Appendix:
PtzMotionRange.HorizontalAngle angle
it only when Pan was true
TP
PtzMotionRange.VerticalAngle
it only when Tile was true
PI
Table 8-5
lb
Syntax http://<server>/cgi-bin/ptz.cgi?action=getStatus[&channel=<ChannelNo>]
ra
Method GET
Description Get PTZ status.
s
Example http://192.168.1.108/cgi-bin/ptz.cgi?action=getStatus&channel=1
status.UTC=6538920
status.MoveStatus=Idle
Success
status.ZoomStatus=Idle
Return
status.PresetID=10
status.Position=120,12,2
Comment ChannelNo: integer, video channel index which starts from 1.
Response Example
OK
A_
HT
code char[16] R See the following table for the operation "Up"
r
Request Example
ra
http://192.168.1.108/cgi-bin/ptz.cgi?action=stop&code=Up&channel=1&arg1=0&arg2=0&arg3=0
s
Method GET
TP
Request Example
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&code=Continuously&channel=1&arg1=5&arg2=5&arg3
=5&arg4=60
Appendix: Direction of the continuous movement of the PTZ and the step length parameters.
code char[16] R See the following table for the operation "Up"
codes for PTZ movement.
A_
http://192.168.1.108/cgi-bin/ptz.cgi?action=stop&code=Continuously&channel=1&arg1=0&arg2=0&arg3
fo
=0&arg4=0
r
Response Example
te
OK
3D Positioning
lb
ra
The PTZ moves to the specified position [startX, startY], [endX, endY] on the screen through 3D
positioning .
s
http://192.168.1.108/cgi-bin/ptz.cgi?action=moveRelatively&channel=1&arg1=0.1&arg2=0.1&arg3=0.5
HT
TP
Response Example
OK
PI
Accurate PTZ positioning; the actual parameter range depends on the device.
r
For capability details, execute the command mentioned in "8.1.3 Get PTZ Capability of Current
In
Protocol".
te
Method GET
ra
8.1.6 Preset
Getting Preset Information
http://192.168.1.108/cgi-bin/ptz.cgi?action=getPresets&channel=1
HU
Preset type 0
PI
0: Normal preset
+Type int O
1: Preset configured with smart rules
fo
2: Special preset
r
integers 5]
s
OK
HT
Configuring Preset
TP
Configure a preset.
_A
Method GET
Request Params ( key=value format in URL )
fo
Request Example
ra
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&code=SetPreset&channel=1&arg1=0&arg2=2&arg3=0
s
Delete a preset.
Request Example
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&code=ClearPreset&channel=1&arg1=0&arg2=2&arg3
A_
=0
HT
TP
Response Example
OK
PI
8.1.7 Tour
fo
r
Table 8-6
lb
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=StartTour&arg1=<index
Syntax
ra
>&arg2=0&arg3=0
Method GET
s
Table 8-7
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=StopTour&arg1=<index
Syntax
>&arg2=0&arg3=0
Table 8-8
http://<server>/cgi-bin/ptz.cgi?action=setTour&channel=<ch>&arg1=<index>&arg2=<nam
Syntax
e>
Method GET
Descriptio Add tour group, including set the tour route and name. Frequently used with add tour
DA
n preset.
HU
Example http://192.168.1.108/cgi-bin/ptz.cgi?action=setTour&channel=1&arg1=1&arg2=1
A_
Success
OK
HT
Return
TP
Parameters in URL:
ch is PTZ channel index which starts from 1. Range is [1 — n].
_A
Comment
arg1 is the number of tour route
PI
Table 8-9
In
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=ClearTour&arg1=<inde
Syntax
te
x>&arg2=0&arg3=0
lb
Method GET
Description Delete the tour group with specified number.
ra
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=ClearTour&arg1=1&ar
s
Example
g2=0&arg3=0
Success
OK
Return
Parameters in URL:
Comment ch is PTZ channel index which starts from 1. Range is [1 — n].
arg1 is the number of tour group
Add tour preset
Table 8-10
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=AddTour&arg1=<index
Syntax
1>&arg2=<index2>&arg3=0
Method GET
Description Add preset to tour group.
Table 8-11
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=DelTour&arg1=<index1
Syntax
>&arg2=<index2>&arg3=0
Method GET
Description Delete the specified preset from a particular tour group.
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=DelTour&arg1=1&arg2
DA
Example
=2&arg3=0
HU
Success
OK
A_
Return
HT
Parameters in URL:
ch is PTZ channel index which starts from 1. Range is [1 — n].
TP
Comment
arg1 is the number of tour route
_A
8.1.8 Scan
fo
r
Table 8-12
te
lb
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=SetLeftLimit&arg1=<ind
Syntax
ex>&arg2=0&arg3=0
ra
Method GET
s
Table 8-13
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=SetRightLimit&arg1=<in
Syntax
dex>&arg2=0&arg3=0
Table 8-14
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=AutoScanOn&arg1=<in
Syntax
dex>&arg2=0&arg3=0
Method GET
Description Start scanning.
DA
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=AutoScanOn&arg1=1
HU
Example
&arg2=0&arg3=0
A_
Success
OK
HT
Return
TP
Parameters in URL:
Comment ch is PTZ channel index which starts from 1. Range is [1—n].
_A
Stop scan
fo
Table 8-15
r
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=AutoScanOff&arg1=<in
In
Syntax
dex>&arg2=0&arg3=0
te
Method GET
lb
Example
&arg2=0&arg3=0
s
Success
OK
Return
Parameters in URL:
Comment ch is PTZ channel index which starts from 1. Range is [1 — n].
arg1 is scan number
8.1.9 Pattern
Start pattern record
Table 8-16
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=SetPatternBegin&arg1=
Syntax
<index>&arg2=0&arg3=0
Table 8-17
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=SetPatternEnd&arg1=<i
Syntax
ndex>&arg2=0&arg3=0
Method GET
Description Stop pattern record.
DA
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=SetPatternEnd&arg1=
HU
Example
1&arg2=0&arg3=0
A_
Success
OK
HT
Return
TP
Parameters in URL:
Comment ch is PTZ channel index which starts from 1. Range is [1 — n].
_A
Start pattern
fo
Table 8-18
r
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=StartPattern&arg1=<ind
In
Syntax
ex>&arg2=0&arg3=0
te
Method GET
lb
Example
arg2=0&arg3=0
s
Success
OK
Return
Parameters in URL:
Comment ch is PTZ channel index which starts from 1. Range is [1 — n].
arg1 is pattern number
Stop pattern
Table 8-19
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=StopPattern&arg1=<ind
Syntax
ex>&arg2=0&arg3=0
Method GET
Description Stop pattern.
Example http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=StopPattern&arg1=1&
8.1.10 Pan
Start pan
Table 8-20
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=AutoPanOn&arg1=0&ar
Syntax
g2=0&arg3=0
Method GET
Description Start pan.
DA
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=AutoPanOn&arg1=0&
HU
Example
arg2=0&arg3=0
A_
Success
OK
HT
Return
Parameters in URL:
TP
Comment
ch is PTZ channel index which starts from 1. Range is [1 — n].
_A
Stop pan
PI
Table 8-21
fo
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=AutoPanOff&arg1=0&ar
r
Syntax
g2=0&arg3=0
In
Method GET
te
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=AutoPanOff&arg1=0&
Example
arg2=0&arg3=0
ra
Success
s
OK
Return
Parameters in URL:
Comment
ch is PTZ channel index which starts from 1. Range is [1 — n].
Table 8-22
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=PtzAutoMovement
Method GET
Description Get PTZ auto movement configuration.
week: from 1 to 7.
HU
Table 8-23
TP
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
_A
Syntax
alue>[&<paramName>=<paramValue>…]
PI
Method GET
Description Set PTZ auto movement.
fo
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&PtzAutoMovement[0]
Example
r
[0].Function=Preset&PtzAutoMovement[0][0].PresetId=1
Success
In
OK
Return
te
Parameters in URL:
lb
In table below,
ra
head=PtzAutoMovement[port][task]
Comment port is PTZ port index, start from 0.
s
Appendix:
Table 8-24
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=Restart&arg1=0&arg
Syntax
2=0&arg3=0
Method GET
Description PTZ restart.
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=Restart&arg1=0&ar
Example
g2=0&arg3=0
Success
DA
OK
Return
HU
Parameters in URL:
Comment
A_
Table 8-25
PI
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=Reset&arg1=0&arg2
Syntax
fo
=0&arg3=0
Method GET
r
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=Reset&arg1=0&arg
te
Example
2=0&arg3=0
lb
Success
OK
ra
Return
Parameters in URL:
s
Comment
ch is PTZ channel index which starts from 1. Range is [1 — n].
Table 8-26
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=Menu&arg1=0&arg2
Syntax
=0&arg3=0
Method GET
Description Enter the menu.
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=Menu&arg1=0&arg
Example
2=0&arg3=0
Table 8-27
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=Exit&arg1=0&arg2=0&
Syntax
arg3=0
Method GET
Description Exit the menu.
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=Exit&arg1=0&arg2=0
Example
&arg3=0
Success
OK
Return
Parameters in URL:
DA
Comment
ch is PTZ channel index which starts from 1. Range is [1 — n].
HU
Confirm
A_
HT
Table 8-28
TP
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=Enter&arg1=0&arg2=0
Syntax
_A
&arg3=0
Method GET
PI
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=Enter&arg1=0&arg2=
Example
0&arg3=0
r
Success
In
OK
Return
te
Parameters in URL:
Comment
lb
s
Table 8-29
http://<server>/cgi-bin/ptz.cgi?action=start&channel=<ch>&code=<code>&arg1=<arg1
Syntax
>&arg2=<arg2>&arg3=<arg3>
Method GET
Description Start the basic operation of menu.
http://192.168.1.108/cgi-bin/ptz.cgi?action=start&channel=1&code=MenuUp&arg1=0&
Example
arg2=0&arg3=0
Success
OK
Return
Parameters in URL:
ch is PTZ channel index which starts from 1. Range is [1 — n].
Comment
code is PTZ operation, and arg1, arg2, arg3 are arguments of operation.
code and argN values are listed in table below.
8.2 Wiper
value is 1
HT
interval int R Interval for the motion of the wiper; unit: second 5
TP
Request Example
_A
http://192.168.1.108/cgi-bin/rainBrush.cgi?action=moveContinuously&channel=1&interval=5
PI
OK
r
In
8.3 Illuminator
HU
A_
Request
PI
Template
http://<server>/cgi-bin/configManager.cgi?action=setConfig&SignLight[0].onCycle=30
fo
Method GET
r
Format
te
onCycle
ra
Example
s
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&SignLight[0].onCycle=30
Response
Parameter OK at body
Format
Parameter Type Required Description Example
Example
OK
8.4 Flashlight
Mask value:
A_
For example:
TimeSection[1][0]=1 12:00:00—18:00:00
_A
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=FlashLight
In
table.FlashLight.Enable=true
table.FlashLight.Brightness=50
lb
table.FlashLight.TimeSection[0][0]=1 00:00:00-23:59:59
ra
table.FlashLight.TimeSection[0][1]=0 00:00:00-23:59:59
s
…
table.FlashLight.TimeSection[6][5]=0 00:00:00-23:59:59
…
2: Speaker
HU
1: On
2: Off
HT
1: Linked trigger
_A
2: Manual trigger
PI
Request Example
http://192.168.1.108/cgi-bin/coaxialControlIO.cgi?action=control&channel=1&info[0].Type=1&info[0].IO=
fo
1&info[0].TriggerMode=2
r
Response Example
te
OK
lb
Table 8-30
Syntax http://<server>/cgi-bin/pirAlarm.cgi?action=getPirParam&[channel=<channelNo>]
Method GET
DA
Example http://192.168.1.108/cgi-bin/pirAlarm.cgi?action=getPirParam&channel=1
head.Enable=true
A_
head.PirLink.LightingLink.Enable=true
HT
head.PirLink.LightingLink.LightLinkType=Filcker
TP
head.PirLink.LightingLink.FilckerIntevalTime=5
_A
head.PirLink.LightingLink.LightDuration=10
head.PirLink.LightingLink.WhiteLightTimeSection=TimeSection
PI
head.PirLink.TimeSection[weekday][0]=1 00:00:00-24:00:00
head.PirLink.TimeSection[weekday][1]=0 02:00:00-24:00:00
fo
head.PirLink.TimeSection[weekday][2]=0 03:00:00-24:00:00
r
head.PirLink.TimeSection[weekday][3]=0 04:00:00-24:00:00
In
head.PirLink.TimeSection[weekday][4]=0 05:00:00-24:00:00
te
head.PirLink.TimeSection[weekday][5]=0 06:00:00-24:00:00
head.RecordEnable=true
lb
head.RecordChannels=[0, 1, 2]
ra
Success
head.RecordLatch=10
Return
s
head.AlarmOutEnable=true
head.AlarmOutChannels=[1, 4]
head.AlarmOutLatch=10
head.SnapshotEnable=true
head.SnapshotChannels=[2, 4]
head.MailEnable=true
head.AlarmBellEnable=true
head.AlarmBellLatch=10
head.Dejitter=0
head.LogEnable=true
head.DetectWindow[0].Level=3
head.DetectWindow[0].Id=0
head.DetectWindow[0].Name=Region0
head.DetectWindow[0].Sensitive=58
Table 8-31
http://<server>/cgi-bin/pirAlarm.cgi?action=setPirParam&[channel=<channelNo>]&<pa
Syntax
ramName>=<paramValue>...&<paramName>=<paramValue>
Method GET
DA
http://192.168.1.108/cgi-bin/pirAlarm.cgi?action=setPirParam&channel=1&configEx[1].
Example
A_
Enable=true&configEx[1].PirLink.LightingLink.Enable=true&...
HT
Success
OK
Return
TP
Comment
head=configEx[channelNo]
PI
Appendix:
fo
channel.
WinNum
te
head.DetectWindow[WinNum].Level integer
Range is [1—6].
Sensitivity of pir
1: lowest sensitivity.
6: highest sensitivity.
head.DetectWindow[WinNum].Id integer It is the Id of a detect window.
head.DetectWindow[WinNum].Nam
string It is the name of a detect window.
e
Range is [0—100].
head.DetectWindow[WinNum].Sens
integer It presents more sensitive if the value is
itive
larger.
Range is [0—100].
head.DetectWindow[WinNum].Thre
integer It presents the threshold value when trigger
shold
motion detect.
MotionDetect[0].Region[0] = 4194303
(0x3FFFFF):: motion in channel 0 line 0's
HU
22 blocks is monitored.
A_
blocks is monitored.
PI
head.PirLink.AlarmBellLatch integer
Unit is seconds
TP
Request Example
http://192.168.1.108/cgi-bin/videoStatServer.cgi?action=getSummary&channel=1
HU
A_
summary.InsideSubtotal.ManStayStat[0].EnterTime=2012-01-04 00:00:00
summary.InsideSubtotal.ManStayStat[0].ExitTime=2012-01-04 00:00:45
HU
summary.InsideSubtotal.ManStayStat[1].EnterTime=2012-01-04 00:00:00
A_
summary.InsideSubtotal.ManStayStat[1].ExitTime=2012-01-04 00:00:45
HT
Start to find
PI
Start to find video stat info, in response, there is a token for further info finding process, and there is
fo
Method GET
Request Params ( key=value format in URL )
te
default is 1.
s
token=12345
HT
totalCount=56
TP
Get the find result of Video Stat info with channel, token, begin Number and count.
PI
Method GET
r
00:02:00
+EnteredSubto 14
HU
+ExitedSubtota 5
int O Total leave num.
HT
l
TP
+InsideSubtota 65
int O Total inside num.
l
_A
Response Example
PI
found=20
info[0].Channel=0
fo
info[0].AreaID=2
r
info[0].RuleName=NumberStat
In
info[0].StartTime=2012-03-14 00:00:00
te
info[0].EndTime=2012-04-14 00:00:00
info[0].EnteredSubtotal=14
lb
info[0].ExitedSubtotal=5
ra
info[0].InsideSubtotal=65
s
info[1].Channel=0
info[1].AreaID=3
info[1].RuleName=NumberStat
info[1].StartTime=2012-03-14 00:00:00
info[1].EndTime=2012-04-14 00:00:00
info[1].EnteredSubtotal=14
info[1].ExitedSubtotal=5
info[1].InsideSubtotal=65
…
Method GET
HT
channel int O
default is 1.
PI
Request Example
GET http://192.168.1.108/cgi-bin/videoStatServer.cgi?action=clearSectionStat&channel=1
fo
r
Response Example
OK
te
lb
+ExitedSubtota
object O People leave stat.
TP
l
_A
++TotalInTime 0
int O Today leave num after call clearSectionStat.
Section
r
+InsideSubtota
In
2012-01-04
+++EnterTime string O People enter time
s
00:00:00
2012-01-04
+++ExitTime string O People leave time
00:00:45
Response Example
HTTP/1.1 200 OK
Server: Device/1.0
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
Connection: closed
--<boundary>
Content-Type: text/plain
Content-Length: <length>
summary.Channel=0
Heartbeat
HU
--<boundary>
Content-Type: text/plain
A_
Content-Length: <length>
HT
TP
summary.Channel=0
summary.RuleName=NumberStat
_A
summary.EnteredSubtotal.Today=2
PI
summary.EnteredSubtotal.Total=14
…
fo
r
Table 9-1
lb
Description When people number triggers the rule, send this event.
s
Table 9-2
Array<obje
ManList R The people info list.
ct>
A_
remap to 0 — 8192.
+Stature int R The people's stature, unit is cm.
PI
AreaID int O The area id, begin from 1, if omit, means single area.
fo
--<boundary>
In
Content-Type: text/plain
te
Content-Length: <length>
lb
Code=ManNumDetection;action=pulse;index=0;data={
ra
Table 9-3
Event Code=CrowdDetection;action=start;index=0;data={
DA
--<boundary>
HT
TP
9.2 FaceRecognitionServer
_A
PI
Table 9-4
r
In
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=createGroup
Method GET
te
groupName string R The face group name, max string length is 127.
The description detail of the face group, max string length is
groupDetail string O
255.
[ Response Params ] ( key=value format )
Name Type R/O Param Description
groupID string R The identity of the created face group, max string length is 63.
[ Example ]
GET
Request http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=createGroup&groupName
=Test1&groupDetail=ForTest1
Response groupID=10000
Table 9-5
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=modifyGroup
Method GET
Description Modify a face group.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
groupID string R The identity of the face group, max string length is 63.
groupName string R The name of the the face group, max string length is 127.
groupDetail string O Description detail of the face group, max string length is 255.
[ Response Params ] ( OK )
[ Example ]
GET
DA
Request http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=modifyGroup&groupID=10
000&groupName=Test1&groupDetail=ForTest1
HU
Response OK
A_
HT
Table 9-6
PI
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=deleteGroup
Method GET
fo
groupID string R The identity of the face group, max string length is 63.
[ Response Params ] ( OK )
lb
[ Example ]
ra
GET
s
Request http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=deleteGroup&groupID=100
00
Response OK
Table 9-7
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=putDisposition
Method GET
Response
report[1]=false
HU
Table 9-8
HT
TP
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=deleteDisposition
Method GET
_A
Descripti
PI
groupID string R The identity of the face group, max string length is 63.
In
[ Example ]
s
GET
Request http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=deleteDisposition&groupID
=10000&channel[0]=1&channel[1]=2
report[0]=true
Response
report[1]=false
set disposition group to channel
Table 9-9
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=setGroup
Method GET
Deploy some face groups to one video channel. If the video channel has been deployed
Descripti
already, it will change the similary.
on
Note: This method will do an overwrite operation.
Table 9-10
DA
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=getGroup
HU
Method GET
A_
Note: If the video channel does not deploy any group, then the response will be success
on
TP
groupID Array<int> R The identity of the face group, max string length is 63.
In
[ Example ]
Request GET http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=getGroup&channel=1
lb
groupID[0]=10001
ra
groupID[1]=10003
s
groupID[2]=10006
….
Response
similary[0]=80
similary[1]=75
similary[2]=85
….
Table 9-11
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=findGroup
Method GET
Description Find the face group. If the groupID is not present in the URL, it will return all the groups.
GroupList[0].groupID=00001
A_
GroupList[0].groupName=Test1
GroupList[0].groupDetail=ForTest1
HT
GroupList[0].groupSize=30
TP
GroupList[0].channels[0]=1
_A
GroupList[0].channels[1]=2
PI
…
GroupList[0].similarity[0]=80
fo
GroupList[0].similarity[1]=75
…
r
GroupList[0].groupType=BlackListDB
In
GroupList[0].TimeSection[0][0]=1 00:00:00-23:59:59
te
GroupList[0].TimeSection[0][1]=0 00:00:00-23:59:59
lb
GroupList[0].TimeSection[0][2]=0 00:00:00-23:59:59
GroupList[0].TimeSection[0][3]=0 00:00:00-23:59:59
ra
Response
GroupList[0].TimeSection[0][4]=0 00:00:00-23:59:59
s
GroupList[0].TimeSection[0][5]=0 00:00:00-23:59:59
GroupList[0].TimeSection[1][0]=1 00:00:00-23:59:59
GroupList[0].TimeSection[1][1]=0 00:00:00-23:59:59
GroupList[0].TimeSection[1][2]=0 00:00:00-23:59:59
GroupList[0].TimeSection[1][3]=0 00:00:00-23:59:59
GroupList[0].TimeSection[1][4]=0 00:00:00-23:59:59
GroupList[0].TimeSection[1][5]=0 00:00:00-23:59:59
GroupList[0].TimeSection[2][0]=1 00:00:00-23:59:59
GroupList[0].TimeSection[2][1]=0 00:00:00-23:59:59
GroupList[0].TimeSection[2][2]=0 00:00:00-23:59:59
GroupList[0].TimeSection[2][3]=0 00:00:00-23:59:59
GroupList[0].TimeSection[2][4]=0 00:00:00-23:59:59
GroupList[0].TimeSection[2][5]=0 00:00:00-23:59:59
GroupList[0].TimeSection[3][0]=1 00:00:00-23:59:59
GroupList[0].TimeSection[5][5]=0 00:00:00-23:59:59
GroupList[0].TimeSection[6][0]=1 00:00:00-23:59:59
HU
GroupList[0].TimeSection[6][1]=0 00:00:00-23:59:59
A_
GroupList[0].TimeSection[6][2]=0 00:00:00-23:59:59
HT
GroupList[0].TimeSection[6][3]=0 00:00:00-23:59:59
TP
GroupList[0].TimeSection[6][4]=0 00:00:00-23:59:59
GroupList[0].TimeSection[6][5]=0 00:00:00-23:59:59
_A
PI
GroupList[1].groupID=00003
GroupList[1].groupName=Test3
fo
GroupList[1].groupDetail=ForTest3
r
GroupList[1].groupSize=50
In
GroupList[1].channels[0]=1
GroupList[1].channels[1]=2
te
…
lb
GroupList[1].similarity[0]=70
ra
GroupList[1].similarity[1]=85
s
Table 9-12
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=groupReAbstract
Method GET
Abstract features for the groups.
Description About the process of the re-extract, the device will use an event named
"FaceFeatureAbstract" to report the process.
[ Request Params ] ( key=value format at URL )
Table 9-13
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=stopGroupReAbstract
Method GET
DA
Descripti
Stop the abstract features process.
on
HU
[ Response Params ] ( OK )
[ Example ]
_A
GET
PI
Request http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=stopGroupReAbstract&tok
en=12345
fo
Response OK
r
In
Table 9-14
ra
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=addPerson
s
Method POST
Description Add a person to a group.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
The identity of the face group that this person to add. Max string
groupID string R
length is 63.
name string R The person name, max string length is 63.
birthday string O The person's birthday, ex: "1980-01-01".
sex string O Sex, it can be "Male", "Female", "Unknown".
The country name, length must be 2, and value should be
country string O
according to ISO3166.
province string O The province name, max string length is 63.
city string O The city name, max string length is 63.
certificateType string O The certificate type. It can be: "IC', "Passport", "Unknown".
Table 9-15
A_
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=modifyPerson
HT
Method POST
TP
Note: If you do not want to change the image about the person, the request should not
Description
contain the image data.
PI
uid string R The identity of the Person, max string length is 31.
In
The identity of the Face Group that this Person in. max string
groupID string R
te
length is 63.
lb
Table 9-16
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=deletePerson
Method GET
Description Delete a person from a group.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
uid string R The identity of the person, max string length is 31.
The identity of the face group that this Person in. max string
DA
groupID string R
length is 63.
HU
[ Response Params ] ( OK )
A_
[ Example ]
GET
HT
Request http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=deletePerson&uid=001&gr
TP
oupID=10000
_A
Response OK
PI
Start to find
r
In
Table 9-17
te
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=startFind
lb
Method GET
ra
Note: the returned token will be expired after 60 seconds without any doFind call.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
condition Object R Search scope condition.
+GroupID Array<string> R The list of identity of the face group, max string length is 63.
person object O Person condition.
+Name string O Person Name, max string length is 63.
+Sex string O Sex, it can be "Male", "Female", "Unknown".
string O Country name, length must be 2, and value should be
+Country
according to ISO3166.
+Province string O Province name, max string length is 63.
+City string O City name, max string length is 63.
+CertificateType string O Certificate Type. It can be: "IC', "Passport", "Unknown".
+ID string O Person ID of CertificateType, max string length is 31.
Table 9-18
DA
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=doFind
HU
Method GET
A_
Descripti Get one result of person's information from the search result set.
HT
on Note: the returned token will be expired after 60 seconds without any doFind call.
TP
Token for this search, use this token to get result and stop
PI
token uint R
search.
The index in search result, should between 0 and totalCount
fo
index uint R
–1.
r
string R The identity of the face group that this Person in. max string
ra
+GroupID
length is 63.
s
--<boundary>
Content-Type: text/plain
Content-Length: <length>
person.UID=0005
person.GroupID=10000
person.Name=ZhangSan
person.Birthday=1980-01-01
Response
person.Sex=Male
person.Country=CN
person.Province=ZheJiang
DA
person.City=HangZhou
person.CertificateType=IC
HU
person.ID=1234567890
A_
person.FeatureState=0
HT
--<boundary>
TP
Content-Type: image/jpeg
Content-Length: <image size>
_A
PI
Stop finding
r
In
Table 9-19
te
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=stopFind
lb
Method GET
ra
Descripti
Stop the search session.
on
s
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=reAbstract
Method GET
Abstract features for the persons.
Description About the process of the re-extract, the device will use an event named
"FaceFeatureAbstract"to report the process.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
UID Array<int> O The list of identity of person, max string length is 31.
[ Response Params ] ( OK )
[ Example ]
GET
Request http://192.168.1.108/cgi-bin/faceRecognitionServer.cgi?action=reAbstract&uid[0]=001&ui
d[1]=002
Response OK
DA
Stop ReAbstract
HU
Table 9-21
A_
HT
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=stopReAbstract
TP
Method GET
Descripti
_A
[ Example ]
r
Respons
OK
te
e
lb
Table 9-22
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=FaceRecognitionAlar
URL
m
Method GET
Description Get the Face Recognition Alarm Out Setting.
[ Request Params ] ( None )
[ Response Params ] ( key=value format )
Name Type R/O Param Description
table object R Config info table.
+FaceRecognitio
array<object> R Each face group has one config object in this array.
nAlarm
table.FaceRecognitionAlarm[0].AlarmOutEnable=true
HU
table.FaceRecognitionAlarm[0].AlarmChannel[0].AlarmRuleMask=0
table.FaceRecognitionAlarm[0].AlarmChannel[0].AlarmOutLatch=5
A_
table.FaceRecognitionAlarm[0].AlarmChannel[1].AlarmRuleMask=0
HT
table.FaceRecognitionAlarm[0].AlarmChannel[1].AlarmOutLatch=8
TP
…
Response
_A
table.FaceRecognitionAlarm[1].GroupID=0018
table.FaceRecognitionAlarm[1].GroupName=cst
PI
table.FaceRecognitionAlarm[1].AlarmOutEnable=true
fo
table.FaceRecognitionAlarm[1].AlarmChannel[0].AlarmRuleMask=0
table.FaceRecognitionAlarm[1].AlarmChannel[0].AlarmOutLatch=10
r
table.FaceRecognitionAlarm[1].AlarmChannel[1].AlarmRuleMask=0
In
table.FaceRecognitionAlarm[1].AlarmChannel[1].AlarmOutLatch=15
te
…
Set FaceRecognitionAlarm config
lb
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
ra
Method GET
s
Descripti
Set the Face Recognition Alarm Out Setting.
on
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
FaceRecognition
array<object> R Each face group has one config object in this array.
Alarm
+GroupID String R The face group ID, max string length is 63.
+GroupName String R The face group name, max string length is 127.
+AlarmOutEnabl
Bool R Enable AlarmOut or not.
e
+AlarmChannel Array<object> R Each AlarmOut channel has one config object in this array.
Start to find
HU
Table 9-23
A_
HT
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=startFindByPic
Method POST
TP
Start to find person in face groups by picture. The search may last for some time, so the
_A
Description Note: If you want to find person in face groups by person info, see above "Find
Person"API.
fo
Note: The returned token will be expired after 60 seconds without any doFind call.
r
<JPEG data>
Respons HTTP/1.1 200 OK
--<boundary>
Content-Type: application/json
Content-Length: <length>
{ "token": 123456789,
"progress": 20
"totalCount": -1
}
--<boundary>
Content-Type: application/json
Content-Length: <length>
DA
{ "token": 123456789,
"progress": 60
HU
"totalCount": -1
A_
}
HT
--<boundary>
TP
Content-Type: application/json
Content-Length: <length>
_A
PI
{ "token": 123456789,
"progress": 100
fo
"totalCount": 350
r
}
In
--<boundary>--
Get the find result
te
lb
Table 9-24
ra
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=doFindByPic
s
Method GET
Get the find result, reply using multipart format, first part is json string to describe all
Descripti candidate person, then the following parts are the person's pictures, refer by UID and
on GroupID in part header Content-Info.
Note: the returned token will be expired after 60 seconds without any doFind call.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Token for this search, use this token to get result and stop
token uint R
search.
The index in search result, should between 0 and totalCount
index uint R
–1.
count uint R Number of result person to get.
[ Response Params ] ( JSON format )
++FeatureStat
int O Feature State, 0:Unknown, 1:Failed, 2:OK.
A_
e
++HomeAddre
HT
[ Example ]
PI
GET
Request http://<server>/cgi-bin/faceRecognitionServer.cgi?action=doFindByPic&token=12345678
fo
9&index=0&count=10
r
HTTP/1.1 200 OK
Server: Device/1.0
In
Connection: closed
lb
ra
--<boundary>
Content-Type: application/json
s
Content-Length: <length>
{ "Found" : 10,
Response
"Candidates" : [
{
"person" : {
"UID" : "0001",
"GroupID" : "001",
"Name" : "ZhangSan",
"Birthday" : "1980-01-05",
"Sex" : "Male",
...
},
--<boundary>
Content-Info: UID=0001&GroupID=001
HU
Content-Type: image/jpeg
A_
Content-Length: <length>
HT
TP
--<boundary>
Content-Info: UID=0002&GroupID=002
PI
Content-Type: image/jpeg
Content-Length: <length>
fo
r
--<boundary>
...
te
Stop finding
lb
ra
Table 9-25
s
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=stopFindByPic
Method GET
Descripti
Stop the search session.
on
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Token for this search, use this token to get result and stop
token uint R
search.
[ Response Params ] ( OK )
[ Example ]
GET
Request http://<server>/cgi-bin/faceRecognitionServer.cgi?action=stopFindByPic&token=12345678
9
Table 9-26
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=startFindHistoryByPic
Method POST
Start to find person in capture history by picture. The search may last for some time, so
the response may push at regular intervals until 100% Progress.
Description Note: If you want to find person in capture history by person info, please refer to
"mediaFileFind"API.
Note: the returned token will be expired after 60 seconds without any doFind call.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
DA
Token for this search, use this token to get result and stop
token uint R
search.
fo
[ Example ]
te
POST
http://<server>/cgi-bin/faceRecognitionServer.cgi?action=startFindHistoryByPic&Channe
lb
l=0&StartTime=2018-01-13T00:00:00Z&EndTime=2018-01-14T00:00:00Z&Type=All&Si
ra
milarity=80&MaxCandidate=500
Request
s
Content-Type: image/jpeg
Content-Length: <image size>
<JPEG data>
--<boundary>
Content-Type: application/json
Content-Length: <length>
{ "token": 123456789,
"progress": 20
"totalCount": -1
}
--<boundary>
Content-Type: application/json
Response
Content-Length: <length>
DA
{ "token": 123456789,
HU
"progress": 60
A_
"totalCount": -1
HT
}
TP
--<boundary>
Content-Type: application/json
_A
Content-Length: <length>
PI
{ "token": 123456789,
fo
"progress": 100
r
"totalCount": 350
In
}
te
--<boundary>--
Get find result
lb
ra
Table 9-27
s
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=doFindHistoryByPic
Method GET
Get the find result, reply by multipart, first part is json string to describe all candidate person,
Descripti
then the following part is the person's picture, refer by UID in part header Content-Info.
on
Note: the returned token will be expired after 60 seconds without any doFind call.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Token for this search, use this token to get result and stop
token uint R
search.
The index in search result, should between 0 and totalCount
index uint R
–1.
count uint R Number of result person to get, start from Index.
[ Response Params ] ( JSON format )
Connection: closed
A_
--<boundary>
HT
Content-Type: application/json
TP
Content-Length: <length>
_A
PI
{ "Found" : 12,
"Candidates" : [
fo
{
"person" : {
r
"UID" : "0001",
In
"Sex" : "Male",
te
"Age" : 30,
lb
Response "Glasses": 1
},
ra
"Similarity" : 85
s
Table 9-28
HU
A_
URL http://<server>/cgi-bin/faceRecognitionServer.cgi?action=stopFindHistoryByPic
HT
Method GET
Descripti
TP
Stop finding.
on
_A
searching.
r
[ Response Params ] ( OK )
In
[ Example ]
GET
te
Request http://<server>/cgi-bin/faceRecognitionServer.cgi?action=stopFindHistoryByPic&token=1
lb
23456789
ra
Response OK
s
Table 9-29
--<boundary>
HU
Content-Type: text/plain
Content-Length: <length>
A_
HT
Code=FaceDetection;action=Start;index=0;data={
TP
"Sex": "Man",
"Age": 40,
PI
Event
"Feature": [ "WearGlasses", "Smile"],
fo
"Eye": 2,
"Mouth": 1,
r
"Mask": 1,
In
"Beard": 2
te
}, {…}, … ]
}
lb
--<boundary>
ra
s
Table 9-30
"Confused", "Scream".
++Eye int O Eye status, 0: not detected, 1: close eye, 2: open eye.
In
++Mouth int O Mouth status, 0: not detected, 1: close mouth, 2: open mouth.
te
mask.
ra
--<boundary>
Content-Type: text/plain
Content-Length: <length>
Events[0].EventBaseInfo .Code=FaceRecognition
Events[0].EventBaseInfo .Action=Pulse
Event Events[0].EventBaseInfo .Index=0
Events[0].UID=00105
Events[0].Candidates[0].Person.UID=0012
Events[0].Candidates[0].Person.GroupID=10000
Events[0].Candidates[0].Person.Name=ZhangSan
Events[0].Candidates[0].Person.Birthday=1980-01-02
Events[0].Candidates[0].Person.Sex=Male
Events[0].Face.Mask=1
Events[0].Face.Beard=2
HU
--<boundary>
A_
Content-Type: image/jpeg
HT
--<boundary>
PI
Table 9-31
In
te
Description
in this event.
ra
Code=FaceFeatureAbstract;action=Start;index=0;data={
"Infos": [ { "State": "Progress",
Event
"Progress": 30,
"UID": "20005",
"GroupID": "10000"
}, {…}, … ]
}
--<boundary>
Table 9-32
HU
A_
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=FaceRecognitionEve
URL
ntHandler
HT
Method GET
TP
+FaceRecognitio
array<object> R Each face group has one config object in this array.
In
nEventHandler
++GroupID String R The face group ID, max string length is 63.
te
++GroupName String R The face group name, max string length is 127.
lb
table.FaceRecognitionEventHandler[1].SnapEnableMask=3
table.FaceRecognitionEventHandler[1].MailEnableMask=0
HU
…
A_
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
TP
Method GET
_A
Descripti
Set the Face Recognition Event Handler Setting.
on
PI
FaceRecognition
r
array<object> R Each face group has one config object in this array.
Alarm
In
+GroupID String R The face group ID, max string length is 63.
te
+GroupName String R The face group name, max string length is 127.
lb
ask
Bit 1 : recognition failed
s
Format
HU
Example
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&CitizenPictureCompareRule.Threshol
_A
d=60
Response
PI
Parameter OK at body
Format
fo
Example
In
OK
te
lb
Method POST
HU
Request Example
TP
User-Agent: client/1.0
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
PI
fo
--<boundary>
Content-Type: application/json
r
Content-Length: 20
In
te
{
lb
"password": "abcd"
}
ra
--<boundary>
s
Content-Type: application/octet-stream
Content-Length: 800
Table 9-33
[ Example ]
HU
--<boundary>
Content-Type: text/plain
A_
Content-Length: <length>
HT
Event
TP
Code=LeftDetection;action=pulse;index=0;data={
_A
--<boundary>
fo
Table 9-34
te
Description When detect some object was taken away, send this event.
ra
Table 9-35
Tracks O for one object, polyline is array of points, point is array of two
Array<int>>>
HU
Array<Array<i
DetectRegion R 20, the second array is point, must be two int, means x and y
HT
nt>>
value, coordinate remap to 0 — 8192.
TP
[ Example ]
_A
--<boundary>
Content-Type: text/plain
PI
Content-Length: <length>
fo
Code=WanderDetection;action=start;index=0;data={
r
{ "BoundingBox": [4392,4136,6960,6512] },
Event
te
{…}, … ],
lb
"Tracks": [ [ [1202, 576], [1456, 863], [1921, 1204], [2341, 1823], [3512, 2314] ],
[ [2214, 3412], [3153, 3674], [4512, 4213] ],
ra
[…], … ],
s
Table 9-36
Content-Type: text/plain
HU
Content-Length: <length>
A_
Code=StayDetection;action=start;index=0;data={
HT
{ "BoundingBox": [4392,4136,6960,6512] },
{…}, … ],
PI
}
r
--<boundary>
In
te
Table 9-37
s
skirt.
++HasHat int O Has hat or not, 0: unknown, 1: not has hat, 2: has hat.
A_
++HasBag int O Has bag or not, 0: unknown, 1: not has bag, 2: has bag.
HT
umbrella.
_A
++HairStyle int O
4: updo, 5: hiddened.
In
+FaceAttributes object O If the human's face can be detected, find it's attributes.
lb
++BoundingBox Array<int> O
right-bottom point, y's value of right-bottom point.
s
Events[0].EventBaseInfo .Code=HumanTrait
Events[0].EventBaseInfo .Action=Pulse
Events[0].EventBaseInfo .Index=0
Events[0].HumanAttributes.BoundingBox[0]=1341
Events[0].HumanAttributes.BoundingBox[1]=2451
Events[0].HumanAttributes.BoundingBox[2]=4513
Events[0].HumanAttributes.BoundingBox[3]=4135
Events[0].HumanAttributes.Sex=Man
Events[0].HumanAttributes.Age=30
DA
Events[0].HumanAttributes.CoatColor=White
HU
Events[0].HumanAttributes.CoatType=1
Events[0].HumanAttributes.TrousersColor=Black
A_
Events[0].HumanAttributes.TrousersType=1
HT
Event Events[0].HumanAttributes.HasHat=1
TP
Events[0].HumanAttributes.HasBag=2
Events[0].FaceAttributes.BoundingBox[0]=1341
_A
Events[0].FaceAttributes.BoundingBox[1]=2451
PI
Events[0].FaceAttributes.BoundingBox[2]=4513
Events[0].FaceAttributes.BoundingBox[3]=4135
fo
Events[0].FaceAttributes.Sex=Man
r
Events[0].FaceAttributes.Age=30
In
Events[0].FaceAttributes.Feature[0]=Smile
te
Events[0].FaceAttributes.Eye=2
Events[0].FaceAttributes.Mouth=1
lb
Events[0].FaceAttributes.Glass=1
ra
--<boundary>
s
Content-Type: image/jpeg
Content-Length: <image size>
Table 9-38
--<boundary>
HU
Content-Type: text/plain
Content-Length: <length>
A_
HT
Code=CrossLineDetection;action=pulse;index=0;data={
Event
TP
}
fo
--<boundary>
r
Table 9-39
lb
Description When detect some object cross the region, send this event
s
Code=CrossRegionDetection;action=pulse;index=0;data={
Event "Object": { "BoundingBox": [2992,1136,4960,5192] },
"DetectRegion": [ [1292,3469], [6535,3373], … ],
“Action” : “Cross”,
DA
"Direction" : "Enter"
HU
}
--<boundary>
A_
HT
Table 9-40
PI
remap to 0 — 8192.
s
Code=QueueStayDetection;action=start;index=0;data={
"Object": { "BoundingBox": [2992,1136,4960,5192] },
Event "Objects": [ { "BoundingBox": [2992,1136,4960,5192] },
{ "BoundingBox": [4392,4136,6960,6512] },
{…}, … ],
"DetectRegion": [ [1292,3469], [6535,3373], … ],
"AreaID" : 2
}
--<boundary>
Table 9-41
HU
Description When detect the queue people number exceed limit, send this event
HT
remap to 0 — 8192.
r
AreaID int O The area id, begin from 1, if omit, means single area.
te
--<boundary>
s
Content-Type: text/plain
Content-Length: <length>
Code=QueueNumDetection;action=pulse;index=0;data={
Event "ManList": [ { "BoundingBox": [2992,1136,4960,5192], "Stature": 170 },
{ "BoundingBox": [4392,4136,6960,6512], "Stature": 175 },
{…}, … ],
"AreaID" : 2
}
--<boundary>
Table 10-1
Syntax http://<server>/cgi-bin/devVideoAnalyse.cgi?action=getcaps&channel=<ChannelNo>
Method GET
Description Get video analyse capabilities.
Example http://192.168.1.108/cgi-bin/devVideoAnalyse.cgi?action=getcaps&channel=1
DA
caps.CalibrateBoxs[0]=2
HU
caps.CalibrateBoxs[1]=3
caps.ComplexSizeFilter=false
A_
caps.MaxCelibateAreas=10
HT
caps.MaxExcludeRegions=0
TP
caps.MaxInternalOptions=512
_A
caps.MaxModules=1
caps.SupportGlobalDeviceParam=1
PI
caps.MaxPointOfLine=20
caps.MaxPointOfRegion=20
fo
caps.MaxRules=10
r
caps.MaxStaffs=4
In
caps.SpecifiedObjectFilter=true
te
caps.SupportedRules[0]=CrossLineDetection
caps.SupportedRules[1]=CrossRegionDetection
lb
Success
caps.SupportedRules[2]=LeftDetection
ra
Return
caps.SupportedRules[3]=TakenAwayDetection
s
caps.SupportedScene[0]=Normal
caps.SupportedScene[1]=FaceDetection
caps.SupportedScene[2]=VideoDiagnosis
caps.SupportedScenes.FaceDetection.SupportedCalibrateParams.Groud.HorizontalSt
affs[0]=0
caps.SupportedScenes.FaceDetection.SupportedCalibrateParams.Groud.HorizontalSt
affs[1]=0
caps.SupportedScenes.FaceDetection.SupportedCalibrateParams.Groud.VerticalStaffs
[0]=0
caps.SupportedScenes.FaceDetection.SupportedCalibrateParams.Groud.VerticalStaffs
[1]=0
caps.SupportedScenes.StereoNumber.SupportedRules.ManNumDetection.SupportLoc
alDataStore=false
caps.SupportedScenes.NumberStat.CameraType=1
Appendix
Table 10-2
A_
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoAnalyseGlob
Syntax
HT
al
Method GET
TP
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoAnalyse
Example
PI
Global
head.Scene.Type=Normal
fo
head.Scene.PtzPresetId=1
r
head.Scene.Depth=Far
In
head.Scene.Detail.CameraAngle=30
head.Scene.Detail.CameraDistance=10.000000
te
Success
head.Scene.Detail.CameraHeight=6.200000
lb
Return
head.TimePeriod.Day[0]=8:00:00
ra
head.TimePeriod.Day[1]=20:00:00
head.TimePeriod.Night[0]=20:00:00
s
head.TimePeriod.Night[1]=8:00:00
…
Parameters in Response :
head =table.VideoAnalyseGlobal[ChannelNo]
Comment
ChannelNo: integer, array index starts from 0, which means video channel(equals to
video channel index -1, and so 0 means channel 1).
Set video analyse global config
Table 10-3
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>...]
Method GET
Description Set video analyse global config.
Appendix
"VideoDiagnosis", "VehicleAnalyse",
HU
head.Scene.PtzPresetId integer
unassociated with PTZ.
TP
Table 10-4
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=VideoAnalyseRule
Method GET
Description Get video analyse rules config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoAnalyse
Example
Rule
head.Name= line1
Success head.Type=CrossLineDetection
Return head.VideoAnalyseRule[0][0].Enable =true
head.VideoAnalyseRule[0][0].EventHandler= (output of EventHandler is described in
Table 10-5
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set video analyse rules config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoAnalyseRule[0]
Example
[0].Name=myAnalyseRule1&VideoAnalyseRule[0][0].Type=CrossLineDetection
DA
Success
HU
OK
Return
A_
Parameters in URL:
HT
ChannelNo: integer, array index starts from 0, which means video channel (equals to
_A
Comment
video channel index -1, and so 0 means channel 1).
PI
Appendix
In
"CrossRegionDetection", "LeftDetection",
s
"TakenAwayDetection",
"VideoAbnormalDetection", "FaceDetection",
"AudioMutation", "AudioAnomaly",
head.Type string "VideoUnFocus", "WanderDetection",
"RioterDetection", "ParkingDetection",
"MoveDetection", "NumberStat", "HeatMap",
"FaceAttribute", "VehicleDetect",
"NonMotorDetect", "HumanTrait",
"ObjectPlacement", "ObjectRemoval" }.
head.Enable bool Enable/Disable this rule.
Setting of EventHandler is described in
head.EventHandler —
SetEventHandler.
head.Config.DetectLine[0][0] integer The start point of DetectLine 0;
head.Config.DetectLine[0][1] integer The end point of DetectLine 0;
Adapt to {"CrossRegionDetection",
HT
head.Config.DetectRegion[0]
integer "LeftDetection", "TakenAwayDetection",
[0]
TP
"WanderDetection", "RioterDetection",
_A
"ParkingDetection", "MoveDetection"}.
PI
head.Config.DetectRegion[0]
integer The end point of DetectRegion 0;
[1]
fo
head.Config.DetectRegion[1]
integer The start point of DetectRegion 1;
[0]
r
head.Config.DetectRegion[1]
In
head.Config.DetectRegion[2]
integer The start point of DetectRegion 2;
lb
[0]
head.Config.DetectRegion[2]
ra
"HumanTrait"}.
TP
"NonMotorDetect", "HumanTrait"}.
fo
head.Config.TempStrategy.T double
Maximum value of normal face temperature range
empValueMax
head.Config.TempStrategy.T double
Minimum value of normal face temperature range
empValueMin
head.Config.TempStrategy.T uint8
Strategy type for calculating face temperature:
empType
0: Use the highest temperature
1: Use the average temperature
ctRegion
Calculate the highest temperature area:
HU
0: Forehead
A_
HT
1: Whole face
TP
head.Config.TempStrategy.A uint8
Parameter for maximum temperature strategy (valid
verageTempStrategy.Strateg
_A
head.Config.TempStrategy.A uint8
In
um
The number of points used to find the average value,
lb
16.
s
head.Config.TempStrategy.A bool
Parameter for average temperature strategy (valid
verageTempStrategy.Enable when tempType is 1).
Filter
Whether to enable the removal of the highest
temperature and the lowest temperature to take
the average value:
False: Disable
True: Enable
Table 10-6
http://<server>/cgi-bin/devVideoAnalyse.cgi?action=getLastEventInfo&channel=<Chan
Syntax
nelNo>&ClassName=<ClassNameStr>&EventName=<EventNameStr>
Method GET
Description Get last event info
http://192.168.1.108/cgi-bin/devVideoAnalyse.cgi?action=getLastEventInfo&channel=1
Example
&ClassName=StereoBehavior&EventName=ManStandDetection
State=1
Success
EventInfo.Code=ManStandDetection
Return
EventInfo.Action=Start
Parameters in Response :
DA
ChannelNo: integer, array index starts from 0, which means video channel (equals to
HU
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=GlobalDevicePara
Syntax
m
fo
Method GET
r
table object R
s
10.1.6 getTemplateRule
Gets all intelligent rule configuration templates and default values under
the specified category
DA
Method GET
Request Params ( key=value format in URL )
A_
Type in config
_A
VideoAnalyseGlobal
"Normal"
PI
"Traffic"
fo
"TrafficPatrol"
"FaceDetection"(shared
r
recognition)
te
starts from 1.
s
Example
http://<server>/cgi-bin/VideoInAnalyse.cgi?action=getTemplateRule&Channel=1&Class=Normal
Example
Rule.Normal.CrossLineDetection.Id=0
A_
Rule.Normal.CrossLineDetection.Enable=false
HT
Rule.Normal.CrossLineDetection.Class=Normal
TP
Rule.Normal.CrossLineDetection.Type=CrossLineDetection
Rule.Normal.CrossLineDetection.ObjectTypes[0]=Unknown
_A
Rule.Normal.CrossLineDetection.PtzPresetId=0
PI
Rule.Normal.Config.Direction=Both
Rule.Normal.Config.SizeFilter.MaxSize[0]=[8191, 8191]
fo
Rule.Normal.Config.SizeFilter.MinSize[0]=[0, 0]
r
…
In
Request
ra
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&IntelliSchemeTour.Enable
s
=<enableValue>
Method SET
Request key=value format at URL
Params
Name Type R/O Description Example
IntelliSchemeT object O IntelliSchemeTour Enable
our Setting
+Enable bool R IntelliSchemeTour Enable True
Setting
Example
http://172.27.2.72/cgi-bin/configManager.cgi?action=setConfig&IntelliSchemeTour.Enable=true
Response
Request Params key=value format at URL
Name Type R/O Description Example
http://172.27.2.72/cgi-bin/configManager.cgi?action=getConfig&name=IntelliSchemeTour
HU
Response
A_
tour plan. No
PI
channel sensitive.
+Enable bool No Whether the true
fo
32]
te
enumchar[32]{
lb
"Switch": Scene
ra
"Detect": Detection
priority, with the
complete set of data
as the condition for
scene switching
upon completion of
scene detection (For
illegal parking
detection cameras.
Multiple images may
be needed in one
path).
TP
}
_A
PI
IntelliScheme.getCa
r
ps.
In
plan continues to
ra
1D array, to adjust
HT
the order of
TP
packages. Up to 10
_A
packages are
supported. It is null
PI
by default and
added by a user.
fo
specified by a user.
In
value range:
s
30-36,000 s or 0.
It is 0 by default if
this field is
unavailable.
Indicates that the
switching has not
been made during
the period of time.
+++Speed uint32 No The speed of the 7
camera rotating to
the preset when a
package includes a
preset channel of a
table.IntelliSchemeTour.TourPlan[0][9].TimeSection=1 00:00:00-00:00:00
HU
table.IntelliSchemeTour.TourPlan[0][10].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[0][11].TimeSection=1 00:00:00-00:00:00
A_
table.IntelliSchemeTour.TourPlan[0][12].TimeSection=1 00:00:00-00:00:00
HT
table.IntelliSchemeTour.TourPlan[0][13].TimeSection=1 00:00:00-00:00:00
TP
table.IntelliSchemeTour.TourPlan[0][14].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[0][15].TimeSection=1 00:00:00-00:00:00
_A
table.IntelliSchemeTour.TourPlan[1][0].TimeSection=1 00:00:00-00:00:00
PI
table.IntelliSchemeTour.TourPlan[1][1].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[1][2].TimeSection=1 00:00:00-00:00:00
fo
table.IntelliSchemeTour.TourPlan[1][3].TimeSection=1 00:00:00-00:00:00
r
table.IntelliSchemeTour.TourPlan[1][4].TimeSection=1 00:00:00-00:00:00
In
table.IntelliSchemeTour.TourPlan[1][5].TimeSection=1 00:00:00-23:00:00
te
table.IntelliSchemeTour.TourPlan[1][6].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[1][7].TimeSection=1 00:00:00-00:00:00
lb
table.IntelliSchemeTour.TourPlan[1][8].TimeSection=1 00:00:00-00:00:00
ra
table.IntelliSchemeTour.TourPlan[1][9].TimeSection=1 00:00:00-00:00:00
s
table.IntelliSchemeTour.TourPlan[1][10].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[1][11].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[1][12].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[1][13].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[1][14].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[1][15].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][0].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][1].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][2].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][3].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][4].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][5].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][6].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[2][7].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[3][8].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[3][9].TimeSection=1 00:00:00-00:00:00
HU
table.IntelliSchemeTour.TourPlan[3][10].TimeSection=1 00:00:00-00:00:00
A_
table.IntelliSchemeTour.TourPlan[3][11].TimeSection=1 00:00:00-00:00:00
HT
table.IntelliSchemeTour.TourPlan[3][12].TimeSection=1 00:00:00-00:00:00
TP
table.IntelliSchemeTour.TourPlan[3][13].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[3][14].TimeSection=1 00:00:00-00:00:00
_A
table.IntelliSchemeTour.TourPlan[3][15].TimeSection=1 00:00:00-00:00:00
PI
table.IntelliSchemeTour.TourPlan[4][0].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][1].TimeSection=1 00:00:00-00:00:00
fo
table.IntelliSchemeTour.TourPlan[4][2].TimeSection=1 00:00:00-00:00:00
r
table.IntelliSchemeTour.TourPlan[4][3].TimeSection=1 00:00:00-00:00:00
In
table.IntelliSchemeTour.TourPlan[4][4].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][5].TimeSection=1 00:00:00-00:00:00
te
table.IntelliSchemeTour.TourPlan[4][6].TimeSection=1 00:00:00-00:00:00
lb
table.IntelliSchemeTour.TourPlan[4][7].TimeSection=1 00:00:00-00:00:00
ra
table.IntelliSchemeTour.TourPlan[4][8].TimeSection=1 00:00:00-00:00:00
s
table.IntelliSchemeTour.TourPlan[4][9].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][10].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][11].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][12].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][13].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][14].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[4][15].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[5][0].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[5][1].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[5][2].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[5][3].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[5][4].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[5][5].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[5][6].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[6][7].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[6][8].TimeSection=1 00:00:00-00:00:00
HU
table.IntelliSchemeTour.TourPlan[6][9].TimeSection=1 00:00:00-00:00:00
A_
table.IntelliSchemeTour.TourPlan[6][10].TimeSection=1 00:00:00-00:00:00
HT
table.IntelliSchemeTour.TourPlan[6][11].TimeSection=1 00:00:00-00:00:00
TP
table.IntelliSchemeTour.TourPlan[6][12].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPlan[6][13].TimeSection=1 00:00:00-00:00:00
_A
table.IntelliSchemeTour.TourPlan[6][14].TimeSection=1 00:00:00-00:00:00
PI
table.IntelliSchemeTour.TourPlan[6][15].TimeSection=1 00:00:00-00:00:00
table.IntelliSchemeTour.TourPriMode=Switch
fo
r
In
Information
lb
ra
}
HU
Response Example
TP
HTTP/1.1 200 OK
_A
Server: Device/1.0
Content-Type: application/octet-stream
PI
Content-Length: <length>
fo
Information
lb
ra
--<boundary>
A_
Content-Type: application/json
HT
Content-Length: 12
TP
{
_A
"type": 0
PI
}
--<boundary>
fo
Content-Type: application/octet-stream
r
Content-Length: 800
In
te
Array<Arra
++CompMode O Multi channel combined mode
y<object>>
A_
+MultiVideoAnal Array<obje
O List of channel capabilities
_A
yse ct>
PI
ct>
++Class string R Intelligent analyse class, ex : ObjectDetect
r
++AlgorithmVers
In
++AlgorithmVen
sting R Algorithm Vendor name
lb
dor
Array<obje
ra
caps.TotalCapacity[1].Type[0]=FaceDetection
caps.TotalCapacity[1].Number=3
HU
…
A_
HT
URL http://<server>/cgi-bin/intelli.cgi?action=attachResource
_A
Method GET
PI
heartbeat int O 5 seconds the device should send the heartbeat message to
te
Array<obj
RemainCapacity R Remain capacity of intelligent analyse
ect>
+Class string R Intelligent analyse class, ex : ObjectDetect
+Number int O Remain number of video channels that can be analysed
[ Example ]
Request GET http://192.168.1.108/cgi-bin/intelli.cgi?action=attachResource&heartbeat=5
HTTP/1.1 200 OK
Server: Device/1.0
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
Connection: closed
Response
--<boundary>
Content-Type: text/plain
Content-Length: <length>
--<boundary>
Content-Type: text/plain
Content-Length: 11
Heartbeat
--<boundary>
Content-Type: text/plain
Content-Length: <length>
RemainCapacity[0].Class=Normal
DA
RemainCapacity[0].Number=1
RemainCapacity[1].Class=ObjectDetect
HU
RemainCapacity[1].Number=1
A_
…
HT
TP
Base64
ra
enumint{
0: License plate allowlist
1: License plate blocklist
2: License plate
allowlist/blocklist
3: Voice talk contacts
4: Custom password
5: Card recordset
6: Face information for
access control
7: Fingerprint for access
control
8: Network camera
information of voice talk
Response Example
A_
HTTP/1.1 200 OK
HT
Server: Device/1.0
TP
Content-Type: application/octet-stream
Content-Length: <length>
_A
PI
Please refer to "4.2.1 Obtaining and Setting Configuration" to obtain and set the configuration. The
specific examples are as follows:
Get Config Request Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=VideoWidgetNumberStat
Get Config Response Example
table.VideoWidgetNumberStat[0].EncodeBlend=true
table.VideoWidgetNumberStat[0].ShowEnterNum=true
table.VideoWidgetNumberStat[0].ShowExitNum=true
table.VideoWidgetNumberStat[0].TextAlign=0
…
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&VideoWidgetNumberStat[0].EncodeBl
HU
end=true&VideoWidgetNumberStat[0].ShowEnterNum=true&VideoWidgetNumberStat[0].ShowExitNum
A_
=true&VideoWidgetNumberStat[0].TextAlign=0
HT
Method GET
Request Params ( key=value format in URL )
In
HH:mm:ss. 00:00:00"
EndTime char[32] R Heat Map End time, 24 h: yyyy-MM-dd "2015-08-21
s
HH:mm:ss. 23:59:59"
PtzPresetId int O Preset, starting from 1 1
Request Example
http://192.168.1.108/cgi-bin/heatMap.cgi?action=getPicByTime&channel=1&StartTime=2015-08-20%20
00:00:00&EndTime=2015-08-21%2023:59:59&PtzPresetId=1
Table 10-7
URL http://<server>/cgi-bin/videoStatServer.cgi?action=getHeatMap
Method GET
Description Get People Heat Map Information
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
channel int O Video channel index which starts from 1, default is 1.
PlanID int O The plan id, only valid for dome camera.
DA
HeatMapType string R
“HumanStatistics” : human statistics heat map
TP
[ Example ]
GET http://192.168.1.108/cgi-bin/videoStatServer.cgi?action=getHeatMap&channel=1&
fo
Request PlanID=2&StartTime=2010-05-12%2020:00:00&EndTime=2010-05-12%2022:00:00&He
r
atMapType=AverageStayTime
HTTP/1.1 200 OK
In
Server: Device/1.0
te
Content-Type: application/octet-stream
Response
lb
Content-Length: <length>
ra
Appendix A: The heat map binary data format when HeatMapType is AverageStayTime.
octet 0 1 2 3 4~7 8~11 12~15
vers cha pres reserv
value total data length totol lines lines in this packet
ion nnel et ed
16~31
octet
reserved
value
44+4*(N-1)+1~
octet …… …… ……
44+4*(N-1)+4
Note: If “lines in this packet” is 0, then all data has been sent, and connection will be closed.
Appendix B: The heat map binary data format when HeatMapType is HumanStatistics.
octet 0 1 2 3 4~7 8~11 12~15
vers cha pres reserv
value total data length total lines lines in this packet
ion nnel et ed
octet 16~31
value reserved
44+4*(N-1)+1~
octet …… …… ……
44+4*(N-1)+4
DA
value next line number data num in next line data 1 data N
HU
Note: If “lines in this packet” is 0, then all data has been sent, and connection will be closed.
A_
Appendix C: The heat map binary data format when HeatMapType is HumanTrack.
octet 0 1 2 3 4~7 8~11 12~15
HT
octet 16~31
PI
value reserved
fo
44+4*(N-1)+1~
octet …… …… ……
lb
44+4*(N-1)+4
track point num in
ra
Note: If “tracks in this packet” is 0, then all data has been sent, and connection will be closed.
Table 10-8
URL http://<server>/cgi-bin/videoStatServer.cgi?action=attachRealTraceProc
Method GET
Description Subscribe the people realtime trace information.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
channel int O Video channel index which starts from 1, default is 1.
--<boundary>
Content-Type: application/octet-stream
DA
Content-Length: <length>
HU
--<boundary>
HT
Response
Content-Type: text/plain
TP
Content-Length: 11
_A
Heartbeat
PI
-<boundary>
Content-Type: application/octet-stream
fo
Content-Length: <length>
r
In
--<boundary>
…
lb
octet 16~31
value reserved
Table 10-9
URL http://<server>/cgi-bin/videoStatServer.cgi?action=getHistoryTrace
Method GET
Description Get people history trace information.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
channel int O Video channel index which starts from 1, default is 1.
PlanID int O The plan id, only valid for dome camera.
StartTime string R The start time, ex: "2010-05-12 20:00:00"
EndTime string R The end time, ex: "2010-05-12 22:00:00"
[ Response Params ] ( multipart binary data )
[ Example ]
DA
GET http://192.168.1.108/cgi-bin/videoStatServer.cgi?action=getHistoryTrace&channel=
Request
1&PlanID=2&StartTime=2010-05-12%2020:00:00&EndTime=2010-05-12%2022:00:00
HU
HTTP/1.1 200 OK
A_
Server: Device/1.0
HT
Connection: closed
_A
--<boundary>
PI
Content-Type: application/octet-stream
Content-Length: <length>
fo
Response
r
--<boundary>
Content-Type: application/octet-stream
te
Content-Length: <length>
lb
ra
--<boundary>
…
Appendix A: The history trace binary data format.
octet 0 1 2 3 4~7 8~11 12~15
versi chann pres reserv total object object num in this
value total data length
on el et ed num packet
octet 16~31
value reserved
Table 10-10
URL http://<server>/cgi-bin/HeatMapManager.cgi?action=attachRaw
Method GET
Description Subscribe the heap map raw data.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
channel int O Video channel index which starts from 1, default is 1.
Send heartbeat interval, range is [1, 60],unit is second. If the
URL contains this parameter, and the value is 5, it means every
DA
heartbeat int O 5 seconds the device should send the heartbeat message to
HU
[ Example ]
TP
GET http://192.168.1.108/cgi-bin/HeatMapManager.cgi?action=attachRaw&channel=1&
Request
_A
heartbeat=5
PI
HTTP/1.1 200 OK
Server: Device/1.0
fo
--<boundary>
te
Content-Type: application/octet-stream
lb
Content-Length: <length>
ra
--<boundary>
Response
Content-Type: text/plain
Content-Length: 11
Heartbeat
-<boundary>
Content-Type: application/octet-stream
Content-Length: <length>
octet 48 49 …
Table 10-11
http://<server>/cgi-bin/videoStatServer.cgi?action=clearSectionStat[&AreaID=<AreaID>][
URL
&PtzPresetId=<PtzPresetId>]
Method GET
Description Clear statistics in time section
DA
The area index which starts from 1, valid for multiple area
AreaID int O
device, if omit means clear all area statistics.
TP
[ Response Params ] ( OK )
PI
[ Example ]
Request GET http://192.168.1.108/cgi-bin/videoStatServer.cgi?action=clearSectionStat&AreaID=2
fo
Response OK
r
10.3 CrowdDistriMap
In
te
Table 10-12
Syntax http://<server>/cgi-bin/crowdDistriMap.cgi?action=getCaps
Method GET
Description Get Channel CrowdistriMap Caps.
Example http://192.168.1.108/cgi-bin/crowdDistriMap.cgi?action=getCaps
CrowdCapsList[0].channel=<ChannelNo>
CrowdCapsList[0].Support=<Support>
Success
CrowdCapsList[1].channel=<ChannelNo>
Return
CrowdCapsList[1].Support=<Support>
…
Parameters in URL and Response:
Comment ChannelNo : video channel index
Support : true or false, support or not
Table 10-13
http://<server>/cgi-bin/crowdDistriMap.cgi?action=attach&channel=<ChannelNo>[&he
Syntax
artbeat=<Heartbeat>]
Method GET
Description Subscribe the crowd distribuite map information, return info at regular time.
Example http://<server>/cgi-bin/crowdDistriMap.cgi?action=attach&channel=1&heartbeat=5
HTTP/1.1 200 OK
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
Connection: close
--<boundary>
Content-Type: text/plain
Content-Length: <data length>
DA
HU
CrowdStatData[0].Channel=1
A_
CrowdStatData[0].GloabalPeopleNum =10
HT
CrowdStatData[0].RegionNum =1
CrowdStatData[0].RegionPeopleList[0].RegionID=0
TP
CrowdStatData[0].RegionPeopleList[0].Region[0][0]=10
_A
CrowdStatData[0].RegionPeopleList[0].Region[0][1]=10
PI
CrowdStatData[0].RegionPeopleList[0].Region[1][0]=10
CrowdStatData[0].RegionPeopleList[0].Region[1][1]=100
fo
…
r
CrowdStatData[0].RegionPeopleList[0].RegionPeopleNum=100
Success
CrowdStatData[0].CrowdEventNum =2
In
Return
CrowdStatData[0].CrowdList[0].Center=2
te
CrowdStatData[0].CrowdList[0].Radius=2
lb
CrowdStatData[0].RegionEventNum =2
ra
CrowdStatData[0].RegionList[0].Region[0][0]=10
CrowdStatData[0].RegionList[0].Region[0][1]=10
s
CrowdStatData[0].RegionList[0].Region[1][0]=10
CrowdStatData[0].RegionList[0].Region[1][0]=100
…
CrowdStatData[0].RegionList[0].RegionID=0
CrowdStatData[0].RegionList[0].PeopleNum=100
--<boundary>
Content-Type: text/plain
Content-Length: 11
Heartbeat
--<boundary>
Content-Type: text/plain
Content-Length: <data length>
Region is Polygon, has a list of points, every point has x and y , so Region[0][0] is first
point's x, Region[0][1] is first point's y, Region[1][0] is second point's x, Region[1][1] is
Comment
second point's y, and so on
Heartbeat: integer, range is [1,60],unit is second.If the URL contains this parameter,
and the value is 5, it means every 5 seconds the device should send the heartbeat
message to the client,the heartbeat meaage are "Heartbeat".
Table 10-14
HU
http://<server>/cgi-bin/crowdDistriMap.cgi?action=getSummary&channel=<ChannelNo
A_
Syntax
>
HT
Method GET
TP
Description Get crowd distribuite map information, return info only once.
_A
Example http://<server>/cgi-bin/crowdDistriMap.cgi?action=getSummary&channel=1
CrowdStatData[0].Channel=1
PI
CrowdStatData[0].GloabalPeopleNum =10
CrowdStatData[0].RegionNum =1
fo
CrowdStatData[0].RegionPeopleList[0].RegionID=0
r
CrowdStatData[0].RegionPeopleList[0].Region[0][0]=10
In
CrowdStatData[0].RegionPeopleList[0].Region[0][1]=10
te
CrowdStatData[0].RegionPeopleList[0].Region[1][0]=10
CrowdStatData[0].RegionPeopleList[0].Region[1][1]=100
lb
…
ra
CrowdStatData[0].RegionPeopleList[0].RegionPeopleNum=100
Success
s
CrowdStatData[0].CrowdEventNum =2
Return
CrowdStatData[0].CrowdList[0].Center=2
CrowdStatData[0].CrowdList[0].Radius=2
CrowdStatData[0].RegionEventNum =2
CrowdStatData[0].RegionList[0].Region[0][0]=10
CrowdStatData[0].RegionList[0].Region[0][1]=10
CrowdStatData[0].RegionList[0].Region[1][0]=10
CrowdStatData[0].RegionList[0].Region[1][0]=100
…
CrowdStatData[0].RegionList[0].RegionID=0
CrowdStatData[0].RegionList[0].PeopleNum=100
Similar to above "Subscribe to Realtime Crowd Stat", but reply stat only once, not at
Comment regular time.
ChannelNo: integer, video channel index which starts from 1.
[ Example ]
http://192.168.1.108/cgi-bin/WorkSuitCompareServer.cgi?action=createGroup&GroupName
HT
Request
=Test1&CutoutPolicy=0&GroupDetail=ForTest1
TP
Response groupID=12
_A
PI
Syntax http://<server>/cgi-bin/WorkSuitCompareServer.cgi?action=deleteGroup
Method GET
In
[ Example ]
A_
Request http://192.168.1.108/cgi-bin/WorkSuitCompareServer.cgi?action=findGroup
GroupList[0].GroupID=00001
HT
GroupList[0].GroupName=Test1
TP
GroupList[0].CutoutPolicy=0
_A
GroupList[0].GroupDetail=ForTest1
PI
GroupList[0].GroupSize=30
Response
GroupList[0].Channels[0]=1
fo
GroupList[0].Channels[1]=2
r
GroupList[0].Similarity[0]=80
GroupList[0].Similarity[1]=80
In
GroupList[0].GroupType=BlockListDB
te
Channels
s
Syntax http://<server>/cgi-bin/WorkSuitCompareServer.cgi?action=getGroup
Method GET
Get compliance library arming information of channels
Description Note: If the video channel has not been armed with any compliance library, the response will
be returned successfully while body is null.
[ Request Params ] (key=value format at URL)
Name Type R/O Param Description
Channel int R Video channel number. Starting from 1.
[ Response Params ] (key=value format )
Name Type R/O Param Description
GroupList Array<objec O List of armed group information.
t>
[ Example ]
http://192.168.1.108/cgi-bin/WorkSuitCompareServer.cgi?action=modifyGroup&GroupName
TP
Request
=Test1&GroupDetail=ForTest1
_A
Response OK
PI
fo
Syntax http://<server>/cgi-bin/WorkSuitCompareServer.cgi?action=setGroup
In
Method GET
te
Arm some compliance libraries to the specified video channels. If the compliance libraries
lb
Token for search task, which is used to get search results and stop
Token uint R
TP
the search.
TotalCount int R Total number of results returned.
_A
[ Example ]
PI
http://192.168.1.108/cgi-bin/WorkSuitCompareServer.cgi?action=startFind&Condition.Group
Request
ID[0]=10000&Condition.GroupID[1]=10003&WorkSuit.FeatureState=1
fo
Token=123456789
r
Response
TotalCount=24
In
Syntax http://<server>/cgi-bin/WorkSuitCompareServer.cgi?action=doFind
ra
Method GET
s
Method GET
HU
Token uint R Token for search task, which is used to get search results and stop
TP
the search.
_A
http://192.168.1.108/cgi-bin/WorkSuitCompareServer.cgi?action=stopFind&Token=12345678
Request
r
9
Response OK
In
Response OK
te
lb
Syntax http://<server>/cgi-bin/WorkSuitCompareServer.cgi?action=deleteByUID
s
Method GET
Description Delete workwear information
[ Request Params ] (key=value format at URL )
Name Type R/O Param Description
UID Array<strin R Workwear identifier list, up to 31 characters.
g>
[ Response Params ] (key=value format )
Name Type R/O Param Description
Error code list, indicating error messages when deleting
information.
ErrCode Array<uint> R 0: Success.
1: The workwear does not exist.
2: Database operation failed.
[ Example ]
http://192.168.1.108/cgi-bin/WorkSuitCompareServer.cgi?action=reAbstract&uid[0]=001&ui
HT
Request
d[1]=002
TP
_A
Syntax http://<server>/cgi-bin/WorkSuitCompareServer.cgi?action=stopReAbstract
fo
Method GET
r
[ Example ]
s
Request http://192.168.1.108/cgi-bin/WorkSuitCompareServer.cgi?action=stopReAbstract
Human.
HU
"smdTypeVehicle":
Vehicle.
A_
"smdTypeHumanAnd
HT
vehicle.
_A
"ascOrder":
r
Ascending order
In
(default value).
te
"descOrder":
Descending order.
lb
Request Example
ra
{
s
"Condition": {
"Channel": 0,
"Channels": [0,1,2,5],
"SmdType": ["smdTypeHuman", "smdTypeVehicle", "smdTypeHumanAndVehicle" ],
"StartTime": "2017-08-01 00:00:00",
"EndTime": "2017-08-02 00:00:00",
"Order": "ascOrder"
}
}
items
A_
Request Example
{
HT
"Token": 1,
TP
"Offset": 0,
_A
"Count": 100
PI
}
fo
time.
+Channel int32 O Channel number, starting from 1
ra
0
s
}
HU
A_
Response Example
TP
{}
_A
PI
fo
r
In
te
lb
ra
s
Table 11-1
URL http://<server>/cgi-bin/recordUpdater.cgi?action=insert&name=<RecordName>
Method GET
Description Insert traffic BlackList/Red record.
[ Request Params ] ( key=value format in URL )
DA
PlateNumber string R
unique.
TP
PlateColor string O Plate color, max string length is 31, ex: "Yellow", "Blue", … etc.
PlateType string O Plate type, max string length is 31.
PI
Table 11-2
[ Example ]
HU
GET
A_
http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=update&name=TrafficBlackList&re
Request cno=12345&PlateNumber=AC00001&MasterOfCar=ZhangSan&PlateColor=Yellow&Vehi
HT
cleColor=Blue&BeginTime=2011-01-01%2012:00:00&CancelTime=2011-01-10%2012:00
TP
:00
_A
Response OK
PI
Table 11-3
In
URL http://<server>/cgi-bin/recordUpdater.cgi?action=remove&name=<RecordName>
te
Method GET
lb
Descripti
Remove Traffic BlackList/Red record.
on
ra
Table 11-4
URL http://<server>/cgi-bin/recordFinder.cgi?action=find&name=<RecordName>
Method GET
Description Find Traffic BlackList/RedList record.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
The record table name, "TrafficBlackList"for BlackList and
name string R
"TrafficRedList"for RedList.
count int O Max result to return, default is 1024.
StartTime string O The start of the record's CreateTime.
EndTime string O The end of the record's CreateTime.
condition object O Search condition.
DA
string O
ague contain this substring, max string length is 47.
A_
+PlateNumberV array<string
O Car plate number substring array, max string length is 47.
HT
agueGroup >
TP
array<object
records R The records that returned.
te
>
+RecNo int R Record id.
lb
Table 11-5
URL http://<server>/cgi-bin/recordUpdater.cgi?action=removeEx&name=<RecordName>
Method GET
Descripti
RemoveEx Traffic BlackList/Red record.
on
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
DA
"TrafficRedList"for RedList.
RecNo int O The record id.
A_
PlateNumber string O The number of car plate, max string length is 31. It must be
HT
unique.
TP
[ Response Params ] ( OK )
_A
[ Example ]
PI
GET
Request http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=removeEx&name=TrafficBlackList
fo
&PlateNumber=AC00001
Response OK
r
In
te
Table 11-6
"Smoking", "Calling".
Sunshade status. It can be: "Unknow", "WithSunShade",
s
+++SunShade string O
"WithoutSunShade".
The detected sun shade bounding box, 4 interge, refer to
x's value of left-top point, y's value of left-top point, x's
+++ShadePos Array<int> O
value of right-bottom point, y's value of right-bottom point.
Coordinate remap to 0 — 8192.
SafeBelt status. It can be: "Unknow", "WithSafeBelt",
+++SafeBelt string O
"WithoutSafeBelt".
[ Example ]
--<boundary>
Content-Type: text/plain
Event Content-Length: <length>
Events[0].EventBaseInfo.Code=TrafficJunction
Events[0].TrafficCar.PlateColor=Yellow
Events[0].TrafficCar.VehicleColor=Blue
HU
Events[0].TrafficCar.BoundingBox[0]=1341
A_
Events[0].TrafficCar.BoundingBox[1]=2451
HT
Events[0].TrafficCar.BoundingBox[2]=4513
TP
Events[0].TrafficCar.BoundingBox[3]=4135
Events[0].TrafficCar.Country=China
_A
Events[0].CommInfo.Seat[0].Type=Main
PI
Events[0].CommInfo.Seat[0].Status[0]=Smoking
Events[0].CommInfo.Seat[0].SunShade=WithSunShade
fo
Events[0].CommInfo.Seat[0].ShadePos[0]=2021
r
Events[0].CommInfo.Seat[0].ShadePos[1]=3041
In
Events[0].CommInfo.Seat[0].ShadePos[2]=2151
Events[0].CommInfo.Seat[0].ShadePos[3]=3661
te
Events[0].CommInfo.Seat[0].SafeBelt=WithoutSafeBelt
lb
…
ra
--<boundary>
s
Content-Type: image/jpeg
Content-Length: <image size>
Table 11-7
+IndexInGroup int O The index of this event in the event group, start from 1.
+Lane int O Lane number, start from 0.
HU
+JamRealLengt
int O Jam real length, unit is metre.
h
_A
[ Example ]
PI
--<boundary>
Content-Type: text/plain
fo
Content-Length: <length>
r
In
Events[0].EventBaseInfo.Code=TrafficJam
te
Events[0].EventBaseInfo.Action=Pulse
Events[0].EventBaseInfo.Index=0
lb
Events[0].GroupID=123
ra
Events[0].CountInGroup=3
s
Events[0].IndexInGroup=1
Events[0].Lane=0
Event
Events[0].StartJaming=123456789
Events[0].AlarmInterval=180
Events[0].JamLenght=70
Events[0].JamRealLength=120
…
--<boundary>
Content-Type: image/jpeg
Content-Length: <image size>
Table 11-8
Event params is the same as TrafficJunction, except for event Code is TrafficOverSpeed, and add
A_
following params:
HT
Table 11-9
TP
+SpeedLimit array<int> O Speed limit, 2 integer, min speed and max speed.
+SpeedingPerce
fo
Table 11-10
ra
Events[0].EventBaseInfo.Code=TrafficPedestrain
Events[0].EventBaseInfo.Action=Pulse
Events[0].EventBaseInfo.Index=0
Events[0].GroupID=123
Events[0].CountInGroup=3
Events[0].IndexInGroup=1
Events[0].Lane=0
DA
Events[0].Vehicle.Category=Passerby
HU
Events[0].Vehicle.BoundingBox[0]=1341
Events[0].Vehicle.BoundingBox[1]=2451
A_
Events[0].Vehicle.BoundingBox[2]=4513
HT
Events[0].Vehicle.BoundingBox[3]=4135
TP
…
_A
--<boundary>
Content-Type: image/jpeg
PI
--<boundary>
In
Event params is the same as TrafficJunction, except for event Code is TrafficParking, and
s
Table 11-11
Table 11-12
[ Example ]
Event
PI
--<boundary>
Content-Type: text/plain
fo
Content-Length: xxxx
r
Code=TrafficFlowStat;action=Pulse;index=0;data={
In
"FlowStates": [ { "Lane": 0,
te
"Flow": 50,
lb
"Period": 5,
"DrivingDirection": [ "Approach", "Hangzhou", "Shanghai"]
ra
}, {…}, … ]
s
}
--<boundary>
Table 11-13
URL http://<server>/cgi-bin/recordFinder.cgi?action=find&name=TrafficFlow
Method GET
Description Find traffic flow history record.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
name string R The name of record table. It should be "TrafficFlow".
means congestion.
[ Example ]
TP
Request GET
_A
http://192.168.1.108/cgi-bin/recordFinder.cgi?action=find&name=TrafficFlow&condition.Cha
PI
nnel=0&condition.Lane=0&StartTime=123456700&EndTime=123456800&count=100
Respons totalCount=1000
fo
e found=100
r
records[0].RecNo=12345
records[0].CreateTime=123456789
In
records[0].StaticsticsTime=123456789
te
records[0].Period=300
lb
records[0].Channel=0
ra
records[0].Lane=0
records[0].Vehicles=250
s
records[0].AverageSpeed=25.4
…
records[1].RecNo=13579
records[1].CreateTime=123456799
records[1].StaticsticsTime=123456799
records[1].Period=300
records[1].Channel=0
records[1].Lane=0
records[1].Vehicles=220
records[1].AverageSpeed=21.8
…
multiple lanes
ClassType int No As video metadata and 0
A_
need to be distinguished
according to their types (0
_A
represents video
PI
metadata and 1
represents road
fo
monitoring).
r
statistical information
te
This needs to be
ra
supported by getCaps.
s
Enumchar[8]{
"Minute": By 5 minutes
(hourly report)
"Hour": By hour (daily
report)
"Day": By day (monthly
report)
"Month": By month
(yearly report)
}
The default value is Hour.
PresetID int[] No Preset [1]
Direction enumchar[16] No Search by statistical Both
direction enumchar[16]{
{
"StartTime" : "2010-05-25 00:00:00",
"EndTime" : "2010-05-25 23:59:59",
"Channel" : 0,
"Lane" : 0,
"Lanes" : [0],
“ClassType”: 1,
"Granularity" : "Hour"
"PresetID":[1],
DA
"Direction" : "Both"
HU
}
Response
A_
token=2342343
r
totalCount=100
In
te
Syntax http://<server>/cgi-bin/trafficFlowStat.cgi?action=doFind
Method GET
Parameter Format key=value format at URL
Parameter Type Required Description Example
token int Yes Search token. 46878
beginNumber int Yes Search begin number. 0
That is to start from the beginNumber
records, fetch the count records, and
return.
0<=beginNumber<=totalCount-1
count int Yes Number of traffic statistic entries per 24
search
Example
Request
HT
Syntax http://<server>/cgi-bin/trafficFlowStat.cgi?action=stopFind
Method GET
TP
http://192.168.1.108/cgi-bin/trafficFlowStat.cgi?action=stopFind&token=46878
r
Response
In
Example
ra
ok
s
Table 12-1
http://<server>/cgi-bin/trafficSnap.cgi?action=getParkingSpaceStatus&channel=<Chan
Syntax
nelNo>&<paramName>=<paramValue>[&<paramName>=<paramValue>…]
Method GET
Description Get specific parking space(s) status.
DA
http://192.168.1.108/cgi-bin/trafficSnap.cgi?action=getParkingSpaceStatus&condition.L
Example
HU
ane[0]=0&condition.Lane[1]=255
A list of parking space status
A_
status[0].Lane=0
HT
status[0].PictureId=5
TP
status[0].TrafficCar.CountInGroup=1
Success
_A
…
Return
status[1].Lane=1
PI
status[1].PictureId=4
status[1].TrafficCar.CountInGroup=1
fo
…
r
Parameters in URL:
In
Parameters in Response :
TrafficCar: the members refer to TrafficCar
Appendix
Table 12-2
Syntax http://<server>/cgi-bin/trafficSnap.cgi?action=openStrobe&channel=<ChannelNo>&inf
Table 12-3
DA
http://<server>/cgi-bin/trafficSnap.cgi?action=<Action>&channel=<ChannelNo>&nam
Syntax
HU
e=UnlicensedVehicle
Method GET
A_
http://192.168.1.108/cgi-bin/trafficSnap.cgi?action=open&channel=1&name=Unlicense
Example
TP
dVehicle
_A
Success
OK
Return
PI
Parameters in URL:
fo
12.1.4 Snap
te
lb
Table 12-4
ra
Syntax http://<server>/cgi-bin/trafficSnap.cgi?action=manSnap&channel=<ChannelNo>
s
Method GET
Take a snapshot manually. For intelligent traffic device, it should use this method to take
a snapshot.
But, the response is not image data.If you want to get the image data, please follow
these steps:
Description
1. Use the method mentioned chapter (4.4.3 Subscribe to snapshot) to subscribe the
image data, and the eventcode is "TrafficManualSnap".
2. Use the "manSnap"to take a snapshot manually.
3. In the connection which built in the Step 1, the device will send the image data.
Example http://192.168.1.108/cgi-bin/trafficSnap.cgi?action=manSnap&channel=1
Success
OK
Return
Comment Parameters in URL:
Table 12-5
Syntax http://<server>/cgi-bin/trafficParking.cgi?action=getAllParkingSpaceStatus
Method GET
Description Get all valid parking spaces status of one device.
Example http://192.168.1.108/cgi-bin/trafficParking.cgi?action=getAllParkingSpaceStatus
status[0].Lane=0
status[0].CustomParkNo = A2701
status[0].Status = Park
status[0].SpaceType = 0
DA
…
HU
status[1].Lane=1
A_
…
Success sceneType = ParkingStatistics
TP
areaStatus[0].Name = A01
PI
areaStatus[0].Count = 10
areaStatus[0].SpaceType = 0
fo
areaStatus[0].RemainCnt = 5
r
…
areaStatus[1].Name = A02
In
areaStauts[1].Count = 20
te
…
lb
Parameters in Response :
ra
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=ParkingSpaceLight
Syntax
State
Method GET
Use this method. It can get the light state config. For example, it can know that when the
Description space is free, then the light should be green, and the space is full, the light should be
red.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=ParkingSpac
Example
eLightState
table.ParkingSpaceLightState.SpaceFree.Blue=0
table.ParkingSpaceLightState.SpaceFree.Green=1
table.ParkingSpaceLightState.SpaceFree.Pink=0
table.ParkingSpaceLightState.SpaceFree.Purple=0
table.ParkingSpaceLightState.SpaceFree.Red=0
table.ParkingSpaceLightState.SpaceFree.White=0
DA
table.ParkingSpaceLightState.SpaceFree.Yellow=0
HU
table.ParkingSpaceLightState.SpaceFull.Blue=0
table.ParkingSpaceLightState.SpaceFull.Green=0
A_
table.ParkingSpaceLightState.SpaceFull.Pink=0
HT
table.ParkingSpaceLightState.SpaceFull.Purple=0
TP
table.ParkingSpaceLightState.SpaceFull.Red=1
_A
table.ParkingSpaceLightState.SpaceFull.White=0
table.ParkingSpaceLightState.SpaceFull.Yellow=0
PI
table.ParkingSpaceLightState.SpaceOrder.Blue=0
table.ParkingSpaceLightState.SpaceOrder.Green=0
fo
table.ParkingSpaceLightState.SpaceOrder.Pink=0
r
Success
table.ParkingSpaceLightState.SpaceOrder.Purple=0
Return
In
table.ParkingSpaceLightState.SpaceOrder.Red=0
te
table.ParkingSpaceLightState.SpaceOrder.White=0
table.ParkingSpaceLightState.SpaceOrder.Yellow=1
lb
table.ParkingSpaceLightState.SpaceOverLine.Blue=0
ra
table.ParkingSpaceLightState.SpaceOverLine.Green=0
s
table.ParkingSpaceLightState.SpaceOverLine.Pink=0
table.ParkingSpaceLightState.SpaceOverLine.Purple=0
table.ParkingSpaceLightState.SpaceOverLine.Red=0
table.ParkingSpaceLightState.SpaceOverLine.White=0
table.ParkingSpaceLightState.SpaceOverLine.Yellow=1
table.ParkingSpaceLightState.SpaceSpecial.Blue=0
table.ParkingSpaceLightState.SpaceSpecial.Green=0
table.ParkingSpaceLightState.SpaceSpecial.Pink=0
table.ParkingSpaceLightState.SpaceSpecial.Purple=0
table.ParkingSpaceLightState.SpaceSpecial.Red=0
table.ParkingSpaceLightState.SpaceSpecial.White=0
table.ParkingSpaceLightState.SpaceSpecial.Yellow=1
Parameters in Response :
Comment
There are five conditions about the space light state: SpaceFree, SpaceFull,
Table 12-7
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set the light state config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&ParkingSpaceLightSt
ate.SpaceFree.Blue=1&ParkingSpaceLightState.SpaceFree.Green=0&ParkingSpaceLi
Example ghtState.SpaceFree.Pink=0&ParkingSpaceLightState.SpaceFree.Purple=0&ParkingSp
DA
aceLightState.SpaceFree.Red=0&ParkingSpaceLightState.SpaceFree.White=0&Parki
HU
ngSpaceLightState.SpaceFree.Yellow=0
A_
Success
OK
HT
Return
Comment —
TP
_A
Table 12-8
fo
r
http://<server>/cgi-bin/trafficParking.cgi?action=setOrderState&state[0].Lane=<LaneN
Syntax
In
umber>&state[0].State=<State>
Method GET
te
http://192.168.1.108/cgi-bin/trafficParking.cgi?action=setOrderState&state[0].Lane=0&s
Example
ra
tate[0].State=Ordered
s
Success
OK
Return
Parameters in URL:
Comment LaneNumber: integer, for now, fixed to 0.
State: string, the value can be "Ordered"or "Free".
Table 12-9
http://<server>/cgi-bin/trafficParking.cgi?action=setLightState&state[Index].LightNo=<L
Syntax aneNumber>&state[Index].Color=<Color>&state[Index].State=<State>&state[Index].
Enable=<Enable>
Method GET
Table 12-10
HU
http://<server>/cgi-bin/ConfigManager.cgi?action=getConfig&name=ParkingSpaceAcces
URL
A_
sFilter
HT
Method GET
Get Parking Space Access Filter config. Using this method, we can get the accessible
TP
Description
address of the device.
_A
+ParkingSpaceA
object R ParkingSpaceAccessFilter config object
In
ccessFilter
++Enable bool R Enable filter or not
te
[ Example ]
GET
Request http://10.0.0.8/cgi-bin/ConfigManager.cgi?action=getConfig&name=ParkingSpaceAccessFil
ter
table.ParkingSpaceAccessFilter.Enable=false
Respons table.ParkingSpaceAccessFilter.Type=TrustList
e table.ParkingSpaceAccessFilter.TrustList[0]=172.24.2.14
table.ParkingSpaceAccessFilter.BannedList[0]=172.24.2.15
Set parking space access filter setting
Table 12-11
URL http://<server>/cgi-bin/ConfigManager.cgi?action=setConfig
Method GET
Respons
OK
HU
e
A_
Table 12-12
_A
PI
http://<server>/cgi-bin/trafficParking.cgi?action=setOverLineState&state[0].Lane=<Lan
Syntax
eNumber>&state[0].State=<State>
fo
Method GET
Description Set the spaceState overLine state or StopOverLine state
r
http://192.168.1.108/cgi-bin/trafficParking.cgi?action=setOverLineState&state[0].Lane=
In
Example
0&state[0].State=OverLine
te
Success
OK
lb
Return
ra
Parameters in URL:
Comment LaneNumber: integer, for now, fixed to 0.
s
--<boundary>
Content-Disposition: form-data; name="blackfile"; filename="TrafficBlackList.CSV"
Content-Type: application/vnd.ms-excel
DA
<File data….>
HU
--<boundary>--
A_
HT
Response Example
_A
OK
PI
Method GET
te
2: running
HU
Response Example
TP
state=0
_A
Download the exported traffic blocklist and allowlist file
fo
<File Data…>
http://<server>/cgi-bin/recordUpdater.cgi?action=exportAsyncFile&name=TrafficFlow&filename=Record
HU
File01&format=CSV&code=utf-8
A_
HT
Response Example
OK
_A
PI
w
In
Method GET
Request Params ( key=value format in URL )
te
Request Example
s
http://<server>/cgi-bin/recordUpdater.cgi?action=getFileExportState&name=TrafficFlow
<File Data…>
A_
HT
Notify the device to export the traffic snapshot event records to the file. This operation is
non-blocking. To obtain the export result, please run the “getFileExportState” command.
fo
Method GET
In
Response Example
_A
state=0
PI
ntInfo
In
Method GET
te
"TrafficSnapEventInfo”
s
Table 12-13
URL http://<server>/cgi-bin/vehiclesDistribution.cgi?action=attach
Method GET
Description Subscribe the vehicles Distribution data.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Channel int R Video channel index which starts from 1
DA
heartbeat int O 5 seconds the device should send the heartbeat message to
A_
array<obj
VehiclesData R Vehicles distribution data info.
ect>
fo
limit detection.
+VehiclesNum int R The vehicles number.
lb
The detection region, the first array is point list, max item is 32,
array<arr
s
+Region R the second array is point, must be two int, means x and y value,
ay<int>>
coordinate remap to 0 - 8192.
[ Example ]
GET http://192.168.1.108/cgi-bin/vehiclesDistribution.cgi?action=attach&Channel=1&he
Request
artbeat=5
HTTP/1.1 200 OK
Server: Device/1.0
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
Connection: closed
Response
--<boundary>
Content-Type: text/plain
Content-Length: <length>
--<boundary>
DA
Content-Type: text/plain
Content-Length: 11
HU
A_
Heartbeat
HT
-<boundary>
TP
Content-Type: text/plain
Content-Length: <length>
_A
PI
Channel=1
VehiclesData[0].PtzPresetId=2
fo
…
r
In
te
lb
ra
s
Table 13-1
http://<server>/cgi-bin/ThermographyManager.cgi?action=getCaps&channel=<Channe
Syntax
lNo>
Method GET
Description Get thermography capability.
DA
Example http://192.168.1.108/cgi-bin/ThermographyManager.cgi?action=getCaps&channel=1
HU
caps.PresetModes = Indoor
caps.Brightness.Max = 100
A_
caps.Brightness.Min = 0
HT
caps.Brightness.Step = 1
TP
caps.Sharpness.Max= 100
_A
caps.Sharpness.Min = 0
caps.Sharpness.Step = 5
PI
caps.EZoom.Max= 24
caps.EZoom.Min = 0
fo
caps.EZoom.Step = 1
r
caps.ThermographyGamma.Max= 8
In
caps.ThermographyGamma.Min = -8
te
caps.ThermographyGamma.Step = 1
Success
caps.SmartOptimizer.Max= 100
lb
Return
caps.SmartOptimizer.Min = 0
ra
caps.SmartOptimizer.Step = 5
s
caps.Agc.Max= 255
caps.Agc.Min = 0
caps.Agc.Step = 5
caps.AgcMaxGain.Max= 255
caps.AgcMaxGain.Min = 0
caps.AgcMaxGain.Step = 5
caps.AgcPlateau.Max= 100
caps.AgcPlateau.Min = 0
caps.AgcPlateau.Step = 5
caps.PresetColorization[i]= Ironbow2
caps.PresetROIModes[j]= Full Screen
Parameters in URL:
Comment ChannelNo: integer, video channel index which starts from 1.
Table 13-2
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=ThermographyOpti
Syntax
ons
Method GET
DA
Description Thermography options contain EZoom, Colorization, and SmartOptimizer and so on.
HU
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=Thermograph
Example
A_
yOptions
HT
head.EZoom=0
head.Colorization=White Hot
TP
head.SmartOptimizer=10
_A
head.OptimizedRegion.Type=Custom
PI
head.OptimizedRegion.Enable= true
head.OptimizedRegion.Regions[i][0u]=0
fo
head.OptimizedRegion.Regions[i][1u]=0
r
head.OptimizedRegion.Regions[i][2u]=0
Success
head.OptimizedRegion.Regions[i][3u]=0
In
Return
head.Agc=10
te
head.AgcMaxGain=10
lb
head.AgcPlateau=10
ra
head.Mode="HighTemperature"
head.Auto.LowToHigh=13
s
head.Auto.LHROI=15
head.Auto.HighToLow=12
head.Auto.HLROI=95
Parameters in Response:
head = table.ThermographyOptions [ChannelNo][0]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment
video channel index -1, and so 0 means channel 1).
Regions: the region is a rectangle
i: the array index starts from 0.
Set thermography options config
Table 13-3
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
In table below,
Comment
head = ThermographyOptions[ChannelNo][0]
ChannelNo: integer, array index starts from 0, which means video channel(equals to
video channel index -1, and so 0 means channel 1).
i: the array index starts from 0.
DA
Appendix
HU
head.EZoom integer Range and step are got from interface in "13.1.1
HT
"IceFire"…}.
head.Colorization String
Range and step are got from interface in "13.1.1
PI
Range is [0—100].
head.SmartOptimizer integer Range and step are got from interface in "13.1.1
r
25%", "Custom"}.
head.OptimizedRegion.Enabl true: enable
ra
bool
e false: not enable
s
Table 13-4
http://<server>/cgi-bin/ThermographyManager.cgi?action=getExternSystemInfo&chann
DA
Syntax
el=<ChannelNo>
HU
Method GET
A_
Example
channel=1
TP
sysInfo.SerialNumber = 11111111123
_A
Parameters in URL:
Comment
ChannelNo: integer, video channel index which starts from 1.
r
In
Table 13-5
ra
http://<server>/cgi-bin/ThermographyManager.cgi?action=getPresetParam&channel=<
s
Syntax
ChannelNo>&mode=<modeType>
Method GET
Description Get preset mode info.
http://192.168.1.108/cgi-bin/ThermographyManager.cgi?action=getPresetParam&chan
Example
nel=1&mode=Default
presetInfo.Brightness = 50
presetInfo.Sharpness= 50
presetInfo.EZoom= 12
Success presetInfo.ThermographyGamma= 0
Return presetInfo.Colorization= "White Hot"
presetInfo.SmartOptimizer= 10
presetInfo.OptimizedRegion.Type= Full Screen
presetInfo.OptimizedRegion.Enable= Full Screen
Table 13-6
A_
http://<server>/cgi-bin/ThermographyManager.cgi?action=getOptimizedRegion&chann
HT
Syntax
el=<ChannelNo>
TP
Method GET
_A
Example
hannel=1
optimizedRegion.Type= Full Screen
fo
optimizedRegion.Enable= true
r
Success optimizedRegion.Regions[i][0u]=0
In
Return optimizedRegion.Regions[i][1u]=0
te
optimizedRegion.Regions[i][2u]=0
optimizedRegion.Regions[i][3u]=0
lb
Parameters in URL:
ra
Comment
Parameters in Response:
Regions : the region is a rectangle
i: the region index.
Table 13-7
http://<server>/cgi-bin/ThermographyManager.cgi?action=enableShutter&channel=<C
Syntax
hannelNo>&enable=<Enable>
Method GET
Description Shutter control, whether enable shutter.
Example http://192.168.1.108/cgi-bin/ThermographyManager.cgi?action=enableShutter&channel
Table 13-8
http://<server>/cgi-bin/ThermographyManager.cgi?action=fixFocus&linkVideoChannel[
Syntax
0]=<ChannelNo>&linkVideoChannel[1]=<ChannelNo>[&speed=<SpeedValue>]
Method GET
Description The visual channel change focus to the same as the thermography channel.
http://192.168.1.108/cgi-bin/ThermographyManager.cgi?action=fixFocus&linkVideoCha
Example
DA
nnel[0]=1&linkVideoChannel[1]=2
HU
Success
OK
Return
A_
Parameters in URL:
HT
Table 13-9
r
http://<server>/cgi-bin/ThermographyManager.cgi?action=doFFC&channel=<Channel
In
Syntax
No>
te
Method GET
lb
Success
s
OK
Return
Parameters in URL:
Comment
ChannelNo: integer, video channel index which starts from 1.
13.2 Radiometry
Table 13-10
http://<server>/cgi-bin/RadiometryManager.cgi?action=getCaps[&channel=<ChannelN
Syntax
o>]
Method GET
Success caps.MeterInfo.ObjectDistanceMeter.Step=1
HU
Return caps.MeterInfo.ReflectedTemperature.Max=100
caps.MeterInfo.ReflectedTemperature.Min=0
A_
caps.MeterInfo.ReflectedTemperature.Default=0
HT
caps.MeterInfo.ReflectedTemperature.Step=1
TP
caps.MeterInfo.RelativeHumidity.Max=100
caps.MeterInfo.RelativeHumidity.Min=0
_A
caps.MeterInfo.RelativeHumidity.Default=0
PI
caps.MeterInfo.RelativeHumidity.Step=1
caps.MeterInfo.AtmosphericTemperature.Max=100
fo
caps.MeterInfo.AtmosphericTemperature.Min=0
r
caps.MeterInfo.AtmosphericTemperature.Default=0
In
caps.MeterInfo.AtmosphericTemperature.Step=1
te
caps.Statistics.MinPeriod=60
caps.Isotherm.MaxTemp=327.0
lb
caps.Isotherm.MinTemp=-20.0
ra
Parameters in URL:
Comment
s
Table 13-11
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=HeatImagingTherm
Syntax
ometry
Method GET
Description Get HeatImagingThermometry Config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=HeatImaging
Example
Thermometry
Table 13-12
DA
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
HU
Syntax
alue>[&<paramName>=<paramValue>…]
A_
Method GET
HT
Example
metry.RelativeHumidity=50&HeatImagingThermometry.ObjectDistance=20
_A
Success
OK
PI
Return
Parameters in URL:
fo
Comment
The paramName and paramValue are in the table below.
r
Appendix
In
interface in getCaps.
s
The Atmospheric
Temperature range and
HeatImagingThermometry.AtmosphericTemperature float
step are got from interface
in getCaps.
The Object Emissivity
HeatImagingThermometry.ObjectEmissivity float range and step are got from
interface in getCaps.
The Object Distance range
and step are got from
HeatImagingThermometry.ObjectDistance integer
interface in getCaps.
Unit is meter.
The Reflected Temperature
HeatImagingThermometry.ReflectedTemperature float range and step are got from
interface in getCaps
HT
Table 13-13
TP
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=ThermometryRule
_A
Method GET
PI
Example
Rule
r
head.Enable = true
In
head.PresetId =0
head.RuleId=0
te
head.Name=SpotName
lb
head.Type=Spot
ra
head.MeterRegion.Coordinates[PointNo][0]= 0
s
head.MeterRegion.Coordinates[PointNo][1]= 0
…
head.T=3
Success head.Alarm.Id=0
Return head.Alarm.Enable=true
head.Alarm.Result =Max
head.Alarm.AlarmCondition=Below
head.Alarm.Threshold=20.0
head.Alarm.PreThreshold=10.0
head.Alarm.PreDuration=30
head.Alarm.Hysteresis=0.1
head.Alarm.Duration=30
head.LocalParameters.Enable=true
head.LocalParameters.ObjectEmissivity=0.95
Table 13-14
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
DA
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&ThermometryRule[0]
Example
A_
[0].Name=name1
HT
Success
OK
Return
TP
Parameters in URL:
_A
In table below,
fo
head = ThermometryRule[ChannelNo][RuleNo]
r
Comment ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
In
Alarm= AlarmSetting[AlarmNo]
ra
Appendix
ISO}
HU
Unit is second
PI
Unit is second
r
head.LocalParameters.ObjectEmissivity float
Accuracy is 0.01
te
Object distance
lb
Table 13-15
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=HeatImagingTemp
Syntax
er
Method GET
Description Get Heat Imaging Temper config
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=HeatImagingT
Table 13-16
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Description Set Heat Imaging Temper config
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&HeatImagingTemper[
Example
0].Enable=false&HeatImagingTemper[0].EventHandler.BeepEnable=false
DA
Success
HU
OK
Return
A_
Parameters in URL:
HT
head= HeatImagingTemper[ChannelNo]
PI
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
fo
Appendix
r
In
head.EventHandler —
SetEventHandler.
ra
s
Table 13-17
http://<server>/cgi-bin/RadiometryManager.cgi?action=getRandomPointTemper&chann
Syntax
el=<ChannelNo>&coordinate[0]=x &coordinate[1]=y
Method GET
Description Get temperature values of random point.
http://192.168.1.108/cgi-bin/RadiometryManager.cgi?action=getRandomPointTemper&
Example
channel=1&coordinate[0]=1024&coordinate[1]=1024
Success TempInfo.Type=Spot
Return TempInfo.TemperAver=27.5
Parameters in URL:
Comment
ChannelNo: integer, video channel index which starts from 1.
Table 13-18
http://<server>/cgi-bin/RadiometryManager.cgi?action=getTemper&<paramName>=<p
Syntax
aramValue>[&<paramName>=<paramValue>…]
Method GET
Description Get temperature values from rules which have been set.
http://192.168.1.108/cgi-bin/RadiometryManager.cgi?action=getTemper&condition.Pres
Example etId=0&condition.RuleId=0&condition.Type=Spot&condition.Name=Spot1&condition.ch
annel=1
Success TempInfo.Type=Spot
Return TempInfo.TemperAver=27.5
DA
Parameters in URL:
Comment
HU
Appendix
HT
integer
GetCurrentProtocolCaps.
fo
string
GetThermometryRuleConfig.
lb
Table 13-19
http://<server>/cgi-bin/RadiometryManager.cgi?action=startFind&condition.StartTime=
Syntax <StartTimeValue>&condition.EndTime=<EndTimeValue>&condition.Type=<TypeVal
ue>&condition.channel=<ChannelValue>&condition.Period=<PeriodValue>
Method GET
Description Start to query the history data of temperature values.
http://192.168.1.108/cgi-bin/RadiometryManager.cgi?action=startFind&condition.StartTi
Example me=2010-04-01%200:00:00&condition.EndTime=2010-04-08%200:00:00&condition.Ty
pe=Spot&condition.channel=1&condition.Period=5
Success token=46878
Return totalCount=333
Appendix
Table 13-20
http://<server>/cgi-bin/RadiometryManager.cgi?action=doFind&token=<tokenvalue>&
Syntax
beginNumber=<BeginNumber>&count=<findNum>
Method GET
DA
Example
ginNumber=16&count=16
A_
found=12
HT
info[i].Time=2010-04-08 16:12:46
TP
info[i].PresetId=0
info[i].RuleId=0
_A
info[i].Type=Spot
PI
info[i].Name=xxxx
Success
info[i].Coordinate[0]=1024
fo
Return
info[i].Coordinate[1]=2048
r
info[i].Channel=0
In
info[i].TemperatureUnit=Centigrade
info[i].QueryTemperInfo.TemperAve=50.1
te
info[i].QueryTemperInfo.TemperMax=50.2
lb
info[i].QueryTemperInfo.TemperMin=50.0
ra
Parameters in URL:
s
token: query token, get from interface of the first step above.
beginNumber: the begin index in this query.
Comment
count: the number you want to query.
Params in Resp:
i: the array index.
3. Stop finding temperature information
Table 13-21
Syntax http://<server>/cgi-bin/RadiometryManager.cgi?action=stopFind&token=<tokenvalue>
Method GET
Description Stop to find the history data of temperature values.
Example http://192.168.1.108/cgi-bin/RadiometryManager.cgi?action=stopFind&token=46878
Success OK
string "Heartbeat".
Request Example
A_
http://192.168.1.108/cgi-bin/RadiometryManager.cgi?action=attachTemper&channel=2&heartbeat=5
HT
TP
"2010-04-08
+Time char[32] R Record time, format: yyyy-MM-dd HH:mm:ss
fo
16:12:46"
+PresetId int O Preset number, starting from 1 1
r
"Spot": Spot
+Type char[16] R
lb
"Area": Area
"Line": Line
ra
--<boundary>
Content-Type: text/plain
Content-Length: <data length>
info[0].Time=2010-04-08 16:12:46
info[0].PresetId=1
info[0].RuleId=1
info[0].Type=Spot
info[0].Name=xxxx
info[0].Coordinate[0]=1024
info[0].Coordinate[1]=2048
info[0].Channel=0
info[0].TemperatureUnit=Centigrade
info[0].QueryTemperInfo.TemperAve=50.1
DA
info[0].QueryTemperInfo.TemperMax=50.2
info[0].QueryTemperInfo.TemperMin=50.0
HU
……
A_
--<boundary>
HT
Content-Type: text/plain
TP
Content-Length: 11
_A
Heartbeat
PI
--<boundary>
……
fo
r
Method GET
ra
conversion
Response Example
A_
HTTP/1.1 200 OK
HT
Server: Device/1.0
TP
--<boundary>
Content-Type: text/plain
fo
dataInfo.Width=1920
te
dataInfo.Height=1080
dataInfo.Channel=0
lb
dataInfo.Time=2010-05-25 00:00:00
ra
dataInfo.Length=2073600
s
dataInfo.sensorType="Tau"
dataInfo.Unzip.ParamR=1
dataInfo.Unzip.ParamB=1
dataInfo.Unzip.ParamF=1
dataInfo.Unzip.ParamO=1
--<boundary>
Content-Type: application/octet-stream
Content-Length: <data length>
<Binary data>
--<boundary>
Content-Type: text/plain
Content-Length: 11
Table 13-22
http://<server>/cgi-bin/RadiometryManager.cgi?action=toFetch&channel=<ChannelNo
Syntax
>
Method GET
Description Start to fetch radiometry data.
Example http://192.168.1.108/cgi-bin/RadiometryManager.cgi?action=toFetch&channel=2
Success
status=Ready
Return
ChannelNo: integer, video channel index which starts from 1.
DA
Comment status: Range is {Ready, Busy}. "Ready"means service available and "Busy"means
HU
service busy.
A_
Table 13-23
_A
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=FireWarning
PI
Method GET
fo
head.Enable=true
In
head.PresetId=0
te
head.Row = 31
lb
head.Col = 40
head.Mode="Auto"
ra
head.SmdFilterEnable=false
s
head.MovingTargetFilterEnable=false
head.SunReflectEnable=false
head.TimeDurationEnable=false
Success head.FireDuration= 15
Return head.DetectWindow[windowsNum].Regions[0]=123468789
head.DetectWindow[windowsNum].Regions[1]=123468789
head.DetectWindow[windowsNum].Regions[2]=123468789
head.DetectWindow[windowsNum].Regions[3]=123468789
head.DetectWindow[windowsNum].Postion[0]=0
head.DetectWindow[windowsNum].Postion[1]=0
head.DetectWindow[windowsNum].Postion[2]=0
head.DetectWindow[windowsNum].Postion[3]=0
head.DetectWindow[windowsNum].Sensitivity = 95
head. DetectWindow[windowsNum].Id=1
Table 13-24
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
DA
alue>[&<paramName>=<paramValue>…]
HU
Method GET
Description Set FireWarning config.
A_
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&FireWarning[0][0].Ea
HT
Example
nble=false
TP
Success
OK
_A
Return
Comment head = FireWarning[ChNum][RuleNum]
PI
Appendix:
fo
Table 13-25
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=FireWarningMode
Method GET
Description Get FireWarningMode config.
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=FireWarningMo
Example
de
Success
head.Mode="PtzPreset"
Return
Parameters in Response:
head= table.FireWarningMode[ChannelNo]
Comment
DA
ChannelNo: integer, array index starts from 0, which means video channel (equals to
HU
Table 13-26
_A
PI
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
fo
Method GET
Description Set FireWarningMode config.
r
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&FireWarningMode[0]
In
Example
. Mode ="SpaceExClude"
te
Success
OK
lb
Return
Comment
ra
head = FireWarningMode[ChannelNo]
s
Appendix:
Table 13-27
URL http://<server>/cgi-bin/TemperCorrection.cgi?action=getCurrentHotColdSpot
Method GET
Description Get the max and min temperature values.
[ Request Params ] ( key=value format in URL )
info.HotSpotValue=35.5
HU
Response info.ColdPoint[0]=5452
A_
info.ColdPoint[1]=6192
info.ColdSpotValue=24.3
HT
info.TemperatureUnit=0
TP
_A
PI
Table 13-28
In
te
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=PreAlarmEvent
Method GET
lb
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=PreAlarmEve
Example
s
nt
Success head.Enable=false
Return head.EventHandler. paramName = paramValue
Parameters in Response:
head= table.PreAlarmEvent[ChannelNo]
Comment
ChannelNo: integer, array index starts from 0, which means video channel (equals to
video channel index -1, and so 0 means channel 1).
Set heat image temper pre event config
Table 13-29
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
alue>[&<paramName>=<paramValue>…]
Method GET
Appendix
SetEventHandler.
A_
HT
Method GET
r
from 1
lb
Request Example
ra
http://192.168.1.108/cgi-bin/RadiometryManager.cgi?action=getHeatMapsDirectly&channel=2
s
--<boundary>
Content-Type: text/plain
Content-Length: <data length>
DA
HU
dataInfo.Height=0
dataInfo.Width=0
A_
dataInfo.Channel=0
HT
dataInfo.Time=2010-05-25 00:00:00
TP
dataInfo.Length=0
_A
dataInfo.sensorType="Tau"
dataInfo.Unzip.ParamR=1
PI
dataInfo.Unzip.ParamB=1
dataInfo.Unzip.ParamF=1
fo
dataInfo.Unzip.ParamO=1
r
In
--<boundary>
te
Content-Type: application/octet-stream
Content-Length: <data length>
lb
ra
<Binary data>
s
--<boundary>
……
http://192.168.1.108/cgi-bin/TemperCustom.cgi?action=setEnvTemp&
Request
EnvironmentTemp=2800
HU
Response OK
A_
HT
TP
_A
PI
fo
r
In
te
lb
ra
s
Table 14-1
URL http://<server>/cgi-bin/FaceInfoManager.cgi?action=add
Method POST
Description Add an access user face.
[ Request Params ] ( JSON format in body )
DA
The user's room num list, max array size is 32, max string
+RoomNo array<string> O
TP
The user's face feature, encode with base64, max array size
is 20, and max string size is 2k.
PI
+FaceData array<string> O
Note: There must be at least one between FaceData and
fo
PhotoData.
The user's face photo, encode with base64, max array size is
r
+PhotoData array<string> O
Note: There must be at least one between FaceData and
te
PhotoData.
lb
[ Response Params ] ( OK )
[ Example ]
ra
POST http://<server>/cgi-bin/FaceInfoManager.cgi?action=add
s
Content-Type: application/json
Content-Length: <length>
{ "UserID": "102",
"Info": {
Request
"UserName": "ZhangSan",
"RoomNo": [ "301", "303", … ],
"FaceData": [ "xxxx", "xxxx", … ],
"PhotoData": [ "yyyy", "yyyy", … ]
}
}
Response OK
Table 14-2
URL http://<server>/cgi-bin/FaceInfoManager.cgi?action=update
Method POST
Description Update an access user face.
[ Request Params ] ( JSON format in body )
Name Type R/O Param Description
UserID string R The user's id.
Info object R The user's info.
+UserName string O The user's name.
The user's room num list, max array size is 32, max string
+RoomNo array<string> O
size is 12. ( This param is not supported by access control. )
The user's face feature, encode with base64, max array size
DA
PhotoData.
A_
The user's face photo, encode with base64, max array size is
HT
PhotoData.
_A
[ Response Params ] ( OK )
PI
[ Example ]
POST http://<server>/cgi-bin/FaceInfoManager.cgi?action=update
fo
Content-Type: application/json
r
Content-Length: <length>
In
{ "UserID": "102",
te
"Info": {
lb
Request
"UserName": "ZhangSan",
ra
Table 14-3
URL http://<server>/cgi-bin/FaceInfoManager.cgi?action=remove
Method GET
Description Delete an access user face.
[ Request Params ] ( key=value format in URL )
Table 14-4
URL http://<server>/cgi-bin/FaceInfoManager.cgi?action=startFind
Method GET
Descripti
Start to find access user face.
DA
on
[ Request Params ] ( key=value format in URL )
HU
The token of this search, use this token to get result and stop
PI
Token int O
search.
Total int O Result num, return 0 if not found.
fo
[ Example ]
r
{ "Token": 1234,
te
Response "Total": 20
}
lb
Table 14-5
URL http://<server>/cgi-bin/FaceInfoManager.cgi?action=doFind
Method GET
Descripti
Get the find result.
on
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
The token of this search, use this token to get result and stop
Token int R
search.
Offset int R Offset in the result record set, range is [0, Total – 1].
Count int R Count of result to get.
[ Response Params ] ( JSON format )
Name Type R/O Param Description
Table 14-6
DA
URL http://<server>/cgi-bin/FaceInfoManager.cgi?action=stopFind
HU
Method GET
A_
Token int R
search.
PI
[ Response Params ] ( OK )
[ Example ]
fo
Response OK
In
Table 14-7
URL http://<server>/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCard
Method GET
Description Insert access user card info.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Access user card and fingerprint record name, should be
name string R
"AccessControlCard".
CardName string R Access user card name, max string length is 32.
CardNo string R Access user card number.
UserID string R The user's id.
The index of the time sections of each door that this card can
TimeSections array<int> O
HU
VTOPosition string O
control device )
HT
Is the card still valid. ( This param is not supported by video talk
IsValid bool O
device )
PI
R/
Name Type Param Description
O
r
[ Example ]
te
GET
lb
http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCard&
Request CardName=ZhangSan&CardNo=12345&UserID=102&CardStatus=0&CardType=0&Pass
ra
word=123456&Doors[0]=1&Doors[1]=3&Doors[2]=5&VTOPosition=01018001&ValidDateS
s
tart=20151022%20093811&ValidDateEnd=20151222%20093811
Response RecNo=12345
Add access user card with fingerprint
仅下发卡片请使用
http://<server>/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCard
Table 14-8
URL http://<server>/cgi-bin/recordUpdater.cgi?action=insertEx&name=AccessControlCard
Method POST
Description Insert access user card and fingerprint. ( This api is not supported by video talk device )
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
The index of the time sections of each door that this card can
HT
TimeSections array<int> O
open.
TP
control device )
ValidDateStart string O The start of valid date, format is "yyyyMMdd hhmmss".
PI
Table 14-9
URL http://<server>/cgi-bin/recordUpdater.cgi?action=update&name=AccessControlCard
Method GET
Update access user card info.
Description
Note: You should provide at lease one optional param to update.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Access user card and fingerprint record name, should be
name string R
"AccessControlCard".
recno int R The record id.
CardName string O Access user card name, max string length is 31.
DA
UserID string O
Primary key, modification is not allowed in principle
HT
— —
They are all optional.>
_A
[ Response Params ] ( OK )
PI
[ Example ]
GET
fo
http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=update&name=AccessControlCar
Request d&recno=12345&CardName=ZhangSan&CardNo=12345&UserID=102&CardStatus=0&
r
CardType=0&Password=123456&Doors[0]=1&Doors[1]=3&Doors[2]=5&ValidDateStart=
In
20151022%20093811&ValidDateEnd=20151222%20093811
te
Response OK
lb
Table 14-10
s
URL http://<server>/cgi-bin/recordUpdater.cgi?action=updateEx&name=AccessControlCard
Method POST
Update access user card info and fingerprint. ( This api is not supported by video talk
Description device )
Note: You should provide at lease one optional param to update.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Access user card and fingerprint record name, should be
name string R
"AccessControlCard".
recno int R The record id.
CardName string O Access user card name, max string length is 32.
Access user card number.
CardNo string O
Primary key, modification is not allowed in principle
Content-Type: application/octet-stream
HU
Content-Length: <length>
A_
Response OK
TP
_A
Table 14-11
r
In
URL http://<server>/cgi-bin/recordUpdater.cgi?action=remove&name=AccessControlCard
Method GET
te
Descriptio Remove the access user card and fingerprint record. ( The video talk device can not delete
lb
n fingerprint data.)
ra
Table 14-12
Table 14-13
A_
HT
URL http://<server>/cgi-bin/recordFinder.cgi?action=find&name=AccessControlCard
TP
Method GET
Description Find Access user card record by condition.
_A
The index of the time sections of each door that this card can
+TimeSections array<int> O
HU
+VTOPosition string O
access control device )
HT
+ValidDateStar
string O The start of valid date, format is "yyyyMMdd hhmmss".
TP
t
_A
+IsValid bool O
talk device )
fo
+RepeatEnter
In
1: normal user
+UserType integer O
2: user in blacklist
ra
}
s
Response …
records[1].RecNo=13579
HU
records[1].CreateTime=123456799
A_
records[1].StaticsticsTime=123456799
HT
records[1].CardName=ZhangSan
TP
records[1].CardNo=302
records[1].UserID=103
_A
records[1].CardStatus=0
PI
records[1].CardType=0
records[1].Doors[0]=2
fo
records[1].Doors[1]=4
r
records[1].Doors[2]=6
In
records[1].VTOPosition=01018002
records[1].ValidStart=20151022 093811
te
records[1].ValidEnd=20151222 093811
lb
records[1].IsValid=true
ra
…
s
Table 14-14
URL http://<server>/cgi-bin/recordUpdater.cgi?action=get&name=AccessControlCard
Method GET
Description Find Access user card record by recno.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
name string R Record Name, should be "AccessControlCard".
recno int R The record id.
[ Response Params ] (key=value format)
Name Type R/O Param Description
record object R The record that returned.
Response record.Doors[0]=1
HU
record.Doors[1]=3
record.Doors[2]=5
A_
record.VTOPosition=01018001
HT
record.ValidStart=20151022 093811
TP
record.ValidEnd=20151222 093811
_A
record.IsValid=true
…
PI
Table 14-15
r
In
URL http://<server>/cgi-bin/recordUpdater.cgi?action=getEx&name=AccessControlCard
Method GET
te
Find Access user card and fingerprint record by recno. ( This api is not supported by
lb
Description
video talk device )
ra
--<boundary>
Content-Type: text/plain
Content-Length: <length>
record.RecNo=4
record.CreateTime=123456789
DA
record.CardName=ZhangSan
HU
record.CardNo=300
record.UserID=103
A_
record.CardStatus=0
HT
record.CardType=0
Response
TP
record.Doors[0]=1
_A
record.Doors[1]=3
record.Doors[2]=5
PI
record.VTOPosition=01018001
record.ValidStart=20151022 093811
fo
record.ValidEnd=20151222 093811
r
record.IsValid=true
In
…
te
record.FingerprintPacket.Length=500
record.FingerprintPacket.Count=3
lb
--<boundary>
ra
Content-Type: application/octet-stream
s
Content-Length: <length>
Table 14-16
http://<server>/cgi-bin/recordFinder.cgi?action=getQuerySize&name=AccessControlCar
URL
d
Table 14-17
HT
TP
17: by ID card
18: by face and ID card
HU
19: by Bluetooth
A_
integer 1: Fahrenheit
nit
HU
2: Kelvin
}
A_
++IsOverTemper O
HT
[ Example ]
_A
--<boundary>
Content-Type: text/plain
PI
Content-Length: <length>
fo
Events[0].EventBaseInfo.Code=TrafficJam
r
Events[0].EventBaseInfo.Action=Pulse
In
Events[0].EventBaseInfo.Index=0
te
Events[0].RecNo=123
lb
Events[0].Name=Door1
Events[0].Type=Entry
ra
Event Events[0].Status=1
s
Events[0].Method=1
Events[0].CardNo=09DDAABB
Events[0].UserID=101
…
--<boundary>
Content-Type: image/jpeg
Content-Length: <image size>
Table 14-18
range[1, 100]
A_
range[1, 100]
TP
0 unknow
PI
1 male
2 female
fo
9 not stated
r
}
In
+EventGroupID integer O event group id, used to associate different events are with
A_
0: compare result
PI
1: Face acquisition
2: visitor registration
fo
0: unknow
1: without mask
ra
2: with mask
s
}
default 0.
[ Example ]
--<boundary>
Content-Type: text/plain
Content-Length: <length>
Events[0].EventBaseInfo.Code= CitizenPictureCompare
Event
Events[0].EventBaseInfo.Action=Pulse
Events[0].EventBaseInfo.Index=0
Events[0].UTC=1999999999
Events[0].CompareResult=true
Events[0].Similarity=80
+UTC uint32 - Standard UTC time (without DST deviation of time zone).
_A
Enumchar[32]{
"Open"
r
"Close"
In
"CloseAlways"
te
"OpenAlways"
lb
"Normal"
}
ra
Example
s
--<boundary>
Content-Type: text/plain
Content-Length: <length>
Events[0].EventBaseInfo.Code= DoorStatus
Event Events[0].EventBaseInfo.Action=Pulse
Events[0].EventBaseInfo.Index=0
Events[0].UTC=1999999999
Events[0].Status= CloseAlways
--<boundary>
Table 14-19
URL http://<server>/cgi-bin/recordFinder.cgi?action=find&name=<RecordName>
Method GET
Description Find AccessControl record.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
The record table name. It should be
name string R
"AccessControlCardRec".
count int O Max result to return, default is 1024.
StartTime string O The start of the record's CreateTime.
EndTime string O The end of the record's CreateTime.
condition object O Search condition.
DA
array<object
records R The records that returned.
>
_A
+CardName string O Access user card name, max string length is 31.
r
+CardType int O 0: Normal Card, 1: VIP Card, 2: Visitor Card, 3: Patrol Card,
te
O sex:{
HU
0: unknow
1: male
A_
+CitizenIDSex integer
2: female
HT
9: not stated
TP
}
_A
+CitizenIDEthnic O
integer citizen ID ethnicity
ity
PI
+CitizenIDAddre O
string address
ss
r
+CitizenIDAutho O
In
[ Example ]
s
GET http://192.168.1.108/cgi-bin/recordFinder.cgi?action=find&name=AccessControlCard
Request
Rec&StartTime=123456700&EndTime=123456800&condition.CardNo=12001&count=100
totalCount=1000
found=100
records[0].RecNo=12345
records[0].CreateTime=123456789
records[0].CardNo=12001
Response records[0].CardName=ZhangSan
records[0].UserID=ZhangSan
records[0].Type=Entry
records[0].Method=1
…
records[1].RecNo=13579
Request Example
A_
http://192.168.1.108/cgi-bin/accessControl.cgi?action=openDoor&channel=1&UserID=101&Type=Rem
HT
ote
TP
Response Example
PI
OK
fo
Method GET
Request Params ( key=value format in URL )
ra
OK
HU
A_
Only ID verification terminals such as ASHZ320/520 are supported. Common access control is not
_A
supported.
PI
Table 15-1
fo
Syntax http://<server>/cgi-bin/accessControl.cgi?action=captureFingerprint
r
Method GET
In
+FingerPrintNam
string O Fingerprint name (For smart building products)
e
+ UserID string O User Identity (For smart building products)
heartbeat int R Heartbeat interval (sec)
timeout int R Timeout (sec)
[ Response Params ] ( OK )
[ Example ]
GET http://<server>/cgi-bin/accessControl.cgi?action=captureFingerprint&
Request info.ReaderID=101&info.FingerPrintName=aaaa&info.UserID=10221&heartbeat=5&timeou
t=10
Response OK
Table 15-2
URL http://<server>/cgi-bin/accessControl.cgi?action=captureCmd
Method GET
Description Capture face data, then report it via ‘CitizenPictureCompare’ event.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
Capture entity types:
+type int R 0x01 - Face
0x02 - Identification card
DA
[ Example ]
TP
GET http://<server>/cgi-bin/accessControl.cgi?action=captureCmd&type
Request
_A
=1&UserID=10221&heartbeat=5&timeout=10
PI
Response OK
fo
r
Table 15-3
s
http://<server>/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCustomPa
URL
ssword
Method GET
Description Insert access control custom password.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Access control custom password record name, should be
name string R
"AccessControlCustomPassword".
UserID string R The user's id.
OpenDoorPass
string R Ths user’s open door password.
word
Ths user’s alarm password. ( This param is not supported by
AlarmPassword string O
video talk device )
GET http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControl
HU
CustomPassword&UserID=102&OpenDoorPassword=123456&Doors[0]=1&Doors[1]=3&
Request
A_
Doors[2]=5&VTOPosition=01018001&ValidDateStart=20151022%20093811&ValidDateEn
d=20151222%20093811&ValidCounts=30
HT
Response RecNo=12345
TP
_A
Table 15-4
fo
http://<server>/cgi-bin/recordUpdater.cgi?action=update&name=AccessControlCustom
r
URL
Password
In
Method GET
te
Table 15-5
http://<server>/cgi-bin/recordUpdater.cgi?action=remove&name=AccessControlCustomPa
URL
ssword
Method GET
Descriptio
Remove the access control custom password record by recno.
n
DA
"AccessControlCustomPassword".
recno int R The record id.
TP
[ Response Params ] ( OK )
_A
[ Example ]
PI
GET http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=remove&name=AccessCont
Request
rolCustomPassword&recno=12345
fo
Response OK
r
Table 15-6
te
lb
http://<server>/cgi-bin/recordUpdater.cgi?action=clear&name=AccessControlCustomPass
URL
word
ra
Method GET
s
Descriptio
Remove all the access control custom password records
n
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Access user card and fingerprint record name, should be
name string R
"AccessControlCustomPassword".
[ Response Params ] ( OK )
[ Example ]
GET http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=clear&name=AccessControl
Request
CustomPassword
Response OK
Table 15-7
http://<server>/cgi-bin/recordFinder.cgi?action=find&name=AccessControlCustomPass
URL
word
Method GET
Description Find Access control custom password by condition.
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
name string R Record Name, should be "AccessControlCustomPassword".
count int O Max result to return, default is 1024.
StartTime string O The start of the record's CreateTime.
EndTime string O The End of the record's CreateTime.
DA
+OpenDoorPa
string R Ths user’s open door password.
ssword
In
string O
rd video talk device )
lb
The index of the doors that custom password can open. ( This
+Doors array<int> O
ra
+TimeSections array<int> O
open. ( This param is not supported by video talk device )
VTO position number. ( This param is not supported by video
VTOPosition string O
talk device )
+ValidDateStar
string O The start of valid date, format is "yyyyMMdd hhmmss".
t
+ValidDateEnd string O The end of valid date, format is "yyyyMMdd hhmmss".
+ValidCounts int O The password’s valid counts.
+OriginSmartG The origin smart gateway address. ( Video talk device
string O
ateWay customize. )
[ Example ]
GET http://192.168.1.108/cgi-bin/recordFinder.cgi?action=find&name=AccessControlCust
Request omPassword&condition.UserID=103&StartTime=123456700&EndTime=123456800&count
=100
records[0].OpenDoorPassword=123456
records[1].Doors[0]=2
HU
records[1].Doors[1]=4
A_
records[1].Doors[2]=6
HT
records[1].VTOPosition=01018002
TP
records[1].ValidStart=20151022 093811
records[1].ValidEnd=20151222 093811
_A
…
PI
Table 15-8
r
http://<server>/cgi-bin/recordUpdater.cgi?action=get&name=AccessControlCustomPas
In
URL
sword
te
Method GET
lb
Table 15-9
HU
http://<server>/cgi-bin/recordFinder.cgi?action=getQuerySize&name=AccessControlCust
A_
URL
omPassword
HT
Method GET
TP
Description Get the total number of records of the access control custom password.
_A
[ Example ]
te
GET http://192.168.1.108/cgi-bin/recordFinder.cgi?action=getQuerySize&name=Access
Request
lb
ControlCustomPassword
Response count=150
ra
s
Table 15-10
URL http://<server>/cgi-bin/accessControlManager.cgi?action=getCaps
Method GET
Description Get access control capabilities.
[ Request Params ] ( none )
[ Response Params ] ( key=value )
caps object R The access control capabilities.
+AccessControl
int R The access control channel number.
Channels
++MaxTimePeri Max time periods per day. ( This param is not supported by
uint O
HU
uint O
ayGroups talk device )
HT
++MaxDaysInSp Max special days in special day group. ( This param is not
uint O
TP
[ Example ]
PI
caps.AccessControlAlarmRecord=true
caps.CustomPasswordEncryption=1
r
caps.SupportFingerPrint=1
In
caps.OnlySingleDoorAuth=1
te
Response caps.AsynAuth=1
lb
caps.SpecialDaysSchedule.Support=true
caps.SpecialDaysSchedule.MaxSpecialDaysSchedules=5
ra
caps.SpecialDaysSchedule.MaxTimePeriodsPerDay=5
s
caps.SpecialDaysSchedule.MaxSpecialDayGroups=5
caps.SpecialDaysSchedule.MaxDaysInSpecialDayGroup=5
Table 15-11
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=AccessControlGener
URL
al
Method GET
Description Get access control general setting.
DA
+ABLock object O
control device. )
r
Array<int> >
group are in closed state.
lb
6: thank you
HU
7: custom voice
}
A_
[ Example ]
GET
PI
Request
http://10.0.0.8/cgi-bin/configManager.cgi?action=getConfig&name=AccessControlGeneral
fo
table.AccessControlGeneral.AccessProperty=bidirect
table.AccessControlGeneral.ABLock.Enable=true
r
table.AccessControlGeneral.ABLock.Doors[0][0]=1
In
table.AccessControlGeneral.ABLock.Doors[0][1]=2
te
table.AccessControlGeneral.ABLock.Doors[0][2]=3
lb
table.AccessControlGeneral.ABLock.Doors[1][0]=4
table.AccessControlGeneral.ABLock.Doors[1][1]=5
ra
Respons
table.AccessControlGeneral.ABLock.Doors[1][2]=6
s
e
table.AccessControlGeneral.CustomPasswordEnable=true
table.AccessControlGeneral.CommonPassword=123456
table.AccessControlGeneral.ButtonExitEnable=true
table.AccessControlGeneral.CheckSensorBeforeLock=true
table.AccessControlGeneral.CheckSensorTime=30
table.AccessControlGeneral.DuressPassword=654321
table.AccessControlGeneral.DuressEnable=true
Set access control general setting
Table 15-12
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
Method GET
Descripti Set access control general setting.
Respons
OK
HU
e
A_
Table 15-13
PI
URL http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=AccessControl
fo
Method GET
r
channel
++Enable bool O Whether to enable config for this channel.
Door state, can be : “Normal”, “CloseAlways”,
++State string O
“OpenAlways”, “NoPersonNC”, “NoPersonNO”
Open door method, can be following value, default is 2 :
0 : only by password
1 : only by access card
2 : by password or access card
3 : by access card first then password
++Method int O
4 : by password first then access card
5 : different method in differenct time range
6 : only by fingerprint
7 : by password or access card or fingerprint
8 : by password and access card and fingerprint together
24 : by fingerprint or face
25 : by access card or face
HU
together
In
or face
ra
password
39 : by ID card ( match with picture in ID card ) or face
40 : by ID card ( match with fingerprint in ID card )
41 : by ID card ( match with fingerprint and picture in ID
card )
42 : by ID card or access card or fingerprint or face or
password
43 : by multy user method
44 : by ID card or health code
++OpenAlwaysT The time range that working, value is index in
int O
ime AccessTimeSechdule config.
++CloseAlwaysT The time range that always closed, value is index in
int O
ime AccessTimeSechdule config.
++HolidayTime int O The time range that working in holidays, value is index in
Enable
HU
+++Time int O
index in AccessTimeSechdule config.
_A
+AutoRemoteCh
In
++RepeatEnterT
integer O Repeat entry time, unit second, 0 means do not start
ime
++CloseTimeout integer O Closing overtime
++SensorEnable bool O sensor enable
Open the door in different periods
Array<Array<
++TimeSchedule it works when Method is "different method in differenct
object>>
time range".
+++TimeSection string O time section, format as "hh:mm:ss-hh:mm:ss"
Open door method, can be following value, default is 2 :
0 : only by password
+++Method integer O 1 : only by access card
2 : by password or access card
3 : by access card first then password
table.AccessControl[0].State=Normal
HU
table.AccessControl[0].Method=2
table.AccessControl[0].OpenAlwaysTime=1
A_
table.AccessControl[0].CloseAlwaysTime=2
HT
Respons table.AccessControl[0].UnlockHoldInterval=500
TP
e table.AccessControl[0].AccessProtocol=Local
_A
table.AccessControl[0].BreakInAlarmEnable=true
table.AccessControl[0].DuressAlarmEnable=true
PI
table.AccessControl[0].CardNoConvert=0
table.AccessControl[0].MaliciousAccessControlEnable=true
fo
…
r
Table 15-14
lb
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
ra
Method GET
Descripti
s
Table 15-15
URL http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=Wiegand
Method GET
Description Get Wiegand setting.
[ Request Params ] ( None )
[ Response Params ] ( key=value format )
DA
++OutType int R The output type, 0 : output ID, 1 : output card number
In
the input type, the value is 32bits. It won’t accept any input
when value is 0.
te
bit2~Bit31:reserved
s
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
Method GET
Descripti
Set Wiegand setting.
on
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
Wiegand array<object> R Wiegand config object
+Mode int O Wiegand mode, 0 : wiegand input, 1 : wiegand output
…<See above getConfig command for other params of the
…<other param> — —
config object, They are all optional.>
[ Response Params ] ( OK )
[ Example ]
GET http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&Wiegand[0].Mode=1&Wie
Request gand[0].PulseWidth=200&Wiegand[0].PulseStep=1000&Wiegand[0].TransferMode=1&Wie
DA
gand[0].OutType=1
HU
Respons
OK
A_
e
HT
Table 15-17
r
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=AccessTimeSchedul
URL
In
e
Method GET
te
Table 15-18
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
Method GET
Descripti
Set access time schedule setting.
on
[ Request Params ] ( key=value format at URL )
DA
AccessTimeSch
array<object> R The access time schedule config object array
A_
edule
HT
…<other param> — —
config object, They are all optional.>
_A
[ Response Params ] ( OK )
PI
[ Example ]
GET http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&AccessTimeSchedule[0].
fo
Name=TS1&AccessTimeSchedule[0].Enable=true&AccessTimeSchedule[0].TimeSchedule
r
Request [0][0]=1%2000:00:00-12:00:00&AccessTimeSchedule[0].TimeSchedule[0][1]=1%2015:00:0
In
0-20:00:00&AccessTimeSchedule[0].TimeSchedule[1][0]=1%2000:00:00-12:00:00&Access
TimeSchedule[0].TimeSchedule[1][1]=1%2015:00:00-20:00:00
te
Respons
lb
OK
e
ra
Table 15-19
URL http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=SpecialDayGroup
Method GET
Description Get special day group setting.
[ Request Params ] ( None )
[ Response Params ] ( key=value format )
Name Type R/O Param Description
table object R config table object
…
HU
Table 15-20
HT
TP
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
Method GET
_A
Descripti
PI
SpecialDayGrou
array<object> R The special day group config object array
In
p
te
…<other param> — —
config object, They are all optional.>
ra
[ Response Params ] ( OK )
s
[ Example ]
GET http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&SpecialDayGroup[0].Nam
e=SpecialDayGroup1&SpecialDayGroup[0].Enable=true&SpecialDayGroup[0].Days[0].Spe
Request
cialDayName=NationalDay&SpecialDayGroup[0].Days[0].StartTime=2017-10-01%2000:00:
00&SpecialDayGroup[0].Days[0].StartTime=2017-10-07%2023:59:59
Respons
OK
e
Table 15-21
00:00:00-12:00:00".
HU
[ Example ]
GET
HT
Request
http://10.0.0.8/cgi-bin/configManager.cgi?action=getConfig&name=SpecialDaysSchedule
TP
table.SpecialDaysSchedule[0].Name=SpecialDayGroup1
_A
table.SpecialDaysSchedule[0].Enable=true
PI
table.SpecialDaysSchedule[0].GroupNo=1
Respons table.SpecialDaysSchedule[0].TimeSection[0]=1 00:00:00-12:00:00
fo
e table.SpecialDaysSchedule[0].TimeSection[1]=1 15:00:00-20:00:00
table.SpecialDaysSchedule[0].Doors[0]=2
r
table.SpecialDaysSchedule[0].Doors[1]=3
In
…
te
Table 15-22
ra
s
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
Method GET
Descripti
Set special days schedule setting.
on
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
SpecialDaysSch
array<object> R The special days schedule config object array
edule
+Name string O The special day schedule name
…<See above getConfig command for other params of the
…<other param> — —
config object, They are all optional.>
[ Response Params ] ( OK )
[ Example ]
Request GET http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&SpecialDaysSchedule[0].
Table 15-23
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=MeasureTemperatur
URL
e
Method GET
DA
+MeasureTempe
_A
1: mask prompt
In
2: mask intercept
++OnlyTemperat whether to enable the single function, temperature
te
bool O
ureMode monitoring
lb
++TemperatureD
bool R whether to show the temperature
ra
isplay
s
temperature unit:{
++TemperatureU 0: centigrade
uint O
nit 1: Fahrenheit
}
Temperature monitoring method, it can be:
0: Single chip microcomputer infrared temperature
monitoring
++Type integer R
1: the thermal imaging principle of temperature monitoring
2: Temperature monitoring module of Guide
3: single point temperature monitoring at wrist
++GuideModule
object O param of temperature monitoring module of Guide
Param
+++Threshold float O the temprerature threshold, unit is ℃
+++CalibrationM uint32 O Calibration Model, it can be:
+++ValidTemper
float O the lower limit of valid temperature value
atureLowerLimit
A_
++InfraredTemp
HT
+++RetentionTi
s
table.MeasureTemperature.GuideModuleParam.Correct=0
HU
table.MeasureTemperature.GuideModuleParam.DebugModelEnable=false
table.MeasureTemperature.GuideModuleParam.HeatDisplayEnbale=false
A_
table.MeasureTemperature.GuideModuleParam.MaxDistance=0
HT
table.MeasureTemperature.GuideModuleParam.ProjectDebugModel=false
TP
table.MeasureTemperature.GuideModuleParam.RectEnable=true
_A
table.MeasureTemperature.GuideModuleParam.TempRandReplaceThreshold=0
table.MeasureTemperature.GuideModuleParam.Threshold=37.300000
PI
table.MeasureTemperature.GuideModuleParam.ValidTemperatureLowerLimit=30
fo
table.MeasureTemperature.InfraredTemperatureParam.Correct=0
table.MeasureTemperature.InfraredTemperatureParam.DebugModelEnable=false
r
table.MeasureTemperature.InfraredTemperatureParam.MaxDistance=100
In
table.MeasureTemperature.InfraredTemperatureParam.OverTemperatureMaxDistance=100
te
table.MeasureTemperature.InfraredTemperatureParam.RectEnable=true
Respons
table.MeasureTemperature.InfraredTemperatureParam.RetentionTime=500
lb
e
table.MeasureTemperature.InfraredTemperatureParam.SensorType=
ra
table.MeasureTemperature.InfraredTemperatureParam.Threshold=37.300000
s
table.MeasureTemperature.InfraredTemperatureParam.ValidTemperatureLowerLimit=30
table.MeasureTemperature.MaskOpt=0
table.MeasureTemperature.OnlyTemperatureMode=false
table.MeasureTemperature.TemperatureDisplay=true
table.MeasureTemperature.TemperatureUnit=0
table.MeasureTemperature.ThermalImagingParam.RetentionTime=30
table.MeasureTemperature.ThermalImagingParam.Threshold=60
table.MeasureTemperature.Type=3
table.MeasureTemperature.WristTemperatureParam.Correct=0
table.MeasureTemperature.WristTemperatureParam.InvalidTemperatureDistance=24
table.MeasureTemperature.WristTemperatureParam.TemperatureTimeout=10
table.MeasureTemperature.WristTemperatureParam.Threshold=37.300000
table.MeasureTemperature.WristTemperatureParam.ValidTemperatureDistance=5
table.MeasureTemperature.WristTemperatureParam.ValidTemperatureLowerLimit=35
Table 15-24
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
Method GET
Descripti
Set measure temperature setting.
on
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
MeasureTemper
object R The measure temperature config object
ature
+Name string O The measure temperature name
…<See above getConfig command for other params of the
…<other param> — —
config object, They are all optional.>
DA
[ Response Params ] ( OK )
[ Example ]
HU
GET http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&MeasureTemperature.En
A_
Request able=true&MeasureTemperature.GuideModuleParam.Threshold=38.5&MeasureTemperatur
HT
e.MaskOpt=2
TP
Respons
OK
e
_A
PI
Table 15-25
lb
http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=CitizenPictureCompa
URL
ra
re
Method GET
s
Table 15-26
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
DA
Method GET
HU
Descripti
Set citizen picture compare setting
A_
on
HT
CitizenPictureCo
_A
[ Response Params ] ( OK )
r
[ Example ]
In
GET http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&CitizenPictureCompare.S
ysMode= CitizenIDCheck&CitizenPictureCompare.Threshold=80&CitizenPictureCompare.
te
Request
UnlockEnable=true&CitizenPictureCompare.FuncEnable=true&CitizenPictureCompare.Citi
lb
zenIDCheck=true
ra
Respons
OK
s
Table 15-27
URL http://<server>/cgi-bin/AccessUser.cgi?action=insertMulti
Method POST
Description Insert person information.
[ Request Params ] ( JSON format in body )
+Doors int16[] O
TimeSections, and the value
In
AC configuration.
lb
{
UserList[{
"UserID": "100013",
"UserName": "",
"UserType": 0,
"UseTime": 1,
"IsFirstEnter": true,
"FirstEnterDoors": [0, 1],
Request "UserStatus": 0,
"Authority": 1,
"CitizenIDNo": "123456789012345678",
"Password": "xxxxxxxxxx",
DA
"Doors": [1,3,5,7],
HU
"TimeSections": [1,2,3,4],
"SpecialDaysSchedule": [1,2],
A_
} ,…,{}]
}
_A
Response OK
PI
Table 15-28
lb
URL http://<server>/cgi-bin/AccessUser.cgi?action=updateMulti
ra
Method POST
Description Update person information.
s
AC configuration.
The door authority corresponds to
A_
Doors.
Holiday plan identification. The
PI
the configuration).
In
"ValidDateEnd" is deprecated.
[ Response Params ] ( OK )
[ Example ]
POST http://192.168.1.108/cgi-bin/AccessUser.cgi?action=insertMulti
{
UserList[{
"UserID": "100013",
Request "UserName": "",
"UserType": 0,
"UseTime": 1,
"IsFirstEnter": true,
"FirstEnterDoors": [0, 1],
"UserStatus": 0,
Response OK
Table 15-29
HU
URL http://<server>/cgi-bin/AccessUser.cgi?action=removeAll
A_
Method GET
HT
[ Response Params ] ( OK )
PI
[ Example ]
fo
r
In
Response OK
s
Table 15-30
URL http://<server>/cgi-bin/AccessUser.cgi?action=removeMulti
Method GET
Description Delete user data.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
[ Response Params ] ( OK )
GET http://192.168.1.108/cgi-bin/AccessUser.cgi?action=removeMulti&UserIDList[0]=102&
Request
UserIDList [1]=102
Respons
OK
e
Table 15-31
DA
URL http://<server>/cgi-bin/AccessUser.cgi?action=list
HU
Method GET
A_
[ Response Params ]
PI
users
First user authority or not. false:
+IsFirstEnter bool O
No; true: Yes
+FirstEnterDoors int16[] O -1 indicates all channels
+UserStatus uint16 O 0: Normal; 1: Frozen
"ValidDateEnd" is deprecated.
_A
[ Example ]
PI
fo
GET http://192.168.1.108/cgi-bin/AccessUser.cgi?action=list&UserIDList[0]=102&UserIDList
Request
r
[1]=102
In
te
Users[0].UserID=100013
lb
Users[0].UserName=Name
ra
Users[0].UserType=1
s
Users[0].UseTime=1
Users[0].IsFirstEnter=ZhangSan
Users[0].FirstEnterDoors=0
Users[0].UserStatus=12345678
Respons Users[0].Authority=1
e Users[0].CitizenIDNo=1
Users[0].Password=ZhangSan
Users[0].Doors=0
Users[0].TimeSections=12345678
Users[0].SpecialDaysSchedule=1
Users[0].ValidFrom=1
records[0].ValidTo=ZhangSan
…
Table 15-32
URL http://<server>/cgi-bin/AccessCard.cgi?action=insertMulti
Method POST
Description Insert card number information.
[ Request Params ] ( JSON format in body )
Name Type R/O Param Description
Enumint{
HU
0: Ordinary card
A_
1: VIP card
+CardType uint16 O
HT
2: Guest card
3: Patrol card
TP
4: Blocklist card
_A
5: Duress card
PI
0: Normal
1<<0: Reported for loss
In
+CardStatus uint32 O
1<<1: Canceled
te
1<<2: Frozen
lb
1<<3: Arrearage
ra
1<<4: Overdue
[ Response Params ] ( OK )
s
[ Example ]
POST http://192.168.1.108/cgi-bin/AccessCard.cgi?action=insertMulti
{
CardList[{
"UserID" : "100013"
Request "CardNo" : ""
"CardType" : 0
"CardName" : "201 - Xiao Wang"
"CardStatus" : 0
} ,…,{}]
}
Response OK
Table 15-33
URL http://<server>/cgi-bin/AccessCard.cgi?action=updateMulti
Method POST
Description Update card number information.
[ Request Params ] ( JSON format in body )
Name Type R/O Param Description
CardList array<object> R User list, with up to 10 entries
+CardNo string R Card No.
+UserID string R User ID
Card type
Enumint{
DA
0: Ordinary card
HU
1: VIP card
+CardType uint16 O
2: Guest card
A_
3: Patrol card
HT
4: Blocklist card
TP
5: Duress card
_A
0: Normal
1<<0: Reported for loss
r
+CardStatus uint32 O
1<<1: Canceled
In
1<<2: Frozen
te
1<<3: Arrearage
lb
1<<4: Overdue
[ Response Params ] ( OK )
ra
[ Example ]
s
POST ttp://192.168.1.108/cgi-bin/AccessCard.cgi?action=updateMulti
{
CardList[{
"UserID" : "100013"
Request "CardNo" : ""
"CardType" : 0
"CardName" : "201 - Xiao Wang"
"CardStatus" : 0
} ,…,{}]
}
Response OK
Table 15-34
URL http://<server>/cgi-bin/AccessCard.cgi?action=removeAll
Method GET
Description Clear all card information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
[ Response Params ] ( OK )
[ Example ]
DA
Response OK
TP
Table 15-35
r
URL http://<server>/cgi-bin/AccessCard.cgi?action=removeMulti
In
Method GET
te
Respo
OK
nse
Table 15-36
URL http://<server>/cgi-bin/AccessCard.cgi?action=list
Method GET
Description Search for card number data.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
CardNoList array<string> R User ID list, with up to 10 entries
[ Response Params ]
records array<object> R The records that returned.
+CardNo string R Card No.
+UserID string R User ID
DA
Card type
HU
Enumint{
A_
0: Ordinary card
1: VIP card
HT
+CardType uint16 O
2: Guest card
TP
3: Patrol card
_A
4: Blocklist card
5: Duress card
PI
0: Normal
In
1<<1: Canceled
lb
1<<2: Frozen
1<<3: Arrearage
ra
1<<4: Overdue
s
[ Example ]
GET http://192.168.1.108/cgi-bin/AccessCard.cgi?action=list&CardNoList
Request
[0]=102&CardNoList[1]=102
Cards[0].CardNo=12345678
Cards[0].UserID=1
Cards[0].CardType=1
Response
Cards[0].CardName=ZhangSan
Cards[0].CardStatus=0
…
Table 15-37
URL http://<server>/cgi-bin/AccessFace.cgi?action=insertMulti
Method POST
Description Insert face information.
[ Request Params ] ( JSON format in body )
DA
+PhotoData array<string> O
200kx5.
PI
now.
[ Response Params ] ( OK )
te
[ Example ]
lb
POST http://192.168.1.108/cgi-bin/AccessFace.cgi?action=insertMulti
ra
s
{
“FaceList”:[
{
"UserID": "102",
Request "FaceData": [ "xxxx", "xxxx", … ],
"PhotoData": [ "yyyy", "yyyy", … ],
" PhotoURL": [ "yyyy", "yyyy", … ],
},
….
]
}
Response OK
Table 15-38
URL http://<server>/cgi-bin/AccessFace.cgi?action=updateMulti
Method POST
Description Update face information.
[ Request Params ] ( JSON format in body )
Name Type R/O Param Description
FaceList array<object> R Face list, with up to 10 entries
+UserID string R User ID
Base64 of red light face templates, 8192
+FaceData array<string> O
Bytes/per face, maximum 20.
Base64 of white light face images,
+PhotoData array<string> O
DA
200kx5.
HU
now.
_A
[ Response Params ] ( OK )
[ Example ]
PI
POST http://192.168.1.108/cgi-bin/AccessFace.cgi?action=updateMulti
fo
{
r
“FaceList”:[
In
{
te
"UserID": "102",
lb
},
….
]
}
Response OK
Table 15-39
URL http://<server>/cgi-bin/AccessFace.cgi?action=removeAll
Method GET
Response OK
Table 15-40
A_
HT
URL http://<server>/cgi-bin/AccessFace.cgi?action=removeMulti
Method GET
TP
UserIDList array<string> R
10 entries
r
[ Response Params ] ( OK )
In
[ Example ]
te
lb
GET http://192.168.1.108/cgi-bin/AccessFace.cgi?action=removeMulti&
ra
Request
UserIDList[0]=101&UserIDList[1]=102
s
Response OK
Table 15-41
URL http://<server>/cgi-bin/AccessFace.cgi?action=list
Method GET
Description Search for user face data.
[ Response Params ]
FaceDataList array<object> R The records that returned.
+UserID string R User ID
Base64 of red light face
+FaceData array<string> O templates, 8192 Bytes/per face,
maximum 20.
Base64 of white light face
+PhotoData array<string> O
images, 200kx5.
Either cloud storage URL of white
light face images or PhotoData. If
PhotoData exists, this field is
+PhotoURL array<string> O
invalid when it is subject to
DA
available now.
[ Example ]
A_
HT
TP
GET http://192.168.1.108/cgi-bin/AccessFace.cgi?action=list&UserIDList
_A
Request
[0]=1&UserIDList[1]=2
PI
fo
FaceDataList[0].UserID=1
r
…
Response
FaceDataList[1].UserID=2
lb
Table 15-42
URL http://<server>/cgi-bin/AccessFingerprint.cgi?action=insertMulti
Method POST
Description Insert fingerprint information.
[ Request Params ] ( JSON format in body )
Name Type R/O Param Description
vecPackets array<string> R Fingerprint feature data
[ Example ]
HU
POST http://192.168.1.108/cgi-bin/AccessFingerprint.cgi?action=insertMulti
A_
{
HT
“AccessFingerprints”:[
_A
{
"UserID": "102",
PI
"FingerprintPacket" :
Request
fo
{
"Length" : 810,
r
"Count" : 3,
In
"DuressIndex" : 2
te
}
}
lb
]
ra
}
s
Response OK
Table 15-43
URL http://<server>/cgi-bin/AccessFingerprint.cgi?action=updateMulti
Method POST
Description Update fingerprint information.
[ Request Params ] ( JSON format in body )
Name Type R/O Param Description
vecPackets array<string> R Binary fingerprint data (Binary Data).
[ Example ]
HU
POST http://192.168.1.108/cgi-bin/AccessFingerprint.cgi?action=updateMulti
A_
{
HT
“AccessFingerprints”:[
_A
{
"UserID": "102",
PI
"FingerprintPacket" :
Request
fo
{
"Length" : 810,
r
"Count" : 3,
In
"DuressIndex" : 2
te
}
}
lb
]
ra
}
s
Response OK
Table 15-44
URL http://<server>/cgi-bin/AccessFingerprint.cgi?action=removeAll
Method GET
Description Clear all fingerprint information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
[ Response Params ] ( OK )
Response OK
Table 15-45
URL http://<server>/cgi-bin/AccessFingerprint.cgi?action=removeMulti
DA
Method GET
HU
UserIDList array<string> R
entry
_A
[ Response Params ] ( OK )
PI
[ Example ]
fo
r
GET http://192.168.1.108/cgi-bin/AccessFingerprint.cgi?action=removeMulti&
Request
In
UserIDList[0]=101&UserIDList[1]=102
te
lb
ra
Response OK
s
Table 15-46
URL http://<server>/cgi-bin/AccessFingerprint.cgi?action=get
Method GET
Description Search for user fingerprint information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
[ Response Params ]
FingerprintPacket.Length=810
r
FingerprintPacket.Count=3
Response
In
FingerprintPacket.DuressIndex=1
te
FingerprintData=xxx
lb
Table 15-47
URL http://<server>/cgi-bin/AccessUser.cgi?action=startFind
Method GET
Description Start searching for user related information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
Search conditions. Users can
perform conditional search
Condition object R
according to the user information
field.
+UserID string O User ID
password
HT
the AC configuration.
fo
door in Doors.
lb
SpecialDaysSchedule (defined in
the configuration).
"yyyy-MM-dd HH:mm:ss", start of
+ValidFrom string O validity period. Note: The original
"ValidDateStart" is deprecated.
"yyyy-MM-dd HH:mm:ss", end of
+ValidTo string O validity period. Note: The original
"ValidDateEnd" is deprecated.
[ Response Params ]
Token uint32 R Search token.
Total number of entries found this
Total uint32 R
time
Caps uint32 R Search capability: Maximum
{
"Token": 1234,
Response "Total": 20,
"Caps ": 20
}
DA
Table 15-48
TP
URL http://<server>/cgi-bin/AccessUser.cgi?action=doFind
_A
Method GET
PI
[ Response Params ]
info array<object> R Person information
[ Example ]
GET http://192.168.1.108/cgi-bin/AccessUser.cgi?action=doFind&Token=1234&Offset=0&C
Request
ount=20
Respons { "Info": [ {
e
}, { … }, … ]
Table 15-49
URL http://<server>/cgi-bin/AccessUser.cgi?action=stopFind
Method GET
Description Get user related information.
DA
[ Example ]
_A
PI
fo
Response OK
lb
ra
Information
Start searching for card number related information.
Table 15-50
1<<1: Canceled
HU
1<<2: Frozen
1<<3: Arrearage
A_
1<<4: Overdue
HT
[ Response Params ]
TP
[ Example ]
In
te
lb
"Token": 1234,
Response "Total": 20,
"Caps ": 20
URL http://<server>/cgi-bin/AccessCard.cgi?action=doFind
Method GET
Description Get card number related information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
GET http://192.168.1.108/cgi-bin/AccessCard.cgi?action=doFind&Token=1234&Offset=0&C
Request
HT
ount=20
TP
_A
PI
{ "Info": [ {
fo
r
"UserID": "102",
Respons
In
e …
te
}, { … }, … ]
lb
ra
}
s
Table 15-52
URL http://<server>/cgi-bin/AccessCard.cgi?action=stopFind
Method GET
Description Stop searching for card number related information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
Response OK
Table 15-53
A_
URL http://<server>/cgi-bin/AccessFace.cgi?action=startFind
HT
Method GET
Description Start searching for face related information.
TP
Condition object R
according to the user information
r
field.
In
time
s
{
Response
"Token": 1234,
"Caps ": 20
Table 15-54
URL http://<server>/cgi-bin/AccessFace.cgi?action=doFind
Method GET
Description Get face related information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
DA
Offset R Offset
A_
int
HT
[ Response Params ]
_A
[ Example ]
fo
r
GET http://192.168.1.108/cgi-bin/AccessFace.cgi?action=doFind&Token=1234&Offset=0&C
In
Request
ount=20
te
lb
ra
{ "Info": [ {
s
"UserID": "102",
Respons
e …
}, { … }, … ]
URL http://<server>/cgi-bin/AccessFace.cgi?action=stopFind
Method GET
Description Stop searching for face related information.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
Response OK
A_
HT
TP
Table 15-56
fo
r
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=getCaps
In
Method GET
Description Get access control capability.
te
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=getCaps
lb
Success caps.AccessControlChannels=5
ra
Return
s
Comment
Params in Response :
Table 15-57
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=addDevice&devAddr=<devA
ddr>&name=<name>
Method GET
Description Add SubController.
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=addDevice&devAddr=1
Params in Response:
Table 15-58
HU
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=modifyDevice&devAddr=<de
A_
vAddr>&name=<name>
HT
Method GET
Description Modify SubController.
TP
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=modifyDevice&devAddr
_A
=1&name=Sub11
PI
Success OK
Return
fo
Comment
Params in URL:
r
Table 15-59
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=removeDevice&devAddrs[0]=
<devAddr0>[& devAddrs[1]=<devAddr1>&...&devAddrs[n]=<devAddrn>]
Method GET
Description Remove SubController.
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=removeDevice&devAdd
rs[0]=4&devAddrs[1]=5
Success devInfo[0].DevAddr=4
Return devInfo[0].FaiedCode=0
devInfo[1].DevAddr=5
Params in Response:
Table 15-60
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=getSubControllerInfo&devAd
DA
drs[0]=<devAddr0>[& devAddrs[1]=<devAddr1>&...&devAddrs[n]=<devAddrn>]
HU
Method GET
A_
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=getSubControllerInfo&d
evAddrs[0]=4&devAddrs[1]=5
TP
Success devInfo[0].DevAddr=4
_A
Return devInfo[0].Name=Sub4
PI
devInfo[0].AccessProperty=unidirect
devInfo[0].DeviceType=ACS-1202B-S
fo
devInfo[0].VerSion=V1.00428
r
devInfo[0].DoorToReadID[0].Door=0
In
devInfo[0].DoorToReadID[0].ReaderID[0]=1
devInfo[0].DoorToReadID[0].ReaderID[1]=2
te
devInfo[0].DoorToReadID[1].Door=1
lb
devInfo[0].DoorToReadID[1].ReaderID[0]=3
ra
devInfo[0].DoorToReadID[1].ReaderID[1]=4
devInfo[1].DevAddr=5
s
devInfo[1].Name=Sub5
devInfo[1].AccessProperty=bidirect
devInfo[1].DeviceType=ACS-1202B-S
devInfo[1].VerSion=V1.00428
devInfo[1].DoorToReadID[0].Door=0
devInfo[1].DoorToReadID[0].ReaderID[0]=11
devInfo[1].DoorToReadID[0].ReaderID[1]=12
Comment
Params in URL:
Params in Response:
Table 15-61
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=getSubControllerStates&dev
Addrs[0]=<devAddr0>[& devAddrs[1]=<devAddr1>&...&devAddrs[n]=<devAddrn>]
Method GET
Description Get SubController States.
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=getSubControllerStates
&devAddrs[0]=4&devAddrs[1]=5
DA
Success devStates[0].DevAddr=4
HU
Return devStates[0].State=0
devStates[1].DevAddr=5
A_
devStates[1].State=1
HT
Comment
Params in URL:
TP
Params in Response:
Table 15-62
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=setRepeatEnterRoute&index
=<index>&routeInfo.PointInfo[x0].ReaderID[0]=<ReadID0>&routeInfo.PointInfo[x0].Re
aderID[1]=<ReadID1>[&routeInfo.PointInfo[x1].ReaderID[0]=<ReadID0>&routeInfo.Poi
ntInfo[x1].ReaderID[1]=<ReadID1>]&routeInfo.TimeSections=<TimeIndex>&routeInfo.
Flag=<Flag>&routeInfo.Name=<Name>
Method GET
Description Set RepeatEnter Route.
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=setRepeatEnterRoute&i
ndex=0&routeInfo.PointInfo[0].ReaderID[0]=11&routeInfo.PointInfo[0].ReaderID[1]=22&
routeInfo.PointInfo[1].ReaderID[0]=33&routeInfo.PointInfo[1].ReaderID[1]=44&routeInf
o.TimeSections=1&routeInfo.Flag=1&routeInfo.Name=123
Success OK
Table 15-63
DA
HU
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=getRepeatEnterRoute&index
=<index>
A_
Method GET
HT
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=getRepeatEnterRoute&i
_A
ndex=0
Success routeInfo.PointInfo[0].ReaderID[0]=11
PI
Return routeInfo.PointInfo[0].ReaderID[1]=22
routeInfo.PointInfo[1].ReaderID[0]=33
fo
routeInfo.PointInfo[1].ReaderID[1]=44
r
routeInfo.TimeSections=1
In
routeInfo.Flag=1
te
routeInfo.Name=123
Comment
lb
Params in URL:
ra
Params in Response:
Table 15-64
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=setABLockRoute&index=<in
dex>&routeInfo.PointInfo[x0].Doors[0]=<DoorID0>&routeInfo.PointInfo[x0].Doors[1]=<
Table 15-65
r
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=getABLockRoute&index=<in
In
dex>
te
Method GET
Description Get ABLock Route.
lb
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=getABLockRoute&index
ra
=0
s
Success routeInfo.PointInfo[0].Doors[0]=11
Return routeInfo.PointInfo[0].Doors [1]=22
routeInfo.PointInfo[1].Doors [0]=33
routeInfo.PointInfo[1].Doors [1]=44
routeInfo.TimeSections=1
routeInfo.Flag=1
routeInfo.Name=123
Comment
Params in URL:
Params in Response:
Table 15-66
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=getLogStatus&devAddr=<de
vAddr>
Method GET
Description Get Log Status.
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=getLogStatus&devAddr
DA
=1
HU
Success OK
A_
Return
HT
Comment
Params in URL:
TP
Table 15-67
te
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=syncOfflineLog&devAddr=<d
lb
evAddr>
ra
Method GET
s
Table 15-68
Syntax http://<server>/cgi-bin/accessControlManager.cgi?action=syncSubControllerTime&dev
Addrs[0]=<devAddr0>[& devAddrs[1]=<devAddr1>&...&devAddrs[n]=<devAddrn>]
Method GET
Description Sync SubController Time.
Example http://192.168.1.108/cgi-bin/accessControlManager.cgi?action=syncSubControllerTime
&devAddrs[0]=4&devAddrs[1]=5
Success errorDevAddrs[0]=4
Return
Comment
Params in URL:
Params in Response:
HU
Request Example
HU
http://192.168.1.108/cgi-bin/VideoTalkPeer.cgi?action=attachState
A_
"Refuse"
te
"Cancel"
lb
"Hangup"
"Busying"
ra
}
s
AMR
AAC
HU
}
A_
formats
In
"MPEG4"
lb
"MPEG2"
ra
"MPEG1"
s
"MJPG"
"H.263"
"H.264"
}
++++Frequency integer No Video sampling frequency 9000
++MediaAddr string No Streaming address 224.10.10.10
It can be an intercom or
broadcast address
Response Example
HTTP/1.1 200 OK
Server: Device/1.0
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
Connection: closed
SID=315
state.State=Answer
state.Talkback.Pack=RTP
state.Talkback.Protocol=UDP
state.Talkback.Type=Talk
state.Talkback.Audio.AudioPort=6000
state.Talkback.Audio.Format[0].Compression=PCM
state.Talkback.Audio.Format[0].Frequency=44000
state.Talkback.Audio.Format[0].Depth=16
state.Talkback.Audio.Format[1].Compression=G.711A
state.Talkback.Audio.Format[1].Frequency=44000
state.Talkback.Audio.Format[1].Depth=16
DA
state.Talkback.Video.VideoPort=7000
state.Talkback.Video.Format[0].Compression=H.264
HU
state.Talkback.Video.Format[0].Frequency=90000
A_
state.Talkback.Video.Format[1].Compression=MJPG
HT
…
TP
state.Talkback. MediaAddr=224.10.10.10
_A
--<boundary>
…
PI
attachState
Request Example
http://192.168.1.108/cgi-bin/VideoTalkPeer.cgi?action=detachState&SID=101
PCM
A_
"ADPCM"
HT
"G.711A"
TP
"G.711Mu"
"G.726"
_A
"G.729"
PI
"MPEG2"
"AMR"
fo
"AAC"
r
}
In
Request Example
HU
http://192.168.1.108/cgi-bin/VideoTalkPeer.cgi?action=cancel
A_
Response Example
TP
OK
_A
Method GET
In
respectively.
++Format object[] O Supported video decoding formats
HU
Enumchar[32]{
HT
"MPEG4"
TP
"MPEG2"
"MPEG1"
_A
"MJPG"
PI
"H.263"
"H.264"
fo
}
r
address
lb
Example
ra
http://192.168.1.108/cgi-bin/VideoTalkPeer.cgi?action=answer&Talkback.Protocol=UDP&Talkback.Type
s
=Talk&Talkback.MediaAddr=224.10.10.10
16.1.7 Hang Up
Close it when the conversation is over.
Request URL http://<server>/cgi-bin/VideoTalkPeer.cgi?action=hangup
Method GET
Request Params ( key=value format in URL )
Name Type R/O Description Example
Request Example
http://192.168.1.108/cgi-bin/VideoTalkPeer.cgi?action=hangup
DA
Response Example
A_
OK
HT
Table 16-1
In
http://<server>/cgi-bin/recordFinder.cgi?action=find&name=VideoTalkLog[&condition.C
Syntax
te
allType=<Type>&condition.EndState=<State>&count=<countNo>]
lb
Method GET
Description Find the VideoTalkLog record.
ra
http://192.168.1.108/cgi-bin/recordFinder.cgi?action=find&name=VideoTalkLog&conditi
s
Example
on.CallType=Incoming&condion.EndState=Missed&count=500
totalCount=1000
found=500
records[0].RecNo=789
Success records[0].CreateTime=123456789
Return records[0].CallType=Incoming
records[0].EndState=Received
records[0].PeerNumber=501
…
Parameters in URL:
Type: call type
Comment
State: end state of the call
countNo: the number of records to get
Table 16-2
http://<server>/cgi-bin/recordUpdater.cgi?action=insert&name=Announcement&Conten
DA
Syntax t=<Content>&ExpirTime=<ExpirTime>&IssueTime=<IssueTime>&Title=<Title>&User
HU
=<User>&State=<State>&ReadFlag=<ReadFlag>
Method GET
A_
http://192.168.1.108/cgi-bin/recordUpdater.cgi?action=insert&name=Announcement&C
TP
Example ontent=stringData&ExpirTime=2012-01-01%2012:00:00&IssueTime=2012-01-01%201
_A
2:00:00&Title=Anounce1&User=101&State=0&ReadFlag=0
Success
PI
RecNo=<RecNo>
Return
Parameters in URL:
fo
Parameters in Response :
RecNo: the record index of the new record
Table 16-3
http://<server>/cgi-bin/recordFinder.cgi?action=find&name=AlarmRecord[&StartTime=<
Syntax
startTime>&EndTime=<endTime>&count=<countNo>]
Method GET
Description Find the AlarmRecord record. ( This api is supported by video talk device. )
Table 16-4
In
http://<server>/cgi-bin/recordFinder.cgi?action=find&name=AccessControlAlarmRecor
Syntax
te
d[&StartTime=<startTime>&EndTime=<endTime>&count=<countNo>]
Method GET
lb
Description
device. )
s
http://192.168.1.108/cgi-bin/recordFinder.cgi?action=find&name=AccessControlAlarmR
Example ecord&StartTime=2014-8-25%2000:02:32&EndTime=2014-8-25%2001:02:32&count=5
00
totalCount=1000
found=500
records[0].RecNo=789
records[0].CreateTime=123456789
Success records[0].UserID=10113
Return records[0].EventCode=DoorMagnetism
records[0].DevAddrs=1
records[0].IndexNum=0
records[0].Time=2017-05-10 16:00:01
…
Comment Parameters in URL:
Parameters in Response :
totalCount : the record count which match condition
found : the record count to return
EventCode : alarm event code, the range is { "DoorNotClosed", "BreakIn",
"RepeatEnter", "Duress", "AlarmLocal", "ChassisIntruded" }
16.5 SIP
The user needs to connect video intercom through CGI protocol, but do not know how to use this
protocol to configure the device. This document provides the corresponding CGI protocol according
to the configuration data format involved in the specific service.
DA
Table 16-5
HT
TP
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name
=SIP
_A
Method GET
PI
++SIPServer string R
IP address or domain name
s
}
HU
Audio stream
enumchar[32]{
A_
++SIPServerLoginUserName string O
For intelligent building only
te
Response table.SIP.RouteEnable=true
HU
table.SIP.SIPServer=192.168.1.111
table.SIP.SIPServerID=8000
A_
table.SIP.SIPServerLoginPWD=admin
HT
table.SIP.SIPServerLoginUserName=admin
TP
table.SIP.SIPServerPort=5060
table.SIP.SIPServerRedundancyPassWord=admin
_A
table.SIP.SIPServerRedundancyUserName=admin
PI
table.SIP.UserEnable=true
table.SIP.UserID=8001
fo
table.SIP.UserType=2
r
In
Table 16-6
ra
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
s
Method GET
Description Modify SIP configuration.
[ Request Params ] ( key=value at URL )
Name Type R/O Param Description
+SIP object R Configuration name
++AccoutName string O Account name
SIP server
++SIPServer string R
IP address or domain name
++SIPServerPor
int R SIP server port number
t
++OutboundPro
string O Proxy server IP address or domain name
xy
++OutboundPro
string O Proxy server ID
xyID
++LocalRTPPort int R
0-65535
HU
++DefaultCallNu
TP
Video stream
enumchar[32]{
fo
}
lb
Audio stream
enumchar[32]{
ra
[ Example ]
HT
GET http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&SIP.SIPServer
TP
Request =192.168.1.108&SIP.SIPServerPort=5060&SIP.RegisterRealm=VDP&SIP.RouteEnable=
_A
true
Response OK
PI
fo
Table 16-7
te
lb
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=
Registar
ra
Method GET
s
authentication is required.
HU
[ Example ]
GET http://10.0.0.8/cgi-bin/configManager.cgi?action=getConfig&name=
A_
Request
Registar
HT
Response table.Registar[0].ServerType=VTO
TP
_A
Table 16-8
r
URL http://<server>/cgi-bin/configManager.cgi?action=setConfig
In
Method GET
te
server.
++RegistarNam char[] O Registration server name, which must be unique.
e (Note: For VTH, use the IP address and port in the
configuration to connect VTO.)
++Enable bool O Register to the registration server or not.
[ Response Params ] ( OK )
[ Example ]
A_
GET
HT
Request
http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&Registar.ServerType=VTO
TP
Response OK
_A
PI
Table 16-9
lb
URL http://<server>/cgi-bin/recordUpdater.cgi?action=insert&name=VideoTalkContact
ra
Method GET
s
32] Enumchar[32]{
"VTH": Indoor monitor
A_
}
TP
32] Enumchar[32]{
"public"
PI
"local"
fo
}
VTHPassword string R Registration password
r
Channel uint32 O Channel number, based on which the mobile phone subscribes
to the call notification message.
ra
] characters
LiftControlByVT bool O Lift control is triggered by the indoor monitor opening the door.
H
[ Response Params ] (key=value format )
Name Type R/O Param Description
RecNo int R Record ID of successfully creation
[ Example ]
GET
Request http://<server>/cgi-bin/recordUpdater.cgi?action=insert&name=VideoTalkContact&VTShort
Number=101&RegisterType=public&VTHPassword=123456
Response RecNo=12345
Table 16-10
URL http://<server>/cgi-bin/recordUpdater.cgi?action=get&name=VideoTalkContact
Method GET
Description Search for room number records by recno.
[ Request Params ] (key=value format in URL)
Name Type R/O Param Description
recno int R Record ID
[ Response Params ] (key=value format )
Name Type R/O Param Description
+RecNo int R Record ID
+CreateTime uint O Start time
UTC seconds, read only
DA
r
HT
er
+VTLongNumbe string O Long number for video intercom or serial number of VTH
_A
+VTSlaveBindM enumint O Mode when accessing to the analog indoor monitor for video
In
ode talk
te
Enumint{
0: SubAddress
lb
1: SubID+SubPort
ra
}
s
+VTSlaveId uint32 O Allocator address when accessing to the analog indoor monitor
for video talk
(Change string to uint32 for consistency)
+VTSlavePort uint32 O Allocator port when accessing to the analog indoor monitor for
video talk
(Change string to uint32 for consistency)
+VTSlaveAddres string O Address of the analog indoor monitor for video talk
s
+NickName string O Nickname
+Notes string O Notes
+Type enumchar[ O User type
32] Enumchar[32]{
"VTH": Indoor monitor
"VTO": Door station
record.FirstName=Dafei
HU
record.FamilyName=Wang
record.VTShortNumber=0101
A_
record.VTMiddleNumber=11010101
HT
record.VTLongNumber=330103001101010151
TP
record.VTNetAddress=127.0.0.1
_A
record.MacAdress=0A:3E:FF:2A:50:41
record.VTOPosition=01018001
PI
record.VTSlaveBindMode=0
fo
record.VTSlaveId=1258421
Response record.VTSlavePort=1258421
r
record.VTSlaveAddress=04:b3:01:f7
In
record.NickName=Nick
te
record.Notes=Friend
record.Type=VTH
lb
record.RegisterType=public
ra
record.VTHPassword=123456
s
record.VTOBuilding=01
record.VTOUnit=01
record.GroupNumber=301
record.Channel=1
record.Floors[0]=1
record.LiftControlByVTH=true
Table 16-11
URL http://<server>/cgi-bin/recordUpdater.cgi?action=update&name=VideoTalkContact
Method GET
Description Update Room number database records.
de talk
HU
Enumint{
A_
0: SubAddress
1: SubID+SubPort
HT
}
TP
VTSlaveId uint32 O Allocator address when accessing to the analog indoor monitor
_A
video talk
(Change string to uint32 for consistency)
r
VTSlaveAddress string O Address of the analog indoor monitor for video talk
In
32] Enumchar[32]{
"VTH": Indoor monitor
s
Table 16-12
URL http://<server>/cgi-bin/recordUpdater.cgi?action=remove&name=VideoTalkContact
DA
Method GET
HU
[ Example ]
PI
GET
Request http://<server>/cgi-bin/recordUpdater.cgi?action=remove&name=VideoTalkContact&recno
fo
=12345
Response OK
r
In
Table 16-13
ra
URL http://<server>/cgi-bin/recordUpdater.cgi?action=clear&name=VideoTalkContact
s
Method GET
Description Delete all records .
[ Request Params ] (key=value format in URL)
Name Type R/O Param Description
name string R Database name, which must be VideoTalkContact.
[ Response Params ] (OK)
[ Example ]
Request GET http://<server>/cgi-bin/recordUpdater.cgi?action=clear&name=VideoTalkContact
Response OK
Table 16-14
URL http://<server>/cgi-bin/recordFinder.cgi?action=getQuerySize&name=VideoTalkContact
Method GET
Description Get the total number of records of the database VideoTalkContact.
[ Request Params ] (key=value format in URL)
Name Type R/O Param Description
name string R Database name, which must be VideoTalkContact.
[ Response Params ] (key=value format )
Name Type R/O Param Description
count int R Total number of records
[ Example ]
GET
Request
DA
http://<server>/cgi-bin/recordFinder.cgi?action=getQuerySize&name=VideoTalkContact
Response Count=200
HU
A_
HT
TP
16.7 ElevatorFloorCounter
_A
PI
setElevatorFloorInfo
fo
http://<server>/cgi-bin/ElevatorFloorCounter.cgi?action=setElevatorFloorInfo&CheckBas
r
URL
eFloor=<Second>&channel=<ChannelNo>
In
Method GET
te
Description
lb
CheckBaseFloor string R Calibrate base floor, unit floor, It's not necessarily numbers
[ Response Params ] (key=value format )
Name Type R/O Param Description
[ Example ]
http://192.168.1.108/cgi-bin/ElevatorFloorCounter.cgi?action=setElevatorFloorInfo&Check
Request
BaseFloor=5&Channel=1
Response OK
16.7.1 getElevatorWorkInfo
http://<server>/cgi-bin/ElevatorFloorCounter.cgi?action=getElevatorWorkInfo&Channel=
URL
<ChannelNo>
16.7.2 getCaps
A_
HT
http://<server>/cgi-bin/ElevatorFloorCounter.cgi?action=getCaps&Channel=<ChannelNo
TP
URL
>
_A
Method GET
PI
Description
[ Request Params ] (key=value format in URL)
fo
caps object R
lb
+IsElevatorFloor
bool R Whether the floor configuration function is supported
ra
Counter
[ Example ]
s
Table 17-1
http://<server>/cgi-bin/FileFindHelper.cgi?action=startFind&condition.channel=<Channe
lNo>&condition.startTime=<start>&condition.endTime=<end>&condition.streamType=<
Syntax
stream>[&condition.flags[0]=<flag>&condition.events[0]=<event>&combineMode.granu
larity=<granularityValue>&combineMode.types[0]=<combineType>]
DA
Method GET
Description Start to find files.
HU
Find a file in channel 1. Event type is "AlarmLocal" or "VideoMotion". Time lines between
A_
URL is:
Example http://172.23.1.66/cgi-bin/fileFindHelper.cgi?action=startFind&condition.channel=1&con
_A
dition.startTime=2014-1-1%2012:00:00&condition.endTime=2015-1-10%2012:00:00&co
PI
ndition.streamType=Main&condition.flags[0]=Event&condition.events[0]=AlarmLocal&co
ndition.events[1]=VideoMotion&combineMode.granularity=16&combineMode.types[0]=A
fo
larmLocal&combineMode.types[0]=VideoMotion
r
Success
result=08137
In
Return
te
Start to find a file with the above condition and combine files with certain type. If it
succeeds, return to find id. Otherwise return to Error.
lb
Parameters in URL:
ra
File 2:
items[0].Channel =1
items[0].StartTime =2011-1-1 13:00:00
items[0].EndTime =2011-1-1 14:00:00
items[0].Events[0]=AlarmLocal
items[0].VideoStream=Main
items[0].Length =790
DA
items[0].Duration = 3600
HU
File 3:
HT
items[0].Channel =1
TP
items[0].Events[0]=AlarmLocal
PI
items[0].VideoStream=Main
items[0].Length =1580
fo
items[0].Duration = 7200
r
In
Table 17-2
ra
http://<server>/cgi-bin/FileFindHelper.cgi?action=startMotionFind&condition.channel=<C
s
hannelNo>&condition.startTime=<start>&condition.endTime=<end>&condition.streamT
Syntax ype=<stream>&motionRegion.senseLevel=<level>[&motionRegion.rects[rectNo][0]=<r
ect0>&motionRegion.rects[rectNo][1]=<rect1>&motionRegion.rects[rectNo][2]=<rect2>
&motionRegion.rects[rectNo][3]=<rect3>]
Method GET
Description Start to find motion files.
Find a file in channel 1, event type is "AlarmLocal" or "VideoMotion", and time between
2014-1-1 12:00:00 and 2015-1-10 12:00:00, motion region is [0,0,21,17]
URL is:
http://172.23.1.66/cgi-bin/fileFindHelper.cgi?action=startMotionFind&condition.channel=
Example
1&condition.startTime=2014-1-1%2012:00:00&condition.endTime=2015-1-10%2012:00:
00&condition.streamType=Main&condition.flags[0]=Event&condition.events[0]=AlarmLoc
al&condition.events[1]=VideoMotio&motionRegion.senseLevel=1&motionRegion.rects[1]
[0]=0&motionRegion.rects[1][1]=0&motionRegion.rects[1][2]=21&motionRegion.rects[1][
level: the motion sensitive level, range is 0–6, 0 represent all level
HU
and rect3 range is 0—17. {0,0,0,0} top—left, {21,0,0,0} top—right, {0,17,0,0} bottom
HT
Table 17-3
fo
http://<server>/cgi-bin/FileFindHelper.cgi?action=findNext&findId=<findId>&count=<fileCo
r
Syntax
unt>
In
Method GET
te
Descriptio
Find the next files no more than fileCount number.
n
lb
Example http://192.168.1.108/cgi-bin/FileFindHelper.cgi?action=findNext&findId=08137&count=100
ra
found=1
s
items[0].channel =1
items[0].startTime =2011-1-1 12:00:00
items[0].endTime =2011-1-1 13:00:00
Success
items[0].fileType =dav
Return
items[0].events[0]=AlarmLocal
items[0].streamType=Main
items[0].length =790
items[0].duration = 3600
findId: The find Id is created by API Create a file finder or API Create a motion file finder.
Comment
Must create a finder before finding files.
Table 17-4
Syntax http://<server>/cgi-bin/FileFindHelper.cgi?action=stopFind&findId=<findId>
Method GET
Description Stop the searching operation.
Example http://192.168.1.108/cgi-bin/FileFindHelper.cgi?action=stopFind&findId=08137
Success
OK
Return
findId: The find Id is created by API Create a file finder or API Create a motion file
Comment
finder. Must create a finder before finding files.
Table 17-5
HU
http://<server>/cgi-bin/FileFindHelper.cgi?action=getBoundFile&condition.channel=<Cha
A_
Syntax nnelNo>&condition.startTime=<start>&condition.endTime=<end>&condition.streamTyp
HT
e=<stream>[&condition.flags[0]=<flag>&condition.events[0]=<event>]
Method GET
TP
http://<server>/cgi-bin/FileFindHelper.cgi?action=getBoundFile&condition.channel=1&co
PI
Example ndition.startTime=2014-1-1%2012:00:00&condition.endTime=2015-1-10%2012:00:00&c
ondition.streamType=Main&condition.flags[0]=Timing
fo
found=2
r
items[0].channel =1
In
items[0].streamType=Main
ra
items[0].length =790
Success
s
items[0].duration = 3600
Return
items[1].channel =1
items[1].startTime =2011-1-1 13:00:00
items[1].endTime =2011-1-1 14:00:00
items[1].events[0]= Timing
items[1].streamType=Main
items[1].length =790
items[1].duration = 3600
Comment Params is same as FileFindHelper.startFind
Table 17-6
Syntax http://<server>/cgi-bin/BandLimit.cgi?action=getLimitState
Method GET
Description Get bandwidth limit state.
Example http://192.168.1.108/cgi-bin/bandLimit.cgi?action=getLimitState
Success
limit=true
Return
Comment —
Table 17-7
TP
http://<server>/cgi-bin/FileManager.cgi?action=addConditionList&condition.Types[0]=<
_A
Syntax paramValue>&condition.StartTime=<paramValue>&condition.EndTime=<paramValu
PI
e>&condition.Channel[0]=<paramValue>
Method GET
fo
http://192.168.1.108/cgi-bin/FileManager.cgi?action=addConditionList&condition.Types
In
[0]=RecordRestrict&condition.Types[1]=RecordProtect&condition.StartTime=2014-7-3
Example
%2021:02:32&condition.EndTime=2014-7-3%2023:02:32&condition.Channel[0]=1&con
te
dition.Channel[1]=3
lb
Success
OK
ra
Return
s
In table below:
Comment TypeIndex: The index of type array
ChIndex: The index of channel number array
Appendix:
Table 17-8
http://<server>cgi-bin/FileManager.cgi?action=cancelConditionList&condition.Types[0]
Syntax =<paramValue>&condition.StartTime=<paramValue>&condition.EndTime=<paramVa
lue>&condition.Channel[0]=<paramValue>
Method GET
Description Cancel protection of record files.
http://192.168.1.108/cgi-bin/FileManager.cgi?action=cancelConditionList&condition.Ty
pes[0]=RecordRestrict&condition.Types[1]=RecordProtect&condition.StartTime=2014-
Example
7-3%2021:02:32&condition.EndTime=2014-7-3%2023:02:32&condition.Channel[0]=1&
condition.Channel[1]=3
Success
OK
Return
Comment paramValue as Appendix above.
DA
HU
Table 17-9
TP
http://<server>/cgi-bin/FileManager.cgi?action=removeConditionList&condition.Types[0
_A
Syntax ]=<paramValue>&condition.StartTime=<paramValue>&condition.EndTime=<paramV
PI
alue>&condition.Channel[0]=<paramValue>
Method GET
fo
http://192.168.1.108/cgi-bin/FileManager.cgi?action=removeConditionList&condition.Ty
In
pes[0]=RecordRestrict&condition.Types[1]=RecordProtect&condition.StartTime=2014-
Example
7-3%2021:02:32&condition.EndTime=2014-7-3%2023:02:32&condition.Channel[0]=0&
te
condition.Channel[1]=3
lb
Success
OK
ra
Return
s
17.3.4 DownloadFile
download file
Request URL http://<server>/cgi-bin/FileManager.cgi?action=downloadFile
Method GET
Request Params ( key=value format in URL )
Name Type R/O Description Example
fileName string R filename or path download.jp
g
Request Example
http://192.168.1.108/cgi-bin/FileManager.cgi?action=downloadFile&fileName=download.jpg
<Binary Data>
17.3.5 UploadFile
Upload radar photos
DA
http://<server>/cgi-bin/FileManager.cgi?action=uploadFile&fileName=<FileName>&Pat
Request URL
h=<Path>
HU
Method POST
A_
Request Example
POST http://192.168.1.108/cgi-bin/FileManager.cgi?action=uploadFile&fileName=xxxxxx.bmp&fileLengt
fo
h=124879 HTTP/1.1
r
Host: 192.168.1.108
In
Connection: keep-alive
te
Content-Type: multipart/form-data;boundary=---------------------------8655433224198
Content-Length: xxxxxxxxx
lb
ra
-----------------------------8655433224198
s
Content-Disposition:form-data;name="upload"; filename="xxxxxx.bmp"
Content-Type: image/jpeg or application/x-MS-bmp
photo data….
-----------------------------8655433224198--
Table 17-10
Syntax http://<server>/cgi-bin/global.cgi?action=getDST
Method GET
Description Get daylight saving time state.
Example http://192.168.1.108/cgi-bin/global.cgi?action=getDST
Success
result = 1
Return
Comment result: 1/0, yes or not in daylight saving time
DA
HU
A_
HT
TP
_A
PI
fo
r
In
te
lb
ra
s
Table 18-1
http://<server>/cgi-bin/installManager.cgi?action=start&appname=<appname>&appid=
Syntax
<appid>
Method GET
DA
http://192.168.1.108/cgi-bin/installManager.cgi?action=start&appname=FaceDemo&ap
Example
pid=1
A_
Success
HT
OK
Return
TP
Parameters in URL:
_A
Stop Application
fo
Table 18-2
r
In
http://<server>/cgi-bin/installManager.cgi?action=stop&appname=<appname>&appid=
Syntax
<appid>
te
Method GET
lb
http://192.168.1.108/cgi-bin/installManager.cgi?action=stop&appname=FaceDemo&ap
Example
s
pid=1
Success
OK
Return
Parameters in URL:
Comment appname: the application name,
appid: optional, the application id
Table 18-3
URL http://<server>/cgi-bin/dhop.cgi?action=uploadApp
Method POST
Request --<boundary>
Content-Disposition: form-data; name="dev_upgrade"; filename="demo.bin"
Content-Type: application/octet-stream
<app data>
--<boundary>--
Response OK
DA
Table 18-4
A_
HT
URL http://<server>/cgi-bin/dhop.cgi?action=installAppByUrl
Method GET
TP
[ Example ]
r
GET http://192.168.1.108/cgi-bin/dhop.cgi?action=installAppByUrl&Url=https://aaa/bbb/c
Request
In
cc/app.bin
Response OK
te
lb
Table 18-5
URL http://<server>/cgi-bin/dhop.cgi?action=updateAppByUrl
Method GET
Description Update Application
[ Request Params ] (key=value format in URL)
appName string R The app name
Url string R The app download url
[ Response Params ] ( OK )
[ Example ]
GET http://192.168.1.108/cgi-bin/dhop.cgi?action=updateAppByUrl&appName=xxx&Url
Request
=https://aaa/bbb/ccc/app.bin
Table 18-6
URL http://<server>/cgi-bin/dhop.cgi?action=updateFirmwareByUrl
Method GET
Description Update firmware
[ Request Params ] (key=value format in URL)
Url string R The firmware download url
[ Response Params ] ( OK )
[ Example ]
GET http://192.168.1.108/cgi-bin/dhop.cgi?action=updateFirmwareByUrl&Url=https://aa
Request
a/bbb/ccc/firmware.bin
Response OK
Update application license with license download url
DA
Table 18-7
HU
A_
URL http://<server>/cgi-bin/dhop.cgi?action=updateLicenseByUrl
Method GET
HT
[ Example ]
r
GET http://192.168.1.108/cgi-bin/dhop.cgi?action=updateLicenseByUrl&appName=xxx&
Request
Url=https://aaa/bbb/ccc/license.bin
In
Response OK
te
Table 18-8
s
URL http://<server>/cgi-bin/dhop.cgi?action=uploadLicense
Method POST
Description Update application license.
[ Request Params ] (key=value format in URL)
appName string R The app name
[ Response Params ] ( OK )
[ Example ]
POST /cgi-bin/dhop.cgi?action=uploadLicense&appName=xxx HTTP/1.1
Host: 172.29.2.176
Content-Type: application/octet-stream
Request
Content-Length: <length>
URL http://<server>/cgi-bin/dhop.cgi?action=downloadLog
HU
Method GET
A_
[ Example ]
PI
Server: Device/1.0
r
Content-Type: Application/octet-stream
Response
Content-Length: <length>
In
te
Table 19-1
Syntax http://<server>/cgi-bin/deviceDiscovery.cgi?action=attach[&DeviceClass=<deviceClass>]
Method GET
DA
Example http://192.168.1.108/cgi-bin/deviceDiscovery.cgi?action=attach&DeviceClass=VTO
A_
deviceInfo[index].AlarmInputChannels=8
HT
deviceInfo[index].AlarmOutputChannels=0
deviceInfo[index].DeviceClass=VTO
TP
deviceInfo[index].DeviceType=VTO2000A
_A
deviceInfo[index].HttpPort=80
PI
deviceInfo[index].IPv4Address.DefaultGateway=172.12.0.1
deviceInfo[index].IPv4Address.DhcpEnable=false
fo
deviceInfo[index].IPv4Address.IPAddress=172.12.7.102
r
deviceInfo[index].IPv4Address.SubnetMask=255.255.0.0
In
deviceInfo[index].IPv6Address.DefaultGateway=2008::1
Success
deviceInfo[index].IPv6Address.DhcpEnable=false
te
Return
deviceInfo[index].IPv6Address.IPAddress=2008::6/112
lb
deviceInfo[index].Mac=00:01:5b:01:44:77
ra
deviceInfo[index].MachineName=YZZ4DZ008D00031
deviceInfo[index].Port=37777
s
deviceInfo[index].RemoteVideoInputChannels=0
deviceInfo[index].SerialNo=YZZ4DZ008D00031
deviceInfo[index].Vendor=Multi
deviceInfo[index].Version=1.200.0.0
deviceInfo[index].VideoInputChannels=1
deviceInfo[index].VideoOutputChannels=16
Parameters in URL:
deviceClass: in range of {VTO, VTH, VTT, VTS, VTNC, SHG}
Comment Parameters in Response:
index: the array index which starts from 0.
Version: Software Version
19.2.1 getStatus
Syntax http://<server>/cgi-bin/positionManager.cgi?action=getStatus
Method GET
Description Get gps info
Example http://192.168.1.108/cgi-bin/positionManager.cgi?action=getGPSStatus
Success status.Time=2011-07-03 21:02:32
Return status.Longitude=120.175556
status.Latitude=30.186389
status.Speed=30.00
status.Altitude=45.0
status.Bearing=45.3
status.SatelliteCount=11
DA
status.WorkStatus=1
HU
Altitude:Altitude, unit: m
_A
19.3 GpsControl
te
lb
19.3.1 getCaps
ra
s
Success OK or ERROR
DA
Return
HU
Appendix:
A_
ue type
TP
head.SyncTime true/false
19.4 LensFunc
fo
r
19.4.1 getCaps
In
te
URL http://<server>/cgi-bin/LensFunc.cgi?action=getCaps
lb
Method GET
ra
19.4.2 adjustAngleContinuously
URL http://<server>/cgi-bin/LensFunc.cgi?action=adjustAngleContinuously
Method GET
Description Adjust the angel continuously.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
Channel uint R Video channel index which starts from 1.
The moving direction, 0 : negative X axis direction, 1 : positive
Direction uint8 R X axis direction, 2 : negative Y axis direction, 3 : positive Y axis
direction
DA
[ Response Params ] ( OK )
A_
[ Example ]
HT
GET http://192.168.1.108/cgi-bin/LensFunc.cgi?action=adjustAngleContinuously&Chan
Request
nel=1&Direction=2&Velocity=2
TP
Response OK
_A
PI
19.4.3 stopAdjustingAngle
fo
r
URL http://<server>/cgi-bin/LensFunc.cgi?action=stopAdjustingAngle
In
Method GET
Description Stop adjusting angel
te
[ Response Params ] ( OK )
[ Example ]
Request GET http://192.168.1.108/cgi-bin/LensFunc.cgi?action=stopAdjustingAngle&Channel=1
Response OK
19.4.4 adjustDepthField
URL http://<server>/cgi-bin/LensFunc.cgi?action=adjustDepthField
Method GET
Description Adjust depth position
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
19.4.5 adjustDepthFieldContinuously
URL http://<server>/cgi-bin/LensFunc.cgi?action=adjustDepthFieldContinuously
Method GET
Description Adjust depth position continuously.
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
DA
[ Example ]
_A
GET http://192.168.1.108/cgi-bin/LensFunc.cgi?action=adjustDepthFieldContinuously&
Request
PI
Channel=1&DepthFieldSpeed=0.03
Response OK
fo
r
In
19.4.6 getDepthFieldStatus
te
URL http://<server>/cgi-bin/LensFunc.cgi?action=getDepthFieldStatus
lb
Method GET
ra
19.4.7 autoAdjustDepthField
URL http://<server>/cgi-bin/LensFunc.cgi?action=autoAdjustDepthField
Method GET
Description Automatic adjust depth position
[ Request Params ] ( key=value format at URL )
Name Type R/O Param Description
Channel uint R Video channel index which starts from 1.
[ Response Params ] ( OK )
DA
[ Example ]
HU
GET http://192.168.1.108/cgi-bin/LensFunc.cgi?action=autoAdjustDepthField&Channel=
Request
A_
1
HT
Response OK
TP
_A
Method POST
In
from 1.
ra
enumint{
0: Automatic correction
1: Manual correction
}
Direction enumint O Rotation direction. This 1
parameter is only valid when
the correction method is
manual correction.
enumint{
0: Clockwise
1: Counter clockwise
}
Step int O Speed (range: 0–8). 5
0 means stop rotation.
Request Example
HU
{
"Channel": 1,
A_
"Type": 1,
HT
"Direction": 1,
TP
"Step": 5,
_A
"Mode": 1
}
PI
fo
19.5 LensManager
r
In
19.5.1 resetAngle
te
lb
Method GET
[ Response Params ] ( OK )
[ Example ]
Request http://172.27.1.153/cgi-bin/LensManager.cgi?action=resetAngle&Channel=1
19.6 FishEye
Table 19-2
http://<server>/cgi-bin/devVideoInput.cgi?action=getCapsEx&channel=<ChannelNo>&
Syntax
name=VideoInFishEye
DA
Method GET
HU
Example
VideoInFishEye
HT
caps.Type=Chip
TP
caps.MountMode[0]=WallMode
_A
caps.MountMode[1]=CeilMode
……
PI
caps.CalibrateMode[0]=Original
Success
caps.CalibrateMode[1]=Config
fo
Return
caps.CalibrateMode[2]=Panorama
r
……
In
caps.EPtzCmd[0]=Up
te
caps.EPtzCmd[1]=Down
…….
lb
Parameters in Response:
ra
Type: string, it can be Chip, Plugin, and ChipAndPlugin. Chip means only support
s
calibrate by device.
Plugin means only support calibrate by plugin. ChipAndPlugin means support
both.
MountMode: string and array.and MountMode means the install mode, it can be
Comment
WallMode,CeilMode, FloorMode,180CeilMode.
CalibrateMode: string and array. It can be Original, Config, Panorama,
DoublePanorama, OriginalPlusThreeEPtzRegion, Single, FourEPtzRegion,
TwoEPtzRegion, and Normal.
EPtzCmd: string and array. It can be ZoomIn, ZoomOut, Up, Down, Left, Right,
RotateClock, RotateAntiClock, Stop, TapView, and ShowRegion.
Syntax http://<server>/cgi-bin/configManager.cgi?action=getConfig&name=FishEye
Method GET
Description Get FishEye config.
Example http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=FishEye
head.PlaceHolder=1
Success
head.CalibrateMode=Original
Return
……..
Parameters in Response:
head = table.FishEye[ChannelNo]
ChannelNo: integer, array index starts from 0, which means video channel (equals to
Comment video channel index -1, and so 0 means channel 1).
PlaceHolder:integer, it can be 1(CeilMode), 2(WallMode), 3(FloorMode).
CalibrateMode: string. It can be Original, Config, Panorama, DoublePanorama,
OriginalPlusThreeEPtzRegion, Single, FourEPtzRegion, TwoEPtzRegion, and Normal.
DA
Table 19-4
A_
HT
http://<server>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramV
Syntax
TP
alue>[&<paramName>=<paramValue>…]
Method GET
_A
der=1
r
In
Example
Mode=Panorama
lb
ra
http://192.168.1.108/cgi-bin/configManager.cgi?action=setConfig&FishEye[0].Calibrate
Mode=Panorama&FishEye[0].PlaceHolder=1 to change the placeholder and
calibratemode in one message.
Success
OK
Return
Comment —
19.7.1 getCaps
Please use the interface getCapsEx.
Radar equipment detection capability request
Syntax http://<server>/cgi-bin/radarAdaptor.cgi?action=getCaps&channel=< ChannelNo >
19.7.2 getCapsEx
Radar equipment caps request
Syntax http://<server>/cgi-bin/radarAdaptor.cgi?action=getCapsEx&channel=<ChannelNo>
Method GET
DA
Example http://192.168.1.108/cgi-bin/radarAdaptor.cgi?action=getCapsEx&channel=1
A_
...
caps.Capacity.List[23] = 300
fo
caps.RadarChannel.List[23] = 2
lb
19.7.3 getStatus
Radar Equipment Status Request
Syntax http://<server>/cgi-bin/radarAdaptor.cgi?action=getStatus&channel=<ChannelNo>
Method GET
Description Request radar device status
Example http://192.168.1.108/cgi-bin/radarAdaptor.cgi?action=getCaps&channel=1
Success status.State = Normal
Return
Comment Parameters in URL:
ChannelNo: integer, channel index which starts from 1.
19.7.4 calculateRealSize
Radar real map size calculation
Syntax http://<server>/cgi-bin/radarAdaptor.cgi?action=calculateRealSize&channel=<Channel
No>&distance=<distance>&startPoint[0]=<startX>&startPoint[1]=<startY>&endPoint[0
]=<endX>&endPoint[1]<endY>
Method GET
Description Calculate radar real map size
Example http://192.168.0.108/cgi-bin/radarAdaptor.cgi?action=calculateRealSize&channel=1&dis
tance=10.01&startPoint[0]=10&startPoint[1]=20&endPoint[0]=30&endPoint[1]=40
DA
Success realSize.realMap[0]=300
HU
Return realSize.realMap[1]=400
Comment Parameters in URL:
A_
Appendix:
fo
19.7.5 attachAlarmPointInfo
lb
ra
Syntax http://<server>/cgi-bin/radarAdaptor.cgi?action=attachAlarmPointInfo&channel=<Chann
elNo>&[&heartbeat=<Heartbeat>]
Method GET
Description Request radar track points
[ Request Params ] ( key=value format in URL )
Name Type R/O Param Description
Channel int R Video channel index which starts from 1
Send heartbeat interval, range is [1, 60],unit
is second. If the URL contains this
parameter, and the value is 5, it means
heartbeat int O every 5 seconds the device should send the
heartbeat message to the client, the
heartbeat meaage are "Heartbeat". If this
parameter is not present, its default value is
--<boundary>
Content-Type: application/octet-stream
Content-Length: <length>
Channel=1
info[0].PointType=0x80
info[0].RegionNumber=1
info[0].ObjectType=1
DA
info[0].TrackID=1
HU
……
TP
info[3].PointType=0x80
_A
……
PI
--<boundary>
Content-Type: text/plain
fo
Content-Length: 11
r
In
Heartbeat
te
-<boundary>
Content-Type: application/octet-stream
lb
Content-Length: <length>
ra
s
Channel=1
info[0].PointType=0x80
……
--<boundary>
…
Comment Parameters in URL:
ChannelNo: integer, channel index which starts from 1.
Notice:
A detach occurs when the connection is disconnected.
Appendix:
HT
19.7.7 manualLocate
fo
r
Syntax http://<server>/cgi-bin/radarAdaptor.cgi?action=manualLocate&channel=<ChannelNo>&
te
point[0]=<x>&point[1]=<y>
lb
Method GET
Description Request manual radar positioning
ra
Example http://192.168.1.108/cgi-bin/radarAdaptor.cgi?action=manualLocate&channel=1&point[0]
s
=10&point[1]=10
Success OK
Return
Comment Parameters in URL:
ChannelNo: integer, channel index which starts from 1.
point: Pixel coordinates in the code stream
19.7.8 startRadarCalibration
Radar equipment calibration
Syntax http://<server>/cgi-bin/radarAdaptor.cgi?action=startRadarCalibration&channel=<Chan
nelNo>&mode=<mode>&direction=<direction>&step=<step>
19.7.9 addRadarLinkSD
DA
Method GET
HT
bject> information
PI
8]
r
Request Example
lb
http://192.168.1.108/cgi-bin/radarAdaptor.cgi?action=addRadarLinkSD&Devices[0].SDLinkIP=10.11.17.
ra
98&Devices[0].Port=5000&Devices[0].Usename=admin&Devices[0].PassWord=admin123&Channel=1
s
http://192.168.1.108/cgi-bin/radarAdaptor.cgi?action=delRadarLinkSD&Devices[0].SDLinkIP=10.11.17.9
HU
8&Channel=1
A_
Response Example
_A
OK
PI
19.7.11 [Config]MapPara
fo
r
map para
Parameter Type Required Description Example
In
map
++RadarDirectionAngle double Yes Configuration of radar direction (°) 70.5
s
++RadarPixelPoint integer Yes Pixel coordinates of radar on the map [10, 20]
+MapSize object Yes Configuration of map size null
Pixel coordinates of line segment in the [[10,10],
++PixelLine integer[][] Yes
image [20,20]]
The actual length represented by the
++Distance double Yes 10.1
line segment in the image (m)
Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=MapPara
configname and configobject in the following table correspond to specific configuration names and
configuration contents.
special explanation:
In the return of getConfig, there is a "table" level above the specific configuration.
table.MapPara[0].RadarCoordinate.RadarDirectionAngle=70.5
HU
table.MapPara[0].RadarCoordinate.RadarPixelPoint[0]=10
table.MapPara[0].RadarCoordinate.RadarPixelPoint[1]=20
A_
table.MapPara[0].MapSize.PixelLine[0][0]=10
HT
table.MapPara[0].MapSize.PixelLine[0][1]=10
TP
table.MapPara[0].MapSize.PixelLine[1][0]=20
table.MapPara[0].MapSize.PixelLine[1][1]=20
_A
table.MapPara[0].MapSize.Distance=10.1
PI
table.MapPara[1].RadarCoordinate.RadarDirectionAngle=70.5
…
fo
r
setConfig
In
Syntax http://<server>/cgi-bin/configManager.cgi?action=setConfig
te
Method GET
Request Params ( key=value format in URL )
lb
content
Request Example
http://10.0.0.8/cgi-bin/configManager.cgi?action=setConfig&MapPara[0].RadarCoordinate.RadarDirectio
nAngle=70.5&MapPara[0].RadarCoordinate.RadarPixelPoint[0]=10&MapPara[0].RadarCoordinate.Rad
arPixelPoint[1]=20&MapPara[0].MapSize.PixelLine[0][0]=10&MapPara[0].MapSize.PixelLine[0][1]=10&
MapPara[0].MapSize.Distance=10.1
[["1
A_
00:00:00-23:59:59",
"0
HT
00:00:00-23:59:59",
++TimeSectio TimeSect TimeSection is used for the filtering of notify
PI
Yes "0
n ion[][] action. No data is sent if it is not within the
00:00:00-23:59:59",
period.
fo
"0
All fields except this one are used for
00:00:00-23:59:59",
r
listener response.
"0
In
00:00:00-23:59:59",]
te
]
lb
++SnapshotC
int[] Yes indicates that the corresponding channel [0]
s
hannels
needs to take snapshot, and the channel
number starts from 0.
++SnapshotE
bool Yes Enable snapshotg false
nable
++RecordLat Record delay time (second)
integer Yes 10
ch Range [10, 300]
List of record channel numbers.
One-dimensional array. Each member
++RecordCha
int[] Yes indicates that the corresponding channel [0]
nnels
needs to record, and the channel number
starts from 0.
Record enabling, with RecordChannels.
++RecordEna
bool Yes Record is enabled if it is true; start false
ble
recording when the event action is start and
hannels
needs to output alarm, and the channel
A_
Example
r
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=RadarAnalyseRule
In
Note:
te
19.7.13 [Config]RadarCalibration
s
RadarCalibration
Parameter Type Required Description Example
Configuration of radar and PTZ
cameras calibration.
RadarCalibration object[] Yes One-dimensional array, with one
configuration for each video
channel.
+SlopeAngle double Yes Slope compensation angle. 10.0
+InstallHeight double Yes Radar installation height (m). 10.5
+CalibrationParas object[] Yes Calibration parameter. null
Vertical compensation angle of
++TiltRecoupAngle double Yes linked PTZ camera. 5.0
The range is -90° to 90°; 0° in the
Example
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=RadarCalibration
_A
Note:
PI
19.7.14 [Config]RadarGuardLine
In
RadarGuardLine
te
19.7.15 [Config]RadarLink
HT
TP
RadarLink
Parameter Type Required Description Example
_A
Example
r
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name= RadarLink
In
Note:
te
19.7.16 [Config]RadarLinkDevice
s
RadarLinkDevice
Parameter Type Required Description Example
Remote device linkage
configuration.
object[][24]
Two-dimensional array. The
RadarLinkDevice object[][] Yes
first dimension indicates video
channel, and the second
dimension indicates multiple
remote linkage devices.
+DeviceName char[128] Yes Device name "Dahua North Gate"
+DeviceType char[32] Yes Device type "200W PTZ camera"
+Vendor char[32] Yes Device source "DH"
19.7.17 [Config]RadarPara
RadarPara
Parameter Type Required Description Example
Radar function configuration.
RadarPara object[] Yes One-dimensional array, with one configuration
for each video channel.
+Sensitivity object No Recognition sensitivity information. null
Optional. Skip if this field does not exist. The
DA
+TargetRatio object Yes Tracking screen ratio for radar-PTZ linkage. null
TP
Channel selection.
r
2: Channel 2
te
Example
HU
http://192.168.1.108/cgi-bin/configManager.cgi?action=getConfig&name=RadarTrackGlobal
A_
Note:
Please refer to appendix in chapter 15.6.11 for configuration operation method
HT
TP
_A
19.7.19 [Config]RemoteSDLink
PI
RemoteSDLink
fo
19.8 Advertisement
19.8.1.2 Response
Parameter
key=value format at URL
Format
Parameter Type Required Description Example
DA
Supports Ad placements or
Support bool Yes true
HU
not
A_
16 types
TP
Enumchar[32]
_A
{
PI
FileManager.uploadFile to
In
Enumchar[32]
HU
{
“H264”: H264 format
A_
"H264Private": H264
HT
“H265”:H265 format
_A
"H265Private":H265
encoded dav video
PI
}
In
width.
Maximum pixels of video
lb
height.
Maximum pixels of video
+MaxHeight int Yes 1280
height.
Capabilities corresponding
Audio object No to the audio file contained in
the advertising file.
Supports playing
+Support bool Yes true
advertisement audios or not.
List of supported audio
decoding formats;
the array with up to 64
+Formats array/array<> Yes
returns. Each member
represents a combination of
decoding parameters.
16,
HU
24,
}
A_
supported.
Format capabilities
r
advertising file.
lb
Supports playing
+Support int Yes advertisement images or true
ra
not.
s
Video.MaxWidth=800
HU
Video.MinHeight=50
Video.MaxHeight=1280
A_
Audio.Support=true
HT
Audio.Formats[0u].Compression="PCM"
TP
Audio.Formats[0u].Frequency=16000
_A
Audio.Formats[0u].Depth=16
Audio.Formats[0u].PacketPeriod=40
PI
OneAVFileMaxSize=102400
fo
MaxAVFileNums=5
Pictrue.Support=true
r
Pictrue.Types="PNG","JPG","BMP"
In
Pictrue.MinWidth=50
te
Pictrue.MaxWidth=800
Pictrue.MinHeight=50
lb
Pictrue.MaxHeight=1280
ra
Pictrue.OnePicMaxSize=100
s
Pictrue.MaxPicNums=50
19.8.2.1 Request
Syntax http://<server>/cgi-bin/VideoOutput.cgi?action=list&path=/mnt/dvr/sda0/2010/8/11/dav
Method GET
Parameter Format key=value format at URL
19.8.2.2 Response
Parameter key=value format at URL
Format
Parameter Type Required Description Example
elementInfo object[] No File element
information.
+type enumchar[ No File element type. "File"
16] enumchar[16]
{ "File": file
"Directory":
DA
Directory}
HU
enumchar[16]{
_A
}
++CreateTim char[20] No Creation time "2010-4-15 9:58:32"
r
e
In
e
lb
Unit: Byte.
s
elementInfo[1].file.path=mnt/dvr/sda0/2010/8/11/dav.jpg
HU
elementInfo[1].file.Desc=xxxxxxx
elementInfo[1].directory.CreateTime=2010-4-15 9:58:32
A_
elementInfo[1].directory.path=/mnt/dvr/sda0/2010/8/11/dav
HT
…
TP
_A
19.8.3.1 Request
In
Syntax http://<server>/cgi-bin/VideoOutput.cgi?action=removeFiles&fileName[0]=a.dav
te
Method GET
lb
19.8.4.1 Request
Syntax http://<server>/cgi-bin/VideoOutput.cgi?action=deliveryFile
Method POST
Parameter key=value format at URL
played once.
lb
time.
s
human-device interaction
before recognition.
PI
successfully before
downloading. The actual
fo
field, no verification is
ra
performed.
s
19.8.5.1 Request
HU
Syntax http://<server>/cgi-bin/VideoOutput.cgi?action=changeSustain&Sustain=5
A_
Method GET
HT
Complete Example
PI
http://<server>/cgi-bin/VideoOutput.cgi?action=changeSustain&Sustain=5
fo
19.8.6.1 Request
ra
Syntax http://<server>/cgi-bin/VideoOutput.cgi?action=queryDeliveredFile
s
Method GET
Parameter Format key=value format at URL
Parameter Type Required Description Example
Complete Example
http://<server>/cgi-bin/VideoOutput.cgi?action=queryDeliveredFile
19.8.6.2 Response
Parameter key=value format at URL
Format
Parameter Type Required Description Example
params object[] Yes All play information
+Enable bool No Enable play function. true
maximum of six
HU
be left blank or
HT
entered as null,
TP
time.
Alone: Cut-in play
(playing alone).
+FileList object[] No Video file list. Up to 20 file lists are
supported.
++Download bool No Check whether the true
ed file has been
downloaded to the
device.
++FileType enumchar[1 No File type. "Video"
6] enumchar[16]{
"Video": Video file
"Image": Image file
"Audio": Audio file
time).
++TimeSecti TimeSchedu No Advertisement [ ["1 00:00:00-07:00:00", "1
A_
two-dimensional 17:30:00-23:59:59" ], …, [ ], ]
TP
corresponds to
r
holidays, with a
In
maximum of six
te
be left blank or
ra
entered as null,
s
params[0].FileList.Size=102400
params[0].FileList.ID=3
HU
...
A_
HT
TP
Method POST
ra
Response Example
A_
{
HT
"token": 2342343,
TP
"totalCount": 233
}
_A
PI
Method POST
te
3: III Category
4: IV Category
HU
5: V Category
A_
}
+PH float O pH (1–14) 5.5
HT
50 mg/L)
PI
mg/ L)
lb
mg/L)
+CODMn float O Permanganate index 20.0
(0–100 mg/L)
+SS float O Floating objects (0– 500.0
1000 mg/ L)
+BOD5 float O Biochemical oxygen 25.0
demand for 5 days (0–
50 mg/L)
+NO3-N float O Nitrate (0–500 mg/ L) 250.0
+TSI float O Eutrophic index (no 25.0
range)
+BlackSmellyL enumchar[ O Black and odorous "Light"
evel 32] level
enumchar[32]{
"SD": 20.0,
"COD": 20.0,
HU
"NN": 250.0,
A_
"Chl-a": 20.0,
HT
"TP": 2.5,
TP
"CODMn": 20.0,
"SS": 500.0,
_A
"BOD5": 25.0,
PI
"NO3-N": 250.0,
"TSI": 25.0,
fo
"BlackSmellyLevel": "Light",
r
"DO": 20.0
In
},…{}]
}
te
lb
ra
detection currently.
enumint{
A_
0: No
HT
1: Yes
TP
}
SupportLocal enumint O Supports local storage. 0
_A
DataStore enumint{
PI
0: No
1: Yes
fo
}
r
Response Example
In
{
te
"Support": 0,
"SupportLocalDataStore": 0
lb
}
ra
s
4: IV Category
5: V Category
HU
}
A_
quality detection.
TP
alarm is triggered.
PI
50 mg/L)
In
50 mg/L)
+SD float O Transparency (0–30 m) 20.0
lb
nitrogen value
}
HU
Response Example
A_
{
HT
"Quality": 1,
TP
"UploadInfo": {
"PH": 5.2,
_A
"NTU": 200.0,
PI
"NH3-N": 20.0,
"TN": 25.0,
fo
"SD": 20.0,
r
"COD": 50.0,
In
"NN": 20.0,
"DO": 5.0,
te
"Chl-a": 200.0,
lb
"TP": 2.5,
ra
"CODMn": 20.0,
s
"SS": 20.0,
"BOD5": 25.0,
"NO3-N": 20.0,
"TSI": 20.0,
"BlackSmellyLevel": "Light"
},
"FlunkType": ["PH"," NTU ", …]
}