Commit 4195f9a2ebd66392c92b9906d4d79bcbbb4f6586
1 parent
2162eb1f
修改多基站状态返回主题写错的问题,同步外部版的协议内容
Showing
2 changed files
with
768 additions
and
49 deletions
通讯协议-B200W-MQTT协议[内部].md
| ... | ... | @@ -473,7 +473,7 @@ |
| 473 | 473 | 参见基站连接变化系统通知 |
| 474 | 474 | |
| 475 | 475 | ##### fEvtBsOnlineState |
| 476 | -- **主题**: <span class="yellowFill">/basestation/mutilBase/receive</span> | |
| 476 | +- **主题**: <span class="yellowFill">/basestation/multiBase/receive</span> | |
| 477 | 477 | - **功能描述**:基站在线返回基站型号和基站SN |
| 478 | 478 | - **参数说明** |
| 479 | 479 | ... | ... |
通讯协议-B200W-MQTT协议[外].md
| ... | ... | @@ -13,10 +13,10 @@ |
| 13 | 13 | background-color: yellow; |
| 14 | 14 | } |
| 15 | 15 | </style> |
| 16 | -# SunVote B200W MQTT通讯协议 | |
| 17 | 16 | |
| 18 | 17 | [TOC] |
| 19 | 18 | |
| 19 | +# SunVote B200W MQTT通讯协议 | |
| 20 | 20 | # 功能说明 |
| 21 | 21 | |
| 22 | 22 | ## 主题说明 |
| ... | ... | @@ -47,8 +47,9 @@ |
| 47 | 47 | |fEvtXXX|指令事件 |调用对应指令后返回| |
| 48 | 48 | |
| 49 | 49 | ## 数据格式约定 |
| 50 | -- 数据格式统一为**Json**格式,MQTT发送接收消息编码统一为**UTF-8** | |
| 50 | +- 数据格式统一为**Json**格式,发送接收消息编码统一为**UTF-8** | |
| 51 | 51 | - Json通用格式如下: |
| 52 | + | |
| 52 | 53 | ```json |
| 53 | 54 | { |
| 54 | 55 | "fun":"xxx", |
| ... | ... | @@ -69,6 +70,24 @@ |
| 69 | 70 | |
| 70 | 71 | |
| 71 | 72 | ## 功能速查一览表 |
| 73 | +### 公共方法 | |
| 74 | +可以在多种业务中调用的通用方法 | |
| 75 | +|功能归类|功能|API指令|指令/系统事件| | |
| 76 | +|---|---|---|---| | |
| 77 | +|停止投票|可停止通过调用startXXX启动的答题业务|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)|| | |
| 78 | + | |
| 79 | +### 公共事件 | |
| 80 | +无需调用指令,自动返回的事件 | |
| 81 | +|功能归类|功能|API指令|指令/系统事件| | |
| 82 | +|---|---|---|---| | |
| 83 | +|公共事件|指令接收状态|-|[sEvtStateCode](#sevtstatecode)| | |
| 84 | +|公共事件|基站连接状态变化|-|[sEvtBsConnectState](#sevtbsconnectstate)| | |
| 85 | +|公共事件|基站信道冲突|-|[sEvtBsChannelConflict](#sevtbschannelconflict)| | |
| 86 | +|公共事件|键盘上线通知|-|[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)| | |
| 87 | +|公共事件|键盘刷卡事件|-|[sEvtBsNfcResults](#sevtbsnfcresults)| | |
| 88 | +|公共事件|键盘待机实时按键反馈|-|[sEvtKpRtFeedback](#sevtkprtfeedback)| | |
| 89 | +|公共事件|键盘举手键实时按键反馈|-|[sEvtKpHandUp](#sevtkphandup)| | |
| 90 | + | |
| 72 | 91 | ### 基站管理 |
| 73 | 92 | |功能归类|功能|API指令|指令/系统事件| |
| 74 | 93 | |---|---|---|---| |
| ... | ... | @@ -79,6 +98,7 @@ |
| 79 | 98 | |键盘上线通知|单个键盘上线系统通知|-|[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)|| |
| 80 | 99 | |识别设置 - 基站型号|读取基站型号|[getBsModel](#getbsmodel)|[fEvtBsModel](#fevtbsmodel)| |
| 81 | 100 | |识别设置 - 固件版本|获取基站固件版本|[getBsFWVersion](#getbsfwversion)|[fEvtBsFWVersion](#fevtbsfwversion)| |
| 101 | +|组网设置 - 组网模式|获取基站组网模式|[getBsNetworkMode](#getbsnetworkmode)|[fEvtBsNetworkMode](#fevtbsnetworkmode)| | |
| 82 | 102 | |组网设置 - 配对码|获取基站配对码|[getBsPairCode](#getbspaircode)|[fEvtBsPairCode](#fevtbspaircode)| |
| 83 | 103 | |组网设置 - 刷卡配对状态|获取刷卡配对状态|[getBsNfcLogin](#getbsnfclogin)|[fEvtBsNfcLogin](#fevtbsnfclogin)| |
| 84 | 104 | ||设置刷卡配对状态|[setBsNfcLogin](#setbsnfclogin)|[fEvtBsNfcLogin](#fevtbsnfclogin)|| |
| ... | ... | @@ -86,8 +106,10 @@ |
| 86 | 106 | ||设置基站工作信道|[setBsChannel](#setbschannel)|[fEvtBsChannel](#fevtbschannel)|| |
| 87 | 107 | |登录设置 - 登录名称|获取基站登录名称|[getBsSSID](#getbsssid)|[fEvtBsSSID](#fevtbsssid)| |
| 88 | 108 | ||设置基站登录名称|[setBsSSID](#setbsssid)|[fEvtBsSSID](#fevtbsssid)|| |
| 89 | -|键盘统一设置 - 键盘语言|获取键盘语言|[getBsKpLanguage](#getbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)| | |
| 90 | -||设置键盘语言|[setBsKpLanguage](#setbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)|| | |
| 109 | +|登录设置 - 登录密码|获取基站登录密码|[getBsLoginPwd](#getbsloginpwd)|[fEvtBsLoginPwd](#fevtbsloginpwd)| | |
| 110 | +||设置基站登录密码|[setBsLoginPwd](#setbsloginpwd)|[fEvtBsLoginPwd](#fevtbsloginpwd)|| | |
| 111 | +|登录设置 - 基站登录状态|获取基站登录状态|[getBsLoginState](#getbsloginstate)|[fEvtBsLoginState](#fevtbsloginstate)| | |
| 112 | +||设置基站登录状态|[setBsLoginState](#setbsloginstate)|[fEvtBsLoginState](#fevtbsloginstate)|| | |
| 91 | 113 | |配对模式 - 快速配对|启动基站快速配对|[startBsFastPair](#startbsfastpair)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)| |
| 92 | 114 | ||停止基站快速配对|[stopBsFastPair](#stopbsfastpair)|[sEvtStateCode](#sevtstatecode)| |
| 93 | 115 | |白名单模式 - 白名单管理|获取白名单|[getBsWhitelist](#getbswhitelist)|[fEvtBsWhitelist](#fevtbswhitelist)| |
| ... | ... | @@ -95,6 +117,8 @@ |
| 95 | 117 | ||清空白名单|[clearBsWhitelist](#clearbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsWhitelist](#fevtbswhitelist)| |
| 96 | 118 | ||增加白名单|[addBsWhitelist](#addbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtAddBsWhitelist](#fevtaddbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)| |
| 97 | 119 | ||删除白名单|[delBsWhitelist](#delbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtDelBsWhitelist](#fevtdelbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)| |
| 120 | +|基站加密 - 软件狗|获取基站软件狗|[getBsSoftwareKey](#getbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| | |
| 121 | +||设置基站软件狗|[setBsSoftwareKey](#setbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| | |
| 98 | 122 | |网络设置 - TCP/IP参数|获取TCP/IP参数|[getBsTcpipParams](#getbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)| |
| 99 | 123 | ||设置TCP/IP参数|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)|| |
| 100 | 124 | |网络设置 - MQTT参数|获取MQTT参数|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)| |
| ... | ... | @@ -115,7 +139,7 @@ |
| 115 | 139 | |功能归类|功能|API指令|指令事件| |
| 116 | 140 | |---|---|---|---| |
| 117 | 141 | |同步签到|启动同步签到|[startKpSignIn](#startkpsignin)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpSignIn](#fevtkpsignin)| |
| 118 | -||停止同步签到|[stopKpSignIn](#stopkpsignin)|[sEvtStateCode](#sevtstatecode)| | |
| 142 | +||停止同步签到|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 119 | 143 | |随时签到|启动随时签到|[rtStartKpSignIn](#rtstartkpsignin)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpSignIn](#fevtkpsignin)| |
| 120 | 144 | ||停止随时签到|[rtStopKpSignIn](#rtstopkpsignin)|[sEvtStateCode](#sevtstatecode)| |
| 121 | 145 | ||实时PIN签到授权|[rtSetKpLoginAllowed](#rtsetkploginallowed)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpLoginAllowed](#fevtkploginallowed)| |
| ... | ... | @@ -123,19 +147,44 @@ |
| 123 | 147 | |功能归类|功能|API指令|指令事件| |
| 124 | 148 | |---|---|---|---| |
| 125 | 149 | |判断题|启动判断题答题|[startQATrueFalse](#startqatruefalse)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQATrueFalse](#fevtqatruefalse)| |
| 126 | -||停止判断题答题|[stopQATrueFalse](#stopqatruefalse)|[sEvtStateCode](#sevtstatecode)| | |
| 150 | +||停止判断题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 127 | 151 | |选择题|启动选择题答题|[startQAChoice](#startqachoice)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQAChoice](#fevtqachoice)| |
| 128 | -||停止选择题答题|[stopQAChoice](#stopqachoice)|[sEvtStateCode](#sevtstatecode)| | |
| 152 | +||停止选择题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 129 | 153 | |数字题|启动数字题答题|[startQANum](#startqanum)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQANum](#fevtqanum)| |
| 130 | -||停止数字题答题|[stopQANum](#stopqanum)|[sEvtStateCode](#sevtstatecode)| | |
| 154 | +||停止数字题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 131 | 155 | |抢答题|启动抢答题答题|[startQAQuicker](#startqaquicker)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQAQuicker](#fevtqaquicker)| |
| 132 | -||停止抢答题答题|[stopQAQuicker](#stopqaquicker)|[sEvtStateCode](#sevtstatecode)| | |
| 156 | +||停止抢答题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 157 | +|待机实时反馈|设置待机实时反馈状态|[setKpStbResponse](#setkpstbresponse)|[fEvtKpStbResponse](#fevtkpstbresponse)<br>[sEvtKpRtFeedback](#sevtkprtfeedback)<br>[sEvtKpHandUp](#sevtkphandup)| | |
| 158 | +||设置待机实时反馈状态|[getKpStbResponse](#getkpstbresponse)|[fEvtKpStbResponse](#fevtkpstbresponse)| | |
| 133 | 159 | ### 在线测验 |
| 134 | 160 | |功能归类|功能|API指令|指令事件| |
| 135 | 161 | |---|---|---|---| |
| 136 | 162 | |标准测验|启动标准测验|[startKpExam](#startkpexam)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| |
| 137 | -||停止标准测验|[stopKpExam](#stopkpexam)|[sEvtStateCode](#sevtstatecode)| | |
| 163 | +||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 138 | 164 | ||允许键盘提交后退回修改|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| |
| 165 | +|多科测验|启动多科测验|[startKpMultiExam](#startkpmultiexam)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| | |
| 166 | +||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 167 | +|自主录分|启动自主录分|[startKpScoreInput](#startkpscoreinput)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpScore](#fevtkpscore)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| | |
| 168 | +||停止自主录分|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
| 169 | + | |
| 170 | +## 公共方法 | |
| 171 | +### stopKpVote | |
| 172 | +- **主题**: /client/\${baseSN}/send | |
| 173 | +- **功能描述**:通用停止键盘答题方法,可以停止如同步签到、按键反馈、在线测验中调用startXXX方法启动的业务 | |
| 174 | +- **参数说明** | |
| 175 | + | |
| 176 | +|参数名|类型|限制|非空|说明| | |
| 177 | +|-----|-----|-----|-----|-----| | |
| 178 | +|fun|string|-|是|事件类型| | |
| 179 | +|dataTag|string||否|数据包标识,不需要时可传空字符串| | |
| 180 | + | |
| 181 | +- **示例代码** | |
| 182 | +```json | |
| 183 | +{ | |
| 184 | + "fun":"stopKpVote", | |
| 185 | + "dataTag":"1" | |
| 186 | +} | |
| 187 | +``` | |
| 139 | 188 | |
| 140 | 189 | ## 公共事件 |
| 141 | 190 | ### sEvtBsConnectState |
| ... | ... | @@ -146,7 +195,7 @@ |
| 146 | 195 | |参数名|类型|限制|非空|说明| |
| 147 | 196 | |-----|-----|-----|-----|-----| |
| 148 | 197 | |fun|string|-|是|事件类型| |
| 149 | -|dataTag|string|-|否|数据包标识,不需要时可传空字符串| | |
| 198 | +|dataTag|string||否|数据包标识,不需要时可传空字符串| | |
| 150 | 199 | |data|object|-|是|传送参数的对象| |
| 151 | 200 | |+baseModel|int||否|基站的型号码| |
| 152 | 201 | |+modelName|string||否|基站的型号名称| |
| ... | ... | @@ -208,6 +257,7 @@ |
| 208 | 257 | |dataTag|string|-|否|数据包标识,不需要时可传空字符串| |
| 209 | 258 | |data|object|-|是|传送参数的对象| |
| 210 | 259 | |+keySn|string||是|刷卡的键盘SN| |
| 260 | +|+cardType|int||是|刷卡的键盘类型<br>1-NFC类型<br>2-M1类型| | |
| 211 | 261 | |+value|int||是|刷卡的状态<br>1-成功<br>2-失败| |
| 212 | 262 | |
| 213 | 263 | - **示例代码** |
| ... | ... | @@ -216,7 +266,8 @@ |
| 216 | 266 | "fun":"sEvtBsNfcResults", |
| 217 | 267 | "dataTag":"1", //不需要时可传空字符串 |
| 218 | 268 | "data":{ |
| 219 | - "keySn":"1234567890", | |
| 269 | + "keySn":"1234567890", | |
| 270 | + "cardType":1, | |
| 220 | 271 | "value":1 |
| 221 | 272 | } |
| 222 | 273 | } |
| ... | ... | @@ -248,6 +299,56 @@ |
| 248 | 299 | } |
| 249 | 300 | } |
| 250 | 301 | ``` |
| 302 | +### sEvtKpRtFeedback | |
| 303 | +- **主题**: /basestation/\${baseSN}/receive | |
| 304 | +- **功能描述**:开启键盘实时反馈后,键盘按键时上报 | |
| 305 | +- **参数说明** | |
| 306 | + | |
| 307 | +|参数名|类型|限制|非空|说明| | |
| 308 | +|---|---|---|---|---| | |
| 309 | +|fun|string|-|是|事件名称| | |
| 310 | +|dataTag|string|-|否|数据包标识| | |
| 311 | +|data|array|-|是|传送参数的对象数组| | |
| 312 | +|++keySn|string||是|键盘SN| | |
| 313 | +|++keyValue|string||是|键盘提交的按键值| | |
| 314 | +|++voltage|double||是|键盘电量| | |
| 315 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
| 316 | + | |
| 317 | +- **示例代码** | |
| 318 | +```json | |
| 319 | +{ | |
| 320 | + "fun":"sEvtKpRtFeedback", | |
| 321 | + "dataTag":"1", | |
| 322 | + "data":[{ | |
| 323 | + "keySn":"1234567890", | |
| 324 | + "keyValue":"A", | |
| 325 | + "voltage":2.6, | |
| 326 | + "retryCount":1 | |
| 327 | + }] | |
| 328 | +} | |
| 329 | +``` | |
| 330 | +### sEvtKpHandUp | |
| 331 | +- **主题**: /basestation/\${baseSN}/receive | |
| 332 | +- **功能描述**:开启键盘举手功能后,键盘按举手键时上报 | |
| 333 | +- **参数说明** | |
| 334 | + | |
| 335 | +|参数名|类型|限制|非空|说明| | |
| 336 | +|---|---|---|---|---| | |
| 337 | +|fun|string|-|是|事件名称| | |
| 338 | +|dataTag|string|-|否|数据包标识| | |
| 339 | +|data|object|-|是|传送参数的对象| | |
| 340 | +|+keySn|string||是|举手的键盘SN| | |
| 341 | + | |
| 342 | +- **示例代码** | |
| 343 | +```json | |
| 344 | +{ | |
| 345 | + "fun":"sEvtKpHandUp", | |
| 346 | + "dataTag":"1", | |
| 347 | + "data":{ | |
| 348 | + "keySn":"1234567890" | |
| 349 | + } | |
| 350 | +} | |
| 351 | +``` | |
| 251 | 352 | ### sEvtStateCode |
| 252 | 353 | - **主题**: /basestation/\${baseSN}/receive |
| 253 | 354 | - **功能描述**:返回基站接收指令状态信息 |
| ... | ... | @@ -277,6 +378,7 @@ |
| 277 | 378 | |20008|value参数错误| |
| 278 | 379 | |30001|基站在答题中| |
| 279 | 380 | |30002|基站忙(内存不足)| |
| 381 | +|30003|基站执行失败| | |
| 280 | 382 | |40001|升级功能只能支持一个基站| |
| 281 | 383 | |50001|此功能必须指定基站| |
| 282 | 384 | |60001|此功能必须指定键盘SN| |
| ... | ... | @@ -334,7 +436,7 @@ |
| 334 | 436 | 参见基站连接变化系统通知 |
| 335 | 437 | |
| 336 | 438 | ##### fEvtBsOnlineState |
| 337 | -- **主题**: <span class="yellowFill">/basestation/mutilBase/receive</span> | |
| 439 | +- **主题**: <span class="yellowFill">/basestation/multiBase/receive</span> | |
| 338 | 440 | - **功能描述**:基站在线返回基站型号和基站SN |
| 339 | 441 | - **参数说明** |
| 340 | 442 | |
| ... | ... | @@ -496,6 +598,23 @@ |
| 496 | 598 | ``` |
| 497 | 599 | ### 组网设置 |
| 498 | 600 | #### 方法 |
| 601 | +##### getBsNetworkMode | |
| 602 | +- **主题**:/client/\${baseSN}/send | |
| 603 | +- **功能描述**:获取基站组网模式 | |
| 604 | +- **参数说明** | |
| 605 | + | |
| 606 | +|参数名|类型|限制|是否必填|说明| | |
| 607 | +|---|---|---|---|---| | |
| 608 | +|fun|string|-|是|指令名称| | |
| 609 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 610 | + | |
| 611 | +- **示例代码** | |
| 612 | +```json | |
| 613 | +{ | |
| 614 | + "fun":"getBsNetworkMode", | |
| 615 | + "dataTag":"1" | |
| 616 | +} | |
| 617 | +``` | |
| 499 | 618 | ##### getBsPairCode |
| 500 | 619 | - **主题**:/client/\${baseSN}/send |
| 501 | 620 | - **功能描述**:获取基站配对码 |
| ... | ... | @@ -592,6 +711,28 @@ |
| 592 | 711 | } |
| 593 | 712 | ``` |
| 594 | 713 | #### 事件 |
| 714 | +##### fEvtBsNetworkMode | |
| 715 | +- **主题**: /basestation/\${baseSN}/receive | |
| 716 | +- **功能描述**:返回基站组网模式 | |
| 717 | +- **参数说明** | |
| 718 | + | |
| 719 | +|参数名|类型|限制|非空|说明| | |
| 720 | +|---|---|---|---|---| | |
| 721 | +|fun|string|-|是|事件名称| | |
| 722 | +|dataTag|string|-|否|数据包标识,可传空字符串| | |
| 723 | +|data|object|-|是|传送参数的对象| | |
| 724 | +|+value|string||是|基站的组网模式<br>1-配对模式<br>2-白名单模式| | |
| 725 | + | |
| 726 | +- **示例代码** | |
| 727 | +```json | |
| 728 | +{ | |
| 729 | + "fun":"fEvtBsNetworkMode", | |
| 730 | + "dataTag":"1", | |
| 731 | + "data":{ | |
| 732 | + "value":"1" | |
| 733 | + } | |
| 734 | +} | |
| 735 | +``` | |
| 595 | 736 | ##### fEvtBsPairCode |
| 596 | 737 | - **主题**: /basestation/\${baseSN}/receive |
| 597 | 738 | - **功能描述**:返回基站配对码 |
| ... | ... | @@ -701,6 +842,86 @@ |
| 701 | 842 | } |
| 702 | 843 | } |
| 703 | 844 | ``` |
| 845 | +##### getBsLoginPwd | |
| 846 | +- **主题**:/client/\${baseSN}/send | |
| 847 | +- **功能描述**:获取基站登录密码 | |
| 848 | +- **参数说明** | |
| 849 | + | |
| 850 | +|参数名|类型|限制|是否必填|说明| | |
| 851 | +|---|---|---|---|---| | |
| 852 | +|fun|string|-|是|固定指令名称| | |
| 853 | +|dataTag|string|-|否|数据包标识| | |
| 854 | + | |
| 855 | +- **示例代码** | |
| 856 | +```json | |
| 857 | +{ | |
| 858 | + "fun":"getBsLoginPwd", | |
| 859 | + "dataTag":"1" | |
| 860 | +} | |
| 861 | +``` | |
| 862 | +##### setBsLoginPwd | |
| 863 | +- **主题**:/client/\${baseSN}/send | |
| 864 | +- **功能描述**:设置基站登录密码 | |
| 865 | +- **参数说明** | |
| 866 | + | |
| 867 | +|参数名|类型|限制|是否必填|说明| | |
| 868 | +|---|---|---|---|---| | |
| 869 | +|fun|string|-|是|指令名称| | |
| 870 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 871 | +|data|object|-|是|传送参数的对象| | |
| 872 | +|+value|string||是|设置的基站登录密码,数字类型,最长4位,为空或设为0代表无需密码登录| | |
| 873 | + | |
| 874 | +- **示例代码** | |
| 875 | +```json | |
| 876 | +{ | |
| 877 | + "fun":"setBsLoginPwd", | |
| 878 | + "dataTag":"1", | |
| 879 | + "data":{ | |
| 880 | + "value":"1234" | |
| 881 | + } | |
| 882 | +} | |
| 883 | +``` | |
| 884 | +##### getBsLoginState | |
| 885 | +获取基站登录名称 | |
| 886 | +- **主题**:/client/\${baseSN}/send | |
| 887 | +- **功能描述**:获取基站登录状态 | |
| 888 | +- **参数说明** | |
| 889 | + | |
| 890 | +|参数名|类型|限制|是否必填|说明| | |
| 891 | +|---|---|---|---|---| | |
| 892 | +|fun|string|-|是|固定指令名称| | |
| 893 | +|dataTag|string|-|否|数据包标识| | |
| 894 | + | |
| 895 | +- **示例代码** | |
| 896 | +```json | |
| 897 | +{ | |
| 898 | + "fun":"getBsLoginState", | |
| 899 | + "dataTag":"1" | |
| 900 | +} | |
| 901 | +``` | |
| 902 | +##### setBsLoginState | |
| 903 | +- **主题**:/client/\${baseSN}/send | |
| 904 | +- **功能描述**:设置基站登录状态 | |
| 905 | +- **参数说明** | |
| 906 | + | |
| 907 | +|参数名|类型|限制|是否必填|说明| | |
| 908 | +|---|---|---|---|---| | |
| 909 | +|fun|string|-|是|指令名称| | |
| 910 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 911 | +|data|object|-|是|传送参数的对象| | |
| 912 | +|+value|string||是|设置是否允许键盘自主登入<br>0 - 不允许键盘登入<br>1 - 允许键盘登入| | |
| 913 | + | |
| 914 | +- **示例代码** | |
| 915 | +```json | |
| 916 | +{ | |
| 917 | + "fun":"setBsLoginState", | |
| 918 | + "dataTag":"1", | |
| 919 | + "data":{ | |
| 920 | + "value":"1" | |
| 921 | + } | |
| 922 | +} | |
| 923 | +``` | |
| 924 | + | |
| 704 | 925 | #### 事件 |
| 705 | 926 | ##### fEvtBsSSID |
| 706 | 927 | - **主题**: /basestation/\${baseSN}/receive |
| ... | ... | @@ -724,6 +945,59 @@ |
| 724 | 945 | } |
| 725 | 946 | } |
| 726 | 947 | ``` |
| 948 | +##### fEvtBsLoginPwd | |
| 949 | +- **主题**: /basestation/\${baseSN}/receive | |
| 950 | +- **功能描述**:返回基站登录密码 | |
| 951 | +- **参数说明** | |
| 952 | + | |
| 953 | +|参数名|类型|限制|非空|说明| | |
| 954 | +|---|---|---|---|---| | |
| 955 | +|fun|string|-|是|事件名称| | |
| 956 | +|dataTag|string|-|否|数据包标识,可传空字符串| | |
| 957 | +|data|object|-|是|传送参数的对象| | |
| 958 | +|+value|string||是|基站登录密码,返回值为0代表无需密码登录| | |
| 959 | + | |
| 960 | +- **示例代码** | |
| 961 | +```json | |
| 962 | +{ | |
| 963 | + "fun":"fEvtBsLoginPwd", | |
| 964 | + "dataTag":"1", | |
| 965 | + "data":{ | |
| 966 | + "value":"1234" | |
| 967 | + } | |
| 968 | +} | |
| 969 | + | |
| 970 | +//无需密码登录 | |
| 971 | +{ | |
| 972 | + "fun":"fEvtBsLoginPwd", | |
| 973 | + "dataTag":"1", | |
| 974 | + "data":{ | |
| 975 | + "value":"0" | |
| 976 | + } | |
| 977 | +} | |
| 978 | +``` | |
| 979 | +##### fEvtBsLoginState | |
| 980 | +- **主题**: /basestation/\${baseSN}/receive | |
| 981 | +- **功能描述**:返回基站登录状态 | |
| 982 | +- **参数说明** | |
| 983 | + | |
| 984 | +|参数名|类型|限制|非空|说明| | |
| 985 | +|---|---|---|---|---| | |
| 986 | +|fun|string|-|是|事件名称| | |
| 987 | +|dataTag|string|-|否|数据包标识,可传空字符串| | |
| 988 | +|data|object|-|是|传送参数的对象| | |
| 989 | +|+value|string||是|基站登录状态| | |
| 990 | + | |
| 991 | +- **示例代码** | |
| 992 | +```json | |
| 993 | +{ | |
| 994 | + "fun":"fEvtBsLoginState", | |
| 995 | + "dataTag":"1", | |
| 996 | + "data":{ | |
| 997 | + "value":"1" | |
| 998 | + } | |
| 999 | +} | |
| 1000 | +``` | |
| 727 | 1001 | ### 键盘统一设置 |
| 728 | 1002 | #### 方法 |
| 729 | 1003 | ##### getBsKpLanguage |
| ... | ... | @@ -1122,7 +1396,7 @@ |
| 1122 | 1396 | |+port|int||是|端口,默认1883| |
| 1123 | 1397 | |+userName|string||否|连接服务器的用户名,可不设置| |
| 1124 | 1398 | |+password|string||否|连接服务器的密码,可不设置| |
| 1125 | -|+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒| | |
| 1399 | +|+interval|int|>=60|否|基站连接服务器失败后重连的间隔时长,单位秒| | |
| 1126 | 1400 | |
| 1127 | 1401 | - **示例代码** |
| 1128 | 1402 | ```json |
| ... | ... | @@ -1134,7 +1408,7 @@ |
| 1134 | 1408 | "port":1883, |
| 1135 | 1409 | "userName":"", |
| 1136 | 1410 | "password":"", |
| 1137 | - "interval":30 | |
| 1411 | + "interval":60 | |
| 1138 | 1412 | } |
| 1139 | 1413 | } |
| 1140 | 1414 | ``` |
| ... | ... | @@ -1199,7 +1473,70 @@ |
| 1199 | 1473 | } |
| 1200 | 1474 | } |
| 1201 | 1475 | ``` |
| 1476 | +### 基站加密 | |
| 1477 | +#### 方法 | |
| 1478 | +##### getBsSoftwareKey | |
| 1479 | +- **主题**:/client/\${baseSN}/send | |
| 1480 | +- **功能描述**:获取基站软件狗密钥 | |
| 1481 | +- **参数说明** | |
| 1482 | + | |
| 1483 | +|参数名|类型|限制|是否必填|说明| | |
| 1484 | +|---|---|---|---|---| | |
| 1485 | +|fun|string|-|是|指令名称| | |
| 1486 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 1487 | + | |
| 1488 | +- **示例代码** | |
| 1489 | +```json | |
| 1490 | +{ | |
| 1491 | + "fun":"getBsSoftwareKey", | |
| 1492 | + "dataTag":"1" | |
| 1493 | +} | |
| 1494 | +``` | |
| 1495 | +##### setBsSoftwareKey | |
| 1496 | +- **主题**:/client/\${baseSN}/send | |
| 1497 | +- **功能描述**:设置基站软件狗密钥 | |
| 1498 | +- **参数说明** | |
| 1499 | + | |
| 1500 | +|参数名|类型|限制|是否必填|说明| | |
| 1501 | +|---|---|---|---|---| | |
| 1502 | +|fun|string|-|是|指令名称| | |
| 1503 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 1504 | +|data|object|-|是|传送参数的对象| | |
| 1505 | +|+value|string|-|是|基站软件狗密钥,长度不超过32字节| | |
| 1506 | + | |
| 1507 | +- **示例代码** | |
| 1508 | +```json | |
| 1509 | +{ | |
| 1510 | + "fun":"setBsSoftwareKey", | |
| 1511 | + "dataTag":"1", | |
| 1512 | + "data":{ | |
| 1513 | + "value":"sunvote123456" | |
| 1514 | + } | |
| 1515 | +} | |
| 1516 | +``` | |
| 1517 | +#### 事件 | |
| 1518 | +##### fEvtBsSoftwareKey | |
| 1519 | +- **主题**:/basestation/\${baseSN}/receive | |
| 1520 | +- **功能描述**:返回基站的软件狗密钥 | |
| 1521 | +- **参数说明** | |
| 1522 | + | |
| 1523 | +|参数名|类型|限制|非空|说明| | |
| 1524 | +|---|---|---|---|---| | |
| 1525 | +|fun|string|-|是|指令名称| | |
| 1526 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 1527 | +|data|object|-|是|传送参数的对象| | |
| 1528 | +|+value|string||是|返回基站的软件狗密钥| | |
| 1202 | 1529 | |
| 1530 | +- **示例代码** | |
| 1531 | +```json | |
| 1532 | +{ | |
| 1533 | + "fun":"fEvtBsSoftwareKey", | |
| 1534 | + "dataTag":"1", | |
| 1535 | + "data":{ | |
| 1536 | + "value":"sunvote123456" | |
| 1537 | + } | |
| 1538 | +} | |
| 1539 | +``` | |
| 1203 | 1540 | ## 键盘管理 |
| 1204 | 1541 | ### 交互设置 |
| 1205 | 1542 | #### 方法 |
| ... | ... | @@ -1546,8 +1883,7 @@ |
| 1546 | 1883 | } |
| 1547 | 1884 | } |
| 1548 | 1885 | ``` |
| 1549 | - | |
| 1550 | -##### stopKpSignIn | |
| 1886 | +<!-- ##### stopKpSignIn | |
| 1551 | 1887 | - **主题**:/client/\${baseSN}/send |
| 1552 | 1888 | - **功能描述**:停止同步签到 |
| 1553 | 1889 | - **参数说明** |
| ... | ... | @@ -1563,7 +1899,10 @@ |
| 1563 | 1899 | "fun":"stopKpSignIn", |
| 1564 | 1900 | "dataTag":"1" |
| 1565 | 1901 | } |
| 1566 | -``` | |
| 1902 | +``` --> | |
| 1903 | +##### [stopKpVote](#stopkpvote) | |
| 1904 | +停止同步签到 | |
| 1905 | + | |
| 1567 | 1906 | #### 事件 |
| 1568 | 1907 | ##### [sEvtStateCode](#sevtstatecode) |
| 1569 | 1908 | 发送指令后返回接收状态 |
| ... | ... | @@ -1717,6 +2056,7 @@ |
| 1717 | 2056 | |dataTag|string|-|否|数据包标识,可为空字符串| |
| 1718 | 2057 | |data|object|-|是|传送参数的对象| |
| 1719 | 2058 | |+keySns|array||是|指定的键盘SN数组,空数组表示全部在线键盘| |
| 2059 | +|+count|int||是|题目数量,1-16,>1多题快答| | |
| 1720 | 2060 | |+mode|int||是|1 - True/False 对/错 <br>2 - Yes/No 是/否<br> 3 - √/×| |
| 1721 | 2061 | |+allowModify|int||是|0 - 不允许修改<br>1 - 允许修改| |
| 1722 | 2062 | |+tip|string||否|提示的标题,长度不超过16字符| |
| ... | ... | @@ -1729,13 +2069,14 @@ |
| 1729 | 2069 | "dataTag":"1", |
| 1730 | 2070 | "data":{ |
| 1731 | 2071 | "keySns":[], |
| 2072 | + "count":1, | |
| 1732 | 2073 | "mode":1, |
| 1733 | 2074 | "allowModify":1, |
| 1734 | 2075 | "tip":"请判断对错" |
| 1735 | 2076 | } |
| 1736 | 2077 | } |
| 1737 | 2078 | ``` |
| 1738 | -##### stopQATrueFalse | |
| 2079 | +<!-- ##### stopQATrueFalse | |
| 1739 | 2080 | - **主题**:/client/\${baseSN}/send |
| 1740 | 2081 | - **功能描述**:停止判断题答题 |
| 1741 | 2082 | - **参数说明** |
| ... | ... | @@ -1752,7 +2093,11 @@ |
| 1752 | 2093 | "fun":"stopQATrueFalse", |
| 1753 | 2094 | "dataTag":"1" |
| 1754 | 2095 | } |
| 1755 | -``` | |
| 2096 | +``` --> | |
| 2097 | + | |
| 2098 | +##### [stopKpVote](#stopkpvote) | |
| 2099 | +停止判断题答题 | |
| 2100 | + | |
| 1756 | 2101 | #### 事件 |
| 1757 | 2102 | ##### [sEvtStateCode](#sevtstatecode) |
| 1758 | 2103 | 发送指令后返回接收状态 |
| ... | ... | @@ -1800,6 +2145,7 @@ |
| 1800 | 2145 | |dataTag|string|-|否|数据包标识,可为空字符串| |
| 1801 | 2146 | |data|object|-|是|传送参数的对象| |
| 1802 | 2147 | |+keySns|array||是|指定的键盘SN数组,空数组表示全部在线键盘| |
| 2148 | +|+count|int||是|题目数量,1-16,>1多题快答<br>optionalN >1时无效| | |
| 1803 | 2149 | |+mode|int||是|显示模式<br>1:显示字母(默认值) </br>2:显示数字 | |
| 1804 | 2150 | |+lessMode|int||是|迫选模式<br>0:可缺选(默认值) </br>1:不可缺选</br>2:允许重复输入</br>3:允许重复输入且不可缺选 | |
| 1805 | 2151 | |+options|int||是|选项数量,1≤M≤10(默认值4)| |
| ... | ... | @@ -1816,6 +2162,7 @@ |
| 1816 | 2162 | "data":{ |
| 1817 | 2163 | "keySns":[], |
| 1818 | 2164 | "mode": 1, |
| 2165 | + "count":1, | |
| 1819 | 2166 | "lessMode": 0, |
| 1820 | 2167 | "options": 4, |
| 1821 | 2168 | "optionalN": 1, |
| ... | ... | @@ -1824,7 +2171,7 @@ |
| 1824 | 2171 | } |
| 1825 | 2172 | } |
| 1826 | 2173 | ``` |
| 1827 | -##### stopQAChoice | |
| 2174 | +<!-- ##### stopQAChoice | |
| 1828 | 2175 | - **主题**:/client/\${baseSN}/send |
| 1829 | 2176 | - **功能描述**:停止选择题答题 |
| 1830 | 2177 | - **参数说明** |
| ... | ... | @@ -1841,7 +2188,10 @@ |
| 1841 | 2188 | "fun":"stopQAChoice", |
| 1842 | 2189 | "dataTag":"1" |
| 1843 | 2190 | } |
| 1844 | -``` | |
| 2191 | +``` --> | |
| 2192 | +##### [stopKpVote](#stopkpvote) | |
| 2193 | +停止选择题答题 | |
| 2194 | + | |
| 1845 | 2195 | #### 事件 |
| 1846 | 2196 | ##### [sEvtStateCode](#sevtstatecode) |
| 1847 | 2197 | 发送指令后返回接收状态 |
| ... | ... | @@ -1889,7 +2239,7 @@ |
| 1889 | 2239 | |data|object|-|是|传送参数的对象| |
| 1890 | 2240 | |+keySns|array||是|指定的键盘SN数组,空数组表示全部在线键盘| |
| 1891 | 2241 | |+mode|int||是|模式<br>0:无规则 (S6最多16位,T2最多14位)<br>1:带小数位上下限(T2不支持)| |
| 1892 | -|+digits|int||是|小数位数,范围0-2,mode=1时有效 | |
| 2242 | +|+digits|int||是|小数位数,范围0-2,mode=1时有效 | |
| 1893 | 2243 | |+numMin|int||是|可输入下限,mode=1有效,范围0-100| |
| 1894 | 2244 | |+numMax|int||是|可输入上限,mode=1有效,范围0-100| |
| 1895 | 2245 | |+allowModify|int||是|修改模式<br>0 - 不允许修改<br>1 - 允许修改| |
| ... | ... | @@ -1912,7 +2262,7 @@ |
| 1912 | 2262 | } |
| 1913 | 2263 | } |
| 1914 | 2264 | ``` |
| 1915 | -##### stopQANum | |
| 2265 | +<!-- ##### stopQANum | |
| 1916 | 2266 | - **主题**:/client/\${baseSN}/send |
| 1917 | 2267 | - **功能描述**:停止数字题答题 |
| 1918 | 2268 | - **参数说明** |
| ... | ... | @@ -1929,7 +2279,10 @@ |
| 1929 | 2279 | "fun":"stopQANum", |
| 1930 | 2280 | "dataTag":"1" |
| 1931 | 2281 | } |
| 1932 | -``` | |
| 2282 | +``` --> | |
| 2283 | +##### [stopKpVote](#stopkpvote) | |
| 2284 | +停止数字题答题 | |
| 2285 | + | |
| 1933 | 2286 | #### 事件 |
| 1934 | 2287 | ##### [sEvtStateCode](#sevtstatecode) |
| 1935 | 2288 | 发送指令后返回接收状态 |
| ... | ... | @@ -1947,7 +2300,7 @@ |
| 1947 | 2300 | |++keySn|string||是|键盘SN| |
| 1948 | 2301 | |++keyValue|string||是|键盘提交的按键值| |
| 1949 | 2302 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
| 1950 | -|++voltage|double||是|键盘电量</font>| | |
| 2303 | +|++voltage|double||是|键盘电量| | |
| 1951 | 2304 | |++retryCount|int||是|键盘提交数据的重发次数| |
| 1952 | 2305 | |
| 1953 | 2306 | - **示例代码** |
| ... | ... | @@ -1994,7 +2347,7 @@ |
| 1994 | 2347 | } |
| 1995 | 2348 | } |
| 1996 | 2349 | ``` |
| 1997 | -##### stopQAQuicker | |
| 2350 | +<!-- ##### stopQAQuicker | |
| 1998 | 2351 | - **主题**:/client/\${baseSN}/send |
| 1999 | 2352 | - **功能描述**:停止抢答答题 |
| 2000 | 2353 | - **参数说明** |
| ... | ... | @@ -2011,7 +2364,11 @@ |
| 2011 | 2364 | "fun":"stopQAQuicker", |
| 2012 | 2365 | "dataTag":"1" |
| 2013 | 2366 | } |
| 2014 | -``` | |
| 2367 | +``` --> | |
| 2368 | + | |
| 2369 | +##### [stopKpVote](#stopkpvote) | |
| 2370 | +停止抢答 | |
| 2371 | + | |
| 2015 | 2372 | #### 事件 |
| 2016 | 2373 | ##### [sEvtStateCode](#sevtstatecode) |
| 2017 | 2374 | 发送指令后返回接收状态 |
| ... | ... | @@ -2045,6 +2402,114 @@ |
| 2045 | 2402 | }] |
| 2046 | 2403 | } |
| 2047 | 2404 | ``` |
| 2405 | +### 待机实时反馈 | |
| 2406 | +#### 方法 | |
| 2407 | +##### setKpStbResponse | |
| 2408 | +- **主题**:/client/\${baseSN}/send | |
| 2409 | +- **功能描述**:启动待机实时反馈 | |
| 2410 | +- **参数说明** | |
| 2411 | + | |
| 2412 | +|参数名|类型|限制|是否必填|说明| | |
| 2413 | +|---|---|---|---|---| | |
| 2414 | +|fun|string|-|是|指令名称| | |
| 2415 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 2416 | +|data|object|-|是|传送参数的对象| | |
| 2417 | +|+state|int||是|启用待机实时反馈<br>0-不启用<br>1-启用| | |
| 2418 | +|+mode|int||是|启动待机反馈类型,state=1时有效<br>0-举手<br>1-指定按键反馈| | |
| 2419 | +|+keys|int||是|有效按键数量,state=1且mode=1时有效, 范围1-10| | |
| 2420 | + | |
| 2421 | +- **示例代码** | |
| 2422 | +```json | |
| 2423 | +//启用举手反馈 | |
| 2424 | +{ | |
| 2425 | + "fun":"setKpStbResponse", | |
| 2426 | + "dataTag":"1", | |
| 2427 | + "data":{ | |
| 2428 | + "state":1, | |
| 2429 | + "mode":0 | |
| 2430 | + } | |
| 2431 | +} | |
| 2432 | +//启用待机按键反馈 | |
| 2433 | +{ | |
| 2434 | + "fun":"setKpStbResponse", | |
| 2435 | + "dataTag":"1", | |
| 2436 | + "data":{ | |
| 2437 | + "state":1, | |
| 2438 | + "mode":1, | |
| 2439 | + "keys":4 | |
| 2440 | + } | |
| 2441 | +} | |
| 2442 | +//关闭待机按键反馈 | |
| 2443 | +{ | |
| 2444 | + "fun":"setKpStbResponse", | |
| 2445 | + "dataTag":"1", | |
| 2446 | + "data":{ | |
| 2447 | + "state":0 | |
| 2448 | + } | |
| 2449 | +} | |
| 2450 | +``` | |
| 2451 | + | |
| 2452 | +##### getKpStbResponse | |
| 2453 | +- **主题**:/client/\${baseSN}/send | |
| 2454 | +- **功能描述**:获取实时反馈是否打开 | |
| 2455 | +- **参数说明** | |
| 2456 | + | |
| 2457 | +|参数名|类型|限制|是否必填|说明| | |
| 2458 | +|---|---|---|---|---| | |
| 2459 | +|fun|string|-|是|指令名称| | |
| 2460 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 2461 | + | |
| 2462 | +- **示例代码** | |
| 2463 | +```json | |
| 2464 | +//启用举手反馈 | |
| 2465 | +{ | |
| 2466 | + "fun":"getKpStbResponse", | |
| 2467 | + "dataTag":"1" | |
| 2468 | +} | |
| 2469 | +``` | |
| 2470 | + | |
| 2471 | +#### 事件 | |
| 2472 | +##### fEvtKpStbResponse | |
| 2473 | +- **主题**:/basestation/\${baseSN}/receive | |
| 2474 | +- **功能描述**:返回当前待机按键反馈开启状态 | |
| 2475 | +- **参数说明** | |
| 2476 | + | |
| 2477 | +|参数名|类型|限制|非空|说明| | |
| 2478 | +|---|---|---|---|---| | |
| 2479 | +|fun|string|-|是|指令名称| | |
| 2480 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 2481 | +|data|array|-|是|传送参数的对象数组| | |
| 2482 | +|+state|int||是|启用待机实时反馈<br>0-未启用<br>1-启用| | |
| 2483 | +|+mode|int||是|当前启动待机反馈类型,state=1时返回<br>0-举手<br>1-指定按键反馈| | |
| 2484 | + | |
| 2485 | +- **示例代码** | |
| 2486 | +```json | |
| 2487 | +//当前启用待机实时反馈,模式为指定按键反馈 | |
| 2488 | +{ | |
| 2489 | + "fun":"fEvtKpStbResponse", | |
| 2490 | + "dataTag":"1", | |
| 2491 | + "data": { | |
| 2492 | + "state": 1, | |
| 2493 | + "mode": 1 | |
| 2494 | + } | |
| 2495 | +} | |
| 2496 | + | |
| 2497 | +//当前未启用待机反馈 | |
| 2498 | +{ | |
| 2499 | + "fun":"fEvtKpStbResponse", | |
| 2500 | + "dataTag":"1", | |
| 2501 | + "data": { | |
| 2502 | + "state": 0 | |
| 2503 | + } | |
| 2504 | +} | |
| 2505 | +``` | |
| 2506 | + | |
| 2507 | +##### [sEvtKpRtFeedback](#sevtkprtfeedback) | |
| 2508 | +返回待机时键盘返回的按键值 | |
| 2509 | + | |
| 2510 | +##### [sEvtKpHandup](#sevtkphandup) | |
| 2511 | +启动待机按键反馈类型为举手提问时返回此事件 | |
| 2512 | + | |
| 2048 | 2513 | ## 在线测验 |
| 2049 | 2514 | ### 标准测验 |
| 2050 | 2515 | #### 方法 |
| ... | ... | @@ -2061,11 +2526,12 @@ |
| 2061 | 2526 | |+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验| |
| 2062 | 2527 | |+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头| |
| 2063 | 2528 | |+questions|array||是|题目详情| |
| 2064 | -|++symbol | string||是 | 题号前缀,分级标识为-,可为空,为空表示1级大题<br><font color="red">最多为三级题号,即最多可以设为x-x-</font>| | |
| 2065 | 2529 | |++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 | |
| 2066 | 2530 | |++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。| |
| 2067 | -|++startNo | int||是| 起始题号 | | |
| 2068 | -|++count | int||是| 题目数量 | | |
| 2531 | +|++firstNo | int||否| 一级题号,mode=0 时有效,有效范围1-255,不传此字段或传0表示不生效 | | |
| 2532 | +|++secondNo | int||否| 二级题号,mode=0 时有效,有效范围1-255,不传此字段或传0表示不生效 | | |
| 2533 | +|++startNo | int||是| 最后一级题号起始题号<br>mode=0 时有效,范围1-255,mode=1或2时按顺序显示题号<br>说明:<br>firstNo和secondNo都未赋值时,此字段为一级题号<br>firstNo赋值,secondNo未赋值时,此字段为二级题号<br>secondNo赋值时,此字段为三级题号 | | |
| 2534 | +|++count | int||是| 相同参数的连续题目数量, >0 | | |
| 2069 | 2535 | |
| 2070 | 2536 | - **示例代码** |
| 2071 | 2537 | |
| ... | ... | @@ -2076,7 +2542,7 @@ |
| 2076 | 2542 | "dataTag":"1", |
| 2077 | 2543 | "data":{ |
| 2078 | 2544 | "mode": 1, |
| 2079 | - "examNo": 1, | |
| 2545 | + "examNo": 0, | |
| 2080 | 2546 | "questions": [{ |
| 2081 | 2547 | "quesType": 1, //单选题 |
| 2082 | 2548 | "startNo": 1, //题号从1开始 |
| ... | ... | @@ -2093,7 +2559,7 @@ |
| 2093 | 2559 | "dataTag":"1", |
| 2094 | 2560 | "data":{ |
| 2095 | 2561 | "mode": 0, |
| 2096 | - "examNo": 1, | |
| 2562 | + "examNo": 0, | |
| 2097 | 2563 | //第1、2题单选题,第3、4题多选题,第5题数字,第6题判断,共6题 |
| 2098 | 2564 | "questions": [{ |
| 2099 | 2565 | "quesType": 1, //单选题 |
| ... | ... | @@ -2124,26 +2590,26 @@ |
| 2124 | 2590 | "dataTag":"1", |
| 2125 | 2591 | "data":{ |
| 2126 | 2592 | "mode": 0, |
| 2127 | - "examNo": 1, | |
| 2593 | + "examNo": 0, | |
| 2128 | 2594 | //第1-1、1-2题单选题,第2-1、2-2题多选题,第3-1题数字,第4-1题判断,共6题 |
| 2129 | 2595 | "questions": [{ |
| 2130 | - "symbol": "1-", | |
| 2596 | + "firstNo": 1, | |
| 2131 | 2597 | "quesType": 1, //单选题 |
| 2132 | 2598 | "startNo": 1, //题号从1-1开始 |
| 2133 | 2599 | "count":2 //连续2题 |
| 2134 | 2600 | },{ |
| 2135 | - "symbol": "2-", | |
| 2601 | + "firstNo": 2, | |
| 2136 | 2602 | "quesType": 2, //多选题 |
| 2137 | 2603 | "startNo": 1, //题号从2-1开始 |
| 2138 | 2604 | "count":2, //连续2题 |
| 2139 | 2605 | "option":5 |
| 2140 | 2606 | },{ |
| 2141 | - "symbol": "3-", | |
| 2607 | + "firstNo": 3, | |
| 2142 | 2608 | "quesType": 3, //数字题 |
| 2143 | 2609 | "startNo": 1, //题号从3-1开始 |
| 2144 | 2610 | "count":1 //连续1题 |
| 2145 | 2611 | },{ |
| 2146 | - "symbol": "4-", | |
| 2612 | + "firstNo": 4, | |
| 2147 | 2613 | "quesType": 4, //判断题 |
| 2148 | 2614 | "startNo": 1, //题号从4-1开始 |
| 2149 | 2615 | "count":1 //连续1题 |
| ... | ... | @@ -2159,26 +2625,30 @@ |
| 2159 | 2625 | "dataTag":"1", |
| 2160 | 2626 | "data":{ |
| 2161 | 2627 | "mode": 0, |
| 2162 | - "examNo": 1, | |
| 2628 | + "examNo": 0, | |
| 2163 | 2629 | //第1-1-1、1-1-2题单选题,第1-2-1、1-2-2题多选题,第2-1-1题数字,第3-1-1题判断,共6题 |
| 2164 | 2630 | "questions": [{ |
| 2165 | - "symbol": "1-1-", | |
| 2631 | + "firstNo": 1, | |
| 2632 | + "secondNo": 1, | |
| 2166 | 2633 | "quesType": 1, //单选题 |
| 2167 | 2634 | "startNo": 1, //题号从1-1-1开始 |
| 2168 | 2635 | "count":2 //连续2题 |
| 2169 | 2636 | },{ |
| 2170 | - "symbol": "1-2-", | |
| 2637 | + "firstNo": 1, | |
| 2638 | + "secondNo": 2, | |
| 2171 | 2639 | "quesType": 2, //多选题 |
| 2172 | 2640 | "startNo": 1, //题号从1-2-1开始 |
| 2173 | 2641 | "count":2, //连续2题 |
| 2174 | 2642 | "option":5 |
| 2175 | 2643 | },{ |
| 2176 | - "symbol": "2-1-", | |
| 2644 | + "firstNo": 2, | |
| 2645 | + "secondNo": 1, | |
| 2177 | 2646 | "quesType": 3, //数字题 |
| 2178 | 2647 | "startNo": 1, //题号从2-1-1开始 |
| 2179 | 2648 | "count":1 //连续1题 |
| 2180 | 2649 | },{ |
| 2181 | - "symbol": "3-1-", | |
| 2650 | + "firstNo": 3, | |
| 2651 | + "secondNo": 1, | |
| 2182 | 2652 | "quesType": 4, //判断题 |
| 2183 | 2653 | "startNo": 1, //题号从3-1-1开始 |
| 2184 | 2654 | "count":1 //连续1题 |
| ... | ... | @@ -2194,7 +2664,7 @@ |
| 2194 | 2664 | "dataTag":"1", |
| 2195 | 2665 | "data":{ |
| 2196 | 2666 | "mode": 1, |
| 2197 | - "examNo": 1, | |
| 2667 | + "examNo": 0, | |
| 2198 | 2668 | "questions": [{ |
| 2199 | 2669 | "quesType": 1, //单选题 |
| 2200 | 2670 | "startNo": 1, //题号从1开始 |
| ... | ... | @@ -2224,7 +2694,7 @@ |
| 2224 | 2694 | "dataTag":"1", |
| 2225 | 2695 | "data":{ |
| 2226 | 2696 | "mode": 2, |
| 2227 | - "examNo": 1, | |
| 2697 | + "examNo": 0, | |
| 2228 | 2698 | "questions": [{ |
| 2229 | 2699 | "quesType": 1, //单选题 |
| 2230 | 2700 | "startNo": 1, //题号从1开始 |
| ... | ... | @@ -2246,7 +2716,8 @@ |
| 2246 | 2716 | } |
| 2247 | 2717 | } |
| 2248 | 2718 | ``` |
| 2249 | -##### stopKpExam | |
| 2719 | + | |
| 2720 | +<!-- ##### stopKpExam | |
| 2250 | 2721 | - **主题**:/client/\${baseSN}/send |
| 2251 | 2722 | - **功能描述**:停止标准测验 |
| 2252 | 2723 | - **参数说明** |
| ... | ... | @@ -2263,7 +2734,10 @@ |
| 2263 | 2734 | "fun":"stopKpExam", |
| 2264 | 2735 | "dataTag":"1" |
| 2265 | 2736 | } |
| 2266 | -``` | |
| 2737 | +``` --> | |
| 2738 | +##### [stopKpVote](#stopkpvote) | |
| 2739 | +停止在线测验 | |
| 2740 | + | |
| 2267 | 2741 | ##### rtKpAllowEdited |
| 2268 | 2742 | - **主题**:/client/\${baseSN}/send |
| 2269 | 2743 | - **功能描述**:键盘提交后,允许键盘修改答案 |
| ... | ... | @@ -2302,8 +2776,10 @@ |
| 2302 | 2776 | |dataTag|string|-|否|数据包标识,可为空字符串| |
| 2303 | 2777 | |data|array|-|是|传送参数的对象数组| |
| 2304 | 2778 | |++keySn|string||是|键盘SN| |
| 2305 | -|++keyValue|string||是|键盘提交的按键值,1:A;2:B表示第1题提交A,第二题提交B| | |
| 2779 | +|++keyValue|string||是|键盘提交的按键值,1:A;2:B表示第1题提交A,第二题提交B<br><font color="red">注意:如启动的是多科测验,键盘提交的题目序号对应启动时下发的题目总序号,不按科目区分</font>| | |
| 2306 | 2780 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
| 2781 | +|++voltage|double||是|键盘电量| | |
| 2782 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
| 2307 | 2783 | |
| 2308 | 2784 | - **示例代码** |
| 2309 | 2785 | |
| ... | ... | @@ -2350,4 +2826,247 @@ |
| 2350 | 2826 | "keyTime":3.2 |
| 2351 | 2827 | }] |
| 2352 | 2828 | } |
| 2829 | +``` | |
| 2830 | + | |
| 2831 | +### 多科测验 | |
| 2832 | +#### 方法 | |
| 2833 | +##### startKpMultiExam | |
| 2834 | +- **主题**:/client/\${baseSN}/send | |
| 2835 | +- **功能描述**:启动多科测验 | |
| 2836 | +- **参数说明** | |
| 2837 | + | |
| 2838 | +|参数名|类型|限制|是否必填|说明| | |
| 2839 | +|---|---|---|---|---| | |
| 2840 | +|fun|string|-|是|指令名称| | |
| 2841 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 2842 | +|data|object|-|是|传送参数的对象| | |
| 2843 | +|+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验| | |
| 2844 | +|+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头| | |
| 2845 | +|+questions|array||是|题目详情| | |
| 2846 | +|++subject | int||是 | 科目序号,1-9,对应键盘中内置的科目1-9<br>键盘答题时可选择科目切换答题| | |
| 2847 | +|++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 | | |
| 2848 | +|++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。| | |
| 2849 | +|++firstNo | int||否| 一级题号,mode=0 时有效,有效范围1-255,不传字段或传0表示不生效 | | |
| 2850 | +|++startNo | int||是| 起始题号,mode=0 时有效,范围1-255 <br>firstNo未赋值时,此字段表示一级题号<br>firstNo赋值时,此字段表示二级题号| | |
| 2851 | +|++count | int||是| 相同参数的连续题目数量, >0 | | |
| 2852 | +|+simParams|object||否|内部模拟测试参数设置对象| | |
| 2853 | +|++answer|array||是|预设提交的按键值<br>格式为"单选题答案,多选题答案;<br>数字题答案;判断题答案(1对2错)"<br>如["A","ABCD","10","1"]| | |
| 2854 | + | |
| 2855 | +- **示例代码** | |
| 2856 | +```json | |
| 2857 | +//自定义题号 | |
| 2858 | +{ | |
| 2859 | + "fun":"startKpMultiExam", | |
| 2860 | + "dataTag":"1", | |
| 2861 | + "data":{ | |
| 2862 | + "mode": 0, | |
| 2863 | + "examNo": 0, | |
| 2864 | + "questions": [{ | |
| 2865 | + "subject":1, //科目1 | |
| 2866 | + //题号1-1 到1-10 共10题单选 | |
| 2867 | + "firstNo": 1, | |
| 2868 | + "quesType": 1, | |
| 2869 | + "startNo": 1, | |
| 2870 | + "count":10 | |
| 2871 | + }, { | |
| 2872 | + "subject":2, //科目2 | |
| 2873 | + //题号2-2和2-3共两题 多选题,5个选项 | |
| 2874 | + "firstNo": 2, | |
| 2875 | + "quesType": 2, | |
| 2876 | + "option": 5, | |
| 2877 | + "startNo": 2, | |
| 2878 | + "count":2 | |
| 2879 | + }, { | |
| 2880 | + "subject":3, //科目3 | |
| 2881 | + //题号3-1和3-2共两道数字题 | |
| 2882 | + "firstNo": 3, | |
| 2883 | + "quesType": 3, | |
| 2884 | + "startNo": 1, | |
| 2885 | + "count":2 | |
| 2886 | + }, { | |
| 2887 | + "subject":1, //科目1 | |
| 2888 | + //题号4和5 ,判断题 | |
| 2889 | + "quesType": 4, | |
| 2890 | + "startNo": 4, | |
| 2891 | + "count":2 | |
| 2892 | + }], | |
| 2893 | + "simParams":{ | |
| 2894 | + "answer":["A","ABCD","10","1"] | |
| 2895 | + } | |
| 2896 | + } | |
| 2897 | +} | |
| 2898 | + | |
| 2899 | +//显示Q开头 | |
| 2900 | +{ | |
| 2901 | + "fun":"startKpMultiExam", | |
| 2902 | + "dataTag":"1", | |
| 2903 | + "data":{ | |
| 2904 | + "mode": 1, | |
| 2905 | + "examNo": 0, | |
| 2906 | + "questions": [{ | |
| 2907 | + "subject":1, | |
| 2908 | + //Q1-Q20,单选题 | |
| 2909 | + "quesType": 1, | |
| 2910 | + "startNo": 1, | |
| 2911 | + "count":20 | |
| 2912 | + }], | |
| 2913 | + "simParams":{ | |
| 2914 | + "answer":["A","","",""] | |
| 2915 | + } | |
| 2916 | + } | |
| 2917 | +} | |
| 2918 | + | |
| 2919 | +//显示题开头 | |
| 2920 | +{ | |
| 2921 | + "fun":"startKpMultiExam", | |
| 2922 | + "dataTag":"1", | |
| 2923 | + "data":{ | |
| 2924 | + "mode": 2, | |
| 2925 | + "examNo": 0, | |
| 2926 | + "questions": [{ | |
| 2927 | + "subject":1, | |
| 2928 | + //题1-题20,单选题 | |
| 2929 | + "quesType": 1, | |
| 2930 | + "startNo": 1, | |
| 2931 | + "count":20 | |
| 2932 | + }], | |
| 2933 | + "simParams":{ | |
| 2934 | + "answer":["A","","",""] | |
| 2935 | + } | |
| 2936 | + } | |
| 2937 | +} | |
| 2938 | +``` | |
| 2939 | + | |
| 2940 | +<!-- ##### stopKpMultiExam | |
| 2941 | +- **主题**:/client/\${baseSN}/send | |
| 2942 | +- **功能描述**:停止多科测验 | |
| 2943 | +- **参数说明** | |
| 2944 | + | |
| 2945 | +|参数名|类型|限制|是否必填|说明| | |
| 2946 | +|---|---|---|---|---| | |
| 2947 | +|fun|string|-|是|指令名称| | |
| 2948 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 2949 | + | |
| 2950 | +- **示例代码** | |
| 2951 | +```json | |
| 2952 | +{ | |
| 2953 | + "fun":"stopKpMultiExam", | |
| 2954 | + "dataTag":"1" | |
| 2955 | +} | |
| 2956 | +``` --> | |
| 2957 | +##### [stopKpVote](#stopkpvote) | |
| 2958 | +停止多科测验 | |
| 2959 | + | |
| 2960 | +#### 事件 | |
| 2961 | +##### [sEvtStateCode](#sevtstatecode) | |
| 2962 | +发送指令后返回接收状态 | |
| 2963 | + | |
| 2964 | +##### [fEvtKpExam](#fevtkpexam) | |
| 2965 | +返回测验中键盘提交答题数据 | |
| 2966 | + | |
| 2967 | +##### [fEvtFinalSubmit](#fevtfinalsubmit) | |
| 2968 | +返回键盘手动交卷标识 | |
| 2969 | + | |
| 2970 | +### 自主录分 | |
| 2971 | +#### 方法 | |
| 2972 | +##### startKpScoreInput | |
| 2973 | +- **主题**:/client/\${baseSN}/send | |
| 2974 | +- **功能描述**:启动标准测验 | |
| 2975 | +- **参数说明** | |
| 2976 | + | |
| 2977 | +|参数名|类型|限制|是否必填|说明| | |
| 2978 | +|---|---|---|---|---| | |
| 2979 | +|fun|string|-|是|指令名称| | |
| 2980 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 2981 | +|data|object|-|是|传送参数的对象| | |
| 2982 | +|+examNo|int||是|0-9999<br>=0,新的录分<br>>0时,与上次启动卷号一致继续录分,不一致进入新的录分| | |
| 2983 | +|+mode|int||是|录分模式<br>0-自主录分<br>1-交叉录分,需先输入录分的人员标识| | |
| 2984 | +|+questions|array||是|题目详情| | |
| 2985 | +|++max |int||是|可输入的最大值,<=100| | |
| 2986 | +|++digits|int||是|可输入的小数位数,范围0-2| | |
| 2987 | +|++startNo | int||是| 起始题号| | |
| 2988 | +|++count | int||是| 相同参数的题目数量,>0| | |
| 2989 | + | |
| 2990 | +- **示例代码** | |
| 2991 | +```json | |
| 2992 | +{ | |
| 2993 | + "fun":"startKpScoreInput", | |
| 2994 | + "dataTag":"1", | |
| 2995 | + "data":{ | |
| 2996 | + "mode": 0, | |
| 2997 | + "examNo": 0, | |
| 2998 | + "questions": [{ | |
| 2999 | + //题号1 到 2 共2题,单题满分10分 | |
| 3000 | + "max":10, | |
| 3001 | + "digits":1, | |
| 3002 | + "startNo": 1, | |
| 3003 | + "count":2 | |
| 3004 | + }, { | |
| 3005 | + //题号3到6 共4道题,单题满分5 | |
| 3006 | + "max":5, | |
| 3007 | + "digits":0, | |
| 3008 | + "startNo": 3, | |
| 3009 | + "count":4 | |
| 3010 | + }] | |
| 3011 | + } | |
| 3012 | +} | |
| 3013 | +``` | |
| 3014 | +<!-- | |
| 3015 | +##### stopKpScoreInput | |
| 3016 | +- **主题**:/client/\${baseSN}/send | |
| 3017 | +- **功能描述**:停止自主录分 | |
| 3018 | +- **参数说明** | |
| 3019 | + | |
| 3020 | +|参数名|类型|限制|是否必填|说明| | |
| 3021 | +|---|---|---|---|---| | |
| 3022 | +|fun|string|-|是|指令名称| | |
| 3023 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 3024 | + | |
| 3025 | +- **示例代码** | |
| 3026 | +```json | |
| 3027 | +{ | |
| 3028 | + "fun":"stopKpScoreInput", | |
| 3029 | + "dataTag":"1" | |
| 3030 | +} | |
| 3031 | +``` --> | |
| 3032 | +##### [stopKpVote](#stopkpvote) | |
| 3033 | +停止自主录分 | |
| 3034 | + | |
| 3035 | +#### 事件 | |
| 3036 | +##### [sEvtStateCode](#sevtstatecode) | |
| 3037 | +发送指令后返回接收状态 | |
| 3038 | + | |
| 3039 | +##### fEvtKpScore | |
| 3040 | +- **主题**:/basestation/\${baseSN}/receive | |
| 3041 | +- **功能描述**:返回键盘提交录分信息 | |
| 3042 | +- **参数说明** | |
| 3043 | + | |
| 3044 | +|参数名|类型|限制|非空|说明| | |
| 3045 | +|---|---|---|---|---| | |
| 3046 | +|fun|string|-|是|指令名称| | |
| 3047 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
| 3048 | +|data|array|-|是|传送参数的对象数组| | |
| 3049 | +|++keySn|string||是|键盘SN| | |
| 3050 | +|++keyValue|string||是|键盘提交的分值,1:10;2:0表示第1题提交10分,第二题提交0分| | |
| 3051 | +|++keyTime|double||是|录分时间,从启动录分开始计算,单位秒| | |
| 3052 | +|++voltage|double||是|键盘电量| | |
| 3053 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
| 3054 | + | |
| 3055 | +- **示例代码** | |
| 3056 | +```json | |
| 3057 | +{ | |
| 3058 | + "fun":"fEvtKpScore", | |
| 3059 | + "dataTag":"1", | |
| 3060 | + "data": [{ | |
| 3061 | + "keySn": "1234567890", | |
| 3062 | + "keyValue":"1:8;2:7.5;3:2;4:3", | |
| 3063 | + "keyTime":3.2 | |
| 3064 | + }, | |
| 3065 | + { | |
| 3066 | + "keySn": "1234567891", | |
| 3067 | + "keyValue":"1:10;2:0", | |
| 3068 | + "keyTime":3.5 | |
| 3069 | + } | |
| 3070 | + ] | |
| 3071 | +} | |
| 2353 | 3072 | ``` |
| 2354 | 3073 | \ No newline at end of file | ... | ... |