Commit be0abb078f905a430ac32e46582d616aa7007f92
1 parent
8a741d5a
同步B200W开发进度协议修改部分
Showing
1 changed file
with
821 additions
and
49 deletions
通讯协议-B200W-MQTT协议[外].md
... | ... | @@ -98,6 +98,24 @@ MQTT服务器配置结果检查 |
98 | 98 | |
99 | 99 | |
100 | 100 | ## 功能速查一览表 |
101 | +### 公共方法 | |
102 | +可以在多种业务中调用的通用方法 | |
103 | +|功能归类|功能|API指令|指令/系统事件| | |
104 | +|---|---|---|---| | |
105 | +|停止投票|可停止通过调用startXXX启动的答题业务|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)|| | |
106 | + | |
107 | +### 公共事件 | |
108 | +无需调用指令,自动返回的事件 | |
109 | +|功能归类|功能|API指令|指令/系统事件| | |
110 | +|---|---|---|---| | |
111 | +|公共事件|指令接收状态|-|[sEvtStateCode](#sevtstatecode)| | |
112 | +|公共事件|基站连接状态变化|-|[sEvtBsConnectState](#sevtbsconnectstate)| | |
113 | +|公共事件|基站信道冲突|-|[sEvtBsChannelConflict](#sevtbschannelconflict)| | |
114 | +|公共事件|键盘上线通知|-|[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)| | |
115 | +|公共事件|键盘刷卡事件|-|[sEvtBsNfcResults](#sevtbsnfcresults)| | |
116 | +|公共事件|键盘待机实时按键反馈|-|[sEvtKpRtFeedback](#sevtkprtfeedback)| | |
117 | +|公共事件|键盘举手键实时按键反馈|-|[sEvtKpHandUp](#sevtkphandup)| | |
118 | + | |
101 | 119 | ### 基站管理 |
102 | 120 | |功能归类|功能|API指令|指令/系统事件| |
103 | 121 | |---|---|---|---| |
... | ... | @@ -108,15 +126,19 @@ MQTT服务器配置结果检查 |
108 | 126 | |键盘上线通知|单个键盘上线系统通知|-|[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)|| |
109 | 127 | |识别设置 - 基站型号|读取基站型号|[getBsModel](#getbsmodel)|[fEvtBsModel](#fevtbsmodel)| |
110 | 128 | |识别设置 - 固件版本|获取基站固件版本|[getBsFWVersion](#getbsfwversion)|[fEvtBsFWVersion](#fevtbsfwversion)| |
129 | +|组网设置 - 组网模式|获取基站组网模式|[getBsNetworkMode](#getbsnetworkmode)|[fEvtBsNetworkMode](#fevtbsnetworkmode)| | |
111 | 130 | |组网设置 - 配对码|获取基站配对码|[getBsPairCode](#getbspaircode)|[fEvtBsPairCode](#fevtbspaircode)| |
112 | 131 | |组网设置 - 刷卡配对状态|获取刷卡配对状态|[getBsNfcLogin](#getbsnfclogin)|[fEvtBsNfcLogin](#fevtbsnfclogin)| |
113 | 132 | ||设置刷卡配对状态|[setBsNfcLogin](#setbsnfclogin)|[fEvtBsNfcLogin](#fevtbsnfclogin)|| |
114 | 133 | |组网设置 - 工作信道|获取基站工作信道|[getBsChannel](#getbschannel)|[fEvtBsChannel](#fevtbschannel)| |
115 | 134 | ||设置基站工作信道|[setBsChannel](#setbschannel)|[fEvtBsChannel](#fevtbschannel)|| |
135 | +||读取已被占用信道|[getBsRFIChannel](#getbsrfichannel)|[fEvtBsRFIChannel](#fevtbsrfichannel)|| | |
116 | 136 | |登录设置 - 登录名称|获取基站登录名称|[getBsSSID](#getbsssid)|[fEvtBsSSID](#fevtbsssid)| |
117 | 137 | ||设置基站登录名称|[setBsSSID](#setbsssid)|[fEvtBsSSID](#fevtbsssid)|| |
118 | -|键盘统一设置 - 键盘语言|获取键盘语言|[getBsKpLanguage](#getbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)| | |
119 | -||设置键盘语言|[setBsKpLanguage](#setbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)|| | |
138 | +|登录设置 - 登录密码|获取基站登录密码|[getBsLoginPwd](#getbsloginpwd)|[fEvtBsLoginPwd](#fevtbsloginpwd)| | |
139 | +||设置基站登录密码|[setBsLoginPwd](#setbsloginpwd)|[fEvtBsLoginPwd](#fevtbsloginpwd)|| | |
140 | +|登录设置 - 基站登录状态|获取基站登录状态|[getBsLoginState](#getbsloginstate)|[fEvtBsLoginState](#fevtbsloginstate)| | |
141 | +||设置基站登录状态|[setBsLoginState](#setbsloginstate)|[fEvtBsLoginState](#fevtbsloginstate)|| | |
120 | 142 | |配对模式 - 快速配对|启动基站快速配对|[startBsFastPair](#startbsfastpair)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)| |
121 | 143 | ||停止基站快速配对|[stopBsFastPair](#stopbsfastpair)|[sEvtStateCode](#sevtstatecode)| |
122 | 144 | |白名单模式 - 白名单管理|获取白名单|[getBsWhitelist](#getbswhitelist)|[fEvtBsWhitelist](#fevtbswhitelist)| |
... | ... | @@ -124,6 +146,8 @@ MQTT服务器配置结果检查 |
124 | 146 | ||清空白名单|[clearBsWhitelist](#clearbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsWhitelist](#fevtbswhitelist)| |
125 | 147 | ||增加白名单|[addBsWhitelist](#addbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtAddBsWhitelist](#fevtaddbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)| |
126 | 148 | ||删除白名单|[delBsWhitelist](#delbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtDelBsWhitelist](#fevtdelbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)| |
149 | +|基站加密 - 软件狗|获取基站软件狗|[getBsSoftwareKey](#getbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| | |
150 | +||设置基站软件狗|[setBsSoftwareKey](#setbssoftwarekey)|[fEvtBsSoftwareKey](#fevtbssoftwarekey)| | |
127 | 151 | |网络设置 - TCP/IP参数|获取TCP/IP参数|[getBsTcpipParams](#getbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)| |
128 | 152 | ||设置TCP/IP参数|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)|| |
129 | 153 | |网络设置 - MQTT参数|获取MQTT参数|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)| |
... | ... | @@ -144,7 +168,7 @@ MQTT服务器配置结果检查 |
144 | 168 | |功能归类|功能|API指令|指令事件| |
145 | 169 | |---|---|---|---| |
146 | 170 | |同步签到|启动同步签到|[startKpSignIn](#startkpsignin)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpSignIn](#fevtkpsignin)| |
147 | -||停止同步签到|[stopKpSignIn](#stopkpsignin)|[sEvtStateCode](#sevtstatecode)| | |
171 | +||停止同步签到|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
148 | 172 | |随时签到|启动随时签到|[rtStartKpSignIn](#rtstartkpsignin)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpSignIn](#fevtkpsignin)| |
149 | 173 | ||停止随时签到|[rtStopKpSignIn](#rtstopkpsignin)|[sEvtStateCode](#sevtstatecode)| |
150 | 174 | ||实时PIN签到授权|[rtSetKpLoginAllowed](#rtsetkploginallowed)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpLoginAllowed](#fevtkploginallowed)| |
... | ... | @@ -152,19 +176,44 @@ MQTT服务器配置结果检查 |
152 | 176 | |功能归类|功能|API指令|指令事件| |
153 | 177 | |---|---|---|---| |
154 | 178 | |判断题|启动判断题答题|[startQATrueFalse](#startqatruefalse)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQATrueFalse](#fevtqatruefalse)| |
155 | -||停止判断题答题|[stopQATrueFalse](#stopqatruefalse)|[sEvtStateCode](#sevtstatecode)| | |
179 | +||停止判断题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
156 | 180 | |选择题|启动选择题答题|[startQAChoice](#startqachoice)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQAChoice](#fevtqachoice)| |
157 | -||停止选择题答题|[stopQAChoice](#stopqachoice)|[sEvtStateCode](#sevtstatecode)| | |
181 | +||停止选择题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
158 | 182 | |数字题|启动数字题答题|[startQANum](#startqanum)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQANum](#fevtqanum)| |
159 | -||停止数字题答题|[stopQANum](#stopqanum)|[sEvtStateCode](#sevtstatecode)| | |
183 | +||停止数字题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
160 | 184 | |抢答题|启动抢答题答题|[startQAQuicker](#startqaquicker)|[sEvtStateCode](#sevtstatecode)<br>[fEvtQAQuicker](#fevtqaquicker)| |
161 | -||停止抢答题答题|[stopQAQuicker](#stopqaquicker)|[sEvtStateCode](#sevtstatecode)| | |
185 | +||停止抢答题答题|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
186 | +|待机实时反馈|设置待机实时反馈状态|[setKpStbResponse](#setkpstbresponse)|[fEvtKpStbResponse](#fevtkpstbresponse)<br>[sEvtKpRtFeedback](#sevtkprtfeedback)<br>[sEvtKpHandUp](#sevtkphandup)| | |
187 | +||设置待机实时反馈状态|[getKpStbResponse](#getkpstbresponse)|[fEvtKpStbResponse](#fevtkpstbresponse)| | |
162 | 188 | ### 在线测验 |
163 | 189 | |功能归类|功能|API指令|指令事件| |
164 | 190 | |---|---|---|---| |
165 | 191 | |标准测验|启动标准测验|[startKpExam](#startkpexam)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| |
166 | -||停止标准测验|[stopKpExam](#stopkpexam)|[sEvtStateCode](#sevtstatecode)| | |
192 | +||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
167 | 193 | ||允许键盘提交后退回修改|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| |
194 | +|多科测验|启动多科测验|[startKpMultiExam](#startkpmultiexam)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| | |
195 | +||停止标准测验|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
196 | +|自主录分|启动自主录分|[startKpScoreInput](#startkpscoreinput)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpScore](#fevtkpscore)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| | |
197 | +||停止自主录分|[stopKpVote](#stopkpvote)|[sEvtStateCode](#sevtstatecode)| | |
198 | + | |
199 | +## 公共方法 | |
200 | +### stopKpVote | |
201 | +- **主题**: /client/\${baseSN}/send | |
202 | +- **功能描述**:通用停止键盘答题方法,可以停止如同步签到、按键反馈、在线测验中调用startXXX方法启动的业务 | |
203 | +- **参数说明** | |
204 | + | |
205 | +|参数名|类型|限制|非空|说明| | |
206 | +|-----|-----|-----|-----|-----| | |
207 | +|fun|string|-|是|事件类型| | |
208 | +|dataTag|string||否|数据包标识,不需要时可传空字符串| | |
209 | + | |
210 | +- **示例代码** | |
211 | +```json | |
212 | +{ | |
213 | + "fun":"stopKpVote", | |
214 | + "dataTag":"1" | |
215 | +} | |
216 | +``` | |
168 | 217 | |
169 | 218 | ## 公共事件 |
170 | 219 | ### sEvtBsConnectState |
... | ... | @@ -241,6 +290,7 @@ MQTT服务器配置结果检查 |
241 | 290 | |dataTag|string|-|否|数据包标识,不需要时可传空字符串| |
242 | 291 | |data|object|-|是|传送参数的对象| |
243 | 292 | |+keySn|string||是|刷卡的键盘SN| |
293 | +|+cardType|int||是|刷卡的键盘类型<br>1-NFC类型<br>2-M1类型| | |
244 | 294 | |+value|int||是|刷卡的状态<br>1-成功<br>2-失败| |
245 | 295 | |
246 | 296 | - **示例代码** |
... | ... | @@ -250,7 +300,8 @@ MQTT服务器配置结果检查 |
250 | 300 | "fun":"sEvtBsNfcResults", |
251 | 301 | "dataTag":"1", //不需要时可传空字符串 |
252 | 302 | "data":{ |
253 | - "keySn":"1234567890", | |
303 | + "keySn":"1234567890", | |
304 | + "cardType":1, | |
254 | 305 | "value":1 |
255 | 306 | } |
256 | 307 | } |
... | ... | @@ -283,7 +334,56 @@ MQTT服务器配置结果检查 |
283 | 334 | } |
284 | 335 | } |
285 | 336 | ``` |
337 | +### sEvtKpRtFeedback | |
338 | +- **主题**: /basestation/\${baseSN}/receive | |
339 | +- **功能描述**:开启键盘实时反馈后,键盘按键时上报 | |
340 | +- **参数说明** | |
286 | 341 | |
342 | +|参数名|类型|限制|非空|说明| | |
343 | +|---|---|---|---|---| | |
344 | +|fun|string|-|是|事件名称| | |
345 | +|dataTag|string|-|否|数据包标识| | |
346 | +|data|array|-|是|传送参数的对象数组| | |
347 | +|++keySn|string||是|键盘SN| | |
348 | +|++keyValue|string||是|键盘提交的按键值| | |
349 | +|++voltage|double||是|键盘电量| | |
350 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
351 | + | |
352 | +- **示例代码** | |
353 | +```json | |
354 | +{ | |
355 | + "fun":"sEvtKpRtFeedback", | |
356 | + "dataTag":"1", | |
357 | + "data":[{ | |
358 | + "keySn":"1234567890", | |
359 | + "keyValue":"A", | |
360 | + "voltage":2.6, | |
361 | + "retryCount":1 | |
362 | + }] | |
363 | +} | |
364 | +``` | |
365 | +### sEvtKpHandUp | |
366 | +- **主题**: /basestation/\${baseSN}/receive | |
367 | +- **功能描述**:开启键盘举手功能后,键盘按举手键时上报 | |
368 | +- **参数说明** | |
369 | + | |
370 | +|参数名|类型|限制|非空|说明| | |
371 | +|---|---|---|---|---| | |
372 | +|fun|string|-|是|事件名称| | |
373 | +|dataTag|string|-|否|数据包标识| | |
374 | +|data|object|-|是|传送参数的对象| | |
375 | +|+keySn|string||是|举手的键盘SN| | |
376 | + | |
377 | +- **示例代码** | |
378 | +```json | |
379 | +{ | |
380 | + "fun":"sEvtKpHandUp", | |
381 | + "dataTag":"1", | |
382 | + "data":{ | |
383 | + "keySn":"1234567890" | |
384 | + } | |
385 | +} | |
386 | +``` | |
287 | 387 | ### sEvtStateCode |
288 | 388 | - **主题**: /basestation/\${baseSN}/receive |
289 | 389 | - **功能描述**:返回基站接收指令状态信息 |
... | ... | @@ -302,14 +402,22 @@ MQTT服务器配置结果检查 |
302 | 402 | |0|指令收取成功| |
303 | 403 | |10001|不能正确解析的JSON数据| |
304 | 404 | |10002|解析JSON错误| |
405 | +|10003|下发数据包超长| | |
305 | 406 | |20001|基站未连接| |
306 | 407 | |20002|功能不支持| |
307 | 408 | |20003|基站SN格式不正确| |
308 | 409 | |20004|参数错误| |
309 | -|20005|基站在答题中| | |
410 | +|20005|dataTag错误| | |
411 | +|20006|键盘SN错误| | |
412 | +|20007|tip参数错误| | |
413 | +|20008|value参数错误| | |
414 | +|30001|基站在答题中| | |
415 | +|30002|基站忙(内存不足)| | |
416 | +|30003|基站执行失败| | |
310 | 417 | |40001|升级功能只能支持一个基站| |
311 | 418 | |50001|此功能必须指定基站| |
312 | 419 | |60001|此功能必须指定键盘SN| |
420 | +|70001|没有字库| | |
313 | 421 | |
314 | 422 | - **示例代码** |
315 | 423 | |
... | ... | @@ -318,7 +426,7 @@ MQTT服务器配置结果检查 |
318 | 426 | "fun":"sEvtStateCode", |
319 | 427 | "dataTag":"1", |
320 | 428 | "data":{ |
321 | - "funName":"startKpRollCall", | |
429 | + "funName":"startKpSignIn", | |
322 | 430 | "code":"20005" |
323 | 431 | } |
324 | 432 | } |
... | ... | @@ -372,7 +480,7 @@ MQTT服务器配置结果检查 |
372 | 480 | 参见基站连接变化系统通知 |
373 | 481 | |
374 | 482 | ##### fEvtBsOnlineState |
375 | -- **主题**: <span class="yellowFill">/basestation/mutilBase/receive</span> | |
483 | +- **主题**: <span class="yellowFill">/basestation/multiBase/receive</span> | |
376 | 484 | - **功能描述**:基站在线返回基站型号和基站SN |
377 | 485 | - **参数说明** |
378 | 486 | |
... | ... | @@ -547,6 +655,23 @@ MQTT服务器配置结果检查 |
547 | 655 | |
548 | 656 | ### 组网设置 |
549 | 657 | #### 方法 |
658 | +##### getBsNetworkMode | |
659 | +- **主题**:/client/\${baseSN}/send | |
660 | +- **功能描述**:获取基站组网模式 | |
661 | +- **参数说明** | |
662 | + | |
663 | +|参数名|类型|限制|是否必填|说明| | |
664 | +|---|---|---|---|---| | |
665 | +|fun|string|-|是|指令名称| | |
666 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
667 | + | |
668 | +- **示例代码** | |
669 | +```json | |
670 | +{ | |
671 | + "fun":"getBsNetworkMode", | |
672 | + "dataTag":"1" | |
673 | +} | |
674 | +``` | |
550 | 675 | ##### getBsPairCode |
551 | 676 | - **主题**:/client/\${baseSN}/send |
552 | 677 | - **功能描述**:获取基站配对码 |
... | ... | @@ -652,7 +777,47 @@ MQTT服务器配置结果检查 |
652 | 777 | } |
653 | 778 | ``` |
654 | 779 | |
780 | +##### getBsRFIChannel | |
781 | +- **主题**:/client/\${baseSN}/send | |
782 | +- **功能描述**:获取已被其他基站占用的信道 | |
783 | +- **参数说明** | |
784 | + | |
785 | +|参数名|类型|限制|是否必填|说明| | |
786 | +|---|---|---|---|---| | |
787 | +|fun|string|-|是|指令名称| | |
788 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
789 | + | |
790 | +- **示例代码** | |
791 | +```json | |
792 | +{ | |
793 | + "fun":"getBsRFIChannel", | |
794 | + "dataTag":"1" | |
795 | +} | |
796 | +``` | |
797 | + | |
655 | 798 | #### 事件 |
799 | +##### fEvtBsNetworkMode | |
800 | +- **主题**: /basestation/\${baseSN}/receive | |
801 | +- **功能描述**:返回基站组网模式 | |
802 | +- **参数说明** | |
803 | + | |
804 | +|参数名|类型|限制|非空|说明| | |
805 | +|---|---|---|---|---| | |
806 | +|fun|string|-|是|事件名称| | |
807 | +|dataTag|string|-|否|数据包标识,可传空字符串| | |
808 | +|data|object|-|是|传送参数的对象| | |
809 | +|+value|string||是|基站的组网模式<br>1-配对模式<br>2-白名单模式| | |
810 | + | |
811 | +- **示例代码** | |
812 | +```json | |
813 | +{ | |
814 | + "fun":"fEvtBsNetworkMode", | |
815 | + "dataTag":"1", | |
816 | + "data":{ | |
817 | + "value":"1" | |
818 | + } | |
819 | +} | |
820 | +``` | |
656 | 821 | ##### fEvtBsPairCode |
657 | 822 | - **主题**: /basestation/\${baseSN}/receive |
658 | 823 | - **功能描述**:返回基站配对码 |
... | ... | @@ -701,6 +866,38 @@ MQTT服务器配置结果检查 |
701 | 866 | } |
702 | 867 | ``` |
703 | 868 | |
869 | +##### fEvtBsRFIChannel | |
870 | +- **主题**: /basestation/\${baseSN}/receive | |
871 | +- **功能描述**:返回其他基站已占用的信道,频点冲突时,可以根据返回结果修改基站信道避开干扰 | |
872 | +- **参数说明** | |
873 | + | |
874 | +|参数名|类型|限制|非空|说明| | |
875 | +|---|---|---|---|---| | |
876 | +|fun|string|-|是|事件名称| | |
877 | +|dataTag|string|-|否|数据包标识,可传空字符串| | |
878 | +|data|object|-|是|传送参数的对象| | |
879 | +|+value|string||是|其他基站已占用的信道,多个信道用英文","分隔,无占用信道返回0| | |
880 | + | |
881 | +- **示例代码** | |
882 | +```json | |
883 | +//信道1、2、14已被占用 | |
884 | +{ | |
885 | + "fun":"fEvtBsRFIChannel", | |
886 | + "dataTag":"1", | |
887 | + "data":{ | |
888 | + "value":"1,2,14" | |
889 | + } | |
890 | +} | |
891 | +//无占用信道 | |
892 | +{ | |
893 | + "fun":"fEvtBsRFIChannel", | |
894 | + "dataTag":"1", | |
895 | + "data":{ | |
896 | + "value":"0" | |
897 | + } | |
898 | +} | |
899 | +``` | |
900 | + | |
704 | 901 | ##### fEvtBsNfcLogin |
705 | 902 | - **主题**: /basestation/\${baseSN}/receive |
706 | 903 | - **功能描述**:返回基站是否允许NFC刷卡 |
... | ... | @@ -770,6 +967,85 @@ MQTT服务器配置结果检查 |
770 | 967 | } |
771 | 968 | } |
772 | 969 | ``` |
970 | +##### getBsLoginPwd | |
971 | +- **主题**:/client/\${baseSN}/send | |
972 | +- **功能描述**:获取基站登录密码 | |
973 | +- **参数说明** | |
974 | + | |
975 | +|参数名|类型|限制|是否必填|说明| | |
976 | +|---|---|---|---|---| | |
977 | +|fun|string|-|是|固定指令名称| | |
978 | +|dataTag|string|-|否|数据包标识| | |
979 | + | |
980 | +- **示例代码** | |
981 | +```json | |
982 | +{ | |
983 | + "fun":"getBsLoginPwd", | |
984 | + "dataTag":"1" | |
985 | +} | |
986 | +``` | |
987 | +##### setBsLoginPwd | |
988 | +- **主题**:/client/\${baseSN}/send | |
989 | +- **功能描述**:设置基站登录密码 | |
990 | +- **参数说明** | |
991 | + | |
992 | +|参数名|类型|限制|是否必填|说明| | |
993 | +|---|---|---|---|---| | |
994 | +|fun|string|-|是|指令名称| | |
995 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
996 | +|data|object|-|是|传送参数的对象| | |
997 | +|+value|string||是|设置的基站登录密码,数字类型,最长4位,为空或设为0代表无需密码登录| | |
998 | + | |
999 | +- **示例代码** | |
1000 | +```json | |
1001 | +{ | |
1002 | + "fun":"setBsLoginPwd", | |
1003 | + "dataTag":"1", | |
1004 | + "data":{ | |
1005 | + "value":"1234" | |
1006 | + } | |
1007 | +} | |
1008 | +``` | |
1009 | +##### getBsLoginState | |
1010 | +获取基站登录名称 | |
1011 | +- **主题**:/client/\${baseSN}/send | |
1012 | +- **功能描述**:获取基站登录状态 | |
1013 | +- **参数说明** | |
1014 | + | |
1015 | +|参数名|类型|限制|是否必填|说明| | |
1016 | +|---|---|---|---|---| | |
1017 | +|fun|string|-|是|固定指令名称| | |
1018 | +|dataTag|string|-|否|数据包标识| | |
1019 | + | |
1020 | +- **示例代码** | |
1021 | +```json | |
1022 | +{ | |
1023 | + "fun":"getBsLoginState", | |
1024 | + "dataTag":"1" | |
1025 | +} | |
1026 | +``` | |
1027 | +##### setBsLoginState | |
1028 | +- **主题**:/client/\${baseSN}/send | |
1029 | +- **功能描述**:设置基站登录状态 | |
1030 | +- **参数说明** | |
1031 | + | |
1032 | +|参数名|类型|限制|是否必填|说明| | |
1033 | +|---|---|---|---|---| | |
1034 | +|fun|string|-|是|指令名称| | |
1035 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
1036 | +|data|object|-|是|传送参数的对象| | |
1037 | +|+value|string||是|设置是否允许键盘自主登入<br>0 - 不允许键盘登入<br>1 - 允许键盘登入| | |
1038 | + | |
1039 | +- **示例代码** | |
1040 | +```json | |
1041 | +{ | |
1042 | + "fun":"setBsLoginState", | |
1043 | + "dataTag":"1", | |
1044 | + "data":{ | |
1045 | + "value":"1" | |
1046 | + } | |
1047 | +} | |
1048 | +``` | |
773 | 1049 | |
774 | 1050 | #### 事件 |
775 | 1051 | ##### fEvtBsSSID |
... | ... | @@ -795,7 +1071,59 @@ MQTT服务器配置结果检查 |
795 | 1071 | } |
796 | 1072 | } |
797 | 1073 | ``` |
1074 | +##### fEvtBsLoginPwd | |
1075 | +- **主题**: /basestation/\${baseSN}/receive | |
1076 | +- **功能描述**:返回基站登录密码 | |
1077 | +- **参数说明** | |
1078 | + | |
1079 | +|参数名|类型|限制|非空|说明| | |
1080 | +|---|---|---|---|---| | |
1081 | +|fun|string|-|是|事件名称| | |
1082 | +|dataTag|string|-|否|数据包标识,可传空字符串| | |
1083 | +|data|object|-|是|传送参数的对象| | |
1084 | +|+value|string||是|基站登录密码,返回值为0代表无需密码登录| | |
798 | 1085 | |
1086 | +- **示例代码** | |
1087 | +```json | |
1088 | +{ | |
1089 | + "fun":"fEvtBsLoginPwd", | |
1090 | + "dataTag":"1", | |
1091 | + "data":{ | |
1092 | + "value":"1234" | |
1093 | + } | |
1094 | +} | |
1095 | + | |
1096 | +//无需密码登录 | |
1097 | +{ | |
1098 | + "fun":"fEvtBsLoginPwd", | |
1099 | + "dataTag":"1", | |
1100 | + "data":{ | |
1101 | + "value":"0" | |
1102 | + } | |
1103 | +} | |
1104 | +``` | |
1105 | +##### fEvtBsLoginState | |
1106 | +- **主题**: /basestation/\${baseSN}/receive | |
1107 | +- **功能描述**:返回基站登录状态 | |
1108 | +- **参数说明** | |
1109 | + | |
1110 | +|参数名|类型|限制|非空|说明| | |
1111 | +|---|---|---|---|---| | |
1112 | +|fun|string|-|是|事件名称| | |
1113 | +|dataTag|string|-|否|数据包标识,可传空字符串| | |
1114 | +|data|object|-|是|传送参数的对象| | |
1115 | +|+value|string||是|基站登录状态| | |
1116 | + | |
1117 | +- **示例代码** | |
1118 | +```json | |
1119 | +{ | |
1120 | + "fun":"fEvtBsLoginState", | |
1121 | + "dataTag":"1", | |
1122 | + "data":{ | |
1123 | + "value":"1" | |
1124 | + } | |
1125 | +} | |
1126 | +``` | |
799 | 1127 | ### 键盘统一设置 |
800 | 1128 | #### 方法 |
801 | 1129 | ##### getBsKpLanguage |
... | ... | @@ -1205,7 +1533,7 @@ MQTT服务器配置结果检查 |
1205 | 1533 | |+port|int||是|端口,默认1883| |
1206 | 1534 | |+userName|string||否|连接服务器的用户名,可不设置| |
1207 | 1535 | |+password|string||否|连接服务器的密码,可不设置| |
1208 | -|+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒| | |
1536 | +|+interval|int|>=60|否|基站连接服务器失败后重连的间隔时长,单位秒| | |
1209 | 1537 | |
1210 | 1538 | - **示例代码** |
1211 | 1539 | |
... | ... | @@ -1218,7 +1546,7 @@ MQTT服务器配置结果检查 |
1218 | 1546 | "port":1883, |
1219 | 1547 | "userName":"", |
1220 | 1548 | "password":"", |
1221 | - "interval":30 | |
1549 | + "interval":60 | |
1222 | 1550 | } |
1223 | 1551 | } |
1224 | 1552 | ``` |
... | ... | @@ -1287,7 +1615,70 @@ MQTT服务器配置结果检查 |
1287 | 1615 | } |
1288 | 1616 | } |
1289 | 1617 | ``` |
1618 | +### 基站加密 | |
1619 | +#### 方法 | |
1620 | +##### getBsSoftwareKey | |
1621 | +- **主题**:/client/\${baseSN}/send | |
1622 | +- **功能描述**:获取基站软件狗密钥 | |
1623 | +- **参数说明** | |
1624 | + | |
1625 | +|参数名|类型|限制|是否必填|说明| | |
1626 | +|---|---|---|---|---| | |
1627 | +|fun|string|-|是|指令名称| | |
1628 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
1629 | + | |
1630 | +- **示例代码** | |
1631 | +```json | |
1632 | +{ | |
1633 | + "fun":"getBsSoftwareKey", | |
1634 | + "dataTag":"1" | |
1635 | +} | |
1636 | +``` | |
1637 | +##### setBsSoftwareKey | |
1638 | +- **主题**:/client/\${baseSN}/send | |
1639 | +- **功能描述**:设置基站软件狗密钥 | |
1640 | +- **参数说明** | |
1641 | + | |
1642 | +|参数名|类型|限制|是否必填|说明| | |
1643 | +|---|---|---|---|---| | |
1644 | +|fun|string|-|是|指令名称| | |
1645 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
1646 | +|data|object|-|是|传送参数的对象| | |
1647 | +|+value|string|-|是|基站软件狗密钥,长度不超过32字节| | |
1648 | + | |
1649 | +- **示例代码** | |
1650 | +```json | |
1651 | +{ | |
1652 | + "fun":"setBsSoftwareKey", | |
1653 | + "dataTag":"1", | |
1654 | + "data":{ | |
1655 | + "value":"sunvote123456" | |
1656 | + } | |
1657 | +} | |
1658 | +``` | |
1659 | +#### 事件 | |
1660 | +##### fEvtBsSoftwareKey | |
1661 | +- **主题**:/basestation/\${baseSN}/receive | |
1662 | +- **功能描述**:返回基站的软件狗密钥 | |
1663 | +- **参数说明** | |
1290 | 1664 | |
1665 | +|参数名|类型|限制|非空|说明| | |
1666 | +|---|---|---|---|---| | |
1667 | +|fun|string|-|是|指令名称| | |
1668 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
1669 | +|data|object|-|是|传送参数的对象| | |
1670 | +|+value|string||是|返回基站的软件狗密钥| | |
1671 | + | |
1672 | +- **示例代码** | |
1673 | +```json | |
1674 | +{ | |
1675 | + "fun":"fEvtBsSoftwareKey", | |
1676 | + "dataTag":"1", | |
1677 | + "data":{ | |
1678 | + "value":"sunvote123456" | |
1679 | + } | |
1680 | +} | |
1681 | +``` | |
1291 | 1682 | ## 键盘管理 |
1292 | 1683 | ### 交互设置 |
1293 | 1684 | #### 方法 |
... | ... | @@ -1643,8 +2034,7 @@ MQTT服务器配置结果检查 |
1643 | 2034 | } |
1644 | 2035 | } |
1645 | 2036 | ``` |
1646 | - | |
1647 | -##### stopKpSignIn | |
2037 | +<!-- ##### stopKpSignIn | |
1648 | 2038 | - **主题**:/client/\${baseSN}/send |
1649 | 2039 | - **功能描述**:停止同步签到 |
1650 | 2040 | - **参数说明** |
... | ... | @@ -1660,7 +2050,10 @@ MQTT服务器配置结果检查 |
1660 | 2050 | "fun":"stopKpSignIn", |
1661 | 2051 | "dataTag":"1" |
1662 | 2052 | } |
1663 | -``` | |
2053 | +``` --> | |
2054 | +##### [stopKpVote](#stopkpvote) | |
2055 | +停止同步签到 | |
2056 | + | |
1664 | 2057 | #### 事件 |
1665 | 2058 | ##### [sEvtStateCode](#sevtstatecode) |
1666 | 2059 | 发送指令后返回接收状态 |
... | ... | @@ -1756,6 +2149,8 @@ MQTT服务器配置结果检查 |
1756 | 2149 | |++keySn|string||是|键盘SN| |
1757 | 2150 | |++keyValue|string||是|键盘提交的按键值| |
1758 | 2151 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
2152 | +|++voltage|double||是|键盘电量| | |
2153 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
1759 | 2154 | |
1760 | 2155 | - **示例代码** |
1761 | 2156 | |
... | ... | @@ -1817,6 +2212,7 @@ MQTT服务器配置结果检查 |
1817 | 2212 | |dataTag|string|-|否|数据包标识,可为空字符串| |
1818 | 2213 | |data|object|-|是|传送参数的对象| |
1819 | 2214 | |+keySns|array||是|指定的键盘SN数组,空数组表示全部在线键盘| |
2215 | +|+count|int||是|题目数量,1-16,>1多题快答| | |
1820 | 2216 | |+mode|int||是|1 - True/False 对/错 <br>2 - Yes/No 是/否<br> 3 - √/×| |
1821 | 2217 | |+allowModify|int||是|0 - 不允许修改<br>1 - 允许修改| |
1822 | 2218 | |+tip|string||否|提示的标题,长度不超过16字符| |
... | ... | @@ -1829,14 +2225,14 @@ MQTT服务器配置结果检查 |
1829 | 2225 | "dataTag":"1", |
1830 | 2226 | "data":{ |
1831 | 2227 | "keySns":[], |
2228 | + "count":1, | |
1832 | 2229 | "mode":1, |
1833 | 2230 | "allowModify":1, |
1834 | 2231 | "tip":"请判断对错" |
1835 | 2232 | } |
1836 | 2233 | } |
1837 | 2234 | ``` |
1838 | - | |
1839 | -##### stopQATrueFalse | |
2235 | +<!-- ##### stopQATrueFalse | |
1840 | 2236 | - **主题**:/client/\${baseSN}/send |
1841 | 2237 | - **功能描述**:停止判断题答题 |
1842 | 2238 | - **参数说明** |
... | ... | @@ -1853,7 +2249,10 @@ MQTT服务器配置结果检查 |
1853 | 2249 | "fun": "stopQATrueFalse", |
1854 | 2250 | "dataTag":"1" |
1855 | 2251 | } |
1856 | -``` | |
2252 | +``` --> | |
2253 | + | |
2254 | +##### [stopKpVote](#stopkpvote) | |
2255 | +停止判断题答题 | |
1857 | 2256 | |
1858 | 2257 | #### 事件 |
1859 | 2258 | ##### [sEvtStateCode](#sevtstatecode) |
... | ... | @@ -1872,6 +2271,8 @@ MQTT服务器配置结果检查 |
1872 | 2271 | |++keySn|string||是|键盘SN| |
1873 | 2272 | |++keyValue|string||是|键盘提交的按键值<br>1-对<br>2-错| |
1874 | 2273 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
2274 | +|++voltage|double||是|键盘电量| | |
2275 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
1875 | 2276 | |
1876 | 2277 | - **示例代码** |
1877 | 2278 | |
... | ... | @@ -1901,6 +2302,7 @@ MQTT服务器配置结果检查 |
1901 | 2302 | |dataTag|string|-|否|数据包标识,可为空字符串| |
1902 | 2303 | |data|object|-|是|传送参数的对象| |
1903 | 2304 | |+keySns|array||是|指定的键盘SN数组,空数组表示全部在线键盘| |
2305 | +|+count|int||是|题目数量,1-16,>1多题快答<br>optionalN >1时无效| | |
1904 | 2306 | |+mode|int||是|显示模式<br>1:显示字母(默认值) </br>2:显示数字 | |
1905 | 2307 | |+lessMode|int||是|迫选模式<br>0:可缺选(默认值) </br>1:不可缺选</br>2:允许重复输入</br>3:允许重复输入且不可缺选 | |
1906 | 2308 | |+options|int||是|选项数量,1≤M≤10(默认值4)| |
... | ... | @@ -1917,6 +2319,7 @@ MQTT服务器配置结果检查 |
1917 | 2319 | "data":{ |
1918 | 2320 | "keySns":[], |
1919 | 2321 | "mode": 1, |
2322 | + "count":1, | |
1920 | 2323 | "lessMode": 0, |
1921 | 2324 | "options": 4, |
1922 | 2325 | "optionalN": 1, |
... | ... | @@ -1925,8 +2328,7 @@ MQTT服务器配置结果检查 |
1925 | 2328 | } |
1926 | 2329 | } |
1927 | 2330 | ``` |
1928 | - | |
1929 | -##### stopQAChoice | |
2331 | +<!-- ##### stopQAChoice | |
1930 | 2332 | - **主题**:/client/\${baseSN}/send |
1931 | 2333 | - **功能描述**:停止选择题答题 |
1932 | 2334 | - **参数说明** |
... | ... | @@ -1943,7 +2345,9 @@ MQTT服务器配置结果检查 |
1943 | 2345 | "fun": "stopQAChoice", |
1944 | 2346 | "dataTag":"1" |
1945 | 2347 | } |
1946 | -``` | |
2348 | +``` --> | |
2349 | +##### [stopKpVote](#stopkpvote) | |
2350 | +停止选择题答题 | |
1947 | 2351 | |
1948 | 2352 | #### 事件 |
1949 | 2353 | ##### [sEvtStateCode](#sevtstatecode) |
... | ... | @@ -1962,6 +2366,8 @@ MQTT服务器配置结果检查 |
1962 | 2366 | |++keySn|string||是|键盘SN| |
1963 | 2367 | |++keyValue|string||是|键盘提交的按键值| |
1964 | 2368 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
2369 | +|++voltage|double||是|键盘电量| | |
2370 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
1965 | 2371 | |
1966 | 2372 | - **示例代码** |
1967 | 2373 | |
... | ... | @@ -2014,8 +2420,7 @@ MQTT服务器配置结果检查 |
2014 | 2420 | } |
2015 | 2421 | } |
2016 | 2422 | ``` |
2017 | - | |
2018 | -##### stopQANum | |
2423 | +<!-- ##### stopQANum | |
2019 | 2424 | - **主题**:/client/\${baseSN}/send |
2020 | 2425 | - **功能描述**:停止数字题答题 |
2021 | 2426 | - **参数说明** |
... | ... | @@ -2032,7 +2437,9 @@ MQTT服务器配置结果检查 |
2032 | 2437 | "fun": "stopQANum", |
2033 | 2438 | "dataTag":"1" |
2034 | 2439 | } |
2035 | -``` | |
2440 | +``` --> | |
2441 | +##### [stopKpVote](#stopkpvote) | |
2442 | +停止数字题答题 | |
2036 | 2443 | |
2037 | 2444 | #### 事件 |
2038 | 2445 | ##### [sEvtStateCode](#sevtstatecode) |
... | ... | @@ -2051,6 +2458,8 @@ MQTT服务器配置结果检查 |
2051 | 2458 | |++keySn|string||是|键盘SN| |
2052 | 2459 | |++keyValue|string||是|键盘提交的按键值| |
2053 | 2460 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
2461 | +|++voltage|double||是|键盘电量| | |
2462 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
2054 | 2463 | |
2055 | 2464 | - **示例代码** |
2056 | 2465 | |
... | ... | @@ -2097,8 +2506,7 @@ MQTT服务器配置结果检查 |
2097 | 2506 | } |
2098 | 2507 | } |
2099 | 2508 | ``` |
2100 | - | |
2101 | -##### stopQAQuicker | |
2509 | +<!-- ##### stopQAQuicker | |
2102 | 2510 | - **主题**:/client/\${baseSN}/send |
2103 | 2511 | - **功能描述**:停止抢答答题 |
2104 | 2512 | - **参数说明** |
... | ... | @@ -2115,7 +2523,10 @@ MQTT服务器配置结果检查 |
2115 | 2523 | "fun": "stopQAQuicker", |
2116 | 2524 | "dataTag":"1" |
2117 | 2525 | } |
2118 | -``` | |
2526 | +``` --> | |
2527 | + | |
2528 | +##### [stopKpVote](#stopkpvote) | |
2529 | +停止抢答 | |
2119 | 2530 | |
2120 | 2531 | #### 事件 |
2121 | 2532 | ##### [sEvtStateCode](#sevtstatecode) |
... | ... | @@ -2134,6 +2545,8 @@ MQTT服务器配置结果检查 |
2134 | 2545 | |++keySn|string||是|键盘SN| |
2135 | 2546 | |++keyValue|string||是|键盘提交的按键值| |
2136 | 2547 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
2548 | +|++voltage|double||是|键盘电量| | |
2549 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
2137 | 2550 | |
2138 | 2551 | - **示例代码** |
2139 | 2552 | |
... | ... | @@ -2148,6 +2561,113 @@ MQTT服务器配置结果检查 |
2148 | 2561 | }] |
2149 | 2562 | } |
2150 | 2563 | ``` |
2564 | +### 待机实时反馈 | |
2565 | +#### 方法 | |
2566 | +##### setKpStbResponse | |
2567 | +- **主题**:/client/\${baseSN}/send | |
2568 | +- **功能描述**:启动待机实时反馈 | |
2569 | +- **参数说明** | |
2570 | + | |
2571 | +|参数名|类型|限制|是否必填|说明| | |
2572 | +|---|---|---|---|---| | |
2573 | +|fun|string|-|是|指令名称| | |
2574 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
2575 | +|data|object|-|是|传送参数的对象| | |
2576 | +|+state|int||是|启用待机实时反馈<br>0-不启用<br>1-启用| | |
2577 | +|+mode|int||是|启动待机反馈类型,state=1时有效<br>0-举手<br>1-指定按键反馈| | |
2578 | +|+keys|int||是|有效按键数量,state=1且mode=1时有效, 范围1-10| | |
2579 | + | |
2580 | +- **示例代码** | |
2581 | +```json | |
2582 | +//启用举手反馈 | |
2583 | +{ | |
2584 | + "fun":"setKpStbResponse", | |
2585 | + "dataTag":"1", | |
2586 | + "data":{ | |
2587 | + "state":1, | |
2588 | + "mode":0 | |
2589 | + } | |
2590 | +} | |
2591 | +//启用待机按键反馈 | |
2592 | +{ | |
2593 | + "fun":"setKpStbResponse", | |
2594 | + "dataTag":"1", | |
2595 | + "data":{ | |
2596 | + "state":1, | |
2597 | + "mode":1, | |
2598 | + "keys":4 | |
2599 | + } | |
2600 | +} | |
2601 | +//关闭待机按键反馈 | |
2602 | +{ | |
2603 | + "fun":"setKpStbResponse", | |
2604 | + "dataTag":"1", | |
2605 | + "data":{ | |
2606 | + "state":0 | |
2607 | + } | |
2608 | +} | |
2609 | +``` | |
2610 | + | |
2611 | +##### getKpStbResponse | |
2612 | +- **主题**:/client/\${baseSN}/send | |
2613 | +- **功能描述**:获取实时反馈是否打开 | |
2614 | +- **参数说明** | |
2615 | + | |
2616 | +|参数名|类型|限制|是否必填|说明| | |
2617 | +|---|---|---|---|---| | |
2618 | +|fun|string|-|是|指令名称| | |
2619 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
2620 | + | |
2621 | +- **示例代码** | |
2622 | +```json | |
2623 | +//启用举手反馈 | |
2624 | +{ | |
2625 | + "fun":"getKpStbResponse", | |
2626 | + "dataTag":"1" | |
2627 | +} | |
2628 | +``` | |
2629 | + | |
2630 | +#### 事件 | |
2631 | +##### fEvtKpStbResponse | |
2632 | +- **主题**:/basestation/\${baseSN}/receive | |
2633 | +- **功能描述**:返回当前待机按键反馈开启状态 | |
2634 | +- **参数说明** | |
2635 | + | |
2636 | +|参数名|类型|限制|非空|说明| | |
2637 | +|---|---|---|---|---| | |
2638 | +|fun|string|-|是|指令名称| | |
2639 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
2640 | +|data|array|-|是|传送参数的对象数组| | |
2641 | +|+state|int||是|启用待机实时反馈<br>0-未启用<br>1-启用| | |
2642 | +|+mode|int||是|当前启动待机反馈类型,state=1时返回<br>0-举手<br>1-指定按键反馈| | |
2643 | + | |
2644 | +- **示例代码** | |
2645 | +```json | |
2646 | +//当前启用待机实时反馈,模式为指定按键反馈 | |
2647 | +{ | |
2648 | + "fun":"fEvtKpStbResponse", | |
2649 | + "dataTag":"1", | |
2650 | + "data": { | |
2651 | + "state": 1, | |
2652 | + "mode": 1 | |
2653 | + } | |
2654 | +} | |
2655 | + | |
2656 | +//当前未启用待机反馈 | |
2657 | +{ | |
2658 | + "fun":"fEvtKpStbResponse", | |
2659 | + "dataTag":"1", | |
2660 | + "data": { | |
2661 | + "state": 0 | |
2662 | + } | |
2663 | +} | |
2664 | +``` | |
2665 | + | |
2666 | +##### [sEvtKpRtFeedback](#sevtkprtfeedback) | |
2667 | +返回待机时键盘返回的按键值 | |
2668 | + | |
2669 | +##### [sEvtKpHandup](#sevtkphandup) | |
2670 | +启动待机按键反馈类型为举手提问时返回此事件 | |
2151 | 2671 | |
2152 | 2672 | ## 在线测验 |
2153 | 2673 | ### 标准测验 |
... | ... | @@ -2165,11 +2685,12 @@ MQTT服务器配置结果检查 |
2165 | 2685 | |+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验| |
2166 | 2686 | |+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头| |
2167 | 2687 | |+questions|array||是|题目详情| |
2168 | -|++symbol | string||是 | 题号前缀,可为空 | | |
2169 | 2688 | |++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 | |
2170 | 2689 | |++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。| |
2171 | -|++startNo | int||是| 起始题号 | | |
2172 | -|++count | int||是| 题目数量 | | |
2690 | +|++firstNo | int||否| 一级题号,mode=0 时有效,有效范围1-255,不传此字段或传0表示不生效 | | |
2691 | +|++secondNo | int||否| 二级题号,mode=0 时有效,有效范围1-255,不传此字段或传0表示不生效 | | |
2692 | +|++startNo | int||是| 最后一级题号起始题号<br>mode=0 时有效,范围1-255,mode=1或2时按顺序显示题号<br>说明:<br>firstNo和secondNo都未赋值时,此字段为一级题号<br>firstNo赋值,secondNo未赋值时,此字段为二级题号<br>secondNo赋值时,此字段为三级题号 | | |
2693 | +|++count | int||是| 相同参数的连续题目数量, >0 | | |
2173 | 2694 | |
2174 | 2695 | - **示例代码** |
2175 | 2696 | |
... | ... | @@ -2180,7 +2701,7 @@ MQTT服务器配置结果检查 |
2180 | 2701 | "dataTag":"1", |
2181 | 2702 | "data":{ |
2182 | 2703 | "mode": 1, |
2183 | - "examNo": 1, | |
2704 | + "examNo": 0, | |
2184 | 2705 | "questions": [{ |
2185 | 2706 | "quesType": 1, //单选题 |
2186 | 2707 | "startNo": 1, //题号从1开始 |
... | ... | @@ -2197,7 +2718,7 @@ MQTT服务器配置结果检查 |
2197 | 2718 | "dataTag":"1", |
2198 | 2719 | "data":{ |
2199 | 2720 | "mode": 0, |
2200 | - "examNo": 1, | |
2721 | + "examNo": 0, | |
2201 | 2722 | //第1、2题单选题,第3、4题多选题,第5题数字,第6题判断,共6题 |
2202 | 2723 | "questions": [{ |
2203 | 2724 | "quesType": 1, //单选题 |
... | ... | @@ -2228,26 +2749,26 @@ MQTT服务器配置结果检查 |
2228 | 2749 | "dataTag":"1", |
2229 | 2750 | "data":{ |
2230 | 2751 | "mode": 0, |
2231 | - "examNo": 1, | |
2752 | + "examNo": 0, | |
2232 | 2753 | //第1-1、1-2题单选题,第2-1、2-2题多选题,第3-1题数字,第4-1题判断,共6题 |
2233 | 2754 | "questions": [{ |
2234 | - "symbol": "1-", | |
2755 | + "firstNo": 1, | |
2235 | 2756 | "quesType": 1, //单选题 |
2236 | 2757 | "startNo": 1, //题号从1-1开始 |
2237 | 2758 | "count":2 //连续2题 |
2238 | 2759 | },{ |
2239 | - "symbol": "2-", | |
2760 | + "firstNo": 2, | |
2240 | 2761 | "quesType": 2, //多选题 |
2241 | 2762 | "startNo": 1, //题号从2-1开始 |
2242 | 2763 | "count":2, //连续2题 |
2243 | 2764 | "option":5 |
2244 | 2765 | },{ |
2245 | - "symbol": "3-", | |
2766 | + "firstNo": 3, | |
2246 | 2767 | "quesType": 3, //数字题 |
2247 | 2768 | "startNo": 1, //题号从3-1开始 |
2248 | 2769 | "count":1 //连续1题 |
2249 | 2770 | },{ |
2250 | - "symbol": "4-", | |
2771 | + "firstNo": 4, | |
2251 | 2772 | "quesType": 4, //判断题 |
2252 | 2773 | "startNo": 1, //题号从4-1开始 |
2253 | 2774 | "count":1 //连续1题 |
... | ... | @@ -2263,26 +2784,30 @@ MQTT服务器配置结果检查 |
2263 | 2784 | "dataTag":"1", |
2264 | 2785 | "data":{ |
2265 | 2786 | "mode": 0, |
2266 | - "examNo": 1, | |
2787 | + "examNo": 0, | |
2267 | 2788 | //第1-1-1、1-1-2题单选题,第1-2-1、1-2-2题多选题,第2-1-1题数字,第3-1-1题判断,共6题 |
2268 | 2789 | "questions": [{ |
2269 | - "symbol": "1-1-", | |
2790 | + "firstNo": 1, | |
2791 | + "secondNo": 1, | |
2270 | 2792 | "quesType": 1, //单选题 |
2271 | 2793 | "startNo": 1, //题号从1-1-1开始 |
2272 | 2794 | "count":2 //连续2题 |
2273 | 2795 | },{ |
2274 | - "symbol": "1-2-", | |
2796 | + "firstNo": 1, | |
2797 | + "secondNo": 2, | |
2275 | 2798 | "quesType": 2, //多选题 |
2276 | 2799 | "startNo": 1, //题号从1-2-1开始 |
2277 | 2800 | "count":2, //连续2题 |
2278 | 2801 | "option":5 |
2279 | 2802 | },{ |
2280 | - "symbol": "2-1-", | |
2803 | + "firstNo": 2, | |
2804 | + "secondNo": 1, | |
2281 | 2805 | "quesType": 3, //数字题 |
2282 | 2806 | "startNo": 1, //题号从2-1-1开始 |
2283 | 2807 | "count":1 //连续1题 |
2284 | 2808 | },{ |
2285 | - "symbol": "3-1-", | |
2809 | + "firstNo": 3, | |
2810 | + "secondNo": 1, | |
2286 | 2811 | "quesType": 4, //判断题 |
2287 | 2812 | "startNo": 1, //题号从3-1-1开始 |
2288 | 2813 | "count":1 //连续1题 |
... | ... | @@ -2298,7 +2823,7 @@ MQTT服务器配置结果检查 |
2298 | 2823 | "dataTag":"1", |
2299 | 2824 | "data":{ |
2300 | 2825 | "mode": 1, |
2301 | - "examNo": 1, | |
2826 | + "examNo": 0, | |
2302 | 2827 | "questions": [{ |
2303 | 2828 | "quesType": 1, //单选题 |
2304 | 2829 | "startNo": 1, //题号从1开始 |
... | ... | @@ -2328,7 +2853,7 @@ MQTT服务器配置结果检查 |
2328 | 2853 | "dataTag":"1", |
2329 | 2854 | "data":{ |
2330 | 2855 | "mode": 2, |
2331 | - "examNo": 1, | |
2856 | + "examNo": 0, | |
2332 | 2857 | "questions": [{ |
2333 | 2858 | "quesType": 1, //单选题 |
2334 | 2859 | "startNo": 1, //题号从1开始 |
... | ... | @@ -2351,7 +2876,7 @@ MQTT服务器配置结果检查 |
2351 | 2876 | } |
2352 | 2877 | ``` |
2353 | 2878 | |
2354 | -##### stopKpExam | |
2879 | +<!-- ##### stopKpExam | |
2355 | 2880 | - **主题**:/client/\${baseSN}/send |
2356 | 2881 | - **功能描述**:停止标准测验 |
2357 | 2882 | - **参数说明** |
... | ... | @@ -2368,7 +2893,9 @@ MQTT服务器配置结果检查 |
2368 | 2893 | "fun": "stopKpExam", |
2369 | 2894 | "dataTag":"1" |
2370 | 2895 | } |
2371 | -``` | |
2896 | +``` --> | |
2897 | +##### [stopKpVote](#stopkpvote) | |
2898 | +停止在线测验 | |
2372 | 2899 | |
2373 | 2900 | ##### rtKpAllowEdited |
2374 | 2901 | - **主题**:/client/\${baseSN}/send |
... | ... | @@ -2409,8 +2936,10 @@ MQTT服务器配置结果检查 |
2409 | 2936 | |dataTag|string|-|否|数据包标识,可为空字符串| |
2410 | 2937 | |data|array|-|是|传送参数的对象数组| |
2411 | 2938 | |++keySn|string||是|键盘SN| |
2412 | -|++keyValue|string||是|键盘提交的按键值,1:A;2:B表示第1题提交A,第二题提交B| | |
2939 | +|++keyValue|string||是|键盘提交的按键值,1:A;2:B表示第1题提交A,第二题提交B<br><font color="red">注意:如启动的是多科测验,键盘提交的题目序号对应启动时下发的题目总序号,不按科目区分</font>| | |
2413 | 2940 | |++keyTime|double||是|答题时间,从启动开始计算,单位秒| |
2941 | +|++voltage|double||是|键盘电量| | |
2942 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
2414 | 2943 | |
2415 | 2944 | - **示例代码** |
2416 | 2945 | |
... | ... | @@ -2459,3 +2988,246 @@ MQTT服务器配置结果检查 |
2459 | 2988 | }] |
2460 | 2989 | } |
2461 | 2990 | ``` |
2991 | + | |
2992 | +### 多科测验 | |
2993 | +#### 方法 | |
2994 | +##### startKpMultiExam | |
2995 | +- **主题**:/client/\${baseSN}/send | |
2996 | +- **功能描述**:启动多科测验 | |
2997 | +- **参数说明** | |
2998 | + | |
2999 | +|参数名|类型|限制|是否必填|说明| | |
3000 | +|---|---|---|---|---| | |
3001 | +|fun|string|-|是|指令名称| | |
3002 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
3003 | +|data|object|-|是|传送参数的对象| | |
3004 | +|+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验| | |
3005 | +|+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头| | |
3006 | +|+questions|array||是|题目详情| | |
3007 | +|++subject | int||是 | 科目序号,1-9,对应键盘中内置的科目1-9<br>键盘答题时可选择科目切换答题| | |
3008 | +|++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 | | |
3009 | +|++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。| | |
3010 | +|++firstNo | int||否| 一级题号,mode=0 时有效,有效范围1-255,不传字段或传0表示不生效 | | |
3011 | +|++startNo | int||是| 起始题号,mode=0 时有效,范围1-255 <br>firstNo未赋值时,此字段表示一级题号<br>firstNo赋值时,此字段表示二级题号| | |
3012 | +|++count | int||是| 相同参数的连续题目数量, >0 | | |
3013 | +|+simParams|object||否|内部模拟测试参数设置对象| | |
3014 | +|++answer|array||是|预设提交的按键值<br>格式为"单选题答案,多选题答案;<br>数字题答案;判断题答案(1对2错)"<br>如["A","ABCD","10","1"]| | |
3015 | + | |
3016 | +- **示例代码** | |
3017 | +```json | |
3018 | +//自定义题号 | |
3019 | +{ | |
3020 | + "fun":"startKpMultiExam", | |
3021 | + "dataTag":"1", | |
3022 | + "data":{ | |
3023 | + "mode": 0, | |
3024 | + "examNo": 0, | |
3025 | + "questions": [{ | |
3026 | + "subject":1, //科目1 | |
3027 | + //题号1-1 到1-10 共10题单选 | |
3028 | + "firstNo": 1, | |
3029 | + "quesType": 1, | |
3030 | + "startNo": 1, | |
3031 | + "count":10 | |
3032 | + }, { | |
3033 | + "subject":2, //科目2 | |
3034 | + //题号2-2和2-3共两题 多选题,5个选项 | |
3035 | + "firstNo": 2, | |
3036 | + "quesType": 2, | |
3037 | + "option": 5, | |
3038 | + "startNo": 2, | |
3039 | + "count":2 | |
3040 | + }, { | |
3041 | + "subject":3, //科目3 | |
3042 | + //题号3-1和3-2共两道数字题 | |
3043 | + "firstNo": 3, | |
3044 | + "quesType": 3, | |
3045 | + "startNo": 1, | |
3046 | + "count":2 | |
3047 | + }, { | |
3048 | + "subject":1, //科目1 | |
3049 | + //题号4和5 ,判断题 | |
3050 | + "quesType": 4, | |
3051 | + "startNo": 4, | |
3052 | + "count":2 | |
3053 | + }], | |
3054 | + "simParams":{ | |
3055 | + "answer":["A","ABCD","10","1"] | |
3056 | + } | |
3057 | + } | |
3058 | +} | |
3059 | + | |
3060 | +//显示Q开头 | |
3061 | +{ | |
3062 | + "fun":"startKpMultiExam", | |
3063 | + "dataTag":"1", | |
3064 | + "data":{ | |
3065 | + "mode": 1, | |
3066 | + "examNo": 0, | |
3067 | + "questions": [{ | |
3068 | + "subject":1, | |
3069 | + //Q1-Q20,单选题 | |
3070 | + "quesType": 1, | |
3071 | + "startNo": 1, | |
3072 | + "count":20 | |
3073 | + }], | |
3074 | + "simParams":{ | |
3075 | + "answer":["A","","",""] | |
3076 | + } | |
3077 | + } | |
3078 | +} | |
3079 | + | |
3080 | +//显示题开头 | |
3081 | +{ | |
3082 | + "fun":"startKpMultiExam", | |
3083 | + "dataTag":"1", | |
3084 | + "data":{ | |
3085 | + "mode": 2, | |
3086 | + "examNo": 0, | |
3087 | + "questions": [{ | |
3088 | + "subject":1, | |
3089 | + //题1-题20,单选题 | |
3090 | + "quesType": 1, | |
3091 | + "startNo": 1, | |
3092 | + "count":20 | |
3093 | + }], | |
3094 | + "simParams":{ | |
3095 | + "answer":["A","","",""] | |
3096 | + } | |
3097 | + } | |
3098 | +} | |
3099 | +``` | |
3100 | + | |
3101 | +<!-- ##### stopKpMultiExam | |
3102 | +- **主题**:/client/\${baseSN}/send | |
3103 | +- **功能描述**:停止多科测验 | |
3104 | +- **参数说明** | |
3105 | + | |
3106 | +|参数名|类型|限制|是否必填|说明| | |
3107 | +|---|---|---|---|---| | |
3108 | +|fun|string|-|是|指令名称| | |
3109 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
3110 | + | |
3111 | +- **示例代码** | |
3112 | +```json | |
3113 | +{ | |
3114 | + "fun":"stopKpMultiExam", | |
3115 | + "dataTag":"1" | |
3116 | +} | |
3117 | +``` --> | |
3118 | +##### [stopKpVote](#stopkpvote) | |
3119 | +停止多科测验 | |
3120 | + | |
3121 | +#### 事件 | |
3122 | +##### [sEvtStateCode](#sevtstatecode) | |
3123 | +发送指令后返回接收状态 | |
3124 | + | |
3125 | +##### [fEvtKpExam](#fevtkpexam) | |
3126 | +返回测验中键盘提交答题数据 | |
3127 | + | |
3128 | +##### [fEvtFinalSubmit](#fevtfinalsubmit) | |
3129 | +返回键盘手动交卷标识 | |
3130 | + | |
3131 | +### 自主录分 | |
3132 | +#### 方法 | |
3133 | +##### startKpScoreInput | |
3134 | +- **主题**:/client/\${baseSN}/send | |
3135 | +- **功能描述**:启动标准测验 | |
3136 | +- **参数说明** | |
3137 | + | |
3138 | +|参数名|类型|限制|是否必填|说明| | |
3139 | +|---|---|---|---|---| | |
3140 | +|fun|string|-|是|指令名称| | |
3141 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
3142 | +|data|object|-|是|传送参数的对象| | |
3143 | +|+examNo|int||是|0-9999<br>=0,新的录分<br>>0时,与上次启动卷号一致继续录分,不一致进入新的录分| | |
3144 | +|+mode|int||是|录分模式<br>0-自主录分<br>1-交叉录分,需先输入录分的人员标识| | |
3145 | +|+questions|array||是|题目详情| | |
3146 | +|++max |int||是|可输入的最大值,<=100| | |
3147 | +|++digits|int||是|可输入的小数位数,范围0-2| | |
3148 | +|++startNo | int||是| 起始题号| | |
3149 | +|++count | int||是| 相同参数的题目数量,>0| | |
3150 | + | |
3151 | +- **示例代码** | |
3152 | +```json | |
3153 | +{ | |
3154 | + "fun":"startKpScoreInput", | |
3155 | + "dataTag":"1", | |
3156 | + "data":{ | |
3157 | + "mode": 0, | |
3158 | + "examNo": 0, | |
3159 | + "questions": [{ | |
3160 | + //题号1 到 2 共2题,单题满分10分 | |
3161 | + "max":10, | |
3162 | + "digits":1, | |
3163 | + "startNo": 1, | |
3164 | + "count":2 | |
3165 | + }, { | |
3166 | + //题号3到6 共4道题,单题满分5 | |
3167 | + "max":5, | |
3168 | + "digits":0, | |
3169 | + "startNo": 3, | |
3170 | + "count":4 | |
3171 | + }] | |
3172 | + } | |
3173 | +} | |
3174 | +``` | |
3175 | +<!-- | |
3176 | +##### stopKpScoreInput | |
3177 | +- **主题**:/client/\${baseSN}/send | |
3178 | +- **功能描述**:停止自主录分 | |
3179 | +- **参数说明** | |
3180 | + | |
3181 | +|参数名|类型|限制|是否必填|说明| | |
3182 | +|---|---|---|---|---| | |
3183 | +|fun|string|-|是|指令名称| | |
3184 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
3185 | + | |
3186 | +- **示例代码** | |
3187 | +```json | |
3188 | +{ | |
3189 | + "fun":"stopKpScoreInput", | |
3190 | + "dataTag":"1" | |
3191 | +} | |
3192 | +``` --> | |
3193 | +##### [stopKpVote](#stopkpvote) | |
3194 | +停止自主录分 | |
3195 | + | |
3196 | +#### 事件 | |
3197 | +##### [sEvtStateCode](#sevtstatecode) | |
3198 | +发送指令后返回接收状态 | |
3199 | + | |
3200 | +##### fEvtKpScore | |
3201 | +- **主题**:/basestation/\${baseSN}/receive | |
3202 | +- **功能描述**:返回键盘提交录分信息 | |
3203 | +- **参数说明** | |
3204 | + | |
3205 | +|参数名|类型|限制|非空|说明| | |
3206 | +|---|---|---|---|---| | |
3207 | +|fun|string|-|是|指令名称| | |
3208 | +|dataTag|string|-|否|数据包标识,可为空字符串| | |
3209 | +|data|array|-|是|传送参数的对象数组| | |
3210 | +|++keySn|string||是|键盘SN| | |
3211 | +|++keyValue|string||是|键盘提交的分值,1:10;2:0表示第1题提交10分,第二题提交0分| | |
3212 | +|++keyTime|double||是|录分时间,从启动录分开始计算,单位秒| | |
3213 | +|++voltage|double||是|键盘电量| | |
3214 | +|++retryCount|int||是|键盘提交数据的重发次数| | |
3215 | + | |
3216 | +- **示例代码** | |
3217 | +```json | |
3218 | +{ | |
3219 | + "fun":"fEvtKpScore", | |
3220 | + "dataTag":"1", | |
3221 | + "data": [{ | |
3222 | + "keySn": "1234567890", | |
3223 | + "keyValue":"1:8;2:7.5;3:2;4:3", | |
3224 | + "keyTime":3.2 | |
3225 | + }, | |
3226 | + { | |
3227 | + "keySn": "1234567891", | |
3228 | + "keyValue":"1:10;2:0", | |
3229 | + "keyTime":3.5 | |
3230 | + } | |
3231 | + ] | |
3232 | +} | |
3233 | +``` | |
2462 | 3234 | \ No newline at end of file | ... | ... |