Commit 5706ab75ea58eef2e93625779fdb41236866797b

Authored by 刘琴
1 parent 5a911327

完善状态码内容

通讯协议-B200W-MQTT协议[内部].md
@@ -396,14 +396,21 @@ @@ -396,14 +396,21 @@
396 |0|指令收取成功| 396 |0|指令收取成功|
397 |10001|不能正确解析的JSON数据| 397 |10001|不能正确解析的JSON数据|
398 |10002|解析JSON错误| 398 |10002|解析JSON错误|
  399 +|10003|下发数据包超长|
399 |20001|基站未连接| 400 |20001|基站未连接|
400 |20002|功能不支持| 401 |20002|功能不支持|
401 |20003|基站SN格式不正确| 402 |20003|基站SN格式不正确|
402 |20004|参数错误| 403 |20004|参数错误|
403 -|20005|基站在答题中| 404 +|20005|dataTag错误|
  405 +|20006|键盘SN错误|
  406 +|20007|tip参数错误|
  407 +|20008|value参数错误|
  408 +|30001|基站在答题中|
  409 +|30002|基站忙(内存不足)|
404 |40001|升级功能只能支持一个基站| 410 |40001|升级功能只能支持一个基站|
405 |50001|此功能必须指定基站| 411 |50001|此功能必须指定基站|
406 |60001|此功能必须指定键盘SN| 412 |60001|此功能必须指定键盘SN|
  413 +|70001|没有字库|
