协议格式
1、服务器下发MQTT指令,一般是JSON格式
2、机柜回复执行结果,一般是Hex格式
3、设备鉴权、初始化配置、在线升级,整机上报、更新屏幕广告服务器需提供HTTP API接口
指令下发 ▼
订阅主题:/powerbank/{uuid}/user/get
数据格式:JSON字符串
| 名称 | 标识代码 | 数据类型 | 备注 |
|---|---|---|---|
| 指令名称 | cmd | string | 命令名称 |
| 指令数据 | data | string | 命令数据 |
| 主控板串口 | io | string | 默认:0; 范围:0-1 |
示例,发送指令,弹出2号仓位
text
{"cmd":"popup","data":"2","io":"0"}设备回复 △
发布主题:/powerbank/{uuid}/user/update
数据格式:字节码数据,Hex,16进制解析
| 字节码 | 名称 | 标识代码 | 备注 |
|---|---|---|---|
| byte[0] | 头码 | head | 默认:0xA8 |
| byte[1~2] | 包长度 | length | 例如:0x00 0x14,转10进制,包长度为20 |
| byte[3] | 指令名称 | cmd | 例如:0x21, 表示设备回复:仓位弹出结果 |
| byte[4~n] | 自定义数据 | data | 根据不同指令,上报不同数据 |
| byte[n+1] | 校验码 | verify | 从头码至自定义数据,16进制相加,取低位,并取反加+1 |
示例:回复弹出2号仓结果
text
A8 00 09 21 01 02 01 01 29text
A8 ------------------------------------------------------ byte[0] 头码
00 09 --------------------------------------------------- byte[1~2] 包长度:09
21 ------------------------------------------------------ byte[3] 上报指令名称
01 02 01 01 --------------------------------------------- byte[4~n] 自定义数据
29 ------------------------------------------------------ byte[n+1] 校验码