文章摘要
还在为视捷车牌识别相机的第三方集成而头疼?本文详细解析了相机配置协议的核心接口,从服务器通讯参数设置到UDP广播查找设备,每个字段含义和用法都一一拆解。无论你需要配置MQTT连接、图片上传设置,还是批量修改相机网络参数,这里都有完整的JSON示例和参数说明,帮你快速打通相机与系统的数据通道。
— 此摘要由停车技术员AI分析文章内容生成

WEB服务器CGI接口说明

配置相机参数

接口路径:http://{ip}/cgi-bin/cameraConfigure3rd

http方法: POST

(1)请求内容(JSON,UTF-8)

(2)回复内容(JSON,UTF-8)

HTTP协议示例:

——————————————————————

请求:

POST /cgi-bin/cameraControl HTTP/1.1

Host: 172.19.2.60

Content-Type: application/json

Content-Length: 468

{“cmd”:”protocolConfig”,”content”:{“operateType”:”set”,”protocolType”:”1″,”MQTTConfig”:{“autoRegisterFlag”:”0″,”registerAddr”:””,”registerAppKey”:””,”registerAppSecret”:””,”reportSerial0Data”:”1″,”reportSerial1Data”:”1″,”serverAddr”:”172.19.16.203″,”serverPort”:”1883″,”username”:”test”,”password”:”123456″,”heartbeatTime”:”60″,”uploadImageType”:”2″,”uploadImageAddr”:”http://test1.172.19.16.203:9090/camera”,”uriStyle”:”0″,”accessKeyId”:”12345″,”secretKey”:”67890″}}}

——————————————————————

回复:

HTTP/1.0 200 OK

Content-Length: 78

Content-Type: application/json

{{“cmd”:”protocolConfig”,”code”:”0″,”msg”:””,”content”:{“operateType”:”set”}}}

服务器通讯协议参数

设置服务器通讯协议参数

请求:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “protocolConfig”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

content

object

operateType

string

操作类型,固定为”set”

protocolType

int

协议类型,0:SDK协议,1:MQTT协议,2:纯脱机(2024-04-15)

SDKConfig

object

SDK协议参数

mode

int

SDK通讯方式

0:主动模式,1:被动模式

被动模式还未使用

serverAddr

string

SDK服务器地址

serverPort

int

SDK服务器端口

MQTTConfig

object

MQTT协议参数

serverAddr

string

MQTT服务器地址

serverPort

int

MQTT服务器端口

username

string

MQTT登录用户名

password

string

MQTT登录密码

heartbeatTime

int

自定义心跳的周期时间,单位秒

reportSerial0Data

int

上报串口1数据

0:关闭,1:开启

reportSerial1Data

int

上报串口2数据,0:关闭,1:开启

uploadImageType

int

上传图片协议类型,0:MQTT,1:HTTP,2:对象存储S3

uploadImageAddr

string

上传图片的地址,协议类型为HTTP和对象存储时有效

格式请参考文档”车牌识别相机MQTT协议” – 3.2 上传图片地址格式说明

uriStyle

int

对象存储URI风格(访问对象存储服务器时使用),协议类型为对象存储时有效

0:自动

1:路径风格(path-style)

2:虚拟主机风格(virtual-hosted-style)

2024-01-10新增

accessKeyId

string

对象存储ak,协议类型为对象存储时有效

secretKey

string

对象存储sk,协议类型为对象存储时有效

autoRegisterFlag

int

自动注册,0:关闭,1:开启

2023-12-19新增

registerAddr

string

自动注册地址

长度限制99字节

2023-12-19新增

registerAppKey

string

自动注册appKey

长度限制63字节

2023-12-19新增

registerAppSecret

string

自动注册appSecret

长度限制127字节

2023-12-19新增

回复:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “protocolConfig”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

code

int

响应结果,0:成功,1:失败

msg

string

响应结果描述

content

object

operateType

string

操作类型,固定为”set”

示例:

请求:

{

“cmd”: “protocolConfig”,

“content”: {

“operateType”: “set”,

“protocolType”: “1”,

“MQTTConfig”: {

“autoRegisterFlag”: “0”,

“registerAddr”: “”,

“registerAppKey”: “”,

“registerAppSecret”: “”,

“reportSerial0Data”: “1”,

“reportSerial1Data”: “1”,

“serverAddr”: “172.19.16.203”,

“serverPort”: “1883”,

“username”: “test”,

“password”: “123456”,

“heartbeatTime”: “60”,

“uploadImageType”: “2”,

“uploadImageAddr”: “http://test1.172.19.16.203:9090/camera”,

“uriStyle”: “0”,

“accessKeyId”: “12345”,

“secretKey”: “67890”

}

}

}

回复:

{

“cmd”: “protocolConfig”,

“code”: “0”,

“msg”: “”,

“content”: {

“operateType”: “set”

}

}

获取服务器通讯协议参数

请求:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “protocolConfig”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

content

object

operateType

string

操作类型,固定为”get”

回复:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “protocolConfig”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

code

int

响应结果,0:成功,1:失败

msg

string

响应结果描述

content

object

operateType

string

操作类型,固定为”get”

protocolType

int

协议类型,0:SDK协议,1:MQTT协议,2:纯脱机(2024-04-15)

SDKConfig

object

SDK协议参数

mode

int

SDK通讯方式

0:主动模式,1:被动模式

被动模式还未使用

serverAddr

string

SDK服务器地址

serverPort

int

SDK服务器端口

MQTTConfig

object

MQTT协议参数

serverAddr

string

MQTT服务器地址

长度限制99字节

serverPort

int

MQTT服务器端口

username

string

MQTT登录用户名

password

string

MQTT登录密码

heartbeatTime

int

自定义心跳的周期时间,单位秒

reportSerial0Data

int

上报串口1数据

0:关闭,1:开启

reportSerial1Data

int

上报串口2数据,0:关闭,1:开启

uploadImageType

int

上传图片协议类型,0:MQTT,1:HTTP,2:对象存储S3

uploadImageAddr

string

上传图片的地址,协议类型为HTTP时有效

长度限制255字节

格式请参考文档”车牌识别相机MQTT协议” – 3.2 上传图片地址格式说明

uriStyle

int

对象存储URI风格(访问对象存储服务器时使用),协议类型为对象存储时有效

0:自动

1:路径风格(path-style)

2:虚拟主机风格(virtual-hosted-style)

2024-01-10新增

accessKeyId

string

对象存储ak,协议类型为对象存储时有效

长度限制63字节

secretKey

string

对象存储sk,协议类型为对象存储时有效

长度限制127字节

autoRegisterFlag

int

自动注册,0:关闭,1:开启

2023-12-19新增

registerAddr

string

自动注册地址

长度限制99字节

2023-12-19新增

registerAppKey

string

自动注册appKey

长度限制63字节

2023-12-19新增

registerAppSecret

string

自动注册appSecret

长度限制127字节

2023-12-19新增

示例:

请求:

{

“cmd”: “protocolConfig”,

“content”: {

“operateType”: “get”

}

}

回复:

{

“cmd”: “protocolConfig”,

“code”: “0”,

“msg”: “”,

“content”: {

“operateType”: “get”,

“protocolType”: “1”,

“SDKConfig”: {

“mode”: “0”,

“serverAddr”: “172.19.8.203”,

“serverPort”: “6001”

},

“MQTTConfig”: {

“serverAddr”: “172.19.16.203”,

“serverPort”: “1883”,

“username”: “test”,

“password”: “123456”,

“heartbeatTime”: “60”,

“reportSerial0Data”: “1”,

“reportSerial1Data”: “1”,

“uploadImageType”: “2”,

“uploadImageAddr”: “http://test1.172.19.16.203:9090/camera”,

“uriStyle”: “0”,

“accessKeyId”: “12345”,

“secretKey”: “67890”,

“autoRegisterFlag”: “0”,

“registerAddr”: “”,

“registerAppKey”: “”,

“registerAppSecret”: “”

}

}

}

查找相机(UDP广播)

广播地址和端口:255.255.255.255:8301

二次封包格式:包类型(1字节,固定0x04)+包长度(2字节)+JSON数据(N字节)

二次封包示例:04 00 0E 7B 22 63 6D 64 22 3A 22 74 65 73 74 22 7D

{ ” c m d ” : ” t e s t ” }

请求:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “ipcamSearchBC”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

content

object

assistID

string

调试助手ID,相机回复时将此ID附加在回复指令中

用户自定义

cameraList

array

(object)

相机ID列表,无此字段时所有相机都回复,存在此字段时只有数组中对应相机ID才回复

cameraID

string

相机ID

回复:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “ipcamSearchBC”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

code

int

响应结果,0:成功,1:失败

msg

string

响应结果描述

content

object

deviceType

int

deviceType:设备类型,固定为”10”

assistID

string

调试助手ID

cameraID

string

相机ID

nodeName

string

通道名称

cameraVersion

string

相机版本号

type

int

相机本地IP类型,0:静态IP,1:DHCP

localIP

string

相机本地IP

netmask

string

相机子网掩码

gatway

string

相机网关

dnsType

int

相机DNS类型,0:静态IP,1:DHCP

dns

string

相机DNS

mac

string

相机MAC地址

online

int

和服务器的连接状态,0-离线,1-在线

MAType

string

设备类型,0:主机,1:辅机

buddyIP

string

主机/辅机对应的辅机/主机IP

示例:

请求:

{

“cmd”: “ipcamSearchBC”,

“content”: {

“assistID”: “c4528b90-4c14-474f-a0f8-49aff38aa0dc”

}

}

回复:

{

“cmd”: “ipcamSearchBC”,

“code”: “0”,

“msg”: “”,

“content”: {

“deviceType”: “10”,

“assistID”: “c4528b90-4c14-474f-a0f8-49aff38aa0dc”,

“cameraID”: “CHE230000000000001”,

“cameraVersion”: “SJSJ1.086.S30.B.1.2Z”,

“nodeName”: “通道1”,

“online”: “0”,

“MAType”: “0”,

“buddyIP”: “172.19.2.62”,

“type”: “0”,

“dnsType”: “0”,

“localIP”: “172.19.2.60”,

“netmask”: “255.255.0.0”,

“gatway”: “172.19.16.203”,

“dns”: “114.114.114.114”,

“mac”: “00:00:ac:13:02:3c”

}

}

实际请求的十六进制数据内容:

04 00 6C 7B 0D 0A 20 20 22 63 6D 64 22 3A 20 22 69 70 63 61 6D 53 65 61 72 63 68 42 43 22 2C 0D 0A 20 20 22 63 6F 6E 74 65 6E 74 22 3A 20 7B 0D 0A 20 20 20 20 22 61 73 73 69 73 74 49 44 22 3A 20 22 63 34 35 32 38 62 39 30 2D 34 63 31 34 2D 34 37 34 66 2D 61 30 66 38 2D 34 39 61 66 66 33 38 61 61 30 64 63 22 0D 0A 20 20 7D 0D 0A 7D

实际回复的十六进制数据内容:

04 02 20 7B 0D 0A 20 20 22 63 6D 64 22 3A 20 22 69 70 63 61 6D 53 65 61 72 63 68 42 43 22 2C 0D 0A 20 20 22 63 6F 64 65 22 3A 20 22 30 22 2C 0D 0A 20 20 22 6D 73 67 22 3A 20 22 22 2C 0D 0A 20 20 22 63 6F 6E 74 65 6E 74 22 3A 20 7B 0D 0A 20 20 20 20 22 64 65 76 69 63 65 54 79 70 65 22 3A 20 22 31 30 22 2C 0D 0A 20 20 20 20 22 61 73 73 69 73 74 49 44 22 3A 20 22 63 34 35 32 38 62 39 30 2D 34 63 31 34 2D 34 37 34 66 2D 61 30 66 38 2D 34 39 61 66 66 33 38 61 61 30 64 63 22 2C 0D 0A 20 20 20 20 22 63 61 6D 65 72 61 49 44 22 3A 20 22 43 48 45 32 33 30 30 30 30 30 30 30 30 30 30 30 30 31 22 2C 0D 0A 20 20 20 20 22 63 61 6D 65 72 61 56 65 72 73 69 6F 6E 22 3A 20 22 53 4A 53 4A 31 2E 30 38 36 2E 53 33 30 2E 42 2E 31 2E 32 5A 22 2C 0D 0A 20 20 20 20 22 6E 6F 64 65 4E 61 6D 65 22 3A 20 22 CD A8 B5 C0 31 22 2C 0D 0A 20 20 20 20 22 6F 6E 6C 69 6E 65 22 3A 20 22 30 22 2C 0D 0A 20 20 20 20 22 4D 41 54 79 70 65 22 3A 20 22 30 22 2C 0D 0A 20 20 20 20 22 62 75 64 64 79 49 50 22 3A 20 22 31 37 32 2E 31 39 2E 32 2E 36 32 22 2C 0D 0A 20 20 20 20 22 74 79 70 65 22 3A 20 22 30 22 2C 0D 0A 20 20 20 20 22 64 6E 73 54 79 70 65 22 3A 20 22 30 22 2C 0D 0A 20 20 20 20 22 6C 6F 63 61 6C 49 50 22 3A 20 22 31 37 32 2E 31 39 2E 32 2E 36 30 22 2C 0D 0A 20 20 20 20 22 6E 65 74 6D 61 73 6B 22 3A 20 22 32 35 35 2E 32 35 35 2E 30 2E 30 22 2C 0D 0A 20 20 20 20 22 67 61 74 77 61 79 22 3A 20 22 31 37 32 2E 31 39 2E 31 36 2E 32 30 33 22 2C 0D 0A 20 20 20 20 22 64 6E 73 22 3A 20 22 31 31 34 2E 31 31 34 2E 31 31 34 2E 31 31 34 22 2C 0D 0A 20 20 20 20 22 6D 61 63 22 3A 20 22 30 30 3A 30 30 3A 61 63 3A 31 33 3A 30 32 3A 33 63 22 0D 0A 20 20 20 20 7D 0D 0A 7D

修改相机IP(UDP广播)

广播地址和端口:255.255.255.255:8301

二次封包格式:包类型(1字节,固定0x04)+包长度(2字节)+JSON数据(N字节)

二次封包示例:04 00 0E 7B 22 63 6D 64 22 3A 22 74 65 73 74 22 7D

{ ” c m d ” : ” t e s t ” }

请求:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “networkConfigBC”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

content

object

assistID

string

调试助手ID,相机回复时将此ID附加在回复指令中

用户自定义

cameraID

string

相机ID

type

int

相机本地IP类型,0:静态IP,1:DHCP

localIP

string

相机本地IP

netmask

string

相机子网掩码

gatway

string

相机网关

dnsType

int

相机DNS类型,0:静态IP,1:DHCP

当type为0时,dnsType必须为0

dns

string

相机DNS

nodeName

string

通道名称

MAType

string

设备类型,0:主机,1:辅机

buddyIP

string

主机/辅机对应的辅机/主机IP

回复:

字段名

数据类型

必有字段

说明

cmd

string

命令码,固定为 “networkConfigBC”

cmdId

string

此次命令的唯一标识,与请求指令中的cmdId一致

cmdTs

int

此次命令的UTC时间戳,单位秒

code

int

响应结果,0:成功,1:失败

msg

string

响应结果描述

content

object

assistID

string

调试助手ID

cameraID

string

相机ID

示例:

请求:

{

“cmd”: “networkConfigBC”,

“content”: {

“assistID”: “c4528b90-4c14-474f-a0f8-49aff38aa0dc”,

“cameraID”: “CHE230000000000001”,

“type”: “0”,

“localIP”: “172.19.2.60”,

“netmask”: “255.255.0.0”,

“gatway”: “172.19.16.203”,

“dnsType”: “0”,

“dns”: “114.114.14.114”

}

}

回复:

{

“cmd”: “networkConfigBC”,

“code”: “0”,

“msg”: “”,

“content”: {

“assistID”: “c4528b90-4c14-474f-a0f8-49aff38aa0dc”,

“cameraID”: “CHE230000000000001”

}

}

实际请求的十六进制数据内容:

04 01 38 7B 0D 0A 20 20 22 63 6D 64 22 3A 20 22 6E 65 74 77 6F 72 6B 43 6F 6E 66 69 67 42 43 22 2C 0D 0A 20 20 22 63 6F 6E 74 65 6E 74 22 3A 20 7B 0D 0A 20 20 20 20 22 61 73 73 69 73 74 49 44 22 3A 20 22 63 34 35 32 38 62 39 30 2D 34 63 31 34 2D 34 37 34 66 2D 61 30 66 38 2D 34 39 61 66 66 33 38 61 61 30 64 63 22 2C 0D 0A 20 20 20 20 22 63 61 6D 65 72 61 49 44 22 3A 20 22 43 48 45 32 33 30 30 30 30 30 30 30 30 30 30 30 30 31 22 2C 0D 0A 20 20 20 20 22 74 79 70 65 22 3A 20 22 30 22 2C 0D 0A 20 20 20 20 22 6C 6F 63 61 6C 49 50 22 3A 20 22 31 37 32 2E 31 39 2E 32 2E 36 30 22 2C 0D 0A 20 20 20 20 22 6E 65 74 6D 61 73 6B 22 3A 20 22 32 35 35 2E 32 35 35 2E 30 2E 30 22 2C 0D 0A 20 20 20 20 22 67 61 74 77 61 79 22 3A 20 22 31 37 32 2E 31 39 2E 31 36 2E 32 30 33 22 2C 0D 0A 20 20 20 20 22 64 6E 73 54 79 70 65 22 3A 20 22 30 22 2C 0D 0A 20 20 20 20 22 64 6E 73 22 3A 20 22 31 31 34 2E 31 31 34 2E 31 34 2E 31 31 34 22 0D 0A 20 20 7D 0D 0A 7D

实际回复的十六进制数据内容:

04 00 B5 7B 0D 0A 20 20 22 63 6D 64 22 3A 20 22 6E 65 74 77 6F 72 6B 43 6F 6E 66 69 67 42 43 22 2C 0D 0A 20 20 22 63 6F 64 65 22 3A 20 22 30 22 2C 0D 0A 20 20 22 6D 73 67 22 3A 20 22 22 2C 0D 0A 20 20 22 63 6F 6E 74 65 6E 74 22 3A 20 7B 0D 0A 20 20 20 20 22 61 73 73 69 73 74 49 44 22 3A 20 22 63 34 35 32 38 62 39 30 2D 34 63 31 34 2D 34 37 34 66 2D 61 30 66 38 2D 34 39 61 66 66 33 38 61 61 30 64 63 22 2C 0D 0A 20 20 20 20 22 63 61 6D 65 72 61 49 44 22 3A 20 22 43 48 45 32 33 30 30 30 30 30 30 30 30 30 30 30 30 31 22 0D 0A 20 20 20 20 7D 0D 0A 7D

特别声明: 有些内容设置了积分或者小金额收费,参与下方【限时活动】即可免费获取,目的在于增加网站互动性和站点推广,望参与!
版权声明
资源使用声明:本站资源仅供内部学习研究(含软件设计思想与原理学习),严禁用于商业及其他非法用途。学习研究后请自觉删除,请勿传播,未及时删除造成的一切后果由使用者自行承担。
建议您支持正版软件及原创作者,如需商业使用请购买正版授权。
侵权与反馈:厂商技术资源以及网友投稿等内容本站仅提供信息存储空间,不拥有所有权,不承担相关法律责任。若您认为「停车技术员」发布的内容侵犯您的合法权益,或发现云盘链接失效,请及时联系我们,我们将第一时间处理。


分享是美德,转发时请务必附带本文原始链接,感谢您的理解与支持!
评论 抢沙发

请登录后发表评论

    暂无评论内容