407 414
408 - **示例代码** 415 - **示例代码**
409 ```json 416 ```json
通讯协议-B200W-MQTT协议[外].md
@@ -156,7 +156,7 @@ @@ -156,7 +156,7 @@
156 |+version|string||否|基站固件版本| 156 |+version|string||否|基站固件版本|
157 157
158 - **示例代码** 158 - **示例代码**
159 -```Json 159 +```json
160 //连接成功 160 //连接成功
161 { 161 {
162 "fun":"sEvtBsConnectState", 162 "fun":"sEvtBsConnectState",
@@ -190,7 +190,7 @@ @@ -190,7 +190,7 @@
190 |+value|int||是|有冲突的信道| 190 |+value|int||是|有冲突的信道|
191 191
192 - **示例代码** 192 - **示例代码**
193 -```Json 193 +```json
194 { 194 {
195 "fun":"sEvtBsChannelConflict", 195 "fun":"sEvtBsChannelConflict",
196 "dataTag":"1", 196 "dataTag":"1",
@@ -213,7 +213,7 @@ @@ -213,7 +213,7 @@
213 |+value|int||是|刷卡的状态<br>1-成功<br>2-失败| 213 |+value|int||是|刷卡的状态<br>1-成功<br>2-失败|
214 214
215 - **示例代码** 215 - **示例代码**
216 -```Json 216 +```json
217 { 217 {
218 "fun":"sEvtBsNfcResults", 218 "fun":"sEvtBsNfcResults",
219 "dataTag":"1", //不需要时可传空字符串 219 "dataTag":"1", //不需要时可传空字符串
@@ -239,7 +239,7 @@ @@ -239,7 +239,7 @@
239 |+model|int||是|键盘型号| 239 |+model|int||是|键盘型号|
240 240
241 - **示例代码** 241 - **示例代码**
242 -```Json 242 +```json
243 { 243 {
244 "fun":"sEvtBsKpOnlineMsg", 244 "fun":"sEvtBsKpOnlineMsg",
245 "dataTag":"1", 245 "dataTag":"1",
@@ -268,22 +268,29 @@ @@ -268,22 +268,29 @@
268 |0|指令收取成功| 268 |0|指令收取成功|
269 |10001|不能正确解析的JSON数据| 269 |10001|不能正确解析的JSON数据|
270 |10002|解析JSON错误| 270 |10002|解析JSON错误|
  271 +|10003|下发数据包超长|
271 |20001|基站未连接| 272 |20001|基站未连接|
272 |20002|功能不支持| 273 |20002|功能不支持|
273 |20003|基站SN格式不正确| 274 |20003|基站SN格式不正确|
274 |20004|参数错误| 275 |20004|参数错误|
275 -|20005|基站在答题中| 276 +|20005|dataTag错误|
  277 +|20006|键盘SN错误|
  278 +|20007|tip参数错误|
  279 +|20008|value参数错误|
  280 +|30001|基站在答题中|
  281 +|30002|基站忙(内存不足)|
276 |40001|升级功能只能支持一个基站| 282 |40001|升级功能只能支持一个基站|
277 |50001|此功能必须指定基站| 283 |50001|此功能必须指定基站|
278 |60001|此功能必须指定键盘SN| 284 |60001|此功能必须指定键盘SN|
  285 +|70001|没有字库|
279 286
280 - **示例代码** 287 - **示例代码**
281 -```Json 288 +```json
282 { 289 {
283 "fun":"sEvtStateCode", 290 "fun":"sEvtStateCode",
284 "dataTag":"1", 291 "dataTag":"1",
285 "data":{ 292 "data":{
286 - "funName":"startKpRollCall", 293 + "funName":"startKpSignIn",
287 "code":"20005" 294 "code":"20005"
288 } 295 }
289 } 296 }
@@ -301,7 +308,7 @@ @@ -301,7 +308,7 @@
301 |fun|string|-|是|固定指令名称| 308 |fun|string|-|是|固定指令名称|
302 |dataTag|string|-|否|数据包标识| 309 |dataTag|string|-|否|数据包标识|
303 - **示例代码** 310 - **示例代码**
304 -```Json 311 +```json
305 { 312 {
306 "fun":"getBsOnlineState", 313 "fun":"getBsOnlineState",
307 "dataTag":"1" 314 "dataTag":"1"
@@ -318,7 +325,7 @@ @@ -318,7 +325,7 @@
318 |fun|string|-|是|固定指令名称| 325 |fun|string|-|是|固定指令名称|
319 |dataTag|string|-|否|数据包标识| 326 |dataTag|string|-|否|数据包标识|
320 - **示例代码** 327 - **示例代码**
321 -```Json 328 +```json
322 { 329 {
323 "fun":"getBsConnectState", 330 "fun":"getBsConnectState",
324 "dataTag":"1" 331 "dataTag":"1"
@@ -344,7 +351,7 @@ @@ -344,7 +351,7 @@
344 |+baseSN|string||否|基站SN| 351 |+baseSN|string||否|基站SN|
345 352
346 - **示例代码** 353 - **示例代码**
347 -```Json 354 +```json
348 //连接成功 355 //连接成功
349 { 356 {
350 "fun":"fEvtBsOnlineState", 357 "fun":"fEvtBsOnlineState",
@@ -373,7 +380,7 @@ @@ -373,7 +380,7 @@
373 |+timeStamp|long ||否|当前时间的时间戳| 380 |+timeStamp|long ||否|当前时间的时间戳|
374 381
375 - **示例代码** 382 - **示例代码**
376 -```Json 383 +```json
377 { 384 {
378 "fun":"timeSync", 385 "fun":"timeSync",
379 "dataTag":"1", 386 "dataTag":"1",
@@ -399,7 +406,7 @@ @@ -399,7 +406,7 @@
399 |dataTag|string|-|否|数据包标识,可为空字符串| 406 |dataTag|string|-|否|数据包标识,可为空字符串|
400 407
401 - **示例代码** 408 - **示例代码**
402 -```Json 409 +```json
403 { 410 {
404 "fun":"getBsModel", 411 "fun":"getBsModel",
405 "dataTag":"1" 412 "dataTag":"1"
@@ -416,7 +423,7 @@ @@ -416,7 +423,7 @@
416 |dataTag|string|-|否|数据包标识,可为空字符串| 423 |dataTag|string|-|否|数据包标识,可为空字符串|
417 424
418 - **示例代码** 425 - **示例代码**
419 -```Json 426 +```json
420 { 427 {
421 "fun":"getBsFWVersion", 428 "fun":"getBsFWVersion",
422 "dataTag":"1" 429 "dataTag":"1"
@@ -436,7 +443,7 @@ @@ -436,7 +443,7 @@
436 |+value|string|-|是|基站的出厂编码| 443 |+value|string|-|是|基站的出厂编码|
437 444
438 - **示例代码** 445 - **示例代码**
439 -```Json 446 +```json
440 { 447 {
441 "fun":"fEvtBsSN", 448 "fun":"fEvtBsSN",
442 "dataTag":"1", 449 "dataTag":"1",
@@ -458,7 +465,7 @@ @@ -458,7 +465,7 @@
458 |+value|string|-|是|基站的型号名称| 465 |+value|string|-|是|基站的型号名称|
459 466
460 - **示例代码** 467 - **示例代码**
461 -```Json 468 +```json
462 { 469 {
463 "fun":"fEvtBsModel", 470 "fun":"fEvtBsModel",
464 "dataTag":"1", 471 "dataTag":"1",
@@ -480,7 +487,7 @@ @@ -480,7 +487,7 @@
480 |+value|string||是|基站的固件版本号| 487 |+value|string||是|基站的固件版本号|
481 488
482 - **示例代码** 489 - **示例代码**
483 -```Json 490 +```json
484 { 491 {
485 "fun":"fEvtBsFWVersion", 492 "fun":"fEvtBsFWVersion",
486 "dataTag":"1", 493 "dataTag":"1",
@@ -502,7 +509,7 @@ @@ -502,7 +509,7 @@
502 |dataTag|string|-|否|数据包标识,可为空字符串| 509 |dataTag|string|-|否|数据包标识,可为空字符串|
503 510
504 - **示例代码** 511 - **示例代码**
505 -```Json 512 +```json
506 { 513 {
507 "fun":"getBsPairCode", 514 "fun":"getBsPairCode",
508 "dataTag":"1" 515 "dataTag":"1"
@@ -519,7 +526,7 @@ @@ -519,7 +526,7 @@
519 |dataTag|string|-|否|数据包标识,可为空字符串| 526 |dataTag|string|-|否|数据包标识,可为空字符串|
520 527
521 - **示例代码** 528 - **示例代码**
522 -```Json 529 +```json
523 { 530 {
524 "fun":"getBsNfcLogin", 531 "fun":"getBsNfcLogin",
525 "dataTag":"1" 532 "dataTag":"1"
@@ -538,7 +545,7 @@ @@ -538,7 +545,7 @@
538 |+value|string|-|是|设置的基站刷卡配对状态<br>0-关闭刷卡配对<br>1-开启刷卡配对| 545 |+value|string|-|是|设置的基站刷卡配对状态<br>0-关闭刷卡配对<br>1-开启刷卡配对|
539 546
540 - **示例代码** 547 - **示例代码**
541 -```Json 548 +```json
542 { 549 {
543 "fun":"setBsNfcLogin", 550 "fun":"setBsNfcLogin",
544 "dataTag":"1", 551 "dataTag":"1",
@@ -558,7 +565,7 @@ @@ -558,7 +565,7 @@
558 |dataTag|string|-|否|数据包标识,可为空字符串| 565 |dataTag|string|-|否|数据包标识,可为空字符串|
559 566
560 - **示例代码** 567 - **示例代码**
561 -```Json 568 +```json
562 { 569 {
563 "fun":"getBsChannel", 570 "fun":"getBsChannel",
564 "dataTag":"1" 571 "dataTag":"1"
@@ -577,7 +584,7 @@ @@ -577,7 +584,7 @@
577 |+value|string|-|是|设置的基站信道,可设范围:1-80| 584 |+value|string|-|是|设置的基站信道,可设范围:1-80|
578 585
579 - **示例代码** 586 - **示例代码**
580 -```Json 587 +```json
581 { 588 {
582 "fun":"setBsChannel", 589 "fun":"setBsChannel",
583 "dataTag":"1", 590 "dataTag":"1",
@@ -600,7 +607,7 @@ @@ -600,7 +607,7 @@
600 |+value|string||是|基站的配对码| 607 |+value|string||是|基站的配对码|
601 608
602 - **示例代码** 609 - **示例代码**
603 -```Json 610 +```json
604 { 611 {
605 "fun":"fEvtBsPairCode", 612 "fun":"fEvtBsPairCode",
606 "dataTag":"1", 613 "dataTag":"1",
@@ -623,7 +630,7 @@ @@ -623,7 +630,7 @@
623 |+value|string||是|基站信道| 630 |+value|string||是|基站信道|
624 631
625 - **示例代码** 632 - **示例代码**
626 -```Json 633 +```json
627 { 634 {
628 "fun":"fEvtBsChannel", 635 "fun":"fEvtBsChannel",
629 "dataTag":"1", 636 "dataTag":"1",
@@ -645,7 +652,7 @@ @@ -645,7 +652,7 @@
645 |+value|string||是|0-关闭 1-开启| 652 |+value|string||是|0-关闭 1-开启|
646 653
647 - **示例代码** 654 - **示例代码**
648 -```Json 655 +```json
649 { 656 {
650 "fun":"fEvtBsNfcLogin", 657 "fun":"fEvtBsNfcLogin",
651 "dataTag":"1", 658 "dataTag":"1",
@@ -668,7 +675,7 @@ @@ -668,7 +675,7 @@
668 |dataTag|string|-|否|数据包标识| 675 |dataTag|string|-|否|数据包标识|
669 676
670 - **示例代码** 677 - **示例代码**
671 -```Json 678 +```json
672 { 679 {
673 "fun":"getBsSSID", 680 "fun":"getBsSSID",
674 "dataTag":"1" 681 "dataTag":"1"
@@ -687,7 +694,7 @@ @@ -687,7 +694,7 @@
687 |+value|string||是|设置的基站SSID,最长12字符| 694 |+value|string||是|设置的基站SSID,最长12字符|
688 695
689 - **示例代码** 696 - **示例代码**
690 -```Json 697 +```json
691 { 698 {
692 "fun":"setBsSSID", 699 "fun":"setBsSSID",
693 "dataTag":"1", 700 "dataTag":"1",
@@ -710,7 +717,7 @@ @@ -710,7 +717,7 @@
710 |+value|string||是|基站名称| 717 |+value|string||是|基站名称|
711 718
712 - **示例代码** 719 - **示例代码**
713 -```Json 720 +```json
714 { 721 {
715 "fun":"fEvtBsSSID", 722 "fun":"fEvtBsSSID",
716 "dataTag":"1", 723 "dataTag":"1",
@@ -732,7 +739,7 @@ @@ -732,7 +739,7 @@
732 |dataTag|string|-|否|数据包标识,可为空字符串| 739 |dataTag|string|-|否|数据包标识,可为空字符串|
733 740
734 - **示例代码** 741 - **示例代码**
735 -```Json 742 +```json
736 { 743 {
737 "fun":"getBsKpLanguage", 744 "fun":"getBsKpLanguage",
738 "dataTag":"1" 745 "dataTag":"1"
@@ -751,7 +758,7 @@ @@ -751,7 +758,7 @@
751 |+value|string||是|设置键盘显示的语言<br>1-简体中文<br>2-英文| 758 |+value|string||是|设置键盘显示的语言<br>1-简体中文<br>2-英文|
752 759
753 - **示例代码** 760 - **示例代码**
754 -```Json 761 +```json
755 { 762 {
756 "fun":"setBsKpLanguage", 763 "fun":"setBsKpLanguage",
757 "dataTag":"1", 764 "dataTag":"1",
@@ -774,7 +781,7 @@ @@ -774,7 +781,7 @@
774 |+value|string||是|设置键盘显示的语言<br>1-简体中文<br>2-英文| 781 |+value|string||是|设置键盘显示的语言<br>1-简体中文<br>2-英文|
775 782
776 - **示例代码** 783 - **示例代码**
777 -```Json 784 +```json
778 { 785 {
779 "fun":"fEvtBsKpLanguage", 786 "fun":"fEvtBsKpLanguage",
780 "dataTag":"1", 787 "dataTag":"1",
@@ -945,7 +952,7 @@ @@ -945,7 +952,7 @@
945 |+keySns|array||是|基站当前的白名单列表| 952 |+keySns|array||是|基站当前的白名单列表|
946 953
947 - **示例代码** 954 - **示例代码**
948 -```Json 955 +```json
949 { 956 {
950 "fun":"fEvtBsWhitelist", 957 "fun":"fEvtBsWhitelist",
951 "dataTag":"1", 958 "dataTag":"1",
@@ -969,7 +976,7 @@ @@ -969,7 +976,7 @@
969 |++state|int||是|键盘SN的写入状态 <br>0-写入成功<br> 1-写入失败| 976 |++state|int||是|键盘SN的写入状态 <br>0-写入成功<br> 1-写入失败|
970 977
971 - **示例代码** 978 - **示例代码**
972 -```Json 979 +```json
973 { 980 {
974 "fun":"fEvtSetBsWhitelist", 981 "fun":"fEvtSetBsWhitelist",
975 "dataTag":"1", 982 "dataTag":"1",
@@ -997,7 +1004,7 @@ @@ -997,7 +1004,7 @@
997 |++state|int||是|键盘的增加状态 <br>0-增加成功<br> 1-增加失败| 1004 |++state|int||是|键盘的增加状态 <br>0-增加成功<br> 1-增加失败|
998 1005
999 - **示例代码** 1006 - **示例代码**
1000 -```Json 1007 +```json
1001 { 1008 {
1002 "fun":"fEvtAddBsWhitelist", 1009 "fun":"fEvtAddBsWhitelist",
1003 "dataTag":"1", 1010 "dataTag":"1",
@@ -1025,7 +1032,7 @@ @@ -1025,7 +1032,7 @@
1025 |++state|int||是|键盘的删除状态 <br>0-删除成功<br> 1-删除失败| 1032 |++state|int||是|键盘的删除状态 <br>0-删除成功<br> 1-删除失败|
1026 1033
1027 - **示例代码** 1034 - **示例代码**
1028 -```Json 1035 +```json
1029 { 1036 {
1030 "fun":"fEvtDelBsWhitelist", 1037 "fun":"fEvtDelBsWhitelist",
1031 "dataTag":"1", 1038 "dataTag":"1",
@@ -1052,7 +1059,7 @@ @@ -1052,7 +1059,7 @@
1052 |dataTag|string|-|否|数据包标识,可为空字符串| 1059 |dataTag|string|-|否|数据包标识,可为空字符串|
1053 1060
1054 - **示例代码** 1061 - **示例代码**
1055 -```Json 1062 +```json
1056 { 1063 {
1057 "fun":"getBsTcpipParams", 1064 "fun":"getBsTcpipParams",
1058 "dataTag":"1" 1065 "dataTag":"1"
@@ -1074,7 +1081,7 @@ @@ -1074,7 +1081,7 @@
1074 |+ipAllocation|int||否|基站IP获取方式<br>0 - 手动指定<br>1 - DHCP获取| 1081 |+ipAllocation|int||否|基站IP获取方式<br>0 - 手动指定<br>1 - DHCP获取|
1075 1082
1076 - **示例代码** 1083 - **示例代码**
1077 -```Json 1084 +```json
1078 { 1085 {
1079 "fun":"setBsTcpipParams", 1086 "fun":"setBsTcpipParams",
1080 "dataTag":"1", 1087 "dataTag":"1",
@@ -1097,7 +1104,7 @@ @@ -1097,7 +1104,7 @@
1097 |dataTag|string|-|否|数据包标识,可为空字符串| 1104 |dataTag|string|-|否|数据包标识,可为空字符串|
1098 1105
1099 - **示例代码** 1106 - **示例代码**
1100 -```Json 1107 +```json
1101 { 1108 {
1102 "fun":"getBsMqttParams", 1109 "fun":"getBsMqttParams",
1103 "dataTag":"1" 1110 "dataTag":"1"
@@ -1120,7 +1127,7 @@ @@ -1120,7 +1127,7 @@
1120 |+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒| 1127 |+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒|
1121 1128
1122 - **示例代码** 1129 - **示例代码**
1123 -```Json 1130 +```json
1124 { 1131 {
1125 "fun":"setBsMqttParams", 1132 "fun":"setBsMqttParams",
1126 "dataTag":"1", 1133 "dataTag":"1",
@@ -1151,7 +1158,7 @@ @@ -1151,7 +1158,7 @@
1151 |+ipAllocation|int||否|基站IP获取方式<br>0 - 手动指定<br>1 - DHCP获取| 1158 |+ipAllocation|int||否|基站IP获取方式<br>0 - 手动指定<br>1 - DHCP获取|
1152 1159
1153 - **示例代码** 1160 - **示例代码**
1154 -```Json 1161 +```json
1155 { 1162 {
1156 "fun":"fEvtBsTcpipParams", 1163 "fun":"fEvtBsTcpipParams",
1157 "dataTag":"1", 1164 "dataTag":"1",
@@ -1181,7 +1188,7 @@ @@ -1181,7 +1188,7 @@
1181 |+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒| 1188 |+interval|int|>=10|否|基站连接服务器失败后重连的间隔时长,单位秒|
1182 1189
1183 - **示例代码** 1190 - **示例代码**
1184 -```Json 1191 +```json
1185 { 1192 {
1186 "fun":"fEvtBsMqttParams", 1193 "fun":"fEvtBsMqttParams",
1187 "dataTag":"1", 1194 "dataTag":"1",
@@ -1339,7 +1346,7 @@ @@ -1339,7 +1346,7 @@
1339 |+voltage|double||是|键盘电量| 1346 |+voltage|double||是|键盘电量|
1340 1347
1341 - **示例代码** 1348 - **示例代码**
1342 -```Json 1349 +```json
1343 { 1350 {
1344 "fun":"fEvtKpOnlineMsg", 1351 "fun":"fEvtKpOnlineMsg",
1345 "dataTag":"1", 1352 "dataTag":"1",
@@ -1367,7 +1374,7 @@ @@ -1367,7 +1374,7 @@
1367 |+keySns|array||否|需要执行指令的键盘SN数组,空数组表示所有键盘| 1374 |+keySns|array||否|需要执行指令的键盘SN数组,空数组表示所有键盘|
1368 1375
1369 - **示例代码** 1376 - **示例代码**
1370 -```Json 1377 +```json
1371 { 1378 {
1372 "fun":"remoteKpSleep", 1379 "fun":"remoteKpSleep",
1373 "dataTag":"1", 1380 "dataTag":"1",
@@ -1516,7 +1523,7 @@ @@ -1516,7 +1523,7 @@
1516 |+tipTitle |string|-|否| 提示标题,长度最多不超过16个字节| 1523 |+tipTitle |string|-|否| 提示标题,长度最多不超过16个字节|
1517 1524
1518 - **示例代码** 1525 - **示例代码**
1519 -```Json 1526 +```json
1520 //按键签到 1527 //按键签到
1521 { 1528 {
1522 "fun":"startKpSignIn", 1529 "fun":"startKpSignIn",
@@ -1553,7 +1560,7 @@ @@ -1553,7 +1560,7 @@
1553 |dataTag|string|-|否|数据包标识,可为空字符串| 1560 |dataTag|string|-|否|数据包标识,可为空字符串|
1554 1561
1555 - **示例代码** 1562 - **示例代码**
1556 -```Json 1563 +```json
1557 { 1564 {
1558 "fun":"stopKpSignIn", 1565 "fun":"stopKpSignIn",
1559 "dataTag":"1" 1566 "dataTag":"1"
@@ -1651,6 +1658,8 @@ @@ -1651,6 +1658,8 @@
1651 |++keySn|string||是|键盘SN| 1658 |++keySn|string||是|键盘SN|
1652 |++keyValue|string||是|键盘提交的按键值| 1659 |++keyValue|string||是|键盘提交的按键值|
1653 |++keyTime|double||是|答题时间,从启动开始计算,单位秒| 1660 |++keyTime|double||是|答题时间,从启动开始计算,单位秒|
  1661 +|++voltage|double||是|键盘电量|
  1662 +|++retryCount|int||是|键盘提交数据的重发次数|
1654 1663
1655 - **示例代码** 1664 - **示例代码**
1656 1665
@@ -1763,6 +1772,8 @@ @@ -1763,6 +1772,8 @@
1763 |++keySn|string||是|键盘SN| 1772 |++keySn|string||是|键盘SN|
1764 |++keyValue|string||是|键盘提交的按键值<br>1-对<br>2-错| 1773 |++keyValue|string||是|键盘提交的按键值<br>1-对<br>2-错|
1765 |++keyTime|double||是|答题时间,从启动开始计算,单位秒| 1774 |++keyTime|double||是|答题时间,从启动开始计算,单位秒|
  1775 +|++voltage|double||是|键盘电量|
  1776 +|++retryCount|int||是|键盘提交数据的重发次数|
1766 1777
1767 - **示例代码** 1778 - **示例代码**
1768 1779
@@ -1850,6 +1861,8 @@ @@ -1850,6 +1861,8 @@
1850 |++keySn|string||是|键盘SN| 1861 |++keySn|string||是|键盘SN|
1851 |++keyValue|string||是|键盘提交的按键值| 1862 |++keyValue|string||是|键盘提交的按键值|
1852 |++keyTime|double||是|答题时间,从启动开始计算,单位秒| 1863 |++keyTime|double||是|答题时间,从启动开始计算,单位秒|
  1864 +|++voltage|double||是|键盘电量|
  1865 +|++retryCount|int||是|键盘提交数据的重发次数|
1853 1866
1854 - **示例代码** 1867 - **示例代码**
1855 1868
@@ -1936,6 +1949,8 @@ @@ -1936,6 +1949,8 @@
1936 |++keySn|string||是|键盘SN| 1949 |++keySn|string||是|键盘SN|
1937 |++keyValue|string||是|键盘提交的按键值| 1950 |++keyValue|string||是|键盘提交的按键值|
1938 |++keyTime|double||是|答题时间,从启动开始计算,单位秒| 1951 |++keyTime|double||是|答题时间,从启动开始计算,单位秒|
  1952 +|++voltage|double||是|键盘电量</font>|
  1953 +|++retryCount|int||是|键盘提交数据的重发次数|
1939 1954
1940 - **示例代码** 1955 - **示例代码**
1941 1956
@@ -2016,6 +2031,8 @@ @@ -2016,6 +2031,8 @@
2016 |++keySn|string||是|键盘SN| 2031 |++keySn|string||是|键盘SN|
2017 |++keyValue|string||是|键盘提交的按键值| 2032 |++keyValue|string||是|键盘提交的按键值|
2018 |++keyTime|double||是|答题时间,从启动开始计算,单位秒| 2033 |++keyTime|double||是|答题时间,从启动开始计算,单位秒|
  2034 +|++voltage|double||是|键盘电量|
  2035 +|++retryCount|int||是|键盘提交数据的重发次数|
2019 2036
2020 - **示例代码** 2037 - **示例代码**
2021 2038
@@ -2046,7 +2063,7 @@ @@ -2046,7 +2063,7 @@
2046 |+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验| 2063 |+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验|
2047 |+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头| 2064 |+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头|
2048 |+questions|array||是|题目详情| 2065 |+questions|array||是|题目详情|
2049 -|++symbol | string||是 | 题号前缀,可为空 | 2066 +|++symbol | string||是 | 题号前缀,分级标识为-,可为空,为空表示1级大题<br><font color="red">最多为三级题号,即最多可以设为x-x-</font>|
2050 |++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 | 2067 |++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 |
2051 |++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。| 2068 |++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。|
2052 |++startNo | int||是| 起始题号 | 2069 |++startNo | int||是| 起始题号 |
@@ -2054,73 +2071,179 @@ @@ -2054,73 +2071,179 @@
2054 2071
2055 - **示例代码** 2072 - **示例代码**
2056 2073
  2074 +**常用样例**:一级题型 + 显示“Q”开头, 单一题型,全单选题共10题
  2075 +```json
  2076 +{
  2077 + "fun":"startKpExam",
  2078 + "dataTag":"1",
  2079 + "data":{
  2080 + "mode": 1,
  2081 + "examNo": 1,
  2082 + "questions": [{
  2083 + "quesType": 1, //单选题
  2084 + "startNo": 1, //题号从1开始
  2085 + "count":10 //连续10题
  2086 + }]
  2087 + }
  2088 +}
  2089 +```
  2090 +
  2091 +指令样例:一级题型 + 不显示开头,总题数6题
2057 ```json 2092 ```json
2058 -//自定义题号  
2059 { 2093 {
2060 "fun":"startKpExam", 2094 "fun":"startKpExam",
2061 "dataTag":"1", 2095 "dataTag":"1",
2062 "data":{ 2096 "data":{
2063 "mode": 0, 2097 "mode": 0,
2064 "examNo": 1, 2098 "examNo": 1,
2065 - "questions": [{  
2066 - //题号1-1-1 到1-1-10 共10题单选  
2067 - "symbol": "1-1-",  
2068 - "quesType": 1,  
2069 - "startNo": 1,  
2070 - "count":10  
2071 - }, {  
2072 - //题号2-2和2-3共两题 多选题,5个选项  
2073 - "symbol": "2-",  
2074 - "quesType": 2,  
2075 - "option": 5,  
2076 - "startNo": 2,  
2077 - "count":2  
2078 - }, {  
2079 - //题号3-1和3-2共两道数字题 2099 + //第1、2题单选题,第3、4题多选题,第5题数字,第6题判断,共6题
  2100 + "questions": [{
  2101 + "quesType": 1, //单选题
  2102 + "startNo": 1, //题号从1开始
  2103 + "count":2 //连续2题
  2104 + },{
  2105 + "quesType": 2, //多选题
  2106 + "startNo": 3, //题号从3开始
  2107 + "count":2, //连续2题
  2108 + "option":5
  2109 + },{
  2110 + "quesType": 1, //数字题
  2111 + "startNo": 5, //题号从5开始
  2112 + "count":1 //连续1题
  2113 + },{
  2114 + "quesType": 4, //判断题
  2115 + "startNo": 6, //题号从6开始
  2116 + "count":1 //连续1题
  2117 + }]
  2118 + }
  2119 +}
  2120 +```
  2121 +
  2122 +指令样例:二级题型 + 不显示开头,总题数6题
  2123 +```json
  2124 +{
  2125 + "fun":"startKpExam",
  2126 + "dataTag":"1",
  2127 + "data":{
  2128 + "mode": 0,
  2129 + "examNo": 1,
  2130 + //第1-1、1-2题单选题,第2-1、2-2题多选题,第3-1题数字,第4-1题判断,共6题
  2131 + "questions": [{
  2132 + "symbol": "1-",
  2133 + "quesType": 1, //单选题
  2134 + "startNo": 1, //题号从1-1开始
  2135 + "count":2 //连续2题
  2136 + },{
  2137 + "symbol": "2-",
  2138 + "quesType": 2, //多选题
  2139 + "startNo": 1, //题号从2-1开始
  2140 + "count":2, //连续2题
  2141 + "option":5
  2142 + },{
2080 "symbol": "3-", 2143 "symbol": "3-",
2081 - "quesType": 3,  
2082 - "startNo": 1,  
2083 - "count":2  
2084 - }, {  
2085 - //题号4和5 ,判断题  
2086 - "symbol": "",  
2087 - "quesType": 4,  
2088 - "startNo": 4,  
2089 - "count":2 2144 + "quesType": 3, //数字题
  2145 + "startNo": 1, //题号从3-1开始
  2146 + "count":1 //连续1题
  2147 + },{
  2148 + "symbol": "4-",
  2149 + "quesType": 4, //判断题
  2150 + "startNo": 1, //题号从4-1开始
  2151 + "count":1 //连续1题
  2152 + }]
  2153 + }
  2154 +}
  2155 +```
  2156 +
  2157 +指令样例:三级题型 + 不显示开头,总题数6题
  2158 +```json
  2159 +{
  2160 + "fun":"startKpExam",
  2161 + "dataTag":"1",
  2162 + "data":{
  2163 + "mode": 0,
  2164 + "examNo": 1,
  2165 + //第1-1-1、1-1-2题单选题,第1-2-1、1-2-2题多选题,第2-1-1题数字,第3-1-1题判断,共6题
  2166 + "questions": [{
  2167 + "symbol": "1-1-",
  2168 + "quesType": 1, //单选题
  2169 + "startNo": 1, //题号从1-1-1开始
  2170 + "count":2 //连续2题
  2171 + },{
  2172 + "symbol": "1-2-",
  2173 + "quesType": 2, //多选题
  2174 + "startNo": 1, //题号从1-2-1开始
  2175 + "count":2, //连续2题
  2176 + "option":5
  2177 + },{
  2178 + "symbol": "2-1-",
  2179 + "quesType": 3, //数字题
  2180 + "startNo": 1, //题号从2-1-1开始
  2181 + "count":1 //连续1题
  2182 + },{
  2183 + "symbol": "3-1-",
  2184 + "quesType": 4, //判断题
  2185 + "startNo": 1, //题号从3-1-1开始
  2186 + "count":1 //连续1题
2090 }] 2187 }]
2091 } 2188 }
2092 } 2189 }
  2190 +```
2093 2191
2094 -//显示Q开头 2192 +指令样例:一级题型 + 显示“Q”开头, 共6题
  2193 +```json
2095 { 2194 {
2096 "fun":"startKpExam", 2195 "fun":"startKpExam",
2097 "dataTag":"1", 2196 "dataTag":"1",
2098 "data":{ 2197 "data":{
2099 "mode": 1, 2198 "mode": 1,
2100 "examNo": 1, 2199 "examNo": 1,
2101 - "questions": [{  
2102 - //Q1-Q20,单选题  
2103 - "symbol": "",  
2104 - "quesType": 1,  
2105 - "startNo": 1,  
2106 - "count":20 2200 + "questions": [{
  2201 + "quesType": 1, //单选题
  2202 + "startNo": 1, //题号从1开始
  2203 + "count":2 //连续2题
  2204 + },{
  2205 + "quesType": 2, //多选题
  2206 + "startNo": 3, //题号从3开始
  2207 + "count":2, //连续2题
  2208 + "option":5
  2209 + },{
  2210 + "quesType": 1, //数字题
  2211 + "startNo": 5, //题号从5开始
  2212 + "count":1 //连续1题
  2213 + },{
  2214 + "quesType": 4, //判断题
  2215 + "startNo": 6, //题号从6开始
  2216 + "count":1 //连续1题
2107 }] 2217 }]
2108 } 2218 }
2109 } 2219 }
  2220 +```
2110 2221
2111 -//显示题开头 2222 +指令样例:一级题型 + 显示“题”开头, 共6题
  2223 +```json
2112 { 2224 {
2113 "fun":"startKpExam", 2225 "fun":"startKpExam",
2114 "dataTag":"1", 2226 "dataTag":"1",
2115 "data":{ 2227 "data":{
2116 "mode": 2, 2228 "mode": 2,
2117 "examNo": 1, 2229 "examNo": 1,
2118 - "questions": [{  
2119 - //题1-题20,单选题  
2120 - "symbol": "",  
2121 - "quesType": 1,  
2122 - "startNo": 1,  
2123 - "count":20 2230 + "questions": [{
  2231 + "quesType": 1, //单选题
  2232 + "startNo": 1, //题号从1开始
  2233 + "count":2 //连续2题
  2234 + },{
  2235 + "quesType": 2, //多选题
  2236 + "startNo": 3, //题号从3开始
  2237 + "count":2, //连续2题
  2238 + "option":5
  2239 + },{
  2240 + "quesType": 1, //数字题
  2241 + "startNo": 5, //题号从5开始
  2242 + "count":1 //连续1题
  2243 + },{
  2244 + "quesType": 4, //判断题
  2245 + "startNo": 6, //题号从6开始
  2246 + "count":1 //连续1题
2124 }] 2247 }]
2125 } 2248 }
2126 } 2249 }