工厂协议
工厂协议
固件配置工具接口说明
版本信息
| 版本 |
文档发布日期 |
作者 |
备注 |
| V0.0 |
2020-08-12 |
zk |
初版 |
| V0.1 |
2020-10-13 |
zk |
新增设置带宽信息协议接口 |
| V0.2 |
2020-11-20 |
zk |
固件版本信息新增字段 |
| V0.3 |
2021-01-23 |
zk |
号码烧录字段新增mediaEncPsd |
| V0.4 |
2021-08-13 |
zk |
增加获取固件是否支持加密协议;更新烧号描述 |
| V0.5 |
2022-01-07 |
zk |
更新烧号字段 |
| V0.6 |
2022-07-07 |
zk |
更新白光灯、红外灯控制支持 |
| V0.7 |
2022-07-18 |
zk |
更新光敏阈值读取 |
| V0.8 |
2024-02-26 |
zk |
更新最新产测协议 |
| V0.9 |
2024-02-26 |
zk |
设备烧录增加不同平台,增加SOS按键测试 |
| V1.0 |
2024-04-19 |
zk |
新增按键检测扩展指令 |
| V1.0.1 |
2024-07-05 |
zk |
新增7.5章节看家宝平台烧录设置、获取指令 |
| V1.0.2 |
2024-11-28 |
zk |
第8、13章节 红外夜视、白光灯控制新增chn字段 |
| V1.0.3 |
2024-12-16 |
ykd |
第31、32章节 增加修改、获取默认语音包指令 |
| V1.0.4 |
2024-12-26 |
tfh |
第34章节 增加设置屏幕面板类型指令 |
| V1.0.5 |
2025-03-10 |
zk |
新增7.6章节联通平台烧录设置、获取指令 |
| V1.0.6 |
2025-04-01 |
zk |
新增37 获取音柱状态接口 |
| V1.0.7 |
2025-04-15 |
zk |
新增38、39 获取、设置OEMID;新增40、41 获取、设置language |
| V1.0.8 |
2025-04-21 |
zk |
带宽参数新增threads参数 |
| V1.0.9 |
2025-04-24 |
zk |
新增42、43工厂锁协议 |
| V1.0.10 |
2025-06-20 |
rsl |
产测协议优化 |
| V1.0.11 |
2025-06-23 |
ZK |
新增53、54,仅控制红外灯状态、仅控制IRCUT状态 |
| V1.0.12 |
2025-06-27 |
rsl |
产测协议优化 |
| V1.0.13 |
2025-06-30 |
rsl |
产测协议优化 |
| V1.0.14 |
2025-07-01 |
rsl |
产测协议优化 |
| V1.0.15 |
2025-07-09 |
rsl |
产测协议优化 |
| V1.0.16 |
2025-07-10 |
rsl |
产测协议优化 |
| V1.0.17 |
2025-07-16 |
zk |
新增57.获取电机实时位置 |
| V1.0.18 |
2025-07-22 |
zk |
第8.红外灯控制、13.红外灯控制扩展、44.视频参数设置、48.ISP参数设置、46.OSD设置、18.单板模式设置,新增cfgSave字段 |
| V1.0.19 |
2025-07-30 |
zk |
第50.新增multiple字段;新增58.获取RCA电压值、59.获取GPIO状态 |
| V1.0.20 |
2025-07-31 |
zk |
联通、千里眼号码烧录新增verifyCode字段 |
| V1.0.21 |
2025-09-15 |
zk |
新增第60.芯片参数获取接口 |
| V1.0.22 |
2026-04-01 |
zk |
新增63/64.设置/获取镜头id信息 |
| v1.0.23 |
2026-08-03 |
zk |
新增红蓝指示灯测试 |
传输协议
通过 socket tcp协议发送请求给设备
注:多字节变量网络字节序
Device的本地UDP广播查询端口为4942;Device的本地TCP端口为4941
| CMD |
Length |
Data[optional] |
| 命令U32 |
Data字段长度U32 |
数据 binary , json or null |
命令接口
1.LED灯控制
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3001 |
| Data |
{"times": 3, "ext": [{"chn": 0, "ena": false},{"chn": 1, "ena": false}]} |
| Desc |
times:LED循环闪烁次数(设备端按照当前LED灯通道数量依次进行闪烁,循环闪烁3次即可,比如:红->绿->蓝,每次切换间隔1秒),兼容老协议,不传times就默认循环闪烁10次;ext:灯态数组(扩展灯态控制,针对单独自定义外设灯(非常规指示灯),times和ext只能同时处理一种,优先ext);chn:灯态通道号;ena:true,打开灯;false,关闭灯;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3001 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
2.按键检测
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3003 |
| Data |
{ "keyType" : 0/1/2/3/4/5, "time":15} |
| Desc |
keyType:0,默认reset按键;其他,需要根据各自产品定义(固件需要说明);time:按键超时时间 |
返回
| Dir |
Device->Client |
| CMD |
0x5a0e3003 |
| Data |
{ “code” : 0, “desc” : “successed” } |
| Desc |
Code:0 success,other failed 按键检测逻辑:发出指令后,设备检测到按键按下就返回成功;10秒内按键无变化返回错误 |
3.喇叭声音播放
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3005 |
| Data |
无Data字段 |
| Desc |
5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3005 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
4.电机检测
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3017 |
| Data |
{ "dir" : 0/1/2/3/4/5, "step":20} |
| Desc |
0,停止;1,左;2,右;3,上;4,下;5,reset(重置);step,步长(可自定义步长长度);5s后无响应则超时,返回失败 |
返回
| Dir |
Device->Client |
| CMD |
0x5a0e3017 |
| Data |
{ “code” : 0, “desc” : “successed”} |
| Desc |
|
5.WIFI强度获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3019 |
| Data |
无Data字段 |
| Desc |
5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3019 |
| Data |
{ "code" : 0, "desc" : "successed", "wifi_quality":"100", "ip":"192.168.93.130"} |
| Desc |
code:0成功,other失败 |
6.获取老化结果
请求
| Dir |
Client->Device |
| CMD |
0x5a0e301a |
| Data |
无Data字段 |
| Desc |
5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e301a |
| Data |
{ "code" : 0, "desc" : "successed", "agingState": true/false} |
| Desc |
code:0成功,other失败;agingState老化测试结果,true or false |
7.设备烧录(根据产品使用平台选择)
7.1 和家亲平台
合家亲平台烧录信息字段说明:sn字段为易瞳授权码;appkey为中国移动序列号;imei中国移动CMEI;mac为设备物理地址;password,mediaEncPsd,pwd均为中国移动秘钥
烧录信息获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e301d |
| Data |
无Data字段 |
| Desc |
5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e301d |
| Data |
{ "code" : 0, "desc" : "successed", "imei" : "123456789" , "mac":"00:CF:E0:36:9A:F4" , "sn":"123456789", "password":"admin123", "mediaEncPsd":"admin123", "appkey":"", "pwd":""} |
| Desc |
code:0成功,other失败.; |
烧录信息设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e301e |
| Data |
{ "imei" : "123456789" , "mac":"00:CF:E0:36:9A:F4" , "sn":"123456789", "password":"admin123", "mediaEncPsd":"admin123","appkey":"", "pwd":"" } |
| Desc |
注意:如果0x5a0e5000指令返回true,则SN号使用加密后的数据进行传输;明文烧写会失败。如果0x5a0e5000指令返回false或者接口不通,则使用明文。 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e301e |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
7.2 电信平台
烧录信息获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3020 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3020 |
| Data |
{ "code" : 0, "desc" : "successed", "p2p_uid" : "3ZNB0242632KALC" ,"user_psd":"Mgg34QGoto" , "p2p_ctei":"181670100000015","p2p_sn":"3ZNB0242632KALC", "p2p_bind_code":"UN6kB9zT","mac":"38:01:46:E8:61:D0"} |
| Desc |
code:0成功,other失败。注意:不管固件是否⽀持加密,该接⼝返回的数据都是明⽂。 |
烧录信息设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3021 |
| Data |
{ "p2p_uid" : "3ZNB0242632KALC" , "user_psd":"Mgg34QGoto" ,"p2p_ctei":"181670100000015", "p2p_sn":"3ZNB0242632KALC","p2p_bind_code":"UN6kB9zT", "mac":"38:01:46:E8:61:D0" } |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3021 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败。注意:如果0x5a0e5000指令返回true,则p2p_uid使⽤加密后的数据进⾏传输;明⽂烧写会失败。如果0x5a0e5000指令返回false或者接⼝不通,则使⽤明⽂。 |
7.3 camtells平台
烧录信息获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e4948 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e4948 |
| Data |
{"code": 0,"desc": "successed","did": "","signkey": "","lslat": "","scode":"","gipaddr": "","mac": ""} |
| Desc |
code:0成功,other失败 |
烧录信息设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e4949 |
| Data |
{"did": "","signkey": "","lslat": "","scode":"","gipaddr": "","mac":"38:01:46:E8:61:D0", “gdomain“:”prod.glbs.xcthings.com”} |
| Desc |
注意:did字段使⽤加密后的号码进⾏烧写。 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e4949 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败。 |
7.4 魔镜平台
烧录信息获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3100 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3100 |
| Data |
{"code": 0,"desc": "successed","device_id": "53202680685C4876F00","channel_id":"53202680685C4876F00","password": "2KE496r8a","mac": "68:06:85:C4:87:6F"} |
| Desc |
code:0成功,other失败。 |
烧录信息设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3101 |
| Data |
{"channel_id": "53202680685C4876F00","device_id": "53202680685C4876F00","mac":"68:06:85:C4:87:6F","password":"2KE496r8a"} |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3101 |
| Data |
{ { "code" : 0, "desc" : "successed"} |
| Desc |
device_id为加密后的字符串信息;code:0成功,other失败 |
7.5 看家宝/云眼/重庆移动
烧录信息获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3200 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3200 |
| Data |
{"code": 0,"desc": "successed","sn": "119015191000001","imei":"wxxxxxxxxxxxxxx","mac": "68:06:85:C4:87:6F",”verifyCode”:”xxxx”} |
| Desc |
code:0成功,other失败。 |
烧录信息设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3201 |
| Data |
{"sn": "119015191000001","imei": "119015191000001","mac":"68:06:85:C4:87:6F",”verifyCode”:”xxxx”} |
| Desc |
sn:如果平台提供,则烧录明文SN,不然烧录imei明文即可;imei:加密后imei信息; |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3201 |
| Data |
{ { "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
7.6 联通平台
烧录信息获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3022 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3022 |
| Data |
{"code": 0,"desc": "successed","sn": "119015191000001","imei":"wxxxxxxxxxxxxxx","mac": "68:06:85:C4:87:6F",”verifyCode”:”xxxx”} |
| Desc |
code:0成功,other失败。verifyCode:校验码,联通V2.0存在此字段 |
烧录信息设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3023 |
| Data |
{"sn": "119015191000001","imei": "119015191000001","mac":"68:06:85:C4:87:6F",”verifyCode”:”xxxx”} |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3023 |
| Data |
{ { "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
8.红外灯控制/IR-CUT设置/夜视切换
请求
| Dir |
Client->Device |
| CMD |
0x5a0e21e1 |
| Data |
{"mode": "manual/auto","switch": "off/on","chn":0/1/2,”cfgSave”:true} |
| Desc |
manual,手动模式;auto,自动切换模式(此时on/off不生效),两者选其一;off,关闭夜视模式;on,开启夜视模式,两者选其一 ;chn:存在此字段时,按照此通道进行设置,不存在此字段时设备端默认为0;cfgSave,下发的配置是否进行保存(该字段不存在时默认保存) |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e21e1 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
9.摄像机SD卡读写检测
请求
| Dir |
Client->Device |
| CMD |
0x5a0e21a2 |
| Data |
无data字段 |
| Desc |
|
返回
| Dir |
Device->Client |
| CMD |
0x5a0e21a2 |
| Data |
{ “code” : 0, “desc” : “successed” } |
| Desc |
Code:0 success,other failed |
10.固件版本信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2104 |
| Data |
无data字段 |
| Desc |
5s后无响应则超时,返回失败 |
返回
| Dir |
Device->Client |
| CMD |
0x5a0e2104 |
| Data |
{"code":0,"desc": "successed","dev_type":"ZNIPC-206DJ-IR","sn":"123456","firmware":"20200601_2_1.0.15","hardware":"V1.0", "dev_id":"DX_21CN_0101_0", "dev_ver":"20201120_V1.0.05"} |
|
|
| Desc |
Code:0 success,other failed (dev_type:设备类型;sn:设备SN号;firmware:固件版本号;hardware:硬件版本号;dev_id:设备ID;dev_ver:设备版本号) |
11.设置带宽参数信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e301f |
| Data |
{ "serverIp" : "192.168.11.2" , "intervalTime":60 , "mode": 1, “interface”:"wlan0", "threads": 5} |
| Desc |
serverIp,服务器IP地址;intervalTime,测试持续时间,整型数字;mode,1,设备侧为客户端模式;2,设备侧为服务器模式;3,设备侧为客户端模式使用iperf3 测试收发带宽(需要给到设备端服务器IP地址);整型数字;interface 设置设备端测试的网卡名称。设备接收到该指令后如果当前没有运行iperf指令,则立即根据下发指令参数启动进程;如果进程正在运行,则忽略该协议指令下发。;4.设备端为服务器模式并且使用iperf3进程进行测试;threads:测试时使用的线程数量(默认1个) |
返回
| Dir |
Device->Client |
| CMD |
0x5a0e301f |
| Data |
{"code":0,"desc": "successed"} |
| Desc |
Code:0 success,other failed。mode为1时,返回“{"code":0,"desc": "successed"}”;mode为2时,返回"{"code":0,"desc": "successed", "serverIp":"", "port":5001}" |
12.固件是否支持加密
请求
| Dir |
Client->Device |
| CMD |
0x5a0e5000 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e5000 |
| Data |
{ "code" : 0, "desc" : "successed", "encrypt":true/false} |
| Desc |
code:0成功,other失败;true,则固件需要加密后的SN字符串;false或者无回复,不支持加密后的SN字符串,使用明文SN进行烧录 |
13.白光灯、红外灯扩展协议
请求
| Dir |
Client->Device |
| CMD |
0x5a0e21f1 |
| Data |
{"light": "IR/WL","mode": "manual/auto","switch": "off/on","chn":0/1/2,”cfgSave”:true} |
| Desc |
light:IR控制红外灯,WL控制白光灯;mode:manual,手动模式;auto,自动切换模式(此时on/off不生效),两者选其一;switch:off,关闭对应模式;on,开启对应模式,两者选其一 |
| 例如 |
{"light": "WL","mode": "manual","switch": "on"} 控制白光灯常亮(关闭夜视模式);{"light": "WL","mode": "manual","switch": "off"} 控制白光灯关闭;;chn:存在此字段时,按照此通道进行设置,不存在此字段时设备端默认为0;5s后无响应则超时,返回失败;cfgSave,下发的配置是否进行保存(该字段不存在时默认保存) |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e21f1 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
14.音视频协议
响应
| Desc | 采用标准RTSP协议进行传输
15.光敏阈值检测
请求
| Dir |
Client->Device |
| CMD |
0x5a0e21e2 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e21e2 |
| Data |
{ "code" : 0, "desc" : "successed", "day2night": 10, "night2day": 10, "value": 10} |
| Desc |
code:0成功,other失败;day2night,白天切换到夜视模式最低光敏阈值;night2day,夜晚切换到白天最高光敏阈值;value,光敏当前实时检测阈值。当前值大于night2day阈值,则切换为彩色模式;当前值小于day2night阈值,则切换为夜视。 |
16.获取老化结果扩展指令
请求
| Dir |
Client->Device |
| CMD |
0x5a0e21f5 |
| Data |
无Data字段 |
| Desc |
5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e21f5 |
| Data |
{ "code" : 0, "desc" : "successed", "agingState": 0/1/2, "time": 20(单位:分钟)} |
| Desc |
code:0成功,other失败;agingState老化测试结果,0,未开始;1,老化中;2,已经老化完成;time: 单位:分钟 |
17.设置老化模式
请求
| Dir |
Client->Device |
| CMD |
0x5a0e5101 |
| Data |
{ "agingState" : 0/1/2 , "time":40, "factoryType":0/1 } |
| Desc |
agingState老化测试状态:0,未开始;1,老化中;2,已经老化完成; time: 单位:分钟 ;重启生效 ;factoryType,0通用老化;1,微浦老化;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e5101 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
18.设置单板模式
请求
| Dir |
Client->Device |
| CMD |
0x5a0e21f3 |
| Data |
{ "single_board_status" : 1,"chn":0/1/2,”cfgSave”:true } |
| Desc |
single_board_status单板状态:1,进入单板模式(强制为半天模式);0,根据光线启动切换 ;chn:存在此字段时,按照此通道进行设置,不存在此字段时设备端默认为0;5s后无响应则超时,返回失败;cfgSave,下发的配置是否进行保存(该字段不存在时默认保存) |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e21f3 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
19.恢复出厂设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2190 |
| Data |
|
| Desc |
设备重置;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2190 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
20.号码清除
请求
| Dir |
Client->Device |
| CMD |
0x5a0e5001 |
| Data |
|
| Desc |
号码清除;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e5001 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
21.获取PCBA
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3030 |
| Data |
|
| Desc |
获取PCBA;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3030 |
| Data |
{ "code" : 0, "desc" : "successed", "sn":""} |
| Desc |
code:0成功,other失败 |
22.设置PCBA
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3031 |
| Data |
{ "sn" : "" } |
| Desc |
设置PCBA |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3031 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
23.获取设备模板信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2102 |
| Data |
|
| Desc |
获取设备模板信息 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2102 |
| Data |
{ "code" : 0, "desc" : "successed", "template":"", "rotate": 0} |
| Desc |
code:0成功,other失败;template设备模板信息;rotate旋转角度;当设备不支持获取、设置PCBA时,可使用此指令替代,传入template字段即可 |
24.设置设备模板信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2103 |
| Data |
{ "template" : "", "rotate":0 } |
| Desc |
设置设备模板信息;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2103 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
25.按键检测(新版)
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3106 |
| Data |
⽆Data字段 |
| Desc |
5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3106 |
| Data |
{"code":-1,"desc":"failed","abnormal_gpio":[23],"msg":["no checked gpio is 23, mean is callKey"]} |
| Desc |
code:0成功,other失败;发出指令后,设备检测到按键按下就返回成功;20秒内按键⽆变化返回错误;abnormal_gpio异常gpio(可选);msg异常消息展示(可选) |
26.AP配网WIFI信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e5003 |
| Data |
{ "wifiSsid" : "Ssid", "wifiPwd" : "Pwd"} |
| Desc |
AP配网WIFI信息;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e5003 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败;发出指令后,设备配置当前网络后返回正常(该接口不会阻塞返回当前网络是否正常上线结果) |
27.显示屏测试
请求
| Dir |
Client->Device |
| CMD |
0x5a0e5004 |
| Data |
{ "model" : 0, "color":0 } |
| Desc |
显示屏测试,model是控制模式 0=恢复工厂模式显示,1=按照color颜色显示;color显示颜色rgb值 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e5004 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败;发出指令后,设备进行显示屏跑马灯控制 |
28.WIFI STA模式配网设置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e5007 |
| Data |
{ "wifiSsid" : "Ssid", "wifiPwd" : "Pwd"} |
| Desc |
WIFI STA模式配网信息;30s后WiFi仍未连接则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e5007 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败;发出指令后,设备配置当前网络后返回正常(该接口返回的code代表设备是否收到此条指令以及执行情况;并不阻塞等待wifi的连接结果;wifi连接状态通过下述协议0x5a0e5009获取) |
29.获取wifi连接状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e5009 |
| Data |
⽆Data字段 |
| Desc |
获取wifi连接状态 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e5009 |
| Data |
{ "code" : 0, "desc" : "successed", "connected" = true,"ip4" = "0.0.0.0","netmask4" = "255.255.255.0","ip6" = "fe80::63c4:eab7:dd39:a8f","netmask6" = "64","mac" = "D6:DB:DB:4A:E8:38"} |
| Desc |
code:0成功,other失败;成功后主要判断connected,true表示连接上wifi,false表示没有连接上wifi |
30.获取iperf 版本
请求
| Dir |
Client->Device |
| CMD |
0x5a0e500b |
| Data |
⽆Data字段 |
| Desc |
获取iperf 版本;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e500b |
| Data |
{ "code" : 0, "desc" : "successed", "version" = 3 |
| Desc |
code:0成功,other失败;如果返回失败就默认使用iperf2 ,返回成功就判断 version,2=iperf2, 3=iperf3 |
31. 设置当前语音包
请求
| Dir |
Client->Device |
| CMD |
0x5a0e500d |
| Data |
{"AudioLanguage" : "EN/ZH"} |
| Desc |
设置当前语音包 |
响应
| Dir |
Client->Device |
| CMD |
0x5a0e500d |
| Data |
{"code" : O,"desc" : "successed"} |
| Desc |
code:O成功,other:失败 |
32. 获取当前语音包
请求
| Dir |
Client->Device |
| CMD |
0x5a0e500e |
| Data |
|
| Desc |
获取当前语音包 |
响应
| Dir |
Client->Device |
| CMD |
0x5a0e500e |
| Data |
{"AudioLanguage" : "EN/ZH"} |
| Desc |
code:O成功,other:失败 |
33.获取按键adc值
请求
| Dir |
Client->Device |
| CMD |
0x5a0e500c |
| Data |
⽆Data字段 |
| Desc |
获取按键adc值 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e500c |
| Data |
{ "code" : 0, "desc" : "successed", "adcDefValue": 900, "adcValue": 10} |
| Desc |
code:0成功,other失败;adcDefValue:按键adc自定义阈值。adcValue:按键adc实时值。adcValue实时值小于adcDefValue表示按下 |
34. 设置屏幕面板类型
请求
| Dir |
Client->Device |
| CMD |
0x5a0e500f |
| Data |
{"type" : 1} |
| Desc |
设置屏幕面板类型,type 0=boe屏幕,1=深超光电屏幕 |
响应
| Dir |
Client->Device |
| CMD |
0x5a0e500f |
| Data |
{"code" : O,"desc" : "successed"} |
| Desc |
code:O成功,other:失败 |
35. 设备端自定义协议指令
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2700 |
| Data |
{"shellCmd" : "ls"} |
| Desc |
需要执行的shellCmd指令 |
响应
| Dir |
Client->Device |
| CMD |
0x5a0e2700 |
| Data |
{"code" : O,"desc" : "successed"} |
| Desc |
code:O成功,other:失败 |
36. 获取设备端硬件ID
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3032 |
| Data |
⽆Data字段 |
| Desc |
获取设备端硬件ID |
响应
| Dir |
Client->Device |
| CMD |
0x5a0e3032 |
| Data |
{"code":0,"desc":"successed","hwid0":0,"hwid1":0,"hwid":[{"id":0,"value":0},{"id":1,"value":1}]} |
| Desc |
code:O成功,other:失败;hwid0、hwid1字段为了兼容之前已经对接设备,新对接设备采用hwid数组形式,不用传递hwid0、hwid1字段 |
37. 获取设备端音柱状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30a3 |
| Data |
⽆Data字段 |
| Desc |
获取设备端音柱状态 |
响应
| Dir |
Client->Device |
| CMD |
0x5a0e30a3 |
| Data |
{"code":0,"desc":"successed","status":false} |
| Desc |
code:O成功,other:false,失败;true,成功 |
38.获取OEMID
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30a4 |
| Data |
|
| Desc |
获取OEMID |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30a4 |
| Data |
{ "code" : 0, "desc" : "successed", "oemId":""} |
| Desc |
code:0成功,other失败 |
39.设置OEMID
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30a5 |
| Data |
{ "oemId" : "" } |
| Desc |
设置OEMID |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30a5 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
40.获取language
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30a6 |
| Data |
|
| Desc |
获取language |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30a6 |
| Data |
{ "code" : 0, "desc" : "successed", "language":""} |
| Desc |
code:0成功,other失败;language:Chinese/English/Spanish/French... |
41.设置language
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30a7 |
| Data |
{ "language" : "" } |
| Desc |
设置language |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30a7 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
42.获取工厂锁状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30a8 |
| Data |
|
| Desc |
获取工厂锁状态 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30a8 |
| Data |
{ "code" : 0, "desc" : "successed", "factory_lock":true/false} |
| Desc |
code:0成功,other失败;factory_lock:工厂锁状态;true,处于工厂锁定状态;false,非工厂锁定状态(设备未烧录号码或者没有解锁工厂模式,设备都处于工厂模式,搭配没有卡槽板设备,不能通过sd卡,烧录号码后强制进入工厂模式设备使用) |
43.设置工厂锁状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30a9 |
| Data |
{ "factory_lock" : true/false } |
| Desc |
设置工厂锁状态 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30a9 |
| Data |
{ "code" : 0, "desc" : "successed"} |
| Desc |
code:0成功,other失败 |
44.设置摄像机视频信息(码率,I帧间隔,压缩模式)
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2122 |
| Data |
{ “codec” : “h264/h265”, “rc_mode” : “cbr/vbr/avbr”, “profile” : 0, “resolution” : “1920x1080”, “frame_rate” : 15-20, “bitrate” : 128-8192, “gop” : 25, "fixqp" : true/false,”cfgSave”:true} |
| Desc |
codec:编码格式; rc_mode:码率控制; profile:编码等级 0-2对应base,main,high resolution: 图像分辨率 frame_rate : 帧率 bitrate : 码率单位kbps gop”: I帧间隔帧数; fixqp:固定qp,为true时固定I帧15,P帧30; 协议支持单个参数设置; 5s后无响应则超时,返回失败; cfgSave,下发的配置是否进行保存(该字段不存在时默认保存) |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2122 |
| Data |
{ “code” : 0, “desc” : “successed”, } |
| Desc |
code:0成功,other失败 |
45.获取摄像机OSD信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2200 |
| Data |
{ “channel” : 0 } |
| Desc |
0:主码流osd 1:副码流osd;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2200 |
| Data |
{ "code" : 0, "desc" : "successed", "time" : { "onoff" : "on", "x" : 0, "y" : 0, "size" : 42, }, "text" : { "onoff" : "on", "x" : 90, "y" : 90, "size" : 42, "content" : "易瞳IPC" } } |
| Desc |
time:时间戳OSD;text:自定义文本OSD;x,y:位置比例0-100,0为左上角,100为右下角;size:字体大小5-72;content:自定义文本信息,文字需要使用UTF-8编码256字节以内 |
46.设置摄像机OSD
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2201 |
| Data |
{ "channel" : 0, "time" : { "onoff" : "on", "x" : 0, "y" : 0, "size" : 42, }, "text" : { "onoff" : "on", "x" : 90, "y" : 90, "size" : 42, "content" : "易瞳IPC" },”cfgSave”:true } |
| Desc |
time:时间戳OSD;text:自定义文本OSD;onoff:该条水印是否显示;x,y:位置比例0-100,0为左上角,100为右下角;size:字体大小5-72;content:自定义文本信息,文字需要使用UTF-8编码256字节以内;协议支持单个参数设置;5s后无响应则超时,返回失败;cfgSave,下发的配置是否进行保存(该字段不存在时默认保存) |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2201 |
| Data |
{ “code” : 0, “desc” : “successed”, } |
| Desc |
code:0成功,other失败 |
47.摄像机音频回环
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2161 |
| Data |
{ “play” : “start/stop”, “file”: “”, “volume”:100} |
| Desc |
play: start开始回环播放音频,stop停止播放;file:指定播放的文件名称,若为空则播放默认音频;volume,文件播放音量(无此字段则按照最大音量播放);5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2161 |
| Data |
{ “code” : 0, “desc” : “successed”, } |
| Desc |
code:0成功,other失败 |
48.设置摄像机ISP信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2142 |
| Data |
{ "exp_mode" : "auto/manual", "auto_max_exp_gain" :1, "manual_exp_gain" : 1, “compensation” : -10-10, “shutter” :1000 ,”auto_max_exp_time”:1000,”ae_target”:128,”ae_speed”:128,"brightness" : 128, "sharpness" : 128, "hue" : 128, "contrast" : 128, "saturation" : 128, "3Ddenoise" : 128, wb_mode" : "auto/manual", "red_gain" : 0-8191, "blue_gain" : 0-8191,”cfgSave”:true} |
| Desc |
exp_mode: 曝光模式,auto:自动模式,manual:手动模式; auto_max_exp_gain : 自动曝光最大增益,0-255 ; manual_exp_gain : 手动最大曝光增益,0-255; compensation:曝光补偿,0-255; shutter:手动最大曝光时间,单位:微秒 0-1000000; auto_max_exp_time: 自动最大曝光时间,单位:微秒 0-1000000; ae_target:目标亮度,0-255; ae_speed:ae调节速度,0-255; brightness: 亮度 ,0-100; sharpness : 锐度,0-100; hue : 色度,0-100 ; contrast : 对比度,0-100 ; saturation : 饱和度 ,0-100; 3Ddenoise : 3D降噪,0-100 ; wb_mode:白平衡模式 ,auto:自动模式,manual:手动模式; red_gain:红色增益,0-255 ; blue_gain:蓝色增益,0-255; cfgSave:下发的配置是否进行保存(该字段不存在时默认保存) 协议支持单个参数设置; 5s后无响应则超时,返回失败; |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2142 |
| Data |
{ “code” : 0, “desc” : “successed”, } |
| Desc |
code:0成功,other失败 |
49. 获取摄像机ISP信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e2141 |
| Data |
无Data字段 |
| Desc |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e2141 |
| Data |
{ "exp_mode" : "auto/manual", "auto_max_exp_gain" :1/2/4/8/16/32/64, "manual_exp_gain" : 1/2/4/8/16/32/64, “compensation” : -10-10, “shutter” :1/帧率 ,”auto_max_exp_time”:1/帧率,”ae_target”:128,”ae_speed”:128,"brightness" : 128, "sharpness" : 128, "hue" : 128, "contrast" : 128, "saturation" : 128, "3Ddenoise" : 128", wb_mode" : "auto/manual", "red_gain" : 0-8191, "blue_gain" : 0-8191} |
| Desc |
exp_mode: 曝光模式 auto_max_exp_gain : 自动曝光最大增益 manual_exp_gain : 手动曝光增益 compensation:曝光补偿 shutter:手动曝光时间,单位us,显示的时候显示“1/shutter”,auto_max_exp_time: 自动最大曝光时间,单位us;ae_target:目标亮度;ae_speed:ae调节速度;brightness: 亮度 sharpness : 锐度 hue : 色度 contrast : 对比度 saturation : 饱和度 3Ddenoise : 3D降噪 wb_mode:白平衡模式 red_gain:红色增益 blue_gain:蓝色增益 |
50.设置PTZ位置
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30aa |
| Data |
{"mode":0,"multiple":1,"operation":[{"direction":0,"angle":20},{"direction":0,"angle":20}]} |
| Desc |
mode电机转动绝对角度或相对角度:0在目前位置上相对转动,1按设备固有的绝对角度;direction:转动方向:0垂直方向,1水平方向,不支持变焦;angle;转动角度(超时时长60s);电机转动完成后返当前指令;multiple,角度度数倍数(适配角度精确控制) |
注:水平转动时,+代表画面向左转动,-代表画面向右转动,转动范围-360°~+360°;垂直转动时,+代表画面向上转动,-代表画面向下转动,转动范围-180°~+180°(目前tiandy为了适配产测,垂直方向控制反向);
相对位置:在目前位置的基础之上变化的位置角度
垂直角度(-180-180°)
水平角度(-360-360°)
绝对位置:设置的固定位置角度
垂直角度(-90-90°)
水平角度(-180-180°)
速度:固定1个默认速度即可
multiple:角度度数倍数(适配角度精确控制),该字段不传,则默认倍数为1,即angle水平角度范围angle*1(0-360);如果multiple=100,则angle水平角度范围为angle*100(0-36000),垂直角度以此类推
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30aa |
| Data |
{ “code” : 0, “desc” : “successed”, } |
| Desc |
code:0成功,other失败 |
51.按键状态获取
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30ab |
| Data |
{ "keyType" : "0/1/2/3/4/5"} |
| Desc |
keyType:0,默认reset按键;1,keyCall按键;2,hangup按键;其他,需要根据各自产品定义(固件需要说明);5s后无响应则超时,返回失败 |
注:进入工厂模式后若按过按键,直到设备重新上电或者退出工厂模式前,协议回复复位按键为按下状态;如果客户端主动获取过一次按键状态后,复位当前按键状态。
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30ab |
| Data |
{ “code” : 0, “desc” : “successed” ,"keyType" :“reset/keycall/hangup”, "keyValue":"press/release"} |
| Desc |
code:0成功,other失败;keyType:按键类型;keyValue:键值 |
52.二维码一致性检测
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30ac |
| Data |
{ "platformType" : "1/2/3/4/5/"} |
| Desc |
platformType流媒体平台类型:1,杭研;其他未定义;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30ac |
| Data |
{ "code" : 0, "desc" : "successed", "QRCode":""} |
| Desc |
code:0成功,other失败;QRCode:获取到的二维码的字符串 |
53.关闭ISP自动调节
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30ad |
| Data |
{ "ispSet" : “enable/disable” } |
| Desc |
ispSet: “enable”设置固定的一套isp参数,包括.bin文件,关闭Sharpness、3NDR、CCM等,“disable”使用正常的isp参数;5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30ad |
| Data |
{ “code” : 0, “desc” : “successed”, } |
| Desc |
code:0成功,other失败 |
54.控制红外灯状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30ae |
| Data |
{"switch": "off/on","chn":0/1/2} |
| Desc |
设置当前通道红外灯开关状态(仅控制红外灯);5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30ae |
| Data |
{ “code” : 0, “desc” : “successed” } |
| Desc |
code:0成功,other失败 |
55.控制IRCUT状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30af |
| Data |
{"switch": "off/on","chn":0/1/2} |
| Desc |
设置当前通道IRCUT开关状态(仅控制IRCUT);5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30af |
| Data |
{ “code” : 0, “desc” : “successed” } |
| Desc |
code:0成功,other失败 |
56.控制白光灯状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b0 |
| Data |
{"switch": "off/on","chn":0/1/2} |
| Desc |
设置当前通道白光灯开关状态(仅控制白光灯);5s后无响应则超时,返回失败 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b0 |
| Data |
{ “code” : 0, “desc” : “successed” } |
| Desc |
code:0成功,other失败 |
57.获取电机实时状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b1 |
| Data |
|
| Desc |
获取电机当前实时位置 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b1 |
| Data |
{"code":0,"desc":"successed","horizon":{"step":{"min":0,"max":4096,"current":2048},"speed":{"min":0,"max":600,"current":300},"busy":false},"vertical":{"step":{"min":0,"max":4096,"current":2048},"speed":{"min":0,"max":600,"current":300},"busy":false}} |
| Desc |
code:0成功,other失败;参数不支持,该项为空 |
58.获取RCA电压值
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b2 |
| Data |
{"chns":[{"chn":0},{"chn":1}]} |
| Desc |
chn:当前通道号;获取当前通道RCA电压值,用于区分不同功能点 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b2 |
| Data |
{"code":0,"desc":"successed","data":[{"chn":0,"value":2323},{"chn":1,"value":2323}]} |
| Desc |
code:0成功,other失败;value:电压,单位:毫伏; |
59.获取GPIO状态
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b3 |
| Data |
{"gpios":[{"num":32},{"num":33}]} |
| Desc |
num:当前测试的GPIO口序号 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b3 |
| Data |
{"code":0,"desc":"successed","data":[{"num":32,"value":true},{"num":33,"value":false}]} |
| Desc |
code:0成功,other失败;value:当前GPIO口触发状态 |
60.获取芯片参数信息
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b4 |
| Data |
null |
| Desc |
获取芯片参数信息 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b4 |
| Data |
{"chipId":"87762541439","chipProductionDate":"20250619","chipProductionTime":"10:12:30", "chipSdkVersion":"tiny1.2.0","chipType":"maruko","code":0,"desc":"successed"} |
| Desc |
code:0成功,other失败;chipId:芯片ID |
61.测试SD卡读写速率
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b5 |
| Data |
{"count":100,"type":1/2,"async":false} |
| Desc |
count:将要读写的文件大小MB(如果是同步进行测试,测试总时长最好不要超过实际的TCP超时时间);
type:1,读测试;2,写入测试;async:是否异步执行测试(设备内部开启线程处理),结果通过下列指令进行获取。 |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b5 |
| Data |
{"speed":12,"code":0,"desc":"successed"} |
| Desc |
code:0成功,other失败;speed:SD卡实际读写速率 单位:MB/S |
62.获取SD卡读写速率(异步流程)
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b6 |
| Data |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b6 |
| Data |
{"speed":12,”status”:0/1/2,"code":0,"desc":"successed"} |
| Desc |
code:0成功,other失败;speed:SD卡实际读写速率 单位:MB/S;status:0,未开始测试;1.测试中;2,测试完成 |
63.设置镜头 id
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b7 |
| Data |
{"lensId":4/6/8} |
| Desc |
镜头ID,适用于硬件上区分不出镜头ID的场景;4mm/6mm/8mm |
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b7 |
| Data |
{"code":0,"desc":"successed"} |
| Desc |
code:0成功,other失败 |
64.获取镜头 id
请求
| Dir |
Client->Device |
| CMD |
0x5a0e30b8 |
| Data |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e30b8 |
| Data |
{"lensId":4/6/8,"code":0,"desc":"successed"} |
| Desc |
code:0成功,other失败;镜头ID,适用于硬件上区分不出镜头ID的场景;4mm/6mm/8mm |
65.开启红蓝指示灯
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3033 |
| Data |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3033 |
| Data |
{"code":0,"desc":"successed"} |
| Desc |
code:0成功,other失败; |
66.关闭红蓝指示灯
请求
| Dir |
Client->Device |
| CMD |
0x5a0e3034 |
| Data |
|
响应
| Dir |
Device->Client |
| CMD |
0x5a0e3034 |
| Data |
{"code":0,"desc":"successed"} |
| Desc |
code:0成功,other失败; |