From 84dcab21bbbb242f6b06b11a3117c0f0f78391c2 Mon Sep 17 00:00:00 2001 From: Elvis Date: Fri, 2 Feb 2024 15:32:45 +0800 Subject: [PATCH] 海亮定制 --- 海亮定制.md | 232 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------- 1 file changed, 137 insertions(+), 95 deletions(-) diff --git a/海亮定制.md b/海亮定制.md index 51382ac..7bba08b 100644 --- a/海亮定制.md +++ b/海亮定制.md @@ -781,116 +781,158 @@ ${clinetId} clinetId 是基站编号,为替换字符串。 ### 基站升级 - #### 开始升级 - -| 主题 | /client/${client}/operate | 备注 | -| --- | --- | --- | -| { "i":17, "m":{ "url":"", "version":"", "CRC":"" }} | url:升级包地址 version:版本号CRC:CRC-32校验码 | +主题: /client/${client}/operate +指令内容: +```json +{ + "i": 17, + "en": "12342", + "m": { + "url": "", + "version": "", + "CRC": "" + } +} +``` +| 名词 | 备注 | +| --- | --- | +| i = 17 | 基站升级 | +| en |序号 | +| url |固件包地址,基站能访问到的路径 | +| version |新固件的版本 | +| CRC |新关键计算的CRC | +||| #### 升级进度报告 - -| 主题 | /client/${client}/report | 备注 | -| --- | --- | --- | -| { "i":18, "m":{ "cId":"123456", "percent":0, "status":0 }} | cId:客户端设备ID percent:升级进度,0-100status:升级状态信息,0:未开始;1:升级中;2:升级成功;4固件版本号错误;5:不在升级名单内;6:升级指令错误;\>127:升级中的错误码。 | - +主题: /client/${client}/report +指令内容: +```json +{ + "i": 18, + "m": { + "cId": "123456", + "percent": 0, + "status": 0 + } +} +``` +| 名词 | 备注 | +| --- | --- | +| i = 18 | 升级进度报告 | +| cId |基站编号 | +| percent |升级百分比 | +| status |升级状态信息。
0:未开始
1:升级中
2:升级成功
4固件版本号错误
5:不在升级名单内
6:升级指令错误
\>127:升级中的错误码。 | +||| ### 键盘升级 - #### 开始升级 - -| 主题 | /client/${client}/operate | 备注 | -| --- | --- | --- | -| { "i":28, "m":{ "url":"", "version":"", "CRC":"" }} | url:升级包地址 version:版本号CRC:CRC-32校验码 | - +主题: /client/${client}/operate +指令内容: +```json +{ + "i": 28, + "m": { + "url": "", + "version": "", + "CRC": "" + } +} +``` +| 名词 | 备注 | +| --- | --- | +| i = 28 | 键盘升级 | +| url |固件包地址,基站能访问到的路径 | +| version |新固件的版本号 | +| CRC |新关键计算的CRC | +||| #### 升级进度报告 +主题: /client/${client}/report +指令内容: +```json +{ + "i": 29, + "m": { + "cId": "123456", + "percent": 0, + "status": 0 + } +} +``` +| 名词 | 备注 | +| --- | --- | +| i = 18 | 升级进度报告 | +| cId |基站编号 | +| percent |升级百分比 | +| status |升级状态信息。
0:未开始
1:升级中
2:升级成功
4固件版本号错误
5:不在升级名单内
6:升级指令错误
\>127:升级中的错误码。 | +||| -| 主题 | /client/${client}/report | 备注 | -| --- | --- | --- | -| { "i":29, "m":{ "cId":"123456", "percent":0, "status":0 }} | cId:客户端设备ID percent:升级进度,0-100 status:升级状态信息, 0:未开始; 1:升级中; 2:升级成功; 4固件版本号错误; 5:不在升级名单内;6:升级指令错误;\>127:升级中的错误码。 | - - -### 刷卡事件 - -由基站发给应用程序,应用需要订阅主题 - -| 主题 | /client/${clientId}/card/swipe | 备注 | -| --- | --- | --- | -| { "i":50, "m":[{ "c":"12345", "el":0.75, "t":1626016299 }]} | i = 50 刷卡事件答题器编号和刷卡时间 | - - -### 指纹事件 - -由基站发给应用程序,应用需要订阅主题 - -| 主题 | /client/${clientId}/card/fingerprint | 备注 | -| --- | --- | --- | -| { "i":51, "m":[{ "c":"12345", "el":0.75, "t":1626016299 }]} | i = 51指纹事件答题器编号和刷卡时间 | - - -### 考勤 - - -#### 打开考勤功能 - -应用程序发送给基站 - -| 主题 | /lesson/class/${clinetId}/receive | 备注 | -| --- | --- | --- | -| { "i":6} | i = 6 开启考勤功能 | - - -#### 关闭考勤功能 - -应用程序发送给基站 - -| 主题 | /lesson/class/${clinetId}/receive | 备注 | -| --- | --- | --- | -| { "i":7} | i = 7 关闭考勤功能 | - - -#### 设置考勤上传频率 - -应用程序发送给基站 - -| 主题 | /lesson/class/${clinetId}/receive | 备注 | -| --- | --- | --- | -| { "i":8, "m":30} | i = 8 设置考勤频率m = 30 表示频率率为30秒采集一次 | - - -#### 上报考勤数据 - -| 主题 | /lesson/class/${clientId}/attend | 备注 | -| --- | --- | --- | -| { "i":9, "m":[{ "c":"12345", "t":1626016299 }], "total":4, "current":1} | 内容为答题器序号和时间戳, total为本次上报的总的传输包数,current为当前传输包序号。 | - - ### 文本预设 - #### 文本设置 +主题: /client/${client}/operate +指令内容: +```json +{ + "i": 61, + "en": "123552", + "sn": ["12345", "56789"], + "m": [{ + "cmd": 81, + "text": "hex:" + }] +} +``` +| 名词 | 备注 | +| --- | --- | +| i = 18 | 升级进度报告 | +| sn |键盘列表 | +| cmd |下发的命令
4 第二行文本
81 单选
82 多选
83 数字
84 判断
85 自判题判断
87 清除 | +| text |标题信息,以hex:开头添加的内容 内容为GBK的hex编码 | +||| + +```java + public static String bytesToHexString(byte[] src) { + StringBuilder stringBuilder = new StringBuilder(""); + if (src == null || src.length <= 0) { + return null; + } + for (int i = 0; i < src.length; i++) { + int v = src[i] & 0xFF; + String hv = Integer.toHexString(v); + if (hv.length() < 2) { + stringBuilder.append(0); + } + stringBuilder.append(hv); + stringBuilder.append(""); + } + return stringBuilder.toString(); +} +``` -| 主题 | /client/${client}/operate | 备注 | -| --- | --- | --- | -| { "i":61, "en":"123552", "sn":["12345","56789"], "m":[{ "cmd":81, "text":"",}]} | Cmd:对应测验题显示 1 姓名 2 积分 3 81 单选 82 多选 83 数字 84 判断 85 自判题判断 86 自判题数字 87 清除 Text:文本预设内容,最长不超过8个汉字。 sn 键盘列表 - | #### 设置返回 - -| 主题 | /client/${client}/report | 备注 | -| --- | --- | --- | -| { "i":61, "en":"123552", "m":[{ "cmd":81, "success":0, "sn":["12345","56789"]}]} | Cmd:对应测验题显示 81单选 82 多选 83 数字 84 判断 85 自判题判断 86 自判题数字 87 清除Text:文本预设内容,最长不超过8个汉字。 | - - -### 学生卡信息上报 - -主题:/client/${client}/report - -| 主题 | /client/${client}/report | 备注 | -| --- | --- | --- | -| { "i":32, "m":[{ "c":"1873373905", "cv":"0.2.2", "hw":"67.0", "t":1638865040 }] } - | 消息格式:卡初始化组网的时候会上报一次 c 键盘编号 t 时间 hw 硬件版本号cv 软件版本号 | \ No newline at end of file +主题: /client/${client}/report +指令内容: +```json +{ + "i": 61, + "en": "123552", + "sn": ["12345", "56789"], + "m": [{ + "cmd": 81, + "success": 0 + }] +} +``` +| 名词 | 备注 | +| --- | --- | +| i = 61 | 升级进度报告 | +| sn |键盘列表 | +| cmd |下发的命令
4 第二行文本
81 单选
82 多选
83 数字
84 判断
85 自判题判断
87 清除 | +| success | 是否成功。
0 表示成功
非0 表示失败 -1失败 | +||| -- libgit2 0.21.4