Commit 74a79e8df9de116672e4e51753f6d873d0e0f9c9

Authored by 肖翔
2 parents 6a3db4c4 ee565be4

Merge branch 'master' of http://120.78.57.84/lee/Protocol

通讯协议-B200W-MQTT协议[内部].md
@@ -66,8 +66,6 @@ @@ -66,8 +66,6 @@
66 } 66 }
67 ``` 67 ```
68 68
69 -<font color="red">注意:基站接收指令数据单次不超过2K长度,在指定键盘发送指令时,如果指令长度超出限制,建议将指令进行拆分,分次发送,如果是所有键盘执行的指令,可将keySns设为空数组不使用指定键盘的模式</font>  
70 -  
71 |参数 |说明 |约束| 69 |参数 |说明 |约束|
72 |---|---|---| 70 |---|---|---|
73 |fun| 指令或事件名称|| 71 |fun| 指令或事件名称||
@@ -117,7 +115,7 @@ @@ -117,7 +115,7 @@
117 ||设置TCP/IP参数|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)|| 115 ||设置TCP/IP参数|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)||
118 |网络设置 - MQTT参数|获取MQTT参数|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)| 116 |网络设置 - MQTT参数|获取MQTT参数|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)|
119 ||设置MQTT参数|[setBsMqttParams](#setbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)|| 117 ||设置MQTT参数|[setBsMqttParams](#setbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)||
120 -|基站维护|获取基站日志信息|[getBsLogInfo](#getbsloginfo)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsLogInfo](#fevtbsloginfo)<font color="red">(内)</font>| 118 +|基站维护|<font color="red">获取基站日志信息(内)</font>|[getBsLogInfo](#getbsloginfo)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsLogInfo](#fevtbsloginfo)|
121 ||基站软复位|[resetBsSystem](#resetbssystem)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsConnectState](#sevtbsconnectstate)| 119 ||基站软复位|[resetBsSystem](#resetbssystem)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsConnectState](#sevtbsconnectstate)|
122 ||基站断电复位|[resetBsPower](#resetbspower)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsConnectState](#sevtbsconnectstate)| 120 ||基站断电复位|[resetBsPower](#resetbspower)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsConnectState](#sevtbsconnectstate)|
123 |基站升级|<font color="red">开启基站升级(内)|[startBsUpdate](#startbsupdate)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsUpateState](#fevtbsupatestate)<br>[fEvtBsUpdateProgress](#fevtbsupdateprogress)| 121 |基站升级|<font color="red">开启基站升级(内)|[startBsUpdate](#startbsupdate)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsUpateState](#fevtbsupatestate)<br>[fEvtBsUpdateProgress](#fevtbsupdateprogress)|
@@ -164,6 +162,8 @@ @@ -164,6 +162,8 @@
164 ||停止标准测验|[stopKpExam](#stopkpexam)|[sEvtStateCode](#sevtstatecode)| 162 ||停止标准测验|[stopKpExam](#stopkpexam)|[sEvtStateCode](#sevtstatecode)|
165 ||刷新作答数据|[rtGetKpExamData](#rtgetkpexamdata)|[fEvtKpExam](#fevtkpexam)| 163 ||刷新作答数据|[rtGetKpExamData](#rtgetkpexamdata)|[fEvtKpExam](#fevtkpexam)|
166 ||允许键盘提交后退回修改|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| 164 ||允许键盘提交后退回修改|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)<br>[fEvtFinalSubmit](#fevtfinalsubmit)|
  165 +|多科测验|启动多科测验|[startKpMultiExam](#startkpmultiexam)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)<br>[fEvtFinalSubmit](#fevtfinalsubmit)|
  166 +||停止标准测验|[stopKpMultiExam](#stopkpmultiexam)|[sEvtStateCode](#sevtstatecode)|
167 167
168 ## 公共事件 168 ## 公共事件
169 ### sEvtBsConnectState 169 ### sEvtBsConnectState
@@ -1506,7 +1506,7 @@ @@ -1506,7 +1506,7 @@
1506 ### 基站维护 1506 ### 基站维护
1507 #### 方法 1507 #### 方法
1508 ##### getBsLogInfo 1508 ##### getBsLogInfo
1509 -- **主题**:/client/\${baseSN}/send 1509 +- **主题**:<sapn class="yellowFill">/manage/\${baseSN}/receive</span>
1510 - **功能描述**:获取基站日志,用于出现故障需要排查问题时获取基站内部日志记录 1510 - **功能描述**:获取基站日志,用于出现故障需要排查问题时获取基站内部日志记录
1511 - **参数说明** 1511 - **参数说明**
1512 1512
@@ -1525,7 +1525,7 @@ @@ -1525,7 +1525,7 @@
1525 1525
1526 ##### resetBsSystem 1526 ##### resetBsSystem
1527 - **主题**:/client/\${baseSN}/send 1527 - **主题**:/client/\${baseSN}/send
1528 -- **功能描述**:软复位基站(公共主题可用,但不体现在外部版本协议中 1528 +- **功能描述**:软复位基站<sapn class="yellowFill">(公共主题可用,但不体现在外部版本协议中</span>
1529 - **参数说明** 1529 - **参数说明**
1530 1530
1531 |参数名|类型|限制|是否必填|说明| 1531 |参数名|类型|限制|是否必填|说明|
@@ -1543,7 +1543,7 @@ @@ -1543,7 +1543,7 @@
1543 1543
1544 ##### resetBsPower 1544 ##### resetBsPower
1545 - **主题**:/client/\${baseSN}/send 1545 - **主题**:/client/\${baseSN}/send
1546 -- **功能描述**:断电复位基站(公共主题可用,但不体现在外部版本协议中) 1546 +- **功能描述**:断电复位基站<sapn class="yellowFill">(公共主题可用,但不体现在外部版本协议中)</span>
1547 - **参数说明** 1547 - **参数说明**
1548 1548
1549 |参数名|类型|限制|是否必填|说明| 1549 |参数名|类型|限制|是否必填|说明|
@@ -1562,6 +1562,7 @@ @@ -1562,6 +1562,7 @@
1562 #### 事件 1562 #### 事件
1563 ##### [sEvtStateCode](#sevtstatecode) 1563 ##### [sEvtStateCode](#sevtstatecode)
1564 返回指令的接收状态 1564 返回指令的接收状态
  1565 +注意:内部指令的接收状态需从**主题: <sapn class="yellowFill">/manage/\${baseSN}/receive</span>** 返回
1565 1566
1566 ##### [sEvtBsConnectState](#sevtbsconnectstate) 1567 ##### [sEvtBsConnectState](#sevtbsconnectstate)
1567 复位基站后,基站重新连接成功后上报 1568 复位基站后,基站重新连接成功后上报
@@ -1865,6 +1866,9 @@ @@ -1865,6 +1866,9 @@
1865 |data|array|-|是|传送参数的对象数组| 1866 |data|array|-|是|传送参数的对象数组|
1866 |++keySn|string||是|设置提示语信息的键盘SN| 1867 |++keySn|string||是|设置提示语信息的键盘SN|
1867 |++state|string||是|设置的提示语是否成功<br>0 - 成功<br>1 - 失败| 1868 |++state|string||是|设置的提示语是否成功<br>0 - 成功<br>1 - 失败|
  1869 +
  1870 +- **示例代码**
  1871 +
1868 ```json 1872 ```json
1869 { 1873 {
1870 "fun":"fEvtSetKpUserPrompt", 1874 "fun":"fEvtSetKpUserPrompt",
@@ -2406,7 +2410,7 @@ @@ -2406,7 +2410,7 @@
2406 "dataTag":"1", 2410 "dataTag":"1",
2407 "data": { 2411 "data": {
2408 "keySn":"1479824643", 2412 "keySn":"1479824643",
2409 - "state":1 2413 + "state":"1"
2410 } 2414 }
2411 } 2415 }
2412 ``` 2416 ```
@@ -2772,7 +2776,7 @@ @@ -2772,7 +2776,7 @@
2772 |+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验| 2776 |+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验|
2773 |+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头| 2777 |+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头|
2774 |+questions|array||是|题目详情| 2778 |+questions|array||是|题目详情|
2775 -|++symbol | string||是 | 题号前缀,可为空 | 2779 +|++symbol | string||是 | 题号前缀,分级标识为-,可为空,为空表示1级大题<br><font color="red">最多为三级题号,即最多可以设为x-x-</font>|
2776 |++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 | 2780 |++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 |
2777 |++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。| 2781 |++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。|
2778 |++startNo | int||是| 起始题号 | 2782 |++startNo | int||是| 起始题号 |
@@ -2937,7 +2941,7 @@ @@ -2937,7 +2941,7 @@
2937 |dataTag|string|-|否|数据包标识,可为空字符串| 2941 |dataTag|string|-|否|数据包标识,可为空字符串|
2938 |data|array|-|是|传送参数的对象数组| 2942 |data|array|-|是|传送参数的对象数组|
2939 |++keySn|string||是|键盘SN| 2943 |++keySn|string||是|键盘SN|
2940 -|++keyValue|string||是|键盘提交的按键值,1:A;2:B表示第1题提交A,第二题提交B| 2944 +|++keyValue|string||是|键盘提交的按键值,1:A;2:B表示第1题提交A,第二题提交B<br><font color="red">注意:如启动的是多科测验,键盘提交的题目序号对应启动时下发的题目总序号,不按科目区分</font>|
2941 |++keyTime|double||是|答题时间,从启动开始计算,单位秒| 2945 |++keyTime|double||是|答题时间,从启动开始计算,单位秒|
2942 2946
2943 - **示例代码** 2947 - **示例代码**
@@ -2983,4 +2987,144 @@ @@ -2983,4 +2987,144 @@
2983 "keyTime":3.2 2987 "keyTime":3.2
2984 }] 2988 }]
2985 } 2989 }
2986 -```  
2987 \ No newline at end of file 2990 \ No newline at end of file
  2991 +```
  2992 +
  2993 +### 多科测验
  2994 +#### 方法
  2995 +##### startKpMultiExam
  2996 +- **主题**:/client/\${baseSN}/send
  2997 +- **功能描述**:启动多科测验
  2998 +- **参数说明**
  2999 +
  3000 +|参数名|类型|限制|是否必填|说明|
  3001 +|---|---|---|---|---|
  3002 +|fun|string|-|是|指令名称|
  3003 +|dataTag|string|-|否|数据包标识,可为空字符串|
  3004 +|data|object|-|是|传送参数的对象|
  3005 +|+examNo|int||是|0-9999<br>=0,新的测验<br>>0时,与上次启动卷号一致继续测验,不一致进入新的测验|
  3006 +|+mode|int||是|显示模式<br>0-不显示开头<br>1-显示“Q”开头<br>2-显示“题”开头|
  3007 +|+questions|array||是|题目详情|
  3008 +|++subject | int||是 | 科目序号,1-9,对应键盘中内置的科目1-9<br>键盘答题时可选择科目切换答题|
  3009 +|++symbol | string||是 | 题号前缀,分级标识为-,可为空,为空表示1级题目<br><font color="red">多科测验题目编号最多只能两级(即symbol可设置为空或x-),超出无效</font>|
  3010 +|++quesType | int||是| 题目类型<br>1:单选<br>2:多选(排序)<br>3:数字<br>4:判断 |
  3011 +|++option |int||是 |选项数目<br> quesType = 1 有效。<br>quesType = 2 有效。<br>此项缺省时 默认4;<br>范围:1-10。|
  3012 +|++startNo | int||是| 起始题号 |
  3013 +|++count | int||是| 题目数量 |
  3014 +|+simParams|object||否|内部模拟测试参数设置对象|
  3015 +|++answer|array||是|预设提交的按键值<br>格式为"单选题答案,多选题答案;<br>数字题答案;判断题答案(1对2错)"<br>如["A","ABCD","10","1"]|
  3016 +
  3017 +- **示例代码**
  3018 +```json
  3019 +//自定义题号
  3020 +{
  3021 + "fun":"startKpMultiExam",
  3022 + "dataTag":"1",
  3023 + "data":{
  3024 + "mode": 0,
  3025 + "examNo": 1,
  3026 + "questions": [{
  3027 + "subject":1, //科目1
  3028 + //题号1-1 到1-10 共10题单选
  3029 + "symbol": "1-",
  3030 + "quesType": 1,
  3031 + "startNo": 1,
  3032 + "count":10
  3033 + }, {
  3034 + "subject":2, //科目2
  3035 + //题号2-2和2-3共两题 多选题,5个选项
  3036 + "symbol": "2-",
  3037 + "quesType": 2,
  3038 + "option": 5,
  3039 + "startNo": 2,
  3040 + "count":2
  3041 + }, {
  3042 + "subject":3, //科目3
  3043 + //题号3-1和3-2共两道数字题
  3044 + "symbol": "3-",
  3045 + "quesType": 3,
  3046 + "startNo": 1,
  3047 + "count":2
  3048 + }, {
  3049 + "subject":1, //科目1
  3050 + //题号4和5 ,判断题
  3051 + "symbol": "",
  3052 + "quesType": 4,
  3053 + "startNo": 4,
  3054 + "count":2
  3055 + }],
  3056 + "simParams":{
  3057 + "answer":["A","ABCD","10","1"]
  3058 + }
  3059 + }
  3060 +}
  3061 +
  3062 +//显示Q开头
  3063 +{
  3064 + "fun":"startKpMultiExam",
  3065 + "dataTag":"1",
  3066 + "data":{
  3067 + "mode": 1,
  3068 + "examNo": 1,
  3069 + "questions": [{
  3070 + "subject":1,
  3071 + //Q1-Q20,单选题
  3072 + "symbol": "",
  3073 + "quesType": 1,
  3074 + "startNo": 1,
  3075 + "count":20
  3076 + }],
  3077 + "simParams":{
  3078 + "answer":["A","","",""]
  3079 + }
  3080 + }
  3081 +}
  3082 +
  3083 +//显示题开头
  3084 +{
  3085 + "fun":"startKpMultiExam",
  3086 + "dataTag":"1",
  3087 + "data":{
  3088 + "mode": 2,
  3089 + "examNo": 1,
  3090 + "questions": [{
  3091 + "subject":1,
  3092 + //题1-题20,单选题
  3093 + "symbol": "",
  3094 + "quesType": 1,
  3095 + "startNo": 1,
  3096 + "count":20
  3097 + }],
  3098 + "simParams":{
  3099 + "answer":["A","","",""]
  3100 + }
  3101 + }
  3102 +}
  3103 +```
  3104 +
  3105 +##### stopKpMultiExam
  3106 +- **主题**:/client/\${baseSN}/send
  3107 +- **功能描述**:停止多科测验
  3108 +- **参数说明**
  3109 +
  3110 +|参数名|类型|限制|是否必填|说明|
  3111 +|---|---|---|---|---|
  3112 +|fun|string|-|是|指令名称|
  3113 +|dataTag|string|-|否|数据包标识,可为空字符串|
  3114 +
  3115 +- **示例代码**
  3116 +```json
  3117 +{
  3118 + "fun":"stopKpMultiExam",
  3119 + "dataTag":"1"
  3120 +}
  3121 +```
  3122 +
  3123 +#### 事件
  3124 +##### [sEvtStateCode](#sevtstatecode)
  3125 +发送指令后返回接收状态
  3126 +
  3127 +##### [fEvtKpExam](#fevtkpexam)
  3128 +返回测验中键盘提交答题数据
  3129 +
  3130 +##### [fEvtFinalSubmit](#fevtfinalsubmit)
  3131 +返回键盘手动交卷标识
2988 \ No newline at end of file 3132 \ No newline at end of file
通讯协议-B200W-MQTT协议[外].md
@@ -59,6 +59,8 @@ @@ -59,6 +59,8 @@
59 } 59 }
60 ``` 60 ```
61 61
  62 +<font color="red">注意:基站接收指令数据单次不超过2K长度,在指定键盘发送指令时,如果指令长度超出限制,建议将指令进行拆分,分次发送,如果是所有键盘执行的指令,可将keySns设为空数组不使用指定键盘的模式</font>
  63 +
62 |参数 |说明 |约束| 64 |参数 |说明 |约束|
63 |---|---|---| 65 |---|---|---|
64 |fun| 指令或事件名称|| 66 |fun| 指令或事件名称||
@@ -88,11 +90,17 @@ @@ -88,11 +90,17 @@
88 ||设置基站登录名称|[setBsSSID](#setbsssid)|[fEvtBsSSID](#fevtbsssid)|| 90 ||设置基站登录名称|[setBsSSID](#setbsssid)|[fEvtBsSSID](#fevtbsssid)||
89 |键盘统一设置 - 键盘语言|获取键盘语言|[getBsKpLanguage](#getbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)| 91 |键盘统一设置 - 键盘语言|获取键盘语言|[getBsKpLanguage](#getbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)|
90 ||设置键盘语言|[setBsKpLanguage](#setbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)|| 92 ||设置键盘语言|[setBsKpLanguage](#setbskplanguage)|[fEvtBsKpLanguage](#fevtbskplanguage)||
  93 +|配对模式 - 快速配对|启动基站快速配对|[startBsFastPair](#startbsfastpair)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)|
  94 +||停止基站快速配对|[stopBsFastPair](#stopbsfastpair)|[sEvtStateCode](#sevtstatecode)|
  95 +|白名单模式 - 白名单管理|获取白名单|[getBsWhitelist](#getbswhitelist)|[fEvtBsWhitelist](#fevtbswhitelist)|
  96 +||设置白名单|[setBsWhitelist](#setbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtSetBsWhitelist](#fevtsetbswhitelist)|
  97 +||清空白名单|[clearBsWhitelist](#clearbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsWhitelist](#fevtbswhitelist)|
  98 +||增加白名单|[addBsWhitelist](#addbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtAddBsWhitelist](#fevtaddbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)|
  99 +||删除白名单|[delBsWhitelist](#delbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtDelBsWhitelist](#fevtdelbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)|
91 |网络设置 - TCP/IP参数|获取TCP/IP参数|[getBsTcpipParams](#getbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)| 100 |网络设置 - TCP/IP参数|获取TCP/IP参数|[getBsTcpipParams](#getbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)|
92 ||设置TCP/IP参数|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)|| 101 ||设置TCP/IP参数|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)||
93 |网络设置 - MQTT参数|获取MQTT参数|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)| 102 |网络设置 - MQTT参数|获取MQTT参数|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)|
94 ||设置MQTT参数|[setBsMqttParams](#setbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)|| 103 ||设置MQTT参数|[setBsMqttParams](#setbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)||
95 -|基站维护|获取基站日志信息|[getBsLogInfo](#getbsloginfo)|[sEvtStateCode](#sevtstatecode)|  
96 ### 键盘管理 104 ### 键盘管理
97 |功能归类|功能|API指令|指令事件| 105 |功能归类|功能|API指令|指令事件|
98 |---|---|---|---| 106 |---|---|---|---|
@@ -108,6 +116,8 @@ @@ -108,6 +116,8 @@
108 ### 签到 116 ### 签到
109 |功能归类|功能|API指令|指令事件| 117 |功能归类|功能|API指令|指令事件|
110 |---|---|---|---| 118 |---|---|---|---|
  119 +|同步签到|启动同步签到|[startKpSignIn](#startkpsignin)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpSignIn](#fevtkpsignin)|
  120 +||停止同步签到|[stopKpSignIn](#stopkpsignin)|[sEvtStateCode](#sevtstatecode)|
111 |随时签到|启动随时签到|[rtStartKpSignIn](#rtstartkpsignin)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpSignIn](#fevtkpsignin)| 121 |随时签到|启动随时签到|[rtStartKpSignIn](#rtstartkpsignin)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpSignIn](#fevtkpsignin)|
112 ||停止随时签到|[rtStopKpSignIn](#rtstopkpsignin)|[sEvtStateCode](#sevtstatecode)| 122 ||停止随时签到|[rtStopKpSignIn](#rtstopkpsignin)|[sEvtStateCode](#sevtstatecode)|
113 ||实时PIN签到授权|[rtSetKpLoginAllowed](#rtsetkploginallowed)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpLoginAllowed](#fevtkploginallowed)| 123 ||实时PIN签到授权|[rtSetKpLoginAllowed](#rtsetkploginallowed)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpLoginAllowed](#fevtkploginallowed)|
@@ -773,6 +783,262 @@ @@ -773,6 +783,262 @@
773 } 783 }
774 } 784 }
775 ``` 785 ```
  786 +### 配对模式
  787 +#### 方法
  788 +##### startBsFastPair
  789 +- **主题**:/client/\${baseSN}/send
  790 +- **功能描述**:启动快速配对,键盘配对成功返回键盘信息 [sEvtBsKpOnlineMsg](#sevtbskponlinemsg)
  791 +- **参数说明**
  792 +
  793 +|参数名|类型|限制|是否必填|说明|
  794 +|---|---|---|---|---|
  795 +|fun|string|-|是|指令名称|
  796 +|dataTag|string|-|否|数据包标识,可为空字符串|
  797 +
  798 +- **示例代码**
  799 +```json
  800 +{
  801 + "fun":"startBsFastPair",
  802 + "dataTag":"1"
  803 +}
  804 +```
  805 +##### stopBsFastPair
  806 +- **主题**:/client/\${baseSN}/send
  807 +- **功能描述**:停止快速配对
  808 +- **参数说明**
  809 +
  810 +|参数名|类型|限制|是否必填|说明|
  811 +|---|---|---|---|---|
  812 +|fun|string|-|是|指令名称|
  813 +|dataTag|string|-|否|数据包标识,可为空字符串|
  814 +
  815 +- **示例代码**
  816 +```json
  817 +{
  818 + "fun":"stopBsFastPair",
  819 + "dataTag":"1"
  820 +}
  821 +```
  822 +#### 事件
  823 +##### [sEvtStateCode](#sevtstatecode)
  824 +发送指令后返回此事件
  825 +
  826 +##### [sEvtBsKpOnlineMsg](#sevtbskponlinemsg)
  827 +键盘配对成功后在线返回此事件
  828 +
  829 +### 白名单模式
  830 +#### 方法
  831 +##### getBsWhitelist
  832 +- **主题**:/client/\${baseSN}/send
  833 +- **功能描述**:获取基站白名单列表
  834 +- **参数说明**
  835 +
  836 +|参数名|类型|限制|是否必填|说明|
  837 +|---|---|---|---|---|
  838 +|fun|string|-|是|指令名称|
  839 +|dataTag|string|-|否|数据包标识,可为空字符串|
  840 +
  841 +- **示例代码**
  842 +```json
  843 +{
  844 + "fun":"getBsWhitelist",
  845 + "dataTag":"1"
  846 +}
  847 +```
  848 +##### setBsWhitelist
  849 +- **主题**:/client/\${baseSN}/send
  850 +- **功能描述**:设置基站白名单列表,将基站白名单替换为写入的键盘SN列表
  851 +- **参数说明**
  852 +
  853 +|参数名|类型|限制|是否必填|说明|
  854 +|---|---|---|---|---|
  855 +|fun|string|-|是|指令名称|
  856 +|dataTag|string|-|否|数据包标识,可为空字符串|
  857 +|data|object|-|是|传送参数的对象|
  858 +|+keySns|array|-|是|待写入的键盘SN数组,最多不超过200<br>键盘SN为10位数字|
  859 +
  860 +- **示例代码**
  861 +```json
  862 +{
  863 + "fun":"setBsWhitelist",
  864 + "dataTag":"1",
  865 + "data":{
  866 + "keySns":["2024021001","2024021002","2024021003","2024021004"]
  867 + }
  868 +}
  869 +```
  870 +##### clearBsWhitelist
  871 +- **主题**:/client/\${baseSN}/send
  872 +- **功能描述**:清空基站白名单列表
  873 +- **参数说明**
  874 +
  875 +|参数名|类型|限制|是否必填|说明|
  876 +|---|---|---|---|---|
  877 +|fun|string|-|是|指令名称|
  878 +|dataTag|string|-|否|数据包标识,可为空字符串|
  879 +
  880 +- **示例代码**
  881 +```json
  882 +{
  883 + "fun":"clearBsWhitelist",
  884 + "dataTag":"1"
  885 +}
  886 +```
  887 +##### addBsWhitelist
  888 +- **主题**:/client/\${baseSN}/send
  889 +- **功能描述**:添加键盘至基站白名单列表
  890 +- **参数说明**
  891 +
  892 +|参数名|类型|限制|是否必填|说明|
  893 +|---|---|---|---|---|
  894 +|fun|string|-|是|指令名称|
  895 +|dataTag|string|-|否|数据包标识,可为空字符串|
  896 +|data|object|-|是|传送参数的对象|
  897 +|+keySns|array|-|是|待添加的键盘SN列表<br>键盘SN为10位数字|
  898 +
  899 +- **示例代码**
  900 +```json
  901 +{
  902 + "fun":"addBsWhitelist",
  903 + "dataTag":"1",
  904 + "data":{
  905 + "keySns":["2024021001"]
  906 + }
  907 +}
  908 +```
  909 +##### delBsWhitelist
  910 +- **主题**:/client/\${baseSN}/send
  911 +- **功能描述**:从基站白名单列表中删除键盘
  912 +- **参数说明**
  913 +
  914 +|参数名|类型|限制|是否必填|说明|
  915 +|---|---|---|---|---|
  916 +|fun|string|-|是|指令名称|
  917 +|dataTag|string|-|否|数据包标识,可为空字符串|
  918 +|data|object|-|是|传送参数的对象|
  919 +|+keySns|array|-|是|待删除的键盘SN列表<br>键盘SN为10位数字|
  920 +
  921 +- **示例代码**
  922 +```json
  923 +{
  924 + "fun":"delBsWhitelist",
  925 + "dataTag":"1",
  926 + "data":{
  927 + "keySns":["2024021001"]
  928 + }
  929 +}
  930 +```
  931 +#### 事件
  932 +##### [sEvtStateCode](#sevtstatecode)
  933 +发送指令后返回此事件
  934 +
  935 +##### fEvtBsWhitelist
  936 +- **主题**:/basestation/\${baseSN}/receive
  937 +- **功能描述**:返回基站白名单列表
  938 +- **参数说明**
  939 +
  940 +|参数名|类型|限制|非空|说明|
  941 +|---|---|---|---|---|
  942 +|fun|string|-|是|指令名称|
  943 +|dataTag|string|-|否|数据包标识,可为空字符串|
  944 +|data|object|-|是|传送参数的对象|
  945 +|+keySns|array||是|基站当前的白名单列表|
  946 +
  947 +- **示例代码**
  948 +```Json
  949 +{
  950 + "fun":"fEvtBsWhitelist",
  951 + "dataTag":"1",
  952 + "data":{
  953 + "keySns":["2024021001","2024021002","2024021003","2024021004"]
  954 + }
  955 +}
  956 +```
  957 +
  958 +##### fEvtSetBsWhitelist
  959 +- **主题**:/basestation/\${baseSN}/receive
  960 +- **功能描述**:返回设置白名单状态
  961 +- **参数说明**
  962 +
  963 +|参数名|类型|限制|非空|说明|
  964 +|---|---|---|---|---|
  965 +|fun|string|-|是|指令名称|
  966 +|dataTag|string|-|否|数据包标识,可为空字符串|
  967 +|data|array|-|是|传送参数的对象数组|
  968 +|++keySns|array||是|键盘SN数组|
  969 +|++state|int||是|键盘SN的写入状态 <br>0-写入成功<br> 1-写入失败|
  970 +
  971 +- **示例代码**
  972 +```Json
  973 +{
  974 + "fun":"fEvtSetBsWhitelist",
  975 + "dataTag":"1",
  976 + "data":[{
  977 + "keySns":["2024021001","2024021002"],
  978 + "state":0
  979 + },{
  980 + "keySns":["1211"],
  981 + "state":1
  982 + }]
  983 +}
  984 +```
  985 +
  986 +##### fEvtAddBsWhitelist
  987 +- **主题**:/basestation/\${baseSN}/receive
  988 +- **功能描述**:返回增加键盘状态
  989 +- **参数说明**
  990 +
  991 +|参数名|类型|限制|非空|说明|
  992 +|---|---|---|---|---|
  993 +|fun|string|-|是|指令名称|
  994 +|dataTag|string|-|否|数据包标识,可为空字符串|
  995 +|data|array|-|是|传送参数的对象数组|
  996 +|++keySns|array||是|键盘SN数组|
  997 +|++state|int||是|键盘的增加状态 <br>0-增加成功<br> 1-增加失败|
  998 +
  999 +- **示例代码**
  1000 +```Json
  1001 +{
  1002 + "fun":"fEvtAddBsWhitelist",
  1003 + "dataTag":"1",
  1004 + "data":[{
  1005 + "keySns":["2024021001","2024021002"],
  1006 + "state":0
  1007 + },{
  1008 + "keySns":["1211"],
  1009 + "state":1
  1010 + }]
  1011 +}
  1012 +```
  1013 +
  1014 +##### fEvtDelBsWhitelist
  1015 +- **主题**:/basestation/\${baseSN}/receive
  1016 +- **功能描述**:返回删除键盘状态
  1017 +- **参数说明**
  1018 +
  1019 +|参数名|类型|限制|非空|说明|
  1020 +|---|---|---|---|---|
  1021 +|fun|string|-|是|指令名称|
  1022 +|dataTag|string|-|否|数据包标识,可为空字符串|
  1023 +|data|array|-|是|传送参数的对象数组|
  1024 +|++keySns|array||是|键盘SN数组|
  1025 +|++state|int||是|键盘的删除状态 <br>0-删除成功<br> 1-删除失败|
  1026 +
  1027 +- **示例代码**
  1028 +```Json
  1029 +{
  1030 + "fun":"fEvtDelBsWhitelist",
  1031 + "dataTag":"1",
  1032 + "data":[{
  1033 + "keySns":["2024021002"],
  1034 + "state":0
  1035 + },{
  1036 + "keySns":["2024021001"],
  1037 + "state":1
  1038 + }]
  1039 +}
  1040 +```
  1041 +
776 ### 网络参数设置 1042 ### 网络参数设置
777 #### 方法 1043 #### 方法
778 ##### getBsTcpipParams 1044 ##### getBsTcpipParams
@@ -928,29 +1194,6 @@ @@ -928,29 +1194,6 @@
928 } 1194 }
929 } 1195 }
930 ``` 1196 ```
931 -### 基站维护  
932 -#### 方法  
933 -##### getBsLogInfo  
934 -- **主题**:/client/\${baseSN}/send  
935 -- **功能描述**:获取基站日志,用于出现故障需要排查问题时获取基站内部日志记录  
936 -- **参数说明**  
937 -  
938 -|参数名|类型|限制|是否必填|说明|  
939 -|---|---|---|---|---|  
940 -|fun|string|-|是|指令名称|  
941 -|dataTag|string|-|否|数据包标识,可为空字符串|  
942 -  
943 -- **示例代码**  
944 -```Json  
945 -{  
946 - "fun":"getBsLogInfo",  
947 - "dataTag":"1"  
948 -}  
949 -```  
950 -  
951 -#### 事件  
952 -##### [sEvtStateCode](#sevtstatecode)  
953 -返回指令的接收状态  
954 1197
955 ## 键盘管理 1198 ## 键盘管理
956 ### 交互设置 1199 ### 交互设置
@@ -973,7 +1216,7 @@ @@ -973,7 +1216,7 @@
973 ```json 1216 ```json
974 //分别提示 1217 //分别提示
975 { 1218 {
976 - "fun": "rtSetKpUserPrompt", 1219 + "fun":"rtSetKpUserPrompt",
977 "dataTag":"1", 1220 "dataTag":"1",
978 "data": [ 1221 "data": [
979 { 1222 {
@@ -988,7 +1231,7 @@ @@ -988,7 +1231,7 @@
988 } 1231 }
989 //统一提示 1232 //统一提示
990 { 1233 {
991 - "fun": "rtSetKpUserPrompt", 1234 + "fun":"rtSetKpUserPrompt",
992 "dataTag":"1", 1235 "dataTag":"1",
993 "data": [ 1236 "data": [
994 { 1237 {
@@ -1019,7 +1262,7 @@ @@ -1019,7 +1262,7 @@
1019 1262
1020 ```json 1263 ```json
1021 { 1264 {
1022 - "fun": "fEvtSetKpUserPrompt", 1265 + "fun":"fEvtSetKpUserPrompt",
1023 "dataTag":"1", 1266 "dataTag":"1",
1024 "data": [ 1267 "data": [
1025 { 1268 {
@@ -1053,7 +1296,7 @@ @@ -1053,7 +1296,7 @@
1053 1296
1054 ```json 1297 ```json
1055 { 1298 {
1056 - "fun": "startGetKpOnline", 1299 + "fun":"startGetKpOnline",
1057 "dataTag":"1" 1300 "dataTag":"1"
1058 } 1301 }
1059 ``` 1302 ```
@@ -1072,7 +1315,7 @@ @@ -1072,7 +1315,7 @@
1072 1315
1073 ```json 1316 ```json
1074 { 1317 {
1075 - "fun": "stopGetKpOnline", 1318 + "fun":"stopGetKpOnline",
1076 "dataTag":"1" 1319 "dataTag":"1"
1077 } 1320 }
1078 ``` 1321 ```
@@ -1157,7 +1400,7 @@ @@ -1157,7 +1400,7 @@
1157 1400
1158 ```json 1401 ```json
1159 { 1402 {
1160 - "fun": "rtSetKpBindingInfo", 1403 + "fun":"rtSetKpBindingInfo",
1161 "dataTag":"1", 1404 "dataTag":"1",
1162 "data": [ 1405 "data": [
1163 { 1406 {
@@ -1188,7 +1431,7 @@ @@ -1188,7 +1431,7 @@
1188 1431
1189 ```json 1432 ```json
1190 { 1433 {
1191 - "fun": "clearKpBindingInfo", 1434 + "fun":"clearKpBindingInfo",
1192 "dataTag":"1", 1435 "dataTag":"1",
1193 "data": { 1436 "data": {
1194 "keySns":["1479824643","1479824644","1479824645"] 1437 "keySns":["1479824643","1479824644","1479824645"]
@@ -1216,7 +1459,7 @@ @@ -1216,7 +1459,7 @@
1216 1459
1217 ```json 1460 ```json
1218 { 1461 {
1219 - "fun": "fEvtKpBindingInfo", 1462 + "fun":"fEvtKpBindingInfo",
1220 "dataTag":"1", 1463 "dataTag":"1",
1221 "data": [ 1464 "data": [
1222 { 1465 {
@@ -1246,7 +1489,7 @@ @@ -1246,7 +1489,7 @@
1246 1489
1247 ```json 1490 ```json
1248 { 1491 {
1249 - "fun": "fEvtClearKpBindingInfo", 1492 + "fun":"fEvtClearKpBindingInfo",
1250 "dataTag":"1", 1493 "dataTag":"1",
1251 "data": { 1494 "data": {
1252 "state": "0" 1495 "state": "0"
@@ -1254,6 +1497,75 @@ @@ -1254,6 +1497,75 @@
1254 } 1497 }
1255 ``` 1498 ```
1256 ## 签到 1499 ## 签到
  1500 +### 同步签到
  1501 +#### 方法
  1502 +##### startKpSignIn
  1503 +- **主题**:/client/\${baseSN}/send
  1504 +- **功能描述**:启动同步签到
  1505 +- **参数说明**
  1506 +
  1507 +|参数名|类型|限制|是否必填|说明|
  1508 +|---|---|---|---|---|
  1509 +|fun|string|-|是|指令名称|
  1510 +|dataTag|string|-|否|数据包标识,可为空字符串|
  1511 +|data|object|-|是|传递参数的对象|
  1512 +|+mode|int|-|是|签到模式<br>1-按键签到,可指定按键<br>2-PIN码签到,可指定PIN码长度|
  1513 +|+allowModify |int|-|是 | 修改模式 <br> 0-不可修改 <br>1-可以修改(默认值)|
  1514 +|+pinLen |int|-|是| 可输入pin码的最大长度 1≤N≤14 |
  1515 +|+keyValue |int|-|是 | 指定按键键值 <br> 0: 未指定(OK键签到) <br>1-9: 按键1-9 <br> 10: 按键0 <br> 11: 上键 <br> 12: 下键 <br> 13: OK键 <br> 14: ESC键 <br> 15: Menu键 |
  1516 +|+tipTitle |string|-|否| 提示标题,长度最多不超过16个字节|
  1517 +
  1518 +- **示例代码**
  1519 +```Json
  1520 +//按键签到
  1521 +{
  1522 + "fun":"startKpSignIn",
  1523 + "dataTag":"1",
  1524 + "data":{
  1525 + "mode":1,
  1526 + "allowModify":1,
  1527 + "keyValue":5,
  1528 + "tip":"请按5键签到"
  1529 + }
  1530 +}
  1531 +
  1532 +//pin签到
  1533 +{
  1534 + "fun":"startKpSignIn",
  1535 + "dataTag":"1",
  1536 + "data":{
  1537 + "mode":2,
  1538 + "allowModify":1,
  1539 + "pinLen":6,
  1540 + "tip":"请输入PIN码签到"
  1541 + }
  1542 +}
  1543 +```
  1544 +
  1545 +##### stopKpSignIn
  1546 +- **主题**:/client/\${baseSN}/send
  1547 +- **功能描述**:停止同步签到
  1548 +- **参数说明**
  1549 +
  1550 +|参数名|类型|限制|是否必填|说明|
  1551 +|---|---|---|---|---|
  1552 +|fun|string|-|是|指令名称|
  1553 +|dataTag|string|-|否|数据包标识,可为空字符串|
  1554 +
  1555 +- **示例代码**
  1556 +```Json
  1557 +{
  1558 + "fun":"stopKpSignIn",
  1559 + "dataTag":"1"
  1560 +}
  1561 +```
  1562 +#### 事件
  1563 +##### [sEvtStateCode](#sevtstatecode)
  1564 +发送指令后返回接收状态
  1565 +
  1566 +##### [fEvtKpSignIn](#fevtkpsignin)
  1567 +返回键盘提交的签到数据
  1568 +
1257 ### 随时签到 1569 ### 随时签到
1258 #### 方法 1570 #### 方法
1259 ##### rtStartKpSignIn 1571 ##### rtStartKpSignIn
@@ -1272,7 +1584,7 @@ @@ -1272,7 +1584,7 @@
1272 1584
1273 ```json 1585 ```json
1274 { 1586 {
1275 - "fun": "rtStartKpSignIn", 1587 + "fun":"rtStartKpSignIn",
1276 "dataTag":"1", 1588 "dataTag":"1",
1277 "data":{ 1589 "data":{
1278 "mode":2 1590 "mode":2
@@ -1281,7 +1593,7 @@ @@ -1281,7 +1593,7 @@
1281 ``` 1593 ```
1282 ##### rtStopKpSignIn 1594 ##### rtStopKpSignIn
1283 - **主题**:/client/\${baseSN}/send 1595 - **主题**:/client/\${baseSN}/send
1284 -- **功能描述**:停止签到绑定 1596 +- **功能描述**:停止随时签到绑定
1285 - **参数说明** 1597 - **参数说明**
1286 1598
1287 |参数名|类型|限制|是否必填|说明| 1599 |参数名|类型|限制|是否必填|说明|
@@ -1293,7 +1605,7 @@ @@ -1293,7 +1605,7 @@
1293 1605
1294 ```json 1606 ```json
1295 { 1607 {
1296 - "fun": "rtStopKpSignIn", 1608 + "fun":"rtStopKpSignIn",
1297 "dataTag":"1" 1609 "dataTag":"1"
1298 } 1610 }
1299 ``` 1611 ```
@@ -1314,7 +1626,7 @@ @@ -1314,7 +1626,7 @@
1314 1626
1315 ```json 1627 ```json
1316 { 1628 {
1317 - "fun": "rtSetKpLoginAllowed", 1629 + "fun":"rtSetKpLoginAllowed",
1318 "dataTag":"1", 1630 "dataTag":"1",
1319 "data":{ 1631 "data":{
1320 "keySn":"1479824643", 1632 "keySn":"1479824643",
@@ -1344,7 +1656,7 @@ @@ -1344,7 +1656,7 @@
1344 1656
1345 ```json 1657 ```json
1346 { 1658 {
1347 - "fun": "fEvtKpSignIn", 1659 + "fun":"fEvtKpSignIn",
1348 "dataTag":"1", 1660 "dataTag":"1",
1349 "data": [{ 1661 "data": [{
1350 "keySn": "1234567890", 1662 "keySn": "1234567890",
@@ -1376,7 +1688,7 @@ @@ -1376,7 +1688,7 @@
1376 1688
1377 ```json 1689 ```json
1378 { 1690 {
1379 - "fun": "fEvtKpLoginAllowed", 1691 + "fun":"fEvtKpLoginAllowed",
1380 "dataTag":"1", 1692 "dataTag":"1",
1381 "data": { 1693 "data": {
1382 "keySn":"1479824643", 1694 "keySn":"1479824643",
@@ -1406,7 +1718,7 @@ @@ -1406,7 +1718,7 @@
1406 1718
1407 ```json 1719 ```json
1408 { 1720 {
1409 - "fun": "startQATrueFalse", 1721 + "fun":"startQATrueFalse",
1410 "dataTag":"1", 1722 "dataTag":"1",
1411 "data":{ 1723 "data":{
1412 "keySns":[], 1724 "keySns":[],
@@ -1430,7 +1742,7 @@ @@ -1430,7 +1742,7 @@
1430 1742
1431 ```json 1743 ```json
1432 { 1744 {
1433 - "fun": "stopQATrueFalse", 1745 + "fun":"stopQATrueFalse",
1434 "dataTag":"1" 1746 "dataTag":"1"
1435 } 1747 }
1436 ``` 1748 ```
@@ -1456,7 +1768,7 @@ @@ -1456,7 +1768,7 @@
1456 1768
1457 ```json 1769 ```json
1458 { 1770 {
1459 - "fun": "fEvtQATrueFalse", 1771 + "fun":"fEvtQATrueFalse",
1460 "dataTag":"1", 1772 "dataTag":"1",
1461 "data": [{ 1773 "data": [{
1462 "keySn": "1234567890", 1774 "keySn": "1234567890",
@@ -1490,7 +1802,7 @@ @@ -1490,7 +1802,7 @@
1490 1802
1491 ```json 1803 ```json
1492 { 1804 {
1493 - "fun": "startQAChoice", 1805 + "fun":"startQAChoice",
1494 "dataTag":"1", 1806 "dataTag":"1",
1495 "data":{ 1807 "data":{
1496 "keySns":[], 1808 "keySns":[],
@@ -1517,7 +1829,7 @@ @@ -1517,7 +1829,7 @@
1517 1829
1518 ```json 1830 ```json
1519 { 1831 {
1520 - "fun": "stopQAChoice", 1832 + "fun":"stopQAChoice",
1521 "dataTag":"1" 1833 "dataTag":"1"
1522 } 1834 }
1523 ``` 1835 ```
@@ -1543,7 +1855,7 @@ @@ -1543,7 +1855,7 @@
1543 1855
1544 ```json 1856 ```json
1545 { 1857 {
1546 - "fun": "fEvtQAChoice", 1858 + "fun":"fEvtQAChoice",
1547 "dataTag":"1", 1859 "dataTag":"1",
1548 "data": [{ 1860 "data": [{
1549 "keySn": "1234567890", 1861 "keySn": "1234567890",
@@ -1576,7 +1888,7 @@ @@ -1576,7 +1888,7 @@
1576 1888
1577 ```json 1889 ```json
1578 { 1890 {
1579 - "fun": "startQANum", 1891 + "fun":"startQANum",
1580 "dataTag":"1", 1892 "dataTag":"1",
1581 "data":{ 1893 "data":{
1582 "keySns":[], 1894 "keySns":[],
@@ -1603,7 +1915,7 @@ @@ -1603,7 +1915,7 @@
1603 1915
1604 ```json 1916 ```json
1605 { 1917 {
1606 - "fun": "stopQANum", 1918 + "fun":"stopQANum",
1607 "dataTag":"1" 1919 "dataTag":"1"
1608 } 1920 }
1609 ``` 1921 ```
@@ -1629,7 +1941,7 @@ @@ -1629,7 +1941,7 @@
1629 1941
1630 ```json 1942 ```json
1631 { 1943 {
1632 - "fun": "fEvtQANum", 1944 + "fun":"fEvtQANum",
1633 "dataTag":"1", 1945 "dataTag":"1",
1634 "data":[{ 1946 "data":[{
1635 "keySn": "1234567890", 1947 "keySn": "1234567890",
@@ -1659,7 +1971,7 @@ @@ -1659,7 +1971,7 @@
1659 1971
1660 ```json 1972 ```json
1661 { 1973 {
1662 - "fun": "startQAQuicker", 1974 + "fun":"startQAQuicker",
1663 "dataTag":"1", 1975 "dataTag":"1",
1664 "data":{ 1976 "data":{
1665 "keySns":[], 1977 "keySns":[],
@@ -1683,7 +1995,7 @@ @@ -1683,7 +1995,7 @@
1683 1995
1684 ```json 1996 ```json
1685 { 1997 {
1686 - "fun": "stopQAQuicker", 1998 + "fun":"stopQAQuicker",
1687 "dataTag":"1" 1999 "dataTag":"1"
1688 } 2000 }
1689 ``` 2001 ```
@@ -1709,7 +2021,7 @@ @@ -1709,7 +2021,7 @@
1709 2021
1710 ```json 2022 ```json
1711 { 2023 {
1712 - "fun": "fEvtQAQuicker", 2024 + "fun":"fEvtQAQuicker",
1713 "dataTag":"1", 2025 "dataTag":"1",
1714 "data": [{ 2026 "data": [{
1715 "keySn": "1234567890", 2027 "keySn": "1234567890",
@@ -1745,7 +2057,7 @@ @@ -1745,7 +2057,7 @@
1745 ```json 2057 ```json
1746 //自定义题号 2058 //自定义题号
1747 { 2059 {
1748 - "fun": "startKpExam", 2060 + "fun":"startKpExam",
1749 "dataTag":"1", 2061 "dataTag":"1",
1750 "data":{ 2062 "data":{
1751 "mode": 0, 2063 "mode": 0,
@@ -1781,7 +2093,7 @@ @@ -1781,7 +2093,7 @@
1781 2093
1782 //显示Q开头 2094 //显示Q开头
1783 { 2095 {
1784 - "fun": "startKpExam", 2096 + "fun":"startKpExam",
1785 "dataTag":"1", 2097 "dataTag":"1",
1786 "data":{ 2098 "data":{
1787 "mode": 1, 2099 "mode": 1,
@@ -1798,7 +2110,7 @@ @@ -1798,7 +2110,7 @@
1798 2110
1799 //显示题开头 2111 //显示题开头
1800 { 2112 {
1801 - "fun": "startKpExam", 2113 + "fun":"startKpExam",
1802 "dataTag":"1", 2114 "dataTag":"1",
1803 "data":{ 2115 "data":{
1804 "mode": 2, 2116 "mode": 2,
@@ -1827,7 +2139,7 @@ @@ -1827,7 +2139,7 @@
1827 2139
1828 ```json 2140 ```json
1829 { 2141 {
1830 - "fun": "stopKpExam", 2142 + "fun":"stopKpExam",
1831 "dataTag":"1" 2143 "dataTag":"1"
1832 } 2144 }
1833 ``` 2145 ```
@@ -1847,7 +2159,7 @@ @@ -1847,7 +2159,7 @@
1847 2159
1848 ```json 2160 ```json
1849 { 2161 {
1850 - "fun": "rtKpAllowEdited", 2162 + "fun":"rtKpAllowEdited",
1851 "dataTag":"1", 2163 "dataTag":"1",
1852 "data":{ 2164 "data":{
1853 "keySns":["1234567890","1234567891"] 2165 "keySns":["1234567890","1234567891"]
@@ -1876,7 +2188,7 @@ @@ -1876,7 +2188,7 @@
1876 2188
1877 ```json 2189 ```json
1878 { 2190 {
1879 - "fun": "fEvtKpExam", 2191 + "fun":"fEvtKpExam",
1880 "dataTag":"1", 2192 "dataTag":"1",
1881 "data": [{ 2193 "data": [{
1882 "keySn": "1234567890", 2194 "keySn": "1234567890",
@@ -1909,7 +2221,7 @@ @@ -1909,7 +2221,7 @@
1909 2221
1910 ```json 2222 ```json
1911 { 2223 {
1912 - "fun": "fEvtFinalSubmit", 2224 + "fun":"fEvtFinalSubmit",
1913 "dataTag":"1", 2225 "dataTag":"1",
1914 "data": [{ 2226 "data": [{
1915 "keySn": "1234567890", 2227 "keySn": "1234567890",
通讯协议-平台化-应用部分.md
@@ -159,7 +159,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -159,7 +159,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
159 |笆璅∪ - 敹恍笆|蝡翰笆|[startBsFastPair](#startbsfastpair)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)| 159 |笆璅∪ - 敹恍笆|蝡翰笆|[startBsFastPair](#startbsfastpair)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsKpOnlineMsg](#sevtbskponlinemsg)|
160 ||迫蝡翰笆|[stopBsFastPair](#stopbsfastpair)|[sEvtStateCode](#sevtstatecode)| 160 ||迫蝡翰笆|[stopBsFastPair](#stopbsfastpair)|[sEvtStateCode](#sevtstatecode)|
161 |芋撘 - 恣[getBsWhitelist](#getbswhitelist)|[fEvtBsWhitelist](#fevtbswhitelist)| 161 |芋撘 - 恣[getBsWhitelist](#getbswhitelist)|[fEvtBsWhitelist](#fevtbswhitelist)|
162 -||霈曄蔭[setBsWhitelist](#setbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsWhitelist](#fevtbswhitelist)| 162 +||霈曄蔭[setBsWhitelist](#setbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtSetBsWhitelist](#fevtsetbswhitelist)|
163 ||皜征[clearBsWhitelist](#clearbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsWhitelist](#fevtbswhitelist)| 163 ||皜征[clearBsWhitelist](#clearbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsWhitelist](#fevtbswhitelist)|
164 ||憓[addBsWhitelist](#addbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtAddBsWhitelist](#fevtaddbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)| 164 ||憓[addBsWhitelist](#addbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtAddBsWhitelist](#fevtaddbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)|
165 ||[delBsWhitelist](#delbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtDelBsWhitelist](#fevtdelbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)| 165 ||[delBsWhitelist](#delbswhitelist)|[sEvtStateCode](#sevtstatecode)<br>[fEvtDelBsWhitelist](#fevtdelbswhitelist)<br>[fEvtBsWhitelist](#fevtbswhitelist)|
@@ -173,6 +173,9 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -173,6 +173,9 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
173 ||霈曄蔭TCP/IP|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)| 173 ||霈曄蔭TCP/IP|[setBsTcpipParams](#setbstcpipparams)|[fEvtBsTcpipParams](#fevtbstcpipparams)|
174 |蝵挽蝵 - MQTT|QTT|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)| 174 |蝵挽蝵 - MQTT|QTT|[getBsMqttParams](#getbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)|
175 ||霈曄蔭MQTT|[setBsMqttParams](#setbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)| 175 ||霈曄蔭MQTT|[setBsMqttParams](#setbsmqttparams)|[fEvtBsMqttParams](#fevtbsmqttparams)|
  176 +|蝡輕|<font color="red">蝡敹縑()</font>|[getBsLogInfo](#getbsloginfo)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsLogInfo](#fevtbsloginfo)|
  177 +||蝡蔓憭[resetBsSystem](#resetbssystem)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsConnectState](#sevtbsconnectstate)|
  178 +||蝡憭[resetBsPower](#resetbspower)|[sEvtStateCode](#sevtstatecode)<br>[sEvtBsConnectState](#sevtbsconnectstate)|
176 |蝡漣|<font color="red">撘蝡漣()|[startBsUpdate](#startbsupdate)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsUpateState](#fevtbsupatestate)<br>[fEvtBsUpdateProgress](#fevtbsupdateprogress)| 179 |蝡漣|<font color="red">撘蝡漣()|[startBsUpdate](#startbsupdate)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsUpateState](#fevtbsupatestate)<br>[fEvtBsUpdateProgress](#fevtbsupdateprogress)|
177 ||<font color="red">銝蝸摮()|[downloadFontLib](#downloadfontlib)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsFontLibState](#fevtbsfontlibstate)<br>[fEvtBsFontLibProgress](#fevtbsfontlibprogress)| 180 ||<font color="red">銝蝸摮()|[downloadFontLib](#downloadfontlib)|[sEvtStateCode](#sevtstatecode)<br>[fEvtBsFontLibState](#fevtbsfontlibstate)<br>[fEvtBsFontLibProgress](#fevtbsfontlibprogress)|
178 ### 恣 181 ### 恣
@@ -243,6 +246,8 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -243,6 +246,8 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
243 ||雿|[rtGetKpExamData](#rtgetkpexamdata)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)| 246 ||雿|[rtGetKpExamData](#rtgetkpexamdata)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)|
244 ||蝏[rtSetKpExamResult](#rtgetkpexamdata)|[sEvtStateCode](#sevtstatecode)<br>[fEvtSetKpExamResult](#fevtsetkpexamresult)| 247 ||蝏[rtSetKpExamResult](#rtgetkpexamdata)|[sEvtStateCode](#sevtstatecode)<br>[fEvtSetKpExamResult](#fevtsetkpexamresult)|
245 ||捂漱耨|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| 248 ||捂漱耨|[rtAllowEdited](#rtkpallowedited)|[sEvtStateCode](#sevtstatecode)<br>[fEvtFinalSubmit](#fevtfinalsubmit)|
  249 +|憭憭[startKpMultiExam](#startkpmultiexam)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpExam](#fevtkpexam)<br>[fEvtFinalSubmit](#fevtfinalsubmit)|
  250 +||迫[stopKpMultiExam](#stopkpmultiexam)|[sEvtStateCode](#sevtstatecode)|
246 |銝餃銝餃[startKpScoreInput](#startkpscoreinput)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpScore](#fevtkpscore)<br>[fEvtFinalSubmit](#fevtfinalsubmit)| 251 |銝餃銝餃[startKpScoreInput](#startkpscoreinput)|[sEvtStateCode](#sevtstatecode)<br>[fEvtKpScore](#fevtkpscore)<br>[fEvtFinalSubmit](#fevtfinalsubmit)|
247 ||迫銝餃[stopKpScoreInput](#stopkpscoreinput)|[sEvtStateCode](#sevtstatecode)| 252 ||迫銝餃[stopKpScoreInput](#stopkpscoreinput)|[sEvtStateCode](#sevtstatecode)|
248 253
@@ -1951,7 +1956,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -1951,7 +1956,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
1951 - **蝷箔誨** 1956 - **蝷箔誨**
1952 ```Json 1957 ```Json
1953 { 1958 {
1954 - "fun": "startBsFastPair", 1959 + "fun":"startBsFastPair",
1955 "dataTag":"1" 1960 "dataTag":"1"
1956 } 1961 }
1957 ``` 1962 ```
@@ -1968,7 +1973,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -1968,7 +1973,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
1968 - **蝷箔誨** 1973 - **蝷箔誨**
1969 ```Json 1974 ```Json
1970 { 1975 {
1971 - "fun": "stopBsFastPair", 1976 + "fun":"stopBsFastPair",
1972 "dataTag":"1" 1977 "dataTag":"1"
1973 } 1978 }
1974 ``` 1979 ```
@@ -1994,7 +1999,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -1994,7 +1999,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
1994 - **蝷箔誨** 1999 - **蝷箔誨**
1995 ```Json 2000 ```Json
1996 { 2001 {
1997 - "fun": "getBsWhitelist", 2002 + "fun":"getBsWhitelist",
1998 "dataTag":"1" 2003 "dataTag":"1"
1999 } 2004 }
2000 ``` 2005 ```
@@ -2013,7 +2018,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2013,7 +2018,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2013 - **蝷箔誨** 2018 - **蝷箔誨**
2014 ```Json 2019 ```Json
2015 { 2020 {
2016 - "fun": "setBsWhitelist", 2021 + "fun":"setBsWhitelist",
2017 "dataTag":"1", 2022 "dataTag":"1",
2018 "data":{ 2023 "data":{
2019 "keySns":["2024021001","2024021002","2024021003","2024021004"] 2024 "keySns":["2024021001","2024021002","2024021003","2024021004"]
@@ -2033,7 +2038,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2033,7 +2038,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2033 - **蝷箔誨** 2038 - **蝷箔誨**
2034 ```Json 2039 ```Json
2035 { 2040 {
2036 - "fun": "clearBsWhitelist", 2041 + "fun":"clearBsWhitelist",
2037 "dataTag":"1" 2042 "dataTag":"1"
2038 } 2043 }
2039 ``` 2044 ```
@@ -2052,7 +2057,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2052,7 +2057,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2052 - **蝷箔誨** 2057 - **蝷箔誨**
2053 ```Json 2058 ```Json
2054 { 2059 {
2055 - "fun": "addBsWhitelist", 2060 + "fun":"addBsWhitelist",
2056 "dataTag":"1", 2061 "dataTag":"1",
2057 "data":{ 2062 "data":{
2058 "keySns":["2024021001"] 2063 "keySns":["2024021001"]
@@ -2074,7 +2079,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2074,7 +2079,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2074 - **蝷箔誨** 2079 - **蝷箔誨**
2075 ```Json 2080 ```Json
2076 { 2081 {
2077 - "fun": "delBsWhitelist", 2082 + "fun":"delBsWhitelist",
2078 "dataTag":"1", 2083 "dataTag":"1",
2079 "data":{ 2084 "data":{
2080 "keySns":["2024021001"] 2085 "keySns":["2024021001"]
@@ -2096,7 +2101,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2096,7 +2101,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2096 - **蝷箔誨** 2101 - **蝷箔誨**
2097 ```Json 2102 ```Json
2098 { 2103 {
2099 - "fun": "lockBsWhitelistKp", 2104 + "fun":"lockBsWhitelistKp",
2100 "dataTag":"1", 2105 "dataTag":"1",
2101 "data":{ 2106 "data":{
2102 "keySns":["2024021001"] 2107 "keySns":["2024021001"]
@@ -2118,7 +2123,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2118,7 +2123,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2118 - **蝷箔誨** 2123 - **蝷箔誨**
2119 ```Json 2124 ```Json
2120 { 2125 {
2121 - "fun": "unlockBsWhitelistKp", 2126 + "fun":"unlockBsWhitelistKp",
2122 "dataTag":"1", 2127 "dataTag":"1",
2123 "data":{ 2128 "data":{
2124 "keySn":["2024021001"] 2129 "keySn":["2024021001"]
@@ -2152,6 +2157,34 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2152,6 +2157,34 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2152 } 2157 }
2153 ``` 2158 ```
2154 2159
  2160 +##### fEvtSetBsWhitelist
  2161 +- **銝駁**嚗/basestation/\${baseSN}/receive
  2162 +- **膩**嚗挽蝵桃
  2163 +- **霂湔**
  2164 +
  2165 +|蝐餃|征|霂湔
  2166 +|---|---|---|---|---|
  2167 +|fun|string|-||誘妍|
  2168 +|dataTag|string|-||,銝箇征摮泵銝琍
  2169 +|data|array|-||隡笆鞊⊥蝏
  2170 +|++keySns|array|||N蝏
  2171 +|++state|int|||N <br>0-<br> 1-憭梯揖|
  2172 +
  2173 +- **蝷箔誨**
  2174 +```Json
  2175 +{
  2176 + "fun":"fEvtSetBsWhitelist",
  2177 + "dataTag":"1",
  2178 + "data":[{
  2179 + "keySns":["2024021001","2024021002"],
  2180 + "state":0
  2181 + },{
  2182 + "keySns":["1211"],
  2183 + "state":1
  2184 + }]
  2185 +}
  2186 +```
  2187 +
2155 ##### fEvtAddBsWhitelist 2188 ##### fEvtAddBsWhitelist
2156 - **銝駁**嚗/basestation/\${baseSN}/receive 2189 - **銝駁**嚗/basestation/\${baseSN}/receive
2157 - **膩**嚗 2190 - **膩**嚗
@@ -2162,7 +2195,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2162,7 +2195,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2162 |fun|string|-||誘妍| 2195 |fun|string|-||誘妍|
2163 |dataTag|string|-||,銝箇征摮泵銝琍 2196 |dataTag|string|-||,銝箇征摮泵銝琍
2164 |data|array|-||隡笆鞊⊥蝏 2197 |data|array|-||隡笆鞊⊥蝏
2165 -|++keySn|string|||N| 2198 +|++keySns|array|||N蝏
2166 |++state|int||| <br>0-憓<br> 1-憓仃韐四 2199 |++state|int||| <br>0-憓<br> 1-憓仃韐四
2167 2200
2168 - **蝷箔誨** 2201 - **蝷箔誨**
@@ -2171,8 +2204,11 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2171,8 +2204,11 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2171 "fun":"fEvtAddBsWhitelist", 2204 "fun":"fEvtAddBsWhitelist",
2172 "dataTag":"1", 2205 "dataTag":"1",
2173 "data":[{ 2206 "data":[{
2174 - "keySn":"2024021001", 2207 + "keySns":["2024021001","2024021002"],
2175 "state":0 2208 "state":0
  2209 + },{
  2210 + "keySns":["1211"],
  2211 + "state":1
2176 }] 2212 }]
2177 } 2213 }
2178 ``` 2214 ```
@@ -2187,7 +2223,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2187,7 +2223,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2187 |fun|string|-||誘妍| 2223 |fun|string|-||誘妍|
2188 |dataTag|string|-||,銝箇征摮泵銝琍 2224 |dataTag|string|-||,銝箇征摮泵銝琍
2189 |data|array|-||隡笆鞊⊥蝏 2225 |data|array|-||隡笆鞊⊥蝏
2190 -|++keySn|string|||N| 2226 +|++keySns|array|||N蝏
2191 |++state|int||| <br>0-<br> 1-憭梯揖| 2227 |++state|int||| <br>0-<br> 1-憭梯揖|
2192 2228
2193 - **蝷箔誨** 2229 - **蝷箔誨**
@@ -2196,8 +2232,11 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2196,8 +2232,11 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2196 "fun":"fEvtDelBsWhitelist", 2232 "fun":"fEvtDelBsWhitelist",
2197 "dataTag":"1", 2233 "dataTag":"1",
2198 "data":[{ 2234 "data":[{
2199 - "keySn":"2024021001", 2235 + "keySns":["2024021002"],
2200 "state":0 2236 "state":0
  2237 + },{
  2238 + "keySns":["2024021001"],
  2239 + "state":1
2201 }] 2240 }]
2202 } 2241 }
2203 ``` 2242 ```
@@ -2241,7 +2280,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2241,7 +2280,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2241 - **蝷箔誨** 2280 - **蝷箔誨**
2242 ```Json 2281 ```Json
2243 { 2282 {
2244 - "fun": "getBsSoftwareKey", 2283 + "fun":"getBsSoftwareKey",
2245 "dataTag":"1" 2284 "dataTag":"1"
2246 } 2285 }
2247 ``` 2286 ```
@@ -2260,7 +2299,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2260,7 +2299,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2260 - **蝷箔誨** 2299 - **蝷箔誨**
2261 ```Json 2300 ```Json
2262 { 2301 {
2263 - "fun": "setBsSoftwareKey", 2302 + "fun":"setBsSoftwareKey",
2264 "dataTag":"1", 2303 "dataTag":"1",
2265 "data":{ 2304 "data":{
2266 "value":"sunvote123456" 2305 "value":"sunvote123456"
@@ -2280,7 +2319,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2280,7 +2319,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2280 - **蝷箔誨** 2319 - **蝷箔誨**
2281 ```Json 2320 ```Json
2282 { 2321 {
2283 - "fun": "getBsAES", 2322 + "fun":"getBsAES",
2284 "dataTag":"1" 2323 "dataTag":"1"
2285 } 2324 }
2286 ``` 2325 ```
@@ -2299,7 +2338,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2299,7 +2338,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2299 - **蝷箔誨** 2338 - **蝷箔誨**
2300 ```Json 2339 ```Json
2301 { 2340 {
2302 - "fun": "setBsAES", 2341 + "fun":"setBsAES",
2303 "dataTag":"1", 2342 "dataTag":"1",
2304 "data":{ 2343 "data":{
2305 "value":"0" 2344 "value":"0"
@@ -2351,6 +2390,96 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2351,6 +2390,96 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2351 } 2390 }
2352 } 2391 }
2353 ``` 2392 ```
  2393 +
  2394 +### 蝡輕
  2395 +#### 瘜
  2396 +##### getBsLogInfo
  2397 +- **銝駁**嚗<sapn class="yellowFill">/manage/\${baseSN}/receive</span>
  2398 +- **膩**嚗蝡敹,鈭閬憸蝡敹扇敶
  2399 +- **霂湔**
  2400 +
  2401 +|蝐餃|敹‵|霂湔
  2402 +|---|---|---|---|---|
  2403 +|fun|string|-||誘妍|
  2404 +|dataTag|string|-||,銝箇征摮泵銝琍
  2405 +
  2406 +- **蝷箔誨**
  2407 +```Json
  2408 +{
  2409 + "fun":"getBsLogInfo",
  2410 + "dataTag":"1"
  2411 +}
  2412 +```
  2413 +
  2414 +##### resetBsSystem
  2415 +- **銝駁**嚗/client/\${baseSN}/send
  2416 +- **膩**嚗蔓憭蝡<sapn class="yellowFill">嚗銝駁嚗憭悅銝</span>嚗
  2417 +- **霂湔**
  2418 +
  2419 +|蝐餃|敹‵|霂湔
  2420 +|---|---|---|---|---|
  2421 +|fun|string|-||誘妍|
  2422 +|dataTag|string|-||,銝箇征摮泵銝琍
  2423 +
  2424 +- **蝷箔誨**
  2425 +```Json
  2426 +{
  2427 + "fun":"resetBsSystem",
  2428 + "dataTag":"1"
  2429 +}
  2430 +```
  2431 +
  2432 +##### resetBsPower
  2433 +- **銝駁**嚗/client/\${baseSN}/send
  2434 +- **膩**嚗憭蝡<sapn class="yellowFill">嚗銝駁嚗憭悅銝哨</span>
  2435 +- **霂湔**
  2436 +
  2437 +|蝐餃|敹‵|霂湔
  2438 +|---|---|---|---|---|
  2439 +|fun|string|-||誘妍|
  2440 +|dataTag|string|-||,銝箇征摮泵銝琍
  2441 +
  2442 +- **蝷箔誨**
  2443 +```Json
  2444 +{
  2445 + "fun":"resetBsPower",
  2446 + "dataTag":"1"
  2447 +}
  2448 +```
  2449 +
  2450 +#### 鈭辣
  2451 +##### [sEvtStateCode](#sevtstatecode)
  2452 +餈誘
  2453 +瘜冽誘隞**銝駁: <sapn class="yellowFill">/manage/\${baseSN}/receive</span>** 餈
  2454 +
  2455 +##### [sEvtBsConnectState](#sevtbsconnectstate)
  2456 +憭蝡蝡餈
  2457 +
  2458 +##### fEvtBsLogInfo
  2459 +- **銝駁**: <sapn class="yellowFill">/manage/\${baseSN}/receive</span>
  2460 +- **膩**嚗蝡敹捆
  2461 +- **霂湔**
  2462 +
  2463 +|蝐餃|征|霂湔
  2464 +|---|---|---|---|---|
  2465 +|fun|string|-||誘妍|
  2466 +|dataTag|string|-||,銝箇征摮泵銝琍
  2467 +|data|object|-||隡笆鞊﹄
  2468 +|+index|int|||嚗1撘憪0隞”敹歇隡
  2469 +|+info|string|||敹捆<br><font color="red">敹靘蝡嚗閬敺雿</font>|
  2470 +
  2471 +- **蝷箔誨**
  2472 +```Json
  2473 +{
  2474 + "fun":"fEvtBsLogInfo",
  2475 + "dataTag":"1",
  2476 + "data":{
  2477 + "index":1,
  2478 + "info":"XXXXXXXXXXXXX"
  2479 + }
  2480 +}
  2481 +```
  2482 +
2354 ### 蝡漣 2483 ### 蝡漣
2355 #### 瘜 2484 #### 瘜
2356 ##### startBsUpdate 2485 ##### startBsUpdate
@@ -2841,7 +2970,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2841,7 +2970,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2841 ```Json 2970 ```Json
2842 //內 2971 //內
2843 { 2972 {
2844 - "fun": "rtSetKpUserPrompt", 2973 + "fun":"rtSetKpUserPrompt",
2845 "dataTag":"1", 2974 "dataTag":"1",
2846 "data": [ 2975 "data": [
2847 { 2976 {
@@ -2856,7 +2985,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2856,7 +2985,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2856 } 2985 }
2857 //蝏內 2986 //蝏內
2858 { 2987 {
2859 - "fun": "rtSetKpUserPrompt", 2988 + "fun":"rtSetKpUserPrompt",
2860 "dataTag":"1", 2989 "dataTag":"1",
2861 "data": [ 2990 "data": [
2862 { 2991 {
@@ -2913,7 +3042,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2913,7 +3042,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2913 - **蝷箔誨** 3042 - **蝷箔誨**
2914 ```Json 3043 ```Json
2915 { 3044 {
2916 - "fun": "fEvtSetKpUserPrompt", 3045 + "fun":"fEvtSetKpUserPrompt",
2917 "dataTag":"1", 3046 "dataTag":"1",
2918 "data": [ 3047 "data": [
2919 { 3048 {
@@ -2946,7 +3075,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2946,7 +3075,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2946 - **蝷箔誨** 3075 - **蝷箔誨**
2947 ```Json 3076 ```Json
2948 { 3077 {
2949 - "fun": "startGetKpOnline", 3078 + "fun":"startGetKpOnline",
2950 "dataTag":"1" 3079 "dataTag":"1"
2951 } 3080 }
2952 ``` 3081 ```
@@ -2964,7 +3093,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -2964,7 +3093,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
2964 - **蝷箔誨** 3093 - **蝷箔誨**
2965 ```Json 3094 ```Json
2966 { 3095 {
2967 - "fun": "stopGetKpOnline", 3096 + "fun":"stopGetKpOnline",
2968 "dataTag":"1" 3097 "dataTag":"1"
2969 } 3098 }
2970 ``` 3099 ```
@@ -3172,7 +3301,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3172,7 +3301,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3172 - **蝷箔誨** 3301 - **蝷箔誨**
3173 ```Json 3302 ```Json
3174 { 3303 {
3175 - "fun": "rtSetKpBindingInfo", 3304 + "fun":"rtSetKpBindingInfo",
3176 "dataTag":"1", 3305 "dataTag":"1",
3177 "data": [ 3306 "data": [
3178 { 3307 {
@@ -3202,7 +3331,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3202,7 +3331,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3202 - **蝷箔誨** 3331 - **蝷箔誨**
3203 ```Json 3332 ```Json
3204 { 3333 {
3205 - "fun": "clearKpBindingInfo", 3334 + "fun":"clearKpBindingInfo",
3206 "dataTag":"1", 3335 "dataTag":"1",
3207 "data": { 3336 "data": {
3208 "keySns":["1479824643","1479824644","1479824645"] 3337 "keySns":["1479824643","1479824644","1479824645"]
@@ -3229,7 +3358,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3229,7 +3358,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3229 - **蝷箔誨** 3358 - **蝷箔誨**
3230 ```Json 3359 ```Json
3231 { 3360 {
3232 - "fun": "fEvtKpBindingInfo", 3361 + "fun":"fEvtKpBindingInfo",
3233 "dataTag":"1", 3362 "dataTag":"1",
3234 "data": [ 3363 "data": [
3235 { 3364 {
@@ -3258,7 +3387,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3258,7 +3387,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3258 - **蝷箔誨** 3387 - **蝷箔誨**
3259 ```Json 3388 ```Json
3260 { 3389 {
3261 - "fun": "fEvtClearKpBindingInfo", 3390 + "fun":"fEvtClearKpBindingInfo",
3262 "dataTag":"1", 3391 "dataTag":"1",
3263 "data": { 3392 "data": {
3264 "state": "0" 3393 "state": "0"
@@ -3278,18 +3407,39 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3278,18 +3407,39 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3278 |fun|string|-||誘妍| 3407 |fun|string|-||誘妍|
3279 |dataTag|string|-||,銝箇征摮泵銝琍 3408 |dataTag|string|-||,銝箇征摮泵銝琍
3280 |data|object|-||隡笆鞊﹄ 3409 |data|object|-||隡笆鞊﹄
3281 -|+mode|int|-||蝑曉璅∪<br>1-蝑曉<br>2-PIN倌<br>3-犒蝑曉| 3410 +|+mode|int|-||蝑曉璅∪<br>1-蝑曉嚗<br>2-PIN倌嚗IN摨<br>3-犒蝑曉(<font color="red"></font>)|
  3411 +|+allowModify |int|-| | 靽格璅∪ <br> 0:銝靽格 <br>1:隞乩耨(暺恕)|
  3412 +|+pinLen |int|-|| 颲pin憭折摨 1N14 |
  3413 +|+keyValue |int|-| | <br> 0: (OK蝑曉) <br>1-9: 1-9 <br> 10:0 <br> 11:銝 <br> 12:銝 <br> 13:OK <br> 14:ESC <br> 15: Menu |
  3414 +|+tipTitle |string|-|| 內,摨行憭16銝芸
3282 3415
3283 - **蝷箔誨** 3416 - **蝷箔誨**
3284 ```Json 3417 ```Json
  3418 +//蝑曉
3285 { 3419 {
3286 - "fun": "startKpSignIn", 3420 + "fun":"startKpSignIn",
3287 "dataTag":"1", 3421 "dataTag":"1",
3288 "data":{ 3422 "data":{
3289 - "mode":2 3423 + "mode":1,
  3424 + "allowModify":1,
  3425 + "keyValue":5,
  3426 + "tip":"霂瑟5蝑曉"
  3427 + }
  3428 +}
  3429 +
  3430 +//pin蝑曉
  3431 +{
  3432 + "fun":"startKpSignIn",
  3433 + "dataTag":"1",
  3434 + "data":{
  3435 + "mode":2,
  3436 + "allowModify":1,
  3437 + "pinLen":6,
  3438 + "tip":"霂瑁PIN倌"
3290 } 3439 }
3291 } 3440 }
3292 ``` 3441 ```
  3442 +
3293 ##### stopKpSignIn 3443 ##### stopKpSignIn
3294 - **銝駁**嚗/client/\${baseSN}/send 3444 - **銝駁**嚗/client/\${baseSN}/send
3295 - **膩**嚗迫郊蝑曉 3445 - **膩**嚗迫郊蝑曉
@@ -3303,7 +3453,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3303,7 +3453,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3303 - **蝷箔誨** 3453 - **蝷箔誨**
3304 ```Json 3454 ```Json
3305 { 3455 {
3306 - "fun": "stopKpSignIn", 3456 + "fun":"stopKpSignIn",
3307 "dataTag":"1" 3457 "dataTag":"1"
3308 } 3458 }
3309 ``` 3459 ```
@@ -3331,7 +3481,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3331,7 +3481,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3331 - **蝷箔誨** 3481 - **蝷箔誨**
3332 ```Json 3482 ```Json
3333 { 3483 {
3334 - "fun": "rtStartKpSignIn", 3484 + "fun":"rtStartKpSignIn",
3335 "dataTag":"1", 3485 "dataTag":"1",
3336 "data":{ 3486 "data":{
3337 "mode":2 3487 "mode":2
@@ -3351,7 +3501,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3351,7 +3501,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3351 - **蝷箔誨** 3501 - **蝷箔誨**
3352 ```Json 3502 ```Json
3353 { 3503 {
3354 - "fun": "rtStopKpSignIn", 3504 + "fun":"rtStopKpSignIn",
3355 "dataTag":"1" 3505 "dataTag":"1"
3356 } 3506 }
3357 ``` 3507 ```
@@ -3371,7 +3521,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3371,7 +3521,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3371 - **蝷箔誨** 3521 - **蝷箔誨**
3372 ```Json 3522 ```Json
3373 { 3523 {
3374 - "fun": "rtSetKpLoginAllowed", 3524 + "fun":"rtSetKpLoginAllowed",
3375 "dataTag":"1", 3525 "dataTag":"1",
3376 "data":{ 3526 "data":{
3377 "keySn":"1479824643", 3527 "keySn":"1479824643",
@@ -3400,7 +3550,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3400,7 +3550,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3400 - **蝷箔誨** 3550 - **蝷箔誨**
3401 ```Json 3551 ```Json
3402 { 3552 {
3403 - "fun": "fEvtKpSignIn", 3553 + "fun":"fEvtKpSignIn",
3404 "dataTag":"1", 3554 "dataTag":"1",
3405 "data": [{ 3555 "data": [{
3406 "keySn": "1234567890", 3556 "keySn": "1234567890",
@@ -3431,7 +3581,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3431,7 +3581,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3431 - **蝷箔誨** 3581 - **蝷箔誨**
3432 ```Json 3582 ```Json
3433 { 3583 {
3434 - "fun": "fEvtKpLoginAllowed", 3584 + "fun":"fEvtKpLoginAllowed",
3435 "dataTag":"1", 3585 "dataTag":"1",
3436 "data": { 3586 "data": {
3437 "keySn":"1479824643", 3587 "keySn":"1479824643",
@@ -3463,7 +3613,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3463,7 +3613,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3463 - **蝷箔誨** 3613 - **蝷箔誨**
3464 ```Json 3614 ```Json
3465 { 3615 {
3466 - "fun": "startQATrueFalse", 3616 + "fun":"startQATrueFalse",
3467 "dataTag":"1", 3617 "dataTag":"1",
3468 "data":{ 3618 "data":{
3469 "keySns":[], 3619 "keySns":[],
@@ -3490,7 +3640,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3490,7 +3640,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3490 - **蝷箔誨** 3640 - **蝷箔誨**
3491 ```Json 3641 ```Json
3492 { 3642 {
3493 - "fun": "stopQATrueFalse", 3643 + "fun":"stopQATrueFalse",
3494 "dataTag":"1" 3644 "dataTag":"1"
3495 } 3645 }
3496 ``` 3646 ```
@@ -3515,7 +3665,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3515,7 +3665,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3515 - **蝷箔誨** 3665 - **蝷箔誨**
3516 ```Json 3666 ```Json
3517 { 3667 {
3518 - "fun": "fEvtQATrueFalse", 3668 + "fun":"fEvtQATrueFalse",
3519 "dataTag":"1", 3669 "dataTag":"1",
3520 "data": [{ 3670 "data": [{
3521 "keySn": "1234567890", 3671 "keySn": "1234567890",
@@ -3551,7 +3701,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3551,7 +3701,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3551 - **蝷箔誨** 3701 - **蝷箔誨**
3552 ```Json 3702 ```Json
3553 { 3703 {
3554 - "fun": "startQAChoice", 3704 + "fun":"startQAChoice",
3555 "dataTag":"1", 3705 "dataTag":"1",
3556 "data":{ 3706 "data":{
3557 "keySns":[], 3707 "keySns":[],
@@ -3581,7 +3731,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3581,7 +3731,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3581 - **蝷箔誨** 3731 - **蝷箔誨**
3582 ```Json 3732 ```Json
3583 { 3733 {
3584 - "fun": "stopQAChoice", 3734 + "fun":"stopQAChoice",
3585 "dataTag":"1" 3735 "dataTag":"1"
3586 } 3736 }
3587 ``` 3737 ```
@@ -3606,7 +3756,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3606,7 +3756,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3606 - **蝷箔誨** 3756 - **蝷箔誨**
3607 ```Json 3757 ```Json
3608 { 3758 {
3609 - "fun": "fEvtQAChoice", 3759 + "fun":"fEvtQAChoice",
3610 "dataTag":"1", 3760 "dataTag":"1",
3611 "data": [{ 3761 "data": [{
3612 "keySn": "1234567890", 3762 "keySn": "1234567890",
@@ -3640,7 +3790,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3640,7 +3790,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3640 - **蝷箔誨** 3790 - **蝷箔誨**
3641 ```Json 3791 ```Json
3642 { 3792 {
3643 - "fun": "startQANum", 3793 + "fun":"startQANum",
3644 "dataTag":"1", 3794 "dataTag":"1",
3645 "data":{ 3795 "data":{
3646 "keySns":[], 3796 "keySns":[],
@@ -3669,7 +3819,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3669,7 +3819,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3669 - **蝷箔誨** 3819 - **蝷箔誨**
3670 ```Json 3820 ```Json
3671 { 3821 {
3672 - "fun": "stopQANum", 3822 + "fun":"stopQANum",
3673 "dataTag":"1" 3823 "dataTag":"1"
3674 } 3824 }
3675 ``` 3825 ```
@@ -3694,7 +3844,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3694,7 +3844,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3694 - **蝷箔誨** 3844 - **蝷箔誨**
3695 ```Json 3845 ```Json
3696 { 3846 {
3697 - "fun": "fEvtQANum", 3847 + "fun":"fEvtQANum",
3698 "dataTag":"1", 3848 "dataTag":"1",
3699 "data": [{ 3849 "data": [{
3700 "keySn": "1234567890", 3850 "keySn": "1234567890",
@@ -3725,7 +3875,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3725,7 +3875,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3725 - **蝷箔誨** 3875 - **蝷箔誨**
3726 ```Json 3876 ```Json
3727 { 3877 {
3728 - "fun": "startQAQuicker", 3878 + "fun":"startQAQuicker",
3729 "dataTag":"1", 3879 "dataTag":"1",
3730 "data":{ 3880 "data":{
3731 "keySns":[], 3881 "keySns":[],
@@ -3751,7 +3901,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3751,7 +3901,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3751 - **蝷箔誨** 3901 - **蝷箔誨**
3752 ```Json 3902 ```Json
3753 { 3903 {
3754 - "fun": "stopQAQuicker", 3904 + "fun":"stopQAQuicker",
3755 "dataTag":"1" 3905 "dataTag":"1"
3756 } 3906 }
3757 ``` 3907 ```
@@ -3776,7 +3926,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3776,7 +3926,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3776 - **蝷箔誨** 3926 - **蝷箔誨**
3777 ```Json 3927 ```Json
3778 { 3928 {
3779 - "fun": "fEvtQAQuicker", 3929 + "fun":"fEvtQAQuicker",
3780 "dataTag":"1", 3930 "dataTag":"1",
3781 "data": [{ 3931 "data": [{
3782 "keySn": "1234567890", 3932 "keySn": "1234567890",
@@ -3807,7 +3957,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3807,7 +3957,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3807 - **蝷箔誨** 3957 - **蝷箔誨**
3808 ```Json 3958 ```Json
3809 { 3959 {
3810 - "fun": "startQAEText", 3960 + "fun":"startQAEText",
3811 "dataTag":"1", 3961 "dataTag":"1",
3812 "data":{ 3962 "data":{
3813 "keySns":[], 3963 "keySns":[],
@@ -3833,7 +3983,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3833,7 +3983,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3833 - **蝷箔誨** 3983 - **蝷箔誨**
3834 ```Json 3984 ```Json
3835 { 3985 {
3836 - "fun": "stopQAEText", 3986 + "fun":"stopQAEText",
3837 "dataTag":"1" 3987 "dataTag":"1"
3838 } 3988 }
3839 ``` 3989 ```
@@ -3858,7 +4008,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3858,7 +4008,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3858 - **蝷箔誨** 4008 - **蝷箔誨**
3859 ```Json 4009 ```Json
3860 { 4010 {
3861 - "fun": "fEvtQAEText", 4011 + "fun":"fEvtQAEText",
3862 "dataTag":"1", 4012 "dataTag":"1",
3863 "data": [{ 4013 "data": [{
3864 "keySn": "1234567890", 4014 "keySn": "1234567890",
@@ -3889,7 +4039,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3889,7 +4039,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3889 ```Json 4039 ```Json
3890 //縑 4040 //縑
3891 { 4041 {
3892 - "fun": "sendKpMsg", 4042 + "fun":"sendKpMsg",
3893 "dataTag":"1", 4043 "dataTag":"1",
3894 "data": [ 4044 "data": [
3895 { 4045 {
@@ -3909,7 +4059,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3909,7 +4059,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3909 4059
3910 //撟踵靽⊥ 4060 //撟踵靽⊥
3911 { 4061 {
3912 - "fun": "sendKpMsg", 4062 + "fun":"sendKpMsg",
3913 "dataTag":"1", 4063 "dataTag":"1",
3914 "data": [ 4064 "data": [
3915 { 4065 {
@@ -3944,7 +4094,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3944,7 +4094,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3944 - **蝷箔誨** 4094 - **蝷箔誨**
3945 ```Json 4095 ```Json
3946 { 4096 {
3947 - "fun": "fEvtKpMsg", 4097 + "fun":"fEvtKpMsg",
3948 "dataTag":"1", 4098 "dataTag":"1",
3949 "data": [ 4099 "data": [
3950 { 4100 {
@@ -3978,7 +4128,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3978,7 +4128,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3978 ```Json 4128 ```Json
3979 //銝暹 4129 //銝暹
3980 { 4130 {
3981 - "fun": "startKpStbResponse", 4131 + "fun":"startKpStbResponse",
3982 "dataTag":"1", 4132 "dataTag":"1",
3983 "data":{ 4133 "data":{
3984 "mode":0 4134 "mode":0
@@ -3986,7 +4136,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -3986,7 +4136,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
3986 } 4136 }
3987 //敺 4137 //敺
3988 { 4138 {
3989 - "fun": "startKpStbResponse", 4139 + "fun":"startKpStbResponse",
3990 "dataTag":"1", 4140 "dataTag":"1",
3991 "data":{ 4141 "data":{
3992 "mode":1, 4142 "mode":1,
@@ -4008,7 +4158,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4008,7 +4158,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4008 - **蝷箔誨** 4158 - **蝷箔誨**
4009 ```Json 4159 ```Json
4010 { 4160 {
4011 - "fun": "stopKpStbResponse", 4161 + "fun":"stopKpStbResponse",
4012 "dataTag":"1" 4162 "dataTag":"1"
4013 } 4163 }
4014 ``` 4164 ```
@@ -4047,7 +4197,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4047,7 +4197,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4047 - **蝷箔誨** 4197 - **蝷箔誨**
4048 ```Json 4198 ```Json
4049 { 4199 {
4050 - "fun": "startQAVoice", 4200 + "fun":"startQAVoice",
4051 "dataTag":"1", 4201 "dataTag":"1",
4052 "data": { 4202 "data": {
4053 "keySns": [], 4203 "keySns": [],
@@ -4073,7 +4223,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4073,7 +4223,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4073 - **蝷箔誨** 4223 - **蝷箔誨**
4074 ```Json 4224 ```Json
4075 { 4225 {
4076 - "fun": "stopQAVoice", 4226 + "fun":"stopQAVoice",
4077 "dataTag":"1" 4227 "dataTag":"1"
4078 } 4228 }
4079 ``` 4229 ```
@@ -4098,7 +4248,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4098,7 +4248,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4098 - **蝷箔誨** 4248 - **蝷箔誨**
4099 ```Json 4249 ```Json
4100 { 4250 {
4101 - "fun": "startKpDSpeaker", 4251 + "fun":"startKpDSpeaker",
4102 "dataTag":"1", 4252 "dataTag":"1",
4103 "data": { 4253 "data": {
4104 "keySn": "1234567890", 4254 "keySn": "1234567890",
@@ -4122,7 +4272,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4122,7 +4272,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4122 - **蝷箔誨** 4272 - **蝷箔誨**
4123 ```Json 4273 ```Json
4124 { 4274 {
4125 - "fun": "stopKpDSpeaker", 4275 + "fun":"stopKpDSpeaker",
4126 "dataTag":"1" 4276 "dataTag":"1"
4127 } 4277 }
4128 ``` 4278 ```
@@ -4144,7 +4294,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4144,7 +4294,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4144 - **蝷箔誨** 4294 - **蝷箔誨**
4145 ```Json 4295 ```Json
4146 { 4296 {
4147 - "fun": "startVoiceStbResponse", 4297 + "fun":"startVoiceStbResponse",
4148 "dataTag":"1", 4298 "dataTag":"1",
4149 "data":{ 4299 "data":{
4150 "mode":, 4300 "mode":,
@@ -4166,7 +4316,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4166,7 +4316,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4166 - **蝷箔誨** 4316 - **蝷箔誨**
4167 ```Json 4317 ```Json
4168 { 4318 {
4169 - "fun": "stopVoiceStbResponse", 4319 + "fun":"stopVoiceStbResponse",
4170 "dataTag":"1" 4320 "dataTag":"1"
4171 } 4321 }
4172 ``` 4322 ```
@@ -4192,7 +4342,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4192,7 +4342,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4192 - **蝷箔誨** 4342 - **蝷箔誨**
4193 ```Json 4343 ```Json
4194 { 4344 {
4195 - "fun": "fEvtVoiceFile", 4345 + "fun":"fEvtVoiceFile",
4196 "dataTag":"1", 4346 "dataTag":"1",
4197 "data": [{ 4347 "data": [{
4198 "keySn": "1479824643", 4348 "keySn": "1479824643",
@@ -4223,7 +4373,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4223,7 +4373,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4223 - **蝷箔誨** 4373 - **蝷箔誨**
4224 ```Json 4374 ```Json
4225 { 4375 {
4226 - "fun": "fEvtQAQuicker", 4376 + "fun":"fEvtQAQuicker",
4227 "dataTag":"1", 4377 "dataTag":"1",
4228 "data": { 4378 "data": {
4229 "keySn":"1479824643", 4379 "keySn":"1479824643",
@@ -4258,7 +4408,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4258,7 +4408,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4258 - **蝷箔誨** 4408 - **蝷箔誨**
4259 ```Json 4409 ```Json
4260 { 4410 {
4261 - "fun": "fEvtQAQuicker", 4411 + "fun":"fEvtQAQuicker",
4262 "dataTag":"1", 4412 "dataTag":"1",
4263 "data": { 4413 "data": {
4264 "keySn":"1837454011", 4414 "keySn":"1837454011",
@@ -4300,7 +4450,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4300,7 +4450,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4300 ```Json 4450 ```Json
4301 //摰 4451 //摰
4302 { 4452 {
4303 - "fun": "startKpExam", 4453 + "fun":"startKpExam",
4304 "dataTag":"1", 4454 "dataTag":"1",
4305 "data":{ 4455 "data":{
4306 "mode": 0, 4456 "mode": 0,
@@ -4339,7 +4489,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4339,7 +4489,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4339 4489
4340 //蝷摑撘憭 4490 //蝷摑撘憭
4341 { 4491 {
4342 - "fun": "startKpExam", 4492 + "fun":"startKpExam",
4343 "dataTag":"1", 4493 "dataTag":"1",
4344 "data":{ 4494 "data":{
4345 "mode": 1, 4495 "mode": 1,
@@ -4359,7 +4509,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4359,7 +4509,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4359 4509
4360 //蝷粹憭 4510 //蝷粹憭
4361 { 4511 {
4362 - "fun": "startKpExam", 4512 + "fun":"startKpExam",
4363 "dataTag":"1", 4513 "dataTag":"1",
4364 "data":{ 4514 "data":{
4365 "mode": 2, 4515 "mode": 2,
@@ -4390,7 +4540,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4390,7 +4540,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4390 - **蝷箔誨** 4540 - **蝷箔誨**
4391 ```Json 4541 ```Json
4392 { 4542 {
4393 - "fun": "stopKpExam", 4543 + "fun":"stopKpExam",
4394 "dataTag":"1" 4544 "dataTag":"1"
4395 } 4545 }
4396 ``` 4546 ```
@@ -4409,7 +4559,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4409,7 +4559,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4409 - **蝷箔誨** 4559 - **蝷箔誨**
4410 ```Json 4560 ```Json
4411 { 4561 {
4412 - "fun": "rtGetKpExamData", 4562 + "fun":"rtGetKpExamData",
4413 "dataTag":"1", 4563 "dataTag":"1",
4414 "data":{ 4564 "data":{
4415 "keySns":["1234567890","1234567891"] 4565 "keySns":["1234567890","1234567891"]
@@ -4432,7 +4582,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4432,7 +4582,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4432 - **蝷箔誨** 4582 - **蝷箔誨**
4433 ```Json 4583 ```Json
4434 { 4584 {
4435 - "fun": "rtSetKpExamResult", 4585 + "fun":"rtSetKpExamResult",
4436 "dataTag":"1", 4586 "dataTag":"1",
4437 "data":{ 4587 "data":{
4438 "examNo":1, 4588 "examNo":1,
@@ -4456,7 +4606,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4456,7 +4606,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4456 - **蝷箔誨** 4606 - **蝷箔誨**
4457 ```Json 4607 ```Json
4458 { 4608 {
4459 - "fun": "rtKpAllowEdited", 4609 + "fun":"rtKpAllowEdited",
4460 "dataTag":"1", 4610 "dataTag":"1",
4461 "data":{ 4611 "data":{
4462 "keySns":["1234567890","1234567891"] 4612 "keySns":["1234567890","1234567891"]
@@ -4484,7 +4634,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4484,7 +4634,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4484 - **蝷箔誨** 4634 - **蝷箔誨**
4485 ```Json 4635 ```Json
4486 { 4636 {
4487 - "fun": "fEvtKpExam", 4637 + "fun":"fEvtKpExam",
4488 "dataTag":"1", 4638 "dataTag":"1",
4489 "data": [{ 4639 "data": [{
4490 "keySn": "1234567890", 4640 "keySn": "1234567890",
@@ -4516,7 +4666,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4516,7 +4666,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4516 - **蝷箔誨** 4666 - **蝷箔誨**
4517 ```Json 4667 ```Json
4518 { 4668 {
4519 - "fun": "fEvtFinalSubmit", 4669 + "fun":"fEvtFinalSubmit",
4520 "dataTag":"1", 4670 "dataTag":"1",
4521 "data": [{ 4671 "data": [{
4522 "keySn": "1234567890", 4672 "keySn": "1234567890",
@@ -4542,7 +4692,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4542,7 +4692,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4542 - **蝷箔誨** 4692 - **蝷箔誨**
4543 ```Json 4693 ```Json
4544 { 4694 {
4545 - "fun": "fEvtSetKpExamResult", 4695 + "fun":"fEvtSetKpExamResult",
4546 "dataTag":"1", 4696 "dataTag":"1",
4547 "data": { 4697 "data": {
4548 "examNo": 1, 4698 "examNo": 1,
@@ -4551,6 +4701,146 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4551,6 +4701,146 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4551 } 4701 }
4552 ``` 4702 ```
4553 4703
  4704 +### 憭
  4705 +#### 瘜
  4706 +##### startKpMultiExam
  4707 +- **銝駁**嚗/client/\${baseSN}/send
  4708 +- **膩**嚗憭
  4709 +- **霂湔**
  4710 +
  4711 +|蝐餃|敹‵|霂湔
  4712 +|---|---|---|---|---|
  4713 +|fun|string|-||誘妍|
  4714 +|dataTag|string|-||,銝箇征摮泵銝琍
  4715 +|data|object|-||隡笆鞊﹄
  4716 +|+examNo|int|||0-9999<br>=0嚗<br>>0,銝活銝蝏抒賒瘚餈
  4717 +|+mode|int|||蝷箸芋撘<br>0-銝蝷箏憭<br>1-蝷算憭<br>2-蝷算憭揉
  4718 +|+questions|array|||憸霂行
  4719 +|++subject | int|| | 蝘摨,1-9,撖孵葉蔭1-9<br>蝘蝑
  4720 +|++symbol | string|| | 憸,漣蛹-,銝箇征,銝箇征銵函內1蝥折<br><font color="red">憭蝻憭銝斤漣嚗symbol霈曄蔭銝箇征-嚗,頞</font>|
  4721 +|++quesType | int||| 憸蝐餃<br>1:<br>2:憭<br>3:摮<br>4: |
  4722 +|++option |int|| |★<br> quesType = 1 <br>quesType = 2 <br>甇日★蝻箇 暺恕4;<br>嚗1-10
  4723 +|++startNo | int||| 韏瑕 |
  4724 +|++count | int||| 憸 |
  4725 +|+simParams|object|||璅⊥霈曄蔭撖寡情|
  4726 +|++answer|array|||憸挽漱<br>撘蛹",憭;<br>摮;憸(1撖2)"<br>憒"A","ABCD","10","1"]|
  4727 +
  4728 +- **蝷箔誨**
  4729 +```json
  4730 +//摰
  4731 +{
  4732 + "fun":"startKpMultiExam",
  4733 + "dataTag":"1",
  4734 + "data":{
  4735 + "mode": 0,
  4736 + "examNo": 1,
  4737 + "questions": [{
  4738 + "subject":1, //蝘1
  4739 + //憸1-1 1-10 10憸
  4740 + "symbol": "1-",
  4741 + "quesType": 1,
  4742 + "startNo": 1,
  4743 + "count":10
  4744 + }, {
  4745 + "subject":2, //蝘2
  4746 + //憸2-22-3銝日 憭5銝芷★
  4747 + "symbol": "2-",
  4748 + "quesType": 2,
  4749 + "option": 5,
  4750 + "startNo": 2,
  4751 + "count":2
  4752 + }, {
  4753 + "subject":3, //蝘3
  4754 + //憸3-13-2銝日摮
  4755 + "symbol": "3-",
  4756 + "quesType": 3,
  4757 + "startNo": 1,
  4758 + "count":2
  4759 + }, {
  4760 + "subject":1, //蝘1
  4761 + //憸45 嚗憸
  4762 + "symbol": "",
  4763 + "quesType": 4,
  4764 + "startNo": 4,
  4765 + "count":2
  4766 + }],
  4767 + "simParams":{
  4768 + "answer":["A","ABCD","10","1"]
  4769 + }
  4770 + }
  4771 +}
  4772 +
  4773 +//蝷摑撘憭
  4774 +{
  4775 + "fun":"startKpMultiExam",
  4776 + "dataTag":"1",
  4777 + "data":{
  4778 + "mode": 1,
  4779 + "examNo": 1,
  4780 + "questions": [{
  4781 + "subject":1,
  4782 + //Q1-Q20,
  4783 + "symbol": "",
  4784 + "quesType": 1,
  4785 + "startNo": 1,
  4786 + "count":20
  4787 + }],
  4788 + "simParams":{
  4789 + "answer":["A","","",""]
  4790 + }
  4791 + }
  4792 +}
  4793 +
  4794 +//蝷粹憭
  4795 +{
  4796 + "fun":"startKpMultiExam",
  4797 + "dataTag":"1",
  4798 + "data":{
  4799 + "mode": 2,
  4800 + "examNo": 1,
  4801 + "questions": [{
  4802 + "subject":1,
  4803 + //憸1-憸20,
  4804 + "symbol": "",
  4805 + "quesType": 1,
  4806 + "startNo": 1,
  4807 + "count":20
  4808 + }],
  4809 + "simParams":{
  4810 + "answer":["A","","",""]
  4811 + }
  4812 + }
  4813 +}
  4814 +```
  4815 +
  4816 +##### stopKpMultiExam
  4817 +- **銝駁**嚗/client/\${baseSN}/send
  4818 +- **膩**嚗迫憭
  4819 +- **霂湔**
  4820 +
  4821 +|蝐餃|敹‵|霂湔
  4822 +|---|---|---|---|---|
  4823 +|fun|string|-||誘妍|
  4824 +|dataTag|string|-||,銝箇征摮泵銝琍
  4825 +
  4826 +- **蝷箔誨**
  4827 +```json
  4828 +{
  4829 + "fun":"stopKpMultiExam",
  4830 + "dataTag":"1"
  4831 +}
  4832 +```
  4833 +
  4834 +#### 鈭辣
  4835 +##### [sEvtStateCode](#sevtstatecode)
  4836 +誘
  4837 +
  4838 +##### [fEvtKpExam](#fevtkpexam)
  4839 +餈葉漱蝑
  4840 +
  4841 +##### [fEvtFinalSubmit](#fevtfinalsubmit)
  4842 +餈鈭文
  4843 +
4554 ### 銝餃 4844 ### 銝餃
4555 #### 瘜 4845 #### 瘜
4556 ##### startKpScoreInput 4846 ##### startKpScoreInput
@@ -4576,7 +4866,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4576,7 +4866,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4576 - **蝷箔誨** 4866 - **蝷箔誨**
4577 ```Json 4867 ```Json
4578 { 4868 {
4579 - "fun": "startKpScoreInput", 4869 + "fun":"startKpScoreInput",
4580 "dataTag":"1", 4870 "dataTag":"1",
4581 "data":{ 4871 "data":{
4582 "mode": 0, 4872 "mode": 0,
@@ -4615,7 +4905,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4615,7 +4905,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4615 - **蝷箔誨** 4905 - **蝷箔誨**
4616 ```Json 4906 ```Json
4617 { 4907 {
4618 - "fun": "stopKpScoreInput", 4908 + "fun":"stopKpScoreInput",
4619 "dataTag":"1" 4909 "dataTag":"1"
4620 } 4910 }
4621 ``` 4911 ```
@@ -4641,7 +4931,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket @@ -4641,7 +4931,7 @@ WebSocket撘銝DK蝡遣蝡餈ebSocket
4641 - **蝷箔誨** 4931 - **蝷箔誨**
4642 ```Json 4932 ```Json
4643 { 4933 {
4644 - "fun": "fEvtKpScore", 4934 + "fun":"fEvtKpScore",
4645 "dataTag":"1", 4935 "dataTag":"1",
4646 "data": [{ 4936 "data": [{
4647 "scoreTag":"5", 4937 "scoreTag":"5",
通讯协议-教育新版-表决器部分.md
@@ -3361,7 +3361,7 @@ Rule: @@ -3361,7 +3361,7 @@ Rule:
3361 | 7 | NETMODE | 基站组网模式,1配对 2白名单 | 3361 | 7 | NETMODE | 基站组网模式,1配对 2白名单 |
3362 | 8-11 | FREQ1-FREQ4 | 主频点,副频点2,副频点3,副频点4,0的话不启用 | 3362 | 8-11 | FREQ1-FREQ4 | 主频点,副频点2,副频点3,副频点4,0的话不启用 |
3363 | 12 | HOP | 0没跳频,1-4表示当前模块跳频频点编号,1表示在主频点 | 3363 | 12 | HOP | 0没跳频,1-4表示当前模块跳频频点编号,1表示在主频点 |
3364 -| 13 | ST-Bit | 位控制(直接位域控制)<br>1:基站信息公开位<br>&emsp;0表示可公开,键盘能扫描到基站信息并显示<br>&emsp;1不公开,键盘不显示,但已配对的键盘可正常连接。<br>2:配对模式,1表示当前基站处于配对模式下可供键盘配对。0无<br>3:白名单模式,1表示当前基站处于白名单模式。0:无<br>4:Plus模式->1: 基站周期组呼点名心跳/键盘上线时发送入网包<font color="#dd0000"> 暂不使用</font><br>&emsp;0:基站不发点名心跳/键盘上线时不发送入网包(键盘竞争方式)<br>5:名单锁定:键盘只在Plus模式下生效<br>&emsp;1:开启名单锁定(键盘自控无法配对,无法登录,基站名单只能有上层接口与刷卡接口添加)<br>&emsp;0:关闭名单锁定(键盘可配对,可登录,基站自动加入到名单中,基站不踢人) | 3364 +| 13 | ST-Bit | 位控制(直接位域控制)<br>1:基站信息公开位<br>&emsp;0表示可公开,键盘能扫描到基站信息并显示<br>&emsp;1不公开,键盘不显示,但已配对的键盘可正常连接。<br>2:配对模式,1表示当前基站处于配对模式下可供键盘配对。0无<br>3:白名单模式,1表示当前基站处于白名单模式。0:无<br>4:Plus模式->1: 基站周期组呼点名心跳/键盘上线时发送入网包<font color="#dd0000"> 暂不使用</font><br>&emsp;0:基站不发点名心跳/键盘上线时不发送入网包(键盘竞争方式)<br>5:名单锁定:键盘只在Plus模式下生效<br>&emsp;1:开启名单锁定(键盘自控无法配对,无法登录,基站名单只能有上层接口与刷卡接口添加)<br>&emsp;0:关闭名单锁定(键盘可配对,可登录,基站自动加入到名单中,基站不踢人)<br>6:键盘开启话费识别:1键盘开启话费识别 0:不开启 |
3365 | 14-15 | PSW | 密码(0表示没密码) | 3365 | 14-15 | PSW | 密码(0表示没密码) |
3366 | 16-17 | 2 Byte| 基站配对码前两个字节(原因:B200配合M6 AES加密,协议占用了配对码前两个字节,但是键盘需要完整的4字节配对码,所有在此带下去给键盘) | 3366 | 16-17 | 2 Byte| 基站配对码前两个字节(原因:B200配合M6 AES加密,协议占用了配对码前两个字节,但是键盘需要完整的4字节配对码,所有在此带下去给键盘) |
3367 | 18-30| Name | 基站名称(6个汉字) | 3367 | 18-30| Name | 基站名称(6个汉字) |