From 313c86e003995c1c68743c2737740404ba71b20b Mon Sep 17 00:00:00 2001 From: liuqin Date: Wed, 18 Jun 2025 11:46:53 +0800 Subject: [PATCH] 增加设置基站是否自动清除白名单和遥改键盘配对码 --- 通讯协议-平台化-应用部分[内部].md | 169 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 141 insertions(+), 28 deletions(-) diff --git a/通讯协议-平台化-应用部分[内部].md b/通讯协议-平台化-应用部分[内部].md index 2a7cfae..bc96b01 100644 --- a/通讯协议-平台化-应用部分[内部].md +++ b/通讯协议-平台化-应用部分[内部].md @@ -32,7 +32,7 @@ SunVote 二次开发
通讯协议

-Ver 1.0.5 +Ver 1.0.6


@@ -71,6 +71,7 @@ Ver 1.0.5 |1.0.3| 2025年5月20日|刘琴|1. 增加内部指令组呼开关读取和设置
2. 增加内置状态语下发可指定键盘| |1.0.4| 2025年5月26日|刘琴|1. 增加待机实时反馈的反馈类型
2. 增加自定义测验题型名称的主观题录分类型
3. 增加键盘离线关机时间等级设置(内部指令)
4. 键盘升级增加静默升级选项,增加退出静默升级指令(内部指令)| |1.0.5| 2025年6月5日|刘琴|1. 增加语音题接口
2. 增加拍照反馈接口
3. 增加锁定解锁白名单
4. 增加基站容量、基站加密(内部指令)| +|1.0.6| 2025年6月18日|刘琴|1. 增加遥控修改键盘配对码
2. 增加设置基站是否自动清除白名单|

