diff --git a/通讯协议-B200W-MQTT协议[内部].md b/通讯协议-B200W-MQTT协议[内部].md index 9962e34..b2383d2 100644 --- a/通讯协议-B200W-MQTT协议[内部].md +++ b/通讯协议-B200W-MQTT协议[内部].md @@ -76,6 +76,24 @@ ## 功能速查一览表 +### 公共方法 +可以在多种业务中调用的通用方法 +|功能归类|功能|API指令|指令/系统事件| +|---|---|---|---| +|停止投票|可停止通过调用startXXX启动的答题业务|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)|| + +### 公共事件 +无需调用指令,自动返回的事件 +|功能归类|功能|API指令|指令/系统事件| +|---|---|---|---| +|公共事件|指令接收状态|-|[sEvtStateCode](#sevtstatecode)| +|公共事件|基站连接状态变化|-|[sEvtBsConnectState](#sevtbsconnectstate)| +|公共事件|基站信道冲突|-|[sEvtBsChannelConflict](#sevtbschannelconflict)| +|公共事件|键盘上线通知|-|[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)| +|公共事件|键盘刷卡事件|-|[sEvtBsNfcResults](#sevtbsnfcresults)| +|公共事件|键盘待机实时按键反馈|-|[sEvtKpRtFeedback](#sevtkprtfeedback)| +|公共事件|键盘举手键实时按键反馈|-|[sEvtKpHandUp](#sevtkphandup)| + ### 基站管理 |功能归类|功能|API指令|指令/系统事件| |---|---|---|---| @@ -99,8 +117,16 @@ ||设置基站工作信道|[setBsChannel](#setbschannel)|[fEvtBsChannel](#fevtbschannel)|| |登录设置 - 登录名称|获取基站登录名称|[getBsSSID](#getbsssid)|[fEvtBsSSID](#fevtbsssid)| ||设置基站登录名称|[setBsSSID](#setbsssid)|[fEvtBsSSID](#fevtbsssid)|| +|登录设置 - 登录密码|获取基站登录密码|[getBsLoginPwd](#getbsloginpwd)|[fEvtBsLoginPwd](#fevtbsloginpwd)| +||设置基站登录密码|[setBsLoginPwd](#setbsloginpwd)|[fEvtBsLoginPwd](#fevtbsloginpwd)|| +|登录设置 - 基站登录状态|获取基站登录状态|[getBsLoginState](#getbsloginstate)|[fEvtBsLoginState](#fevtbsloginstate)| +||设置基站登录状态|[setBsLoginState](#setbsloginstate)|[fEvtBsLoginState](#fevtbsloginstate)|| |键盘统一设置 - 键盘语言|获取键盘语言|[getBsKpLanguage](#getbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)| ||设置键盘语言|[setBsKpLanguage](#setbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)|| +|键盘统一设置 - 状态语模式|获取状态语设置状态|[getBsKpStbMsgMode](#getbskpstbmsgmode)|[fEvtBsKpStbMsgMode](#fevtbskpstbmsgmode)| +||设置状态语工作状态|[setBsKpStbMsgMode](#setbskpstbmsgmode)|[fEvtBsKpStbMsgMode](#fevtbskpstbmsgmode)||| +|键盘统一设置 - 登录菜单|获取键盘登录菜单状态|[getBsKpLoginMenu](#getbskploginmenu)|[fEvtBsKpLoginMenu](#fevtbskploginmenu)| +||设置键盘登录菜单状态|[setBsKpLoginMenu](#setbskploginmenu)|[fEvtBsKpLoginMenu](#fevtbskploginmenu)||| |键盘统一设置 - 键盘休眠|设置键盘休眠等级(内)|[setBsKpSleepLevel](#setbskpsleeplevel)|[fEvtBsKpSleepLevel](#fevtbskpsleeplevel)| ||获取键盘休眠等级(内)|[getBsKpSleepLevel](#getbskpsleeplevel)|[fEvtBsKpSleepLevel](#fevtbskpsleeplevel)| ||设置键盘暂停休眠状态(内)|[setBsKpPauseSleep](#setbskppausesleep)|[fEvtBsKpPauseSleep](#fevtbskppausesleep)| @@ -111,6 +137,8 @@ ||清空白名单|[clearBsWhitelist](#clearbswhitelist)|[sEvtStateCode](#sevtstatecode)
[fEvtBsWhitelist](#fevtbswhitelist)| ||增加白名单|[addBsWhitelist](#addbswhitelist)|[sEvtStateCode](#sevtstatecode)
[fEvtAddBsWhitelist](#fevtaddbswhitelist)
[fEvtBsWhitelist](#fevtbswhitelist)| ||删除白名单|[delBsWhitelist](#delbswhitelist)|[sEvtStateCode](#sevtstatecode)
[fEvtDelBsWhitelist](#fevtdelbswhitelist)
[fEvtBsWhitelist](#fevtbswhitelist)| +|基站加密 - 软件狗|获取基站软件狗|[getBsSoftwareKey](#getbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| +||设置基站软件狗|[setBsSoftwareKey](#setbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| |网络设置 - TCP/IP参数|获取TCP/IP参数|[getBsTcpipParams](#getbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)| ||设置TCP/IP参数|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)|| |网络设置 - MQTT参数|获取MQTT参数|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)| @@ -123,6 +151,13 @@ ### 键盘管理 |功能归类|功能|API指令|指令事件| |---|---|---|---| +|识别设置 - 出厂编码(内)|设置键盘出厂编码(内)|[setKpSN](#setkpsn)|[fEvtKpSN](#fevtkpsn)| +|识别设置 - 键盘编号|获取键盘编号|[getKpID](#getkpid)|[fEvtKpID](#fevtkpid)| +|识别设置 - 键盘编号(内)|设置键盘编号(内)|[setKpID](#setkpid)|[fEvtKpID](#fevtkpid)| +|识别设置 - 键盘型号|获取键盘型号|[getKpModel](#getkpmodel)|[fEvtKpModel](#fevtkpmodel)| +|识别设置 - 键盘固件版本|获取键盘固件版本|[getKpFWVersion](#getKpfwversion)|[fEvtKpFWVersion](#fevtkpfwversion)| +|识别设置 - 识别模式(内)|获取键盘识别模式(内)|[getKpIdentityMode](#getkpidentitymode)|[fEvtKpIdentityMode](#fevtkpidentitymode)| +||设置键盘识别模式(内)|[setKpIdentityMode](#setkpidentitymode)|[fEvtKpIdentityMode](#fevtkpidentitymode)| |交互设置 - 用户内置状态语|设置用户内置状态语|[setKpUserStbMsg](#setkpuserstbmsg)|[fEvtKpUserStbMsg](#fevtkpuserstbmsg)| |交互设置 - 用户实时提示反馈信息|实时设置提示反馈信息|[rtSetKpUserPrompt](#rtsetkpuserprompt)|[sEvtStateCode](#sevtstatecode)
[fEvtSetKpUserPrompt](#fevtsetkpuserprompt)| |在线状态获取|开启扫描在线键盘|[startGetKpOnline](#startgetkponline)|[sEvtStateCode](#sevtstatecode)
[fEvtKpOnlineMsg](#fevtkponlinemsg)| @@ -140,7 +175,7 @@ |功能归类|功能|API指令|指令事件| |---|---|---|---| |同步签到|启动同步签到|[startKpSignIn](#startkpsignin)|[sEvtStateCode](#sevtstatecode)
[fEvtKpSignIn](#fevtkpsignin)| -||停止同步签到|[stopKpSignIn](#stopkpsignin)|[sEvtStateCode](#sevtstatecode)| +||停止同步签到|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| |随时签到|启动随时签到|[rtStartKpSignIn](#rtstartkpsignin)|[sEvtStateCode](#sevtstatecode)
[fEvtKpSignIn](#fevtkpsignin)| ||停止随时签到|[rtStopKpSignIn](#rtstopkpsignin)|[sEvtStateCode](#sevtstatecode)| ||实时PIN签到授权|[rtSetKpLoginAllowed](#rtsetkploginallowed)|[sEvtStateCode](#sevtstatecode)
[fEvtKpLoginAllowed](#fevtkploginallowed)| @@ -148,22 +183,44 @@ |功能归类|功能|API指令|指令事件| |---|---|---|---| |判断题|启动判断题答题|[startQATrueFalse](#startqatruefalse)|[sEvtStateCode](#sevtstatecode)
[fEvtQATrueFalse](#fevtqatruefalse)| -||停止判断题答题|[stopQATrueFalse](#stopqatruefalse)|[sEvtStateCode](#sevtstatecode)| +||停止判断题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| |选择题|启动选择题答题|[startQAChoice](#startqachoice)|[sEvtStateCode](#sevtstatecode)
[fEvtQAChoice](#fevtqachoice)| -||停止选择题答题|[stopQAChoice](#stopqachoice)|[sEvtStateCode](#sevtstatecode)| +||停止选择题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| |数字题|启动数字题答题|[startQANum](#startqanum)|[sEvtStateCode](#sevtstatecode)
[fEvtQANum](#fevtqanum)| -||停止数字题答题|[stopQANum](#stopqanum)|[sEvtStateCode](#sevtstatecode)| +||停止数字题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| |抢答题|启动抢答题答题|[startQAQuicker](#startqaquicker)|[sEvtStateCode](#sevtstatecode)
[fEvtQAQuicker](#fevtqaquicker)| -||停止抢答题答题|[stopQAQuicker](#stopqaquicker)|[sEvtStateCode](#sevtstatecode)| +||停止抢答题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| +|待机实时反馈|设置待机实时反馈状态|[setKpStbResponse](#setkpstbresponse)|[fEvtKpStbResponse](#fevtkpstbresponse)
[sEvtKpRtFeedback](#sevtkprtfeedback)
[sEvtKpHandUp](#sevtkphandup)| ### 在线测验 |功能归类|功能|API指令|指令事件| |---|---|---|---| |标准测验|启动标准测验|[startKpExam](#startkpexam)|[sEvtStateCode](#sevtstatecode)
[fEvtKpExam](#fevtkpexam)
[fEvtFinalSubmit](#fevtfinalsubmit)| -||停止标准测验|[stopKpExam](#stopkpexam)|[sEvtStateCode](#sevtstatecode)| -||刷新作答数据|[rtGetKpExamData](#rtgetkpexamdata)|[fEvtKpExam](#fevtkpexam)| +||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| +||刷新作答数据|[rtGetKpExamData](#rtgetkpexamdata)|[sEvtStateCode](#sevtstatecode)
[fEvtKpExam](#fevtkpexam)| ||允许键盘提交后退回修改|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)
[fEvtFinalSubmit](#fevtfinalsubmit)| |多科测验|启动多科测验|[startKpMultiExam](#startkpmultiexam)|[sEvtStateCode](#sevtstatecode)
[fEvtKpExam](#fevtkpexam)
[fEvtFinalSubmit](#fevtfinalsubmit)| -||停止标准测验|[stopKpMultiExam](#stopkpmultiexam)|[sEvtStateCode](#sevtstatecode)| +||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| +|自主录分|启动自主录分|[startKpScoreInput](#startkpscoreinput)|[sEvtStateCode](#sevtstatecode)
[fEvtKpScore](#fevtkpscore)
[fEvtFinalSubmit](#fevtfinalsubmit)| +||停止自主录分|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| + +## 公共方法 +### stopKpVote +- **主题**: /client/\${baseSN}/send +- **功能描述**:通用停止键盘答题方法,可以停止如同步签到、按键反馈、在线测验中调用startXXX方法启动的业务 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|-----|-----|-----|-----|-----| +|fun|string|-|是|事件类型| +|dataTag|string||否|数据包标识,不需要时可传空字符串| + +- **示例代码** +```json +{ + "fun":"stopKpVote", + "dataTag":"1" +} +``` ## 公共事件 ### sEvtBsConnectState @@ -182,7 +239,7 @@ |+version|string||否|基站固件版本| - **示例代码** -```Json +```json //连接成功 { "fun":"sEvtBsConnectState", @@ -216,7 +273,7 @@ |+value|int||是|有冲突的信道| - **示例代码** -```Json +```json { "fun":"sEvtBsChannelConflict", "dataTag":"1", @@ -239,7 +296,7 @@ |+value|int||是|刷卡的状态
1-成功
2-失败| - **示例代码** -```Json +```json { "fun":"sEvtBsNfcResults", "dataTag":"1", //不需要时可传空字符串 @@ -265,7 +322,7 @@ |+model|int||是|键盘型号| - **示例代码** -```Json +```json { "fun":"sEvtBsKpOnlineMsg", "dataTag":"1", @@ -276,6 +333,52 @@ } } ``` +### sEvtKpRtFeedback +- **主题**: /basestation/\${baseSN}/receive +- **功能描述**:开启键盘实时反馈后,键盘按键时上报 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|事件名称| +|dataTag|string|-|否|数据包标识| +|data|object|-|是|传送参数的对象| +|+keySn|string||是|键盘SN| +|+keyValue|string||是|键盘提交的按键值| + +- **示例代码** +```json +{ + "fun":"sEvtKpRtFeedback", + "dataTag":"1", + "data":{ + "keySn":"1234567890", + "keyValue":"A" + } +} +``` +### sEvtKpHandUp +- **主题**: /basestation/\${baseSN}/receive +- **功能描述**:开启键盘举手功能后,键盘按举手键时上报 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|事件名称| +|dataTag|string|-|否|数据包标识| +|data|object|-|是|传送参数的对象| +|+keySn|string||是|举手的键盘SN| + +- **示例代码** +```json +{ + "fun":"sEvtKpHandUp", + "dataTag":"1", + "data":{ + "keySn":"1234567890" + } +} +``` ### sEvtStateCode - **主题**: /basestation/\${baseSN}/receive - **功能描述**:返回基站接收指令状态信息 @@ -304,7 +407,7 @@ |60001|此功能必须指定键盘SN| - **示例代码** -```Json +```json { "fun":"sEvtStateCode", "dataTag":"1", @@ -327,7 +430,7 @@ |fun|string|-|是|固定指令名称| |dataTag|string|-|否|数据包标识| - **示例代码** -```Json +```json { "fun":"getBsOnlineState", "dataTag":"1" @@ -344,7 +447,7 @@ |fun|string|-|是|固定指令名称| |dataTag|string|-|否|数据包标识| - **示例代码** -```Json +```json { "fun":"getBsConnectState", "dataTag":"1" @@ -370,7 +473,7 @@ |+baseSN|string||否|基站SN| - **示例代码** -```Json +```json //连接成功 { "fun":"fEvtBsOnlineState", @@ -398,7 +501,7 @@ |+timeStamp|long ||否|当前时间的时间戳| - **示例代码** -```Json +```json { "fun":"timeSync", "dataTag":"1", @@ -428,7 +531,7 @@ |+verCode|string||是|内部主题校验码,时间+固定key加密| --> - **示例代码** -```Json +```json { "fun":"setBsSN", "dataTag":"1", @@ -448,7 +551,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsModel", "dataTag":"1" @@ -465,7 +568,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsFWVersion", "dataTag":"1" @@ -482,7 +585,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsBIC", "dataTag":"1" @@ -503,7 +606,7 @@ |+verCode|string||是|内部主题校验码,时间+固定key加密| --> - **示例代码** -```Json +```json { "fun":"setBsBIC", "dataTag":"1", @@ -526,7 +629,7 @@ |+value|string|-|是|基站的出厂编码| - **示例代码** -```Json +```json { "fun":"fEvtBsSN", "dataTag":"1", @@ -548,7 +651,7 @@ |+value|string|-|是|基站的型号名称| - **示例代码** -```Json +```json { "fun":"fEvtBsModel", "dataTag":"1", @@ -570,7 +673,7 @@ |+value|string||是|基站的固件版本号| - **示例代码** -```Json +```json { "fun":"fEvtBsFWVersion", "dataTag":"1", @@ -592,7 +695,7 @@ |+value|string||是|基站的品牌码| - **示例代码** -```Json +```json { "fun":"fEvtBsBIC", "dataTag":"1", @@ -614,7 +717,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsNetworkMode", "dataTag":"1" @@ -633,7 +736,7 @@ |+value|string|-|是|设置的基站组网模式
1-配对模式
2-白名单模式| - **示例代码** -```Json +```json { "fun":"setBsNetworkMode", "dataTag":"1", @@ -653,7 +756,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsPairCode", "dataTag":"1" @@ -674,7 +777,7 @@ |+verCode|string||是|内部主题校验码,时间+固定key加密| --> - **示例代码** -```Json +```json { "fun":"setBsPairCode", "dataTag":"1", @@ -694,7 +797,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsNfcLogin", "dataTag":"1" @@ -713,7 +816,7 @@ |+value|string|-|是|设置的基站刷卡配对状态
0-关闭刷卡配对
1-开启刷卡配对| - **示例代码** -```Json +```json { "fun":"setBsNfcLogin", "dataTag":"1", @@ -733,7 +836,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsChannel", "dataTag":"1" @@ -752,7 +855,7 @@ |+value|string|-|是|设置的基站信道,可设范围:1-80| - **示例代码** -```Json +```json { "fun":"setBsChannel", "dataTag":"1", @@ -775,7 +878,7 @@ |+value|string||是|基站的组网模式
1-配对模式
2-白名单模式| - **示例代码** -```Json +```json { "fun":"fEvtBsNetworkMode", "dataTag":"1", @@ -797,7 +900,7 @@ |+value|string||是|基站的配对码| - **示例代码** -```Json +```json { "fun":"fEvtBsPairCode", "dataTag":"1", @@ -820,7 +923,7 @@ |+value|string||是|基站信道| - **示例代码** -```Json +```json { "fun":"fEvtBsChannel", "dataTag":"1", @@ -842,7 +945,7 @@ |+value|string||是|0-关闭 1-开启| - **示例代码** -```Json +```json { "fun":"fEvtBsNfcLogin", "dataTag":"1", @@ -865,7 +968,7 @@ |dataTag|string|-|否|数据包标识| - **示例代码** -```Json +```json { "fun":"getBsSSID", "dataTag":"1" @@ -884,7 +987,7 @@ |+value|string||是|设置的基站SSID,最长12字符| - **示例代码** -```Json +```json { "fun":"setBsSSID", "dataTag":"1", @@ -893,6 +996,86 @@ } } ``` +##### getBsLoginPwd +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取基站登录密码 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|固定指令名称| +|dataTag|string|-|否|数据包标识| + +- **示例代码** +```json +{ + "fun":"getBsLoginPwd", + "dataTag":"1" +} +``` +##### setBsLoginPwd +- **主题**:/client/\${baseSN}/send +- **功能描述**:设置基站登录密码 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|设置的基站登录密码,数字类型,为空代表无需密码登录| + +- **示例代码** +```json +{ + "fun":"setBsLoginPwd", + "dataTag":"1", + "data":{ + "value":"123456" + } +} +``` +##### getBsLoginState +获取基站登录名称 +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取基站登录状态 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|固定指令名称| +|dataTag|string|-|否|数据包标识| + +- **示例代码** +```json +{ + "fun":"getBsLoginState", + "dataTag":"1" +} +``` +##### setBsLoginState +- **主题**:/client/\${baseSN}/send +- **功能描述**:设置基站登录状态 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|设置是否允许键盘自主登入
0 - 不允许键盘登入
1 - 允许键盘登入| + +- **示例代码** +```json +{ + "fun":"setBsLoginState", + "dataTag":"1", + "data":{ + "value":"1" + } +} +``` + #### 事件 ##### fEvtBsSSID - **主题**: /basestation/\${baseSN}/receive @@ -907,7 +1090,7 @@ |+value|string||是|基站名称| - **示例代码** -```Json +```json { "fun":"fEvtBsSSID", "dataTag":"1", @@ -916,6 +1099,50 @@ } } ``` +##### fEvtBsLoginPwd +- **主题**: /basestation/\${baseSN}/receive +- **功能描述**:返回基站登录密码 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|事件名称| +|dataTag|string|-|否|数据包标识,可传空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|基站登录密码| + +- **示例代码** +```json +{ + "fun":"fEvtBsLoginPwd", + "dataTag":"1", + "data":{ + "value":"123456" + } +} +``` +##### fEvtBsLoginState +- **主题**: /basestation/\${baseSN}/receive +- **功能描述**:返回基站登录状态 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|事件名称| +|dataTag|string|-|否|数据包标识,可传空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|基站登录状态| + +- **示例代码** +```json +{ + "fun":"fEvtBsLoginState", + "dataTag":"1", + "data":{ + "value":"1" + } +} +``` ### 键盘统一设置 #### 方法 ##### getBsKpLanguage @@ -929,7 +1156,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsKpLanguage", "dataTag":"1" @@ -948,7 +1175,7 @@ |+value|string||是|设置键盘显示的语言
1-简体中文
2-英文| - **示例代码** -```Json +```json { "fun":"setBsKpLanguage", "dataTag":"1", @@ -957,10 +1184,9 @@ } } ``` - -##### getBsKpSleepLevel -- **主题**:/manage/\${baseSN}/send -- **功能描述**:获取键盘休眠时间等级 +##### getBsKpStbMsgMode +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取状态语设置状态 - **参数说明** |参数名|类型|限制|是否必填|说明| @@ -969,16 +1195,15 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { - "fun":"getBsKpSleepLevel", + "fun":"getBsKpStbMsgMode", "dataTag":"1" } ``` - -##### setBsKpSleepLevel -- **主题**:/manage/\${baseSN}/send -- **功能描述**:设置键盘休眠时间等级 +##### setBsKpStbMsgMode +- **主题**:/client/\${baseSN}/send +- **功能描述**:设置状态语工作状态 - **参数说明** |参数名|类型|限制|是否必填|说明| @@ -986,94 +1211,217 @@ |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+value|string||是|设置键盘休眠的时间等级
0-30秒
1-2分钟
2-10分钟
3-45分钟| +|+value|string||是|设置状态语工作状态
0-系统默认
1-用户内置| - **示例代码** -```Json +```json { - "fun":"setBsKpSleepLevel", + "fun":"setBsKpStbMsgMode", "dataTag":"1", "data":{ - "value":"1" + "value":"0" } } ``` - -##### setBsKpPauseSleep -- **主题**:/manage/\${baseSN}/send -- **功能描述**:设置键盘暂停休眠是否开启
注意:请谨慎使用本功能,务必在相关测试或功能完成后关闭,否则可能会导致键盘异常耗电
设置单次生效,基站拔插后复位成关闭状态
+##### getBsKpLoginMenu +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取键盘登录菜单显示状态 - **参数说明** |参数名|类型|限制|是否必填|说明| |---|---|---|---|---| |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| -|data|object|-|是|传送参数的对象| -|+value|string||是|设置键盘暂停休眠是否开启
0-关闭暂停休眠
1-开启暂停休眠| - **示例代码** -```Json +```json { - "fun":"setBsKpPauseSleep", - "dataTag":"1", - "data":{ - "value":"1" - } + "fun":"getBsKpLoginMenu", + "dataTag":"1" } ``` -#### 事件 -##### fEvtBsKpLanguage -- **主题**: /basestation/\${baseSN}/receive -- **功能描述**:返回键盘语言 +##### setBsKpLoginMenu +- **主题**:/client/\${baseSN}/send +- **功能描述**:设置键盘登录菜单显示状态 - **参数说明** -|参数名|类型|限制|非空|说明| +|参数名|类型|限制|是否必填|说明| |---|---|---|---|---| |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+value|string||是|键盘显示的语言
1-简体中文
2-英文| +|+value|string||是|设置键盘登录菜单显示状态
0-不显示
1-显示| - **示例代码** -```Json +```json { - "fun":"fEvtBsKpLanguage", + "fun":"setBsKpLoginMenu", "dataTag":"1", "data":{ "value":"1" } } ``` - -##### fEvtBsKpSleepLevel -- **主题**: /manage/\${baseSN}/receive -- **功能描述**:返回键盘休眠时间等级 +##### getBsKpSleepLevel +- **主题**:/manage/\${baseSN}/send +- **功能描述**:获取键盘休眠时间等级 - **参数说明** -|参数名|类型|限制|非空|说明| +|参数名|类型|限制|是否必填|说明| |---|---|---|---|---| |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| -|data|object|-|是|传送参数的对象| -|+value|string||是|键盘休眠的时间等级
0-30秒
1-2分钟
2-10分钟
3-45分钟| - **示例代码** -```Json +```json { - "fun":"fEvtBsKpSleepLevel", - "dataTag":"1", - "data":{ - "value":"1" - } + "fun":"getBsKpSleepLevel", + "dataTag":"1" } ``` -##### fEvtBsKpPauseSleep -- **主题**: /manage/\${baseSN}/receive -- **功能描述**:返回暂停键盘休眠开启状态 -- **参数说明** - +##### setBsKpSleepLevel +- **主题**:/manage/\${baseSN}/send +- **功能描述**:设置键盘休眠时间等级 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|设置键盘休眠的时间等级
0-30秒
1-2分钟
2-10分钟
3-45分钟| + +- **示例代码** +```json +{ + "fun":"setBsKpSleepLevel", + "dataTag":"1", + "data":{ + "value":"1" + } +} +``` + +##### setBsKpPauseSleep +- **主题**:/manage/\${baseSN}/send +- **功能描述**:设置键盘暂停休眠是否开启
注意:请谨慎使用本功能,务必在相关测试或功能完成后关闭,否则可能会导致键盘异常耗电
设置单次生效,基站拔插后复位成关闭状态
+- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|设置键盘暂停休眠是否开启
0-关闭暂停休眠
1-开启暂停休眠| + +- **示例代码** +```json +{ + "fun":"setBsKpPauseSleep", + "dataTag":"1", + "data":{ + "value":"1" + } +} +``` + +#### 事件 +##### fEvtBsKpLanguage +- **主题**: /basestation/\${baseSN}/receive +- **功能描述**:返回键盘语言 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|键盘显示的语言
1-简体中文
2-英文| + +- **示例代码** +```json +{ + "fun":"fEvtBsKpLanguage", + "dataTag":"1", + "data":{ + "value":"1" + } +} +``` +##### fEvtBsKpStbMsgMode +- **主题**: /basestation/\${baseSN}/receive +- **功能描述**:返回状态语工作状态 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|返回状态语工作状态
0-系统默认
1-用户内置| + +- **示例代码** +```json +{ + "fun":"fEvtBsKpStbMsgMode", + "dataTag":"1", + "data":{ + "value":"0" + } +} +``` +##### fEvtBsKpLoginMenu +- **主题**: /basestation/\${baseSN}/receive +- **功能描述**:返回键盘登录菜单显示状态 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|返回键盘登录菜单显示状态
0-不显示
1-显示| + +- **示例代码** +```json +{ + "fun":"fEvtBsKpLoginMenu", + "dataTag":"1", + "data":{ + "value":"0" + } +} +``` +##### fEvtBsKpSleepLevel +- **主题**: /manage/\${baseSN}/receive +- **功能描述**:返回键盘休眠时间等级 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|键盘休眠的时间等级
0-30秒
1-2分钟
2-10分钟
3-45分钟| + +- **示例代码** +```json +{ + "fun":"fEvtBsKpSleepLevel", + "dataTag":"1", + "data":{ + "value":"1" + } +} +``` + +##### fEvtBsKpPauseSleep +- **主题**: /manage/\${baseSN}/receive +- **功能描述**:返回暂停键盘休眠开启状态 +- **参数说明** + |参数名|类型|限制|非空|说明| |---|---|---|---|---| |fun|string|-|是|指令名称| @@ -1082,7 +1430,7 @@ |+value|string||是|返回暂停键盘休眠开启状态
0-未开启暂停休眠
1-开启暂停休眠| - **示例代码** -```Json +```json { "fun":"fEvtBsKpPauseSleep", "dataTag":"1", @@ -1254,7 +1602,7 @@ |+keySns|array||是|基站当前的白名单列表| - **示例代码** -```Json +```json { "fun":"fEvtBsWhitelist", "dataTag":"1", @@ -1278,7 +1626,7 @@ |++state|int||是|键盘SN的写入状态
0-写入成功
1-写入失败| - **示例代码** -```Json +```json { "fun":"fEvtSetBsWhitelist", "dataTag":"1", @@ -1306,7 +1654,7 @@ |++state|int||是|键盘的增加状态
0-增加成功
1-增加失败| - **示例代码** -```Json +```json { "fun":"fEvtAddBsWhitelist", "dataTag":"1", @@ -1334,7 +1682,7 @@ |++state|int||是|键盘的删除状态
0-删除成功
1-删除失败| - **示例代码** -```Json +```json { "fun":"fEvtDelBsWhitelist", "dataTag":"1", @@ -1361,7 +1709,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsTcpipParams", "dataTag":"1" @@ -1383,7 +1731,7 @@ |+ipAllocation|int||否|基站IP获取方式
0 - 手动指定
1 - DHCP获取| - **示例代码** -```Json +```json { "fun":"setBsTcpipParams", "dataTag":"1", @@ -1406,7 +1754,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsMqttParams", "dataTag":"1" @@ -1429,7 +1777,7 @@ |+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒| - **示例代码** -```Json +```json { "fun":"setBsMqttParams", "dataTag":"1", @@ -1460,7 +1808,7 @@ |+ipAllocation|int||否|基站IP获取方式
0 - 手动指定
1 - DHCP获取| - **示例代码** -```Json +```json { "fun":"fEvtBsTcpipParams", "dataTag":"1", @@ -1490,7 +1838,7 @@ |+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒| - **示例代码** -```Json +```json { "fun":"fEvtBsMqttParams", "dataTag":"1", @@ -1503,6 +1851,70 @@ } } ``` +### 基站加密 +#### 方法 +##### getBsSoftwareKey +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取基站软件狗密钥 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| + +- **示例代码** +```json +{ + "fun":"getBsSoftwareKey", + "dataTag":"1" +} +``` +##### setBsSoftwareKey +- **主题**:/client/\${baseSN}/send +- **功能描述**:设置基站软件狗密钥 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string|-|是|基站软件狗密钥,长度不超过32字节| + +- **示例代码** +```json +{ + "fun":"setBsSoftwareKey", + "dataTag":"1", + "data":{ + "value":"sunvote123456" + } +} +``` +#### 事件 +##### fEvtBsSoftwareKey +- **主题**:/basestation/\${baseSN}/receive +- **功能描述**:返回基站的软件狗密钥 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+value|string||是|返回基站的软件狗密钥| + +- **示例代码** +```json +{ + "fun":"fEvtBsSoftwareKey", + "dataTag":"1", + "data":{ + "value":"sunvote123456" + } +} +``` ### 基站维护 #### 方法 ##### getBsLogInfo @@ -1516,7 +1928,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"getBsLogInfo", "dataTag":"1" @@ -1534,7 +1946,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"resetBsSystem", "dataTag":"1" @@ -1552,7 +1964,7 @@ |dataTag|string|-|否|数据包标识,可为空字符串| - **示例代码** -```Json +```json { "fun":"resetBsPower", "dataTag":"1" @@ -1567,35 +1979,334 @@ ##### [sEvtBsConnectState](#sevtbsconnectstate) 复位基站后,基站重新连接成功后上报 -##### fEvtBsLogInfo -- **主题**: /manage/\${baseSN}/receive -- **功能描述**:返回基站存储的日志内容 +##### fEvtBsLogInfo +- **主题**: /manage/\${baseSN}/receive +- **功能描述**:返回基站存储的日志内容 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+index|int||是|数据包序号,从1开始,传0代表日志已传完| +|+info|string||是|日志内容
日志的时间依赖于基站授时,需要加上时区得到具体的时间| + +- **示例代码** +```json +{ + "fun":"fEvtBsLogInfo", + "dataTag":"1", + "data":{ + "index":1, + "info":"XXXXXXXXXXXXX" + } +} +``` +### 基站升级 +#### 方法 +##### startBsUpdate +- **主题**:/manage/\${baseSN}/send +- **功能描述**:基站固件升级 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+partition|int||是|存储区域
1-备份区 使用备份区固件的方法:打开基站盖子,按住SW1按钮,然后上电,这时基站固件就会更新成备份区的固件
2-更新区,实时升级基站固件| +|+url|string||是|待升级的固件地址,可访问的网络url| +|+version|string||是|待升级的基站固件版本| +|+crc|uint||是|固件CRC校验码,10进制数字| + + +- **示例代码** +```json +{ + "fun":"startBsUpdate", + "dataTag":"1", + "data":{ + "partition":2, + "url":"http://192.168.10.10/V1.0.3.bin", + "version":"1.0.3", + "crc":1429319861 + } +} +``` +##### downloadFontLib +- **主题**:/manage/\${baseSN}/send +- **功能描述**:下载更新基站字库文件 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+partition|int||是|存储区域
1-备份区
2-更新区| +|+url|string||是|待下载的字库地址,可访问的网络url| +|+version|string||是|待升级的字库版本| +|+crc|int||是|字库CRC校验码,10进制数字| + + +- **示例代码** +```json +{ + "fun":"downloadFontLib", + "dataTag":"1", + "data":{ + "partition":2, + "url":"http://192.168.10.10/V1.0.3.bin", + "version":"1.0.3", + "crc":1429319861 + } +} +``` + +#### 事件 +##### [sEvtStateCode](#sevtstatecode) +返回升级指令的接收状态 +注意:升级指令的接收状态需从**主题: /manage/\${baseSN}/receive** 返回 + +##### fEvtBsUpateState +- **主题**: /manage/\${baseSN}/receive +- **功能描述**:返回基站启动升级状态 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+state|int||是|启动升级状态
0 - 准备升级
1 - 升级成功
2 - 升级失败 +|+msg|string||否|返回的失败原因 + +- **示例代码** +```json +{ + "fun":"fEvtBsUpateState", + "dataTag":"1", + "data":{ + "state":2, + "msg":"error msg" + } +} +``` + +##### fEvtBsUpdateProgress +- **主题**: /manage/\${baseSN}/receive +- **功能描述**:返回基站升级进度 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+progress|int||是|升级进度,百分比| + +- **示例代码** +```json +{ + "fun":"fEvtBsUpdateProgress", + "dataTag":"1", + "data":{ + "progress":20 + } +} +``` + +##### fEvtBsFontLibState +- **主题**: /manage/\${baseSN}/receive +- **功能描述**:返回基站下载字库状态 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+state|int||是|启动升级状态
0 - 准备下载
1 - 下载完成
2 - 下载失败 +|+msg|string||否|返回的失败原因 + +- **示例代码** +```json +{ + "fun":"fEvtBsFontLibState", + "dataTag":"1", + "data":{ + "state":2, + "msg":"error msg" + } +} +``` + +##### fEvtBsFontLibProgress +- **主题**: /manage/\${baseSN}/receive +- **功能描述**:返回基站下载字库进度 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+progress|int||是|下载进度,百分比| + +- **示例代码** +```json +{ + "fun":"fEvtBsFontLibProgress", + "dataTag":"1", + "data":{ + "progress":20 + } +} +``` + +## 键盘管理 +### 识别设置 +#### 方法 +##### setKpSN +- **主题**:/manage/\${baseSN}/send +- **功能描述**:设置指定键盘的出厂编码 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+oldKeySn|string||是|键盘原SN| +|+newKeySn|string||是|待设置的新SN| +|+time|string|数字|是|时间,yyyyMMddHHmmss| +|+verCode|string||是|内部主题校验码,时间+固定key加密| + +- **示例代码** +```json +{ + "fun":"setKpIdentityMode", + "dataTag":"1", + "data":{ + "oldKeySn":"1234567890", + "newKeySn":"2024021011" + } +} +``` +##### getKpID +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取键盘编号 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+keySn|string||是|需读取编号的键盘SN| + +- **示例代码** +```json +{ + "fun":"getKpID", + "dataTag":"1", + "data":{ + "keySn":"2024021011" + } +} +``` +##### setKpID +- **主题**:/client/\${baseSN}/send +- **功能描述**:设置键盘编号 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+keySn|string||是|需设置编号的键盘SN| +|+keyId|int||是|键盘编号,不超过65535| +- **示例代码** +```json +{ + "fun":"setKpID", + "dataTag":"1", + "data":{ + "keySn":"2024021011", + "keyId":1 + } +} +``` +##### getKpModel +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取键盘型号 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+keySn|string||是|需读取型号的键盘SN| + +- **示例代码** +```json +{ + "fun":"getKpModel", + "dataTag":"1", + "data":{ + "keySn":"2024021011" + } +} +``` + +##### getKpFWVersion +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取键盘型号 - **参数说明** -|参数名|类型|限制|非空|说明| +|参数名|类型|限制|是否必填|说明| |---|---|---|---|---| |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+index|int||是|数据包序号,从1开始,传0代表日志已传完| -|+info|string||是|日志内容
日志的时间依赖于基站授时,需要加上时区得到具体的时间| +|+keySn|string||是|需读取版本的键盘SN| - **示例代码** -```Json +```json { - "fun":"fEvtBsLogInfo", + "fun":"getKpFWVersion", "dataTag":"1", "data":{ - "index":1, - "info":"XXXXXXXXXXXXX" + "keySn":"2024021011" } } ``` -### 基站升级 -#### 方法 -##### startBsUpdate + +##### getKpIdentityMode +- **主题**:/client/\${baseSN}/send +- **功能描述**:获取键盘识别模式 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| + +- **示例代码** +```json +{ + "fun":"getKpIdentityMode", + "dataTag":"1" +} +``` +##### setKpIdentityMode - **主题**:/manage/\${baseSN}/send -- **功能描述**:基站固件升级 +- **功能描述**:设置键盘识别模式 - **参数说明** |参数名|类型|限制|是否必填|说明| @@ -1603,65 +2314,46 @@ |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+partition|int||是|存储区域
1-备份区 使用备份区固件的方法:打开基站盖子,按住SW1按钮,然后上电,这时基站固件就会更新成备份区的固件
2-更新区| -|+url|string||是|待升级的固件地址,可访问的网络url| -|+version|string||是|待升级的基站固件版本| -|+crc|uint||是|固件CRC校验码,10进制数字| - +|+value|string||是|设置键盘识别模式
0 - SN模式
1 - ID+SN模式| +|+time|string|数字|是|时间,yyyyMMddHHmmss| +|+verCode|string||是|内部主题校验码,时间+固定key加密| - **示例代码** -```Json +```json { - "fun":"startBsUpdate", + "fun":"setKpIdentityMode", "dataTag":"1", "data":{ - "partition":2, - "url":"http://192.168.10.10/V1.0.3.bin", - "version":"1.0.3", - "crc":1429319861 + "value":"0" } } ``` -##### downloadFontLib -- **主题**:/manage/\${baseSN}/send -- **功能描述**:下载更新基站字库文件 +#### 事件 +##### fEvtKpIdentityMode +- **主题**:/basestation/\${baseSN}/receive +- **功能描述**:返回键盘识别模式 - **参数说明** -|参数名|类型|限制|是否必填|说明| +|参数名|类型|限制|非空|说明| |---|---|---|---|---| |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+partition|int||是|存储区域
1-备份区
2-更新区| -|+url|string||是|待下载的字库地址,可访问的网络url| -|+version|string||是|待升级的字库版本| -|+crc|int||是|字库CRC校验码,10进制数字| - +|+value|string||是|设置键盘识别模式
0 - SN模式
1 - ID+SN模式| - **示例代码** -```Json +```json { - "fun":"downloadFontLib", + "fun":"fEvtKpIdentityMode", "dataTag":"1", "data":{ - "partition":2, - "url":"http://192.168.10.10/V1.0.3.bin", - "version":"1.0.3", - "crc":1429319861 + "value":"0" } } ``` - -#### 事件 -##### [sEvtStateCode](#sevtstatecode) -返回升级指令的接收状态 -注意:升级指令的接收状态需从**主题: /manage/\${baseSN}/receive** 返回 - -##### fEvtBsUpateState -- **主题**: /manage/\${baseSN}/receive -- **功能描述**:返回基站启动升级状态 +##### fEvtKpSN +- **主题**:/manage/\${baseSN}/receive +- **功能描述**:返回写键盘SN状态 - **参数说明** |参数名|类型|限制|非空|说明| @@ -1669,24 +2361,23 @@ |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+state|int||是|启动升级状态
0 - 准备升级
1 - 升级成功
2 - 升级失败 -|+msg|string||否|返回的失败原因 +|+keySn|string||是|设置键盘SN的原SN| +|+state|string||是|设置是否成功
0-设置成功
1-设置失败| - **示例代码** -```Json +```json { - "fun":"fEvtBsUpateState", + "fun":"fEvtKpSN", "dataTag":"1", "data":{ - "state":2, - "msg":"error msg" + "keySn":"1234567890", + "state":"0" } } ``` - -##### fEvtBsUpdateProgress -- **主题**: /manage/\${baseSN}/receive -- **功能描述**:返回基站升级进度 +##### fEvtKpID +- **主题**:/basestation/\${baseSN}/receive +- **功能描述**:返回键盘编号 - **参数说明** |参数名|类型|限制|非空|说明| @@ -1694,22 +2385,23 @@ |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+progress|int||是|升级进度,百分比| +|+keySn|string||是|设置键盘SN的原SN| +|+keyId|int||是|键盘编号| - **示例代码** -```Json +```json { - "fun":"fEvtBsUpdateProgress", + "fun":"fEvtKpID", "dataTag":"1", "data":{ - "progress":20 + "keySn":"2024021011", + "keyId":11 } } ``` - -##### fEvtBsFontLibState -- **主题**: /manage/\${baseSN}/receive -- **功能描述**:返回基站下载字库状态 +##### fEvtKpModel +- **主题**:/basestation/\${baseSN}/receive +- **功能描述**:返回键盘型号 - **参数说明** |参数名|类型|限制|非空|说明| @@ -1717,24 +2409,24 @@ |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+state|int||是|启动升级状态
0 - 准备下载
1 - 下载完成
2 - 下载失败 -|+msg|string||否|返回的失败原因 +|+keySn|string||是|设置键盘SN的原SN| +|+model|int||是|键盘型号代码| - **示例代码** -```Json +```json { - "fun":"fEvtBsFontLibState", + "fun":"fEvtKpModel", "dataTag":"1", "data":{ - "state":2, - "msg":"error msg" + "keySn":"2024021011", + "model":67 } } ``` -##### fEvtBsFontLibProgress -- **主题**: /manage/\${baseSN}/receive -- **功能描述**:返回基站下载字库进度 +##### fEvtKpFWVersion +- **主题**:/basestation/\${baseSN}/receive +- **功能描述**:返回键盘型号 - **参数说明** |参数名|类型|限制|非空|说明| @@ -1742,20 +2434,21 @@ |fun|string|-|是|指令名称| |dataTag|string|-|否|数据包标识,可为空字符串| |data|object|-|是|传送参数的对象| -|+progress|int||是|下载进度,百分比| +|+keySn|string||是|设置键盘SN的原SN| +|+version|string||是|键盘固件版本| - **示例代码** -```Json +```json { - "fun":"fEvtBsFontLibProgress", + "fun":"fEvtKpFWVersion", "dataTag":"1", "data":{ - "progress":20 + "keySn":"2024021011", + "version":"1.0.0" } } ``` -## 键盘管理 ### 交互设置 #### 方法 ##### setKpUserStbMsg @@ -1774,7 +2467,7 @@ |+submitted|string||是|已提交状态语
空字符串清除| - **示例代码** -```Json +```json { "fun":"setKpUserStbMsg", "dataTag":"1", @@ -1845,7 +2538,7 @@ |+state|string||是|设置状态语是否成功
0 - 成功
1 - 失败| - **示例代码** -```Json +```json { "fun":"fEvtKpUserStbMsg", "dataTag":"1", @@ -1946,7 +2639,7 @@ |+voltage|double||是|键盘电量(待键盘修改成百分比)| - **示例代码** -```Json +```json { "fun":"fEvtKpOnlineMsg", "dataTag":"1", @@ -1974,7 +2667,7 @@ |+keySns|array||否|需要执行指令的键盘SN数组,
空数组表示所有键盘| - **示例代码** -```Json +```json { "fun":"remoteKpPowerOff", "dataTag":"1", @@ -1996,7 +2689,7 @@ |+keySns|array||否|需要执行指令的键盘SN数组,空数组表示所有键盘| - **示例代码** -```Json +```json { "fun":"remoteKpSleep", "dataTag":"1", @@ -2023,7 +2716,7 @@ |+verCode|string||是|内部主题校验码,时间+固定key加密| --> - **示例代码** -```Json +```json { "fun":"startKpFWUpdate", "dataTag":"1", @@ -2049,7 +2742,7 @@ |+verCode|string||是|内部主题校验码,时间+固定key加密| --> - **示例代码** -```Json +```json { "fun":"stopKpFWUpdate", "dataTag":"1" @@ -2075,7 +2768,7 @@ |+msg|string||否|返回的失败原因 - **示例代码** -```Json +```json { "fun":"fEvtKpFWUpdateState", "dataTag":"1", @@ -2098,7 +2791,7 @@ |+progress|int||是|升级进度,百分比| - **示例代码** -```Json +```json { "fun":"fEvtKpUpdateProgress", "dataTag":"1", @@ -2239,7 +2932,7 @@ |+tipTitle |string|-|否| 提示标题,长度最多不超过16个字节| - **示例代码** -```Json +```json //按键签到 { "fun":"startKpSignIn", @@ -2264,8 +2957,7 @@ } } ``` - -##### stopKpSignIn + +##### [stopKpVote](#stopkpvote) +停止同步签到 + #### 事件 ##### [sEvtStateCode](#sevtstatecode) 发送指令后返回接收状态 @@ -2452,7 +3147,7 @@ } } ``` -##### stopQATrueFalse + + +##### [stopKpVote](#stopkpvote) +停止判断题答题 + #### 事件 ##### [sEvtStateCode](#sevtstatecode) 发送指令后返回接收状态 @@ -2543,7 +3242,7 @@ } } ``` -##### stopQAChoice + +##### [stopKpVote](#stopkpvote) +停止选择题答题 + #### 事件 ##### [sEvtStateCode](#sevtstatecode) 发送指令后返回接收状态 @@ -2631,7 +3333,7 @@ } } ``` -##### stopQANum + +##### [stopKpVote](#stopkpvote) +停止数字题答题 + #### 事件 ##### [sEvtStateCode](#sevtstatecode) 发送指令后返回接收状态 @@ -2713,7 +3418,7 @@ } } ``` -##### stopQAQuicker + + +##### [stopKpVote](#stopkpvote) +停止抢答 + #### 事件 ##### [sEvtStateCode](#sevtstatecode) 发送指令后返回接收状态 @@ -2760,6 +3469,82 @@ }] } ``` +### 待机实时反馈 +#### 方法 +##### setKpStbResponse +- **主题**:/client/\${baseSN}/send +- **功能描述**:启动待机实时反馈 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+state|int||是|启用待机实时反馈
0-不启用
1-启用| +|+mode|int||是|启动待机反馈类型,state=1时有效
0-举手
1-指定按键反馈| +|+keys|int||是|有效按键数量,state=1且mode=1时有效, 范围1-10| + +- **示例代码** +```json +//启用举手反馈 +{ + "fun":"setKpStbResponse", + "dataTag":"1", + "data":{ + "state":1, + "mode":0 + } +} +//启用待机按键反馈 +{ + "fun":"setKpStbResponse", + "dataTag":"1", + "data":{ + "state":1, + "mode":1, + "keys":4 + } +} +//关闭待机按键反馈 +{ + "fun":"setKpStbResponse", + "dataTag":"1", + "data":{ + "state":0 + } +} +``` + +#### 事件 +#### fEvtKpStbResponse +- **主题**:/basestation/\${baseSN}/receive +- **功能描述**:返回当前待机按键反馈开启状态 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|array|-|是|传送参数的对象数组| +|+state|int||是|启用待机实时反馈
0-不启用
1-启用| + +- **示例代码** +```json +{ + "fun":"fEvtKpStbResponse", + "dataTag":"1", + "data": { + "state": 1 + } +} +``` + +##### [sEvtKpRtFeedback](#sevtkprtfeedback) +返回待机时键盘返回的按键值 + +##### [sEvtKpHandup](#sevtkphandup) +启动待机按键反馈类型为举手提问时返回此事件 ## 在线测验 ### 标准测验 #### 方法 @@ -2865,7 +3650,7 @@ } } ``` -##### stopKpExam + +##### [stopKpVote](#stopkpvote) +停止在线测验 + ##### rtGetKpExamData - **主题**:/client/\${baseSN}/send - **功能描述**:刷新作答数据 @@ -3101,7 +3889,7 @@ } ``` -##### stopKpMultiExam + +##### [stopKpVote](#stopkpvote) +停止多科测验 #### 事件 ##### [sEvtStateCode](#sevtstatecode) @@ -3127,4 +3917,115 @@ 返回测验中键盘提交答题数据 ##### [fEvtFinalSubmit](#fevtfinalsubmit) -返回键盘手动交卷标识 \ No newline at end of file +返回键盘手动交卷标识 + +### 自主录分 +#### 方法 +##### startKpScoreInput +- **主题**:/client/\${baseSN}/send +- **功能描述**:启动标准测验 +- **参数说明** + +|参数名|类型|限制|是否必填|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|object|-|是|传送参数的对象| +|+examNo|int||是|0-9999
=0,新的录分
>0时,与上次启动卷号一致继续录分,不一致进入新的录分| +|+mode|int||是|录分模式
0-自主录分
1-交叉录分,需先输入录分的人员标识| +|+questions|array||是|题目详情| +|++symbol | string||是 | 题号前缀,可为空 | +|++min |int||是|可输入的最小值,默认为0| +|++max |int||是|可输入的最大值,<=100| +|++digits|int||是|可输入的小数位数,范围0-2| +|++startNo | int||是| 起始题号| +|++count | int||是| 题目数量| + +- **示例代码** +```json +{ + "fun":"startKpScoreInput", + "dataTag":"1", + "data":{ + "mode": 0, + "examNo": 0, + "questions": [{ + //题号1-1-1 到1-1-2 共2题,单题满分10分 + "symbol": "1-", + "min": 0, + "max":10, + "digits":1, + "startNo": 1, + "count":2 + }, { + //题号3到6 共4道题,单题满分5 + "symbol": "", + "min": 0, + "max":5, + "digits":0, + "startNo": 3, + "count":4 + }] + } +} +``` + +##### [stopKpVote](#stopkpvote) +停止自主录分 + +#### 事件 +##### [sEvtStateCode](#sevtstatecode) +发送指令后返回接收状态 + +##### fEvtKpScore +- **主题**:/basestation/\${baseSN}/receive +- **功能描述**:返回键盘提交录分信息 +- **参数说明** + +|参数名|类型|限制|非空|说明| +|---|---|---|---|---| +|fun|string|-|是|指令名称| +|dataTag|string|-|否|数据包标识,可为空字符串| +|data|array|-|是|传送参数的对象数组| +|++scoreTag|string||是|录分标识,自主录分为空,交叉录分为键盘录分前输入的标识| +|++keySn|string||是|键盘SN| +|++keyValue|string||是|键盘提交的分值,1:10;2:0表示第1题提交10分,第二题提交0分| +|++keyTime|double||是|录分时间,从启动录分开始计算,单位秒| + +- **示例代码** +```json +{ + "fun":"fEvtKpScore", + "dataTag":"1", + "data": [{ + "scoreTag":"5", + "keySn": "1234567890", + "keyValue":"1:8;2:7.5;3:2;4:3", + "keyTime":3.2 + }, + { + "scoreTag":"3", + "keySn": "1234567891", + "keyValue":"1:10;2:0", + "keyTime":3.5 + } + ] +} +``` \ No newline at end of file