@@ -226,6 +227,8 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 ||删除白名单|[delBsWhitelist](#delbswhitelist)|[sEvtStateCode](#sevtstatecode)
[fEvtDelBsWhitelist](#fevtdelbswhitelist)
[fEvtBsWhitelist](#fevtbswhitelist)| ||锁定白名单|[lockBsWhitelistKp](#lockbswhitelistkp)|[fEvtLockBsWhitelistKp](#fevtlockbswhitelistkp)| ||解锁白名单|[unlockBsWhitelistKp](#unlockbswhitelistkp)|[fEvtLockBsWhitelistKp](#fevtlockbswhitelistkp)| +||读取是否自动清除白名单(内)|[getBsAutoClearWhitelist](#getbsautoclearwhitelist)|[fEvtBsAutoClearWhitelist](#fevtbsautoclearwhitelist)| +||设置是否自动清除白名单(内)|[setBsAutoClearWhitelist](#setbsautoclearwhitelist)|[fEvtBsAutoClearWhitelist](#fevtbsautoclearwhitelist)| |基站加密 - 软件狗|获取基站软件狗|[getBsSoftwareKey](#getbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| ||设置基站软件狗|[setBsSoftwareKey](#setbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| |基站加密 - AES加密|获取基站AES加密状态(内)|[getBsAES](#getbsaes)|[fEvtBsAES](#fevtbsaes)| @@ -256,7 +259,8 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 ||停止扫描在线键盘|[stopGetKpOnline](#stopgetkponline)|[sEvtStateCode](#sevtstatecode)| ||实时获取在线键盘列表|[rtGetKpOnlineList](#rtgetkponlinelist)|[sEvtBsKpOnlineList](#sevtbskponlinelist)| |维护功能 - 遥控功能|遥控键盘休眠|[remoteKpSleep](#remotekpsleep)|[sEvtStateCode](#sevtstatecode)| -|维护功能 - 离线关机|设置键盘离线关机等级(内)|[setKpPowerOffLevel](#setkppowerofflevel)|[fEvtSetKpPowerOffLevel](#fevtsetkppowerofflevel)| +||遥控修改键盘配对码(内)|[setKpPairCode](#setkppaircode)|[sEvtStateCode](#sevtstatecode)
[fEvtSetKpPairCode](#fevtsetkppaircode)| +|维护功能 - 离线关机|设置键盘离线关机等级(内)|[setKpPowerOffLevel](#setkppowerofflevel)|[sEvtStateCode](#sevtstatecode)
[fEvtSetKpPowerOffLevel](#fevtsetkppowerofflevel)| |维护功能 - 键盘升级|启动键盘无线升级(内)|[startKpFWUpdate](#startkpfwupdate)|[sEvtStateCode](#sevtstatecode)
[fEvtKpFWUpdateState](#fevtkpfwupdatestate)
[fEvtKpUpdateProgress](#fevtkpupdateprogress)
[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)| ||停止键盘无线升级(内)|[stopKpFWUpdate](#stopkpfwupdate)|[sEvtStateCode](#sevtstatecode)
[fEvtKpFWUpdateState](#fevtkpfwupdatestate)| ||退出键盘静默升级(内)|[exitKpSilentUpdate](#exitkpsilentupdate)|[sEvtStateCode](#sevtstatecode)| @@ -305,7 +309,6 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 |---|---|---|---| |标准测验|启动标准测验|[startKpExam](#startkpexam)|[sEvtStateCode](#sevtstatecode)
[fEvtKpExam](#fevtkpexam)
[fEvtFinalSubmit](#fevtfinalsubmit)| ||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| -||刷新作答数据|[rtGetKpExamData](#rtgetkpexamdata)|[sEvtStateCode](#sevtstatecode)
[fEvtKpExam](#fevtkpexam)| ||允许键盘提交后退回修改|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)
[fEvtFinalSubmit](#fevtfinalsubmit)| |多科测验|启动多科测验|[startKpMultiExam](#startkpmultiexam)|[sEvtStateCode](#sevtstatecode)
[fEvtKpExam](#fevtkpexam)
[fEvtFinalSubmit](#fevtfinalsubmit)| ||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| @@ -2407,6 +2410,51 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 } ``` +##### getBsAutoClearWhitelist +- **主题**:/manage/{baseSN}/send +- **功能描述**:获取基站是否在断电或与软件断连一定时间后自动清除白名单 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|baseSn|string||是|基站的出厂编码| + +- **示例代码** +```json +{ + "fun":"getBsAutoClearWhitelist", + "dataTag":"1", + "baseSn":"2024061101" +} +``` + +##### setBsAutoClearWhitelist +- **主题**:/manage/{baseSN}/send +- **功能描述**:设置基站是否在断电或与软件断连一定时间后自动清除白名单 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|baseSn|string||是|基站的出厂编码| +|data|object|-|是|传送参数的对象| +|+value|string||是|设置基站是否自动清除白名单
0- 不清除
1- 清除| + +- **示例代码** +```json +{ + "fun":"setBsAutoClearWhitelist", + "dataTag":"1", + "baseSn":"2024061101", + "data":{ + "value":"1" + } +} +``` + #### 事件 ##### [sEvtStateCode](#sevtstatecode) 发送指令后返回此事件 @@ -2553,6 +2601,31 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 } ``` +##### fEvtBsAutoClearWhitelist +- **主题**:/manage/{baseSN}/receive +- **功能描述**:返回基站是否在断电或与软件断连一定时间后自动清除白名单 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|baseSn|string||是|基站的出厂编码| +|data|object|-|是|传送参数的对象| +|+value|string||是|返回基站是否自动清除白名单
0- 不清除
1- 清除| + +- **示例代码** +```json +{ + "fun":"fEvtBsAutoClearWhitelist", + "dataTag":"1", + "baseSn":"2024061101", + "data":{ + "value":"1" + } +} +``` + ### 网络参数设置 #### 方法 ##### getBsTcpipParams @@ -3745,6 +3818,33 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 } ``` +##### setKpPairCode +- **主题**:/manage/{baseSN}/send +- **功能描述**:设置键盘配对码,一般用于批量将键盘配对至其他基站 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|baseSn|string||是|基站的出厂编码| +|data|object|-|是|传送参数的对象| +|+keySns|array||否|需要执行指令的键盘SN数组,空数组表示所有键盘| +|+value|string||是|设置新的配对码,8位,范围0-9A-F| + +- **示例代码** +```json +{ + "fun":"setKpPairCode", + "dataTag":"1", + "baseSn":"2024061101", + "data":{ + "keySns":[], + "value":"12345678" + } +} +``` + ##### setKpPowerOffLevel - **主题**:/manage/{baseSN}/send - **功能描述**:设置键盘离线后关机时间 @@ -3870,6 +3970,44 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 注意:管理指令的接收状态需从**主题: /manage/{baseSN}/receive** 返回 +##### fEvtSetKpPairCode +- **主题**: /manage/{baseSN}/receive +- **功能描述**:返回设置键盘配对码是否成功 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|baseSn|string||是|基站的出厂编码| +|data|array|-|是|传送参数的对象数组| +|++keySn|string||是|设置的键盘SN| +|++state|string||是|设置配对码是否成功
0 - 成功
1 - 超时失败
2 - 参数错误| + +- **示例代码** + +```json +{ + "fun":"fEvtSetKpPairCode", + "dataTag":"1", + "baseSn":"2024061101", + "data": [ + { + "keySn": "1479824643", + "state": "0" + }, + { + "keySn": "1479824645", + "state": "0" + }, + { + "keySn": "1479824644", + "state": "1" + } + ] +} +``` + ##### fEvtSetKpPowerOffLevel - **主题**: /manage/{baseSN}/receive - **功能描述**:返回设置键盘离线后关机时间是否成功 @@ -5303,31 +5441,6 @@ WebSocket方式应用与SDK建立长连接后,通过WebSocket接口发送接 ##### [stopKpVote](#stopkpvote) 停止在线测验 -##### rtGetKpExamData -- **主题**:/client/{baseSN}/send -- **功能描述**:刷新作答数据 -- **参数说明** - -|参数名|类型|限制|是否必填|说明| -|---|---|---|---|---| -|fun|string|-|是|指令名称| -|dataTag|string|-|否|数据包标识,可为空字符串| -|baseSn|string||是|基站的出厂编码| -|data|object|-|是|传送参数的对象| -|+keySns|array||是|指定的键盘SN数组,空数组表示全部在线键盘| - -- **示例代码** -```json -{ - "fun":"rtGetKpExamData", - "dataTag":"1", - "baseSn":"2024061101", - "data":{ - "keySns":["1234567890","1234567891"] - } -} -``` - ##### rtKpAllowEdited - **主题**:/client/{baseSN}/send - **功能描述**:键盘提交后,允许键盘修改答案 -- libgit2 0.21.4