Commit 110683af77f4e40a61c2d43a91773e9f8dcc26bb

Authored by 孙向锦
2 parents 763bbf9e 713df19a

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

WSCmdApp Protocol Interface Description_V5.1.3.docx 0 → 100644
No preview for this file type
img/image3.png

20.3 KB | W: | H:

17 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
img/image7.png 0 → 100644

7.41 KB

img/升级总流程.png 0 → 100644

41.3 KB

img/广播阶段.png 0 → 100644

46.4 KB

img/询问阶段.png 0 → 100644

75.8 KB

img/透传阶段.png 0 → 100644

69.9 KB

通讯协议-SDK_DLL部分[内部].md
... ... @@ -24,7 +24,7 @@ Ver5.1.1
24 24 <br>
25 25  
26 26 <div style="text-align: center;font-size: 30px;">
27 27 -鈭僑
  28 +鈭僑
28 29 </div>
29 30  
30 31 <br>
... ... @@ -43,7 +43,7 @@ Ver5.1.1
43 43 <br>
44 44 | ﹝ | | 雿 | 霂湔 |
45 45 |---|---|---|---|
46   -|5.1.1| 2023撟1009|1.
  46 +|5.1.1| 2023撟1130|1.
47 47  
48 48 <br>
49 49  
... ... @@ -86,6 +86,34 @@ typedef void(*HDParamCallBack)(int iBaseID, int mode, const char* sInfo);//
86 86 extern"C" __declspec(dllexport) void SetHDParamCallBack(HDParamCallBack cb); //霈曄蔭蝡辣
87 87 ```
88 88  
  89 +蝡銝剔 mode ”
  90 +```C++
  91 +enum class eHDParamType {
  92 + eVoteEvent_Choice = 910, //憸芋撘
  93 + eVoteEvent_TrueFalse = 912, //憸芋撘
  94 + eVoteEvent_RushAnswer = 914, //蝑芋撘
  95 + eVoteEvent_Number = 916, //摮芋撘
  96 + eVoteEvent_Bind = 918, //蝏芋撘
  97 + eVoteEvent_QuickMatch = 920, //蝡翰笆
  98 +
  99 + eVoteEvent_Voice = 922, //霂剝蝑芋撘
  100 + eVoteEvent_MulQuestions = 923, //T2憭芋撘
  101 + eVoteEvent_TextAnswer = 924, //憛怎征憸芋撘
  102 +
  103 + eVoteEvent_Examination = 921, //憭芋撘
  104 + eVoteEvent_Examination_pause = 928, //憭芋撘
  105 + eVoteEvent_Examination_continue = 929, //憭芋撘誧蝏
  106 + eVoteEvent_Examination_ok = 927, //憭芋撘迤蝖桃
  107 + eVoteEvent_Examination_Copy = 926, //憭芋撘蓮蝘餅
  108 +
  109 + eVoteEvent_TestMdoe = 931, //撘郊瘚芋撘
  110 +
  111 + eVoteEvent_CustomQuestions = 935, //摰芋撘
  112 +
  113 + eVoteEvent_Free_Question = 943, //憸芋撘
  114 +}
  115 +```
  116 +
89 117 ## 巨鈭辣
90 118  
91 119 | **妍** | **霂湔** | **** | **憭釣** |
... ... @@ -164,6 +192,8 @@ extern&quot;C&quot; __declspec(dllexport) void SetVoiceStreamEventCallBack(VoiceStreamEven
164 192 extern"C" __declspec(dllexport) bool resetBase(UCHAR iBaseID);
165 193 ```
166 194  
  195 +蝡隞亙輕憯啣蝡
  196 +
167 197 ## DK Ver
168 198 妍嚗etSDKVer
169 199 餈嚗泵銝
... ... @@ -173,14 +203,56 @@ extern&quot;C&quot; __declspec(dllexport) bool resetBase(UCHAR iBaseID);
173 203 extern"C" __declspec(dllexport) char* GetSDKVer();
174 204 ```
175 205  
  206 +餈潘餈泵銝脯0.02.63.100
  207 +
176 208 ## 蝥輻韏
  209 +甇文頧臭辣DLL摨颲窈靚冽蝙
  210 +
177 211 妍嚗etThread_Exit
178 212  
179 213
180 214 ```C++
181 215 extern"C" __declspec(dllexport) void SetThread_Exit(void); //蝥輻韏
182 216 ```
  217 +
  218 +## 蝡”
  219 +甇文LL餈鈭葵蝡挽憭
  220 +
  221 +妍嚗etHidList_len
  222 +
  223 +隞
  224 +```C++
  225 +extern"C" __declspec(dllexport) int GetHidList_len();
  226 +```
  227 +
  228 +餈潘
  229 +| **餈** | **霂湔** | **憭釣** |
  230 +| --- | --- | --- |
  231 +|0|蝡|
  232 +|憭找0 |餈蝡|
  233 +
183 234 # 巨銝
  235 +## 霈曄蔭撟踵巨
  236 +
  237 +妍嚗et_Custom_Title
  238 +嚗挽蝵桀嘀巨
  239 +霂湔嘀銝雿輻
  240 +
  241 +| **妍** | **霂湔** | **** | **憭釣** |
  242 +| --- | --- | --- | --- |
  243 +|UCHAR iBaseID|蝡D|0~32||
  244 +|UCHAR Title_Len|泵銝脤摨帆||
  245 +|const char* Title|泵銝琍||
  246 +
  247 +隞
  248 +```C++
  249 +extern"C" __declspec(dllexport) bool Set_Custom_Title(
  250 + UCHAR iBaseID,
  251 + UCHAR Title_Len,
  252 + const char* Title);
  253 +```
  254 +
  255 +
184 256 ## 霈曄蔭蝛粹璅∪[撟踵]
185 257 妍嚗ndFreeEvent
186 258 嚗挽蝵桃征璅∪[撟踵]
... ... @@ -191,6 +263,14 @@ extern&quot;C&quot; __declspec(dllexport) void SetThread_Exit(void); //蝥輻
191 263 extern"C" __declspec(dllexport) bool EndFreeEvent(void); //蝛粹璅∪
192 264 ```
193 265  
  266 +HDParamCallBack 閫
  267 +
  268 +| **妍** | **霂湔** | **閫** | **憭釣** |
  269 +| --- | --- | --- | --- |
  270 +|int iBaseID|蝡D|0~32||
  271 +|int mode|璅∪0||
  272 +|const char* sInfo|摮泵銝琍0嚗K|暺恕蝛粹璅∪
  273 +
194 274 ## 撣血餈蝛粹璅∪
195 275 妍嚗xitEvent
196 276 嚗敶芋撘[撟踵]
... ... @@ -202,34 +282,84 @@ extern&quot;C&quot; __declspec(dllexport) bool EndFreeEvent(void); //蝛粹璅∪
202 282  
203 283
204 284 ```C++
205   -extern"C" __declspec(dllexport) bool ExitEvent(int mode_ID); //撣血餈蝛粹璅∪
  285 +//撣血餈蝛粹璅∪
  286 +extern"C" __declspec(dllexport) bool ExitEvent(int mode_ID);
206 287 ```
207   -## 蝑曉[撟踵]
  288 +
  289 +HDParamCallBack 閫
  290 +
  291 +| **妍** | **霂湔** | **閫** | **憭釣** |
  292 +| --- | --- | --- | --- |
  293 +|int iBaseID|蝡D|0~32||
  294 +|int mode|璅∪0||
  295 +|const char* sInfo|摮泵銝琍X嚗K|X嚗ode_ID笆摨<br>撣血蝛粹璅∪
  296 +
  297 +## 蝑曉
  298 +### 蝑曉[撟踵]
208 299 妍嚗tart_Sign_in_Event
209 300 嚗倌[撟踵]
210 301 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹蝑曉璅∪
211 302  
212 303 | **妍** | **霂湔** | **** | **憭釣** |
213 304 | --- | --- | --- | --- |
214   -|int Moed1|蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕)||
215   -|int Moed2|靽格璅∪0:銝靽格 <br>1:隞乩耨(暺恕)||
216   -|int Moed3|餈恍芋撘0:(暺恕潘|
217   -|int Moed4|★|10:(暺恕潘|
218   -|int Moed5|★|1N14 (閬挽蝵)||
  305 +|int bindMode|蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕)||
  306 +|int modifyMode|靽格璅∪0:銝靽格 <br>1:隞乩耨(暺恕)||
  307 +|int lessMode|餈恍芋撘0:(暺恕潘|
  308 +|int options|★|10:(暺恕潘|
  309 +|int optionalN||1N14 ||
219 310 |int KeyValue|慝0:OK蝑曉] <br>1:1 <br>2:2 <br> 3:3 <br> 4:4 <br> 5:5 <br> 6:6 <br> 7:7 <br> 8:8 <br> 9:9 <br> 10:0 <br> 11:銝 <br> 12:銝 <br> 13:OK <br> 14:ESC <br> 15: Menu ||
220 311  
221 312
222 313 ```C++
223 314 extern"C" __declspec(dllexport) bool Start_Sign_in_Event(
224   - int Moed1 = 1,
225   - int Moed2 = 0,
226   - int Moed3 = 0,
227   - int Moed4 = 0,
228   - int Moed5 = 0,
229   - int KeyValue=0); //撘憪倌
  315 + int bindMode,
  316 + int modifyMode,
  317 + int lessMode,
  318 + int options,
  319 + int optionalN,
  320 + int KeyValue); //撘憪倌
  321 +```
  322 +#### 靘
  323 +靘IN蝑曉璅∪隞乩耨嚗4雿
  324 +#####
  325 +```C++
  326 +Set_Custom_Title(0, 3, "TXT"); //霈曄蔭摰
  327 +Start_Sign_in_Event(2, 0, 0, 0, 4, 0); //撘pin璅∪倌
  328 +```
  329 +HDParamCallBack 閫
  330 +
  331 +| **妍** | **霂湔** | **閫** | **憭釣** |
  332 +| --- | --- | --- | --- |
  333 +|int iBaseID|蝡D|1||
  334 +|int mode|璅∪918|蝑曉璅∪
  335 +|const char* sInfo|摮泵銝琍"OK"|
  336 +
  337 +#####
  338 +
  339 +KeyEventCallBack 閫
  340 +
  341 +| **妍** | **霂湔** | **** | **憭釣** |
  342 +| --- | --- | --- | --- |
  343 +|UCHAR iBaseID|蝡D|1||
  344 +|unsigned long long keySn|N|1837454011||
  345 +|float Time|[蝘|0.5||
  346 +|int mode|璅∪1||
  347 +|int RxMode|憸0||
  348 +|const char* sInfo||"0,1001,0,0"|"憸,,憸,憸"|
  349 +
  350 +#####
  351 +```C++
  352 +ExitEvent(1); //撣衣倌璅∪蝑曉
230 353 ```
  354 +HDParamCallBack 閫
  355 +
  356 +| **妍** | **霂湔** | **閫** | **憭釣** |
  357 +| --- | --- | --- | --- |
  358 +|int iBaseID|蝡D|1||
  359 +|int mode|璅∪0||
  360 +|const char* sInfo|摮泵銝琍"1,OK"|1嚗倌蝏蒂蝛粹璅∪
231 361  
232   -## 蝑曉[N]
  362 +### 蝑曉[N]
233 363 妍嚗tart_Sign_in_Event_SN
234 364 嚗倌[N]
235 365 霂湔DK蝞∠蝥輸挽蝵桐蛹蝑曉璅∪
... ... @@ -238,11 +368,11 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Sign_in_Event(
238 368 | --- | --- | --- | --- |
239 369 |UCHAR iBaseID|蝡D|0~32||
240 370 |ULONG KeySN|N|||
241   -|int Moed1|蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕)||
242   -|int Moed2|靽格璅∪0:銝靽格 <br>1:隞乩耨(暺恕)||
243   -|int Moed3|餈恍芋撘0:(暺恕潘|
244   -|int Moed4|★|10:(暺恕潘|
245   -|int Moed5|★|1N14 (閬挽蝵)||
  371 +|int bindMode|蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕)||
  372 +|int modifyMode|靽格璅∪0:銝靽格 <br>1:隞乩耨(暺恕)||
  373 +|int lessMode|餈恍芋撘0:(暺恕潘|
  374 +|int options|★|10:(暺恕潘|
  375 +|int optionalN||1N14 ||
246 376 |int KeyValue|慝0:OK蝑曉] <br>1:1 <br>2:2 <br> 3:3 <br> 4:4 <br> 5:5 <br> 6:6 <br> 7:7 <br> 8:8 <br> 9:9 <br> 10:0 <br> 11:銝 <br> 12:銝 <br> 13:OK <br> 14:ESC <br> 15: Menu ||
247 377 |UCHAR Txt_Len|內摨帆1~16摮|
248 378 |const char* Txt|內摮泵銝琍|
... ... @@ -252,26 +382,68 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Sign_in_Event(
252 382 extern"C" __declspec(dllexport) bool Start_Sign_in_Event_SN(
253 383 UCHAR iBaseID,
254 384 ULONG KeySN,
255   - int Moed1,
256   - int Moed2,
257   - int Moed3,
258   - int Moed4,
259   - int Moed5,
  385 + int bindMode,
  386 + int modifyMode,
  387 + int lessMode,
  388 + int options,
  389 + int optionalN,
260 390 int KeyValue,
261 391 UCHAR Txt_Len,
262 392 const char* Txt); //撘憪倌
263 393 ```
264 394  
265   -## 摮[撟踵]
  395 +#### 靘
  396 +靘IN蝑曉璅∪隞乩耨嚗★6
  397 +#####
  398 +```C++
  399 +//pin璅∪倌嚗蒂摰
  400 +Start_Sign_in_Event_SN(0,1837454011,2, 0, 0, 0, 4, 0, 3, "TXT");
  401 +```
  402 +HDParamCallBack 閫
  403 +
  404 +| **妍** | **霂湔** | **閫** | **憭釣** |
  405 +| --- | --- | --- | --- |
  406 +|int iBaseID|蝡D|1||
  407 +|int mode|璅∪918|蝑曉璅∪
  408 +|const char* sInfo|摮泵銝琍"OK"|
  409 +
  410 +#####
  411 +
  412 +KeyEventCallBack 閫
  413 +
  414 +| **妍** | **霂湔** | **** | **憭釣** |
  415 +| --- | --- | --- | --- |
  416 +|UCHAR iBaseID|蝡D|1||
  417 +|unsigned long long keySn|N|1837454011||
  418 +|float Time|[蝘|0.5||
  419 +|int mode|璅∪4||
  420 +|int RxMode|憸0||
  421 +|const char* sInfo||"0,1001,0,0"|"憸,,憸,憸"|
  422 +
  423 +
  424 +#####
  425 +```C++
  426 +ExitEvent(1); //
  427 +```
  428 +HDParamCallBack 閫
  429 +
  430 +| **妍** | **霂湔** | **閫** | **憭釣** |
  431 +| --- | --- | --- | --- |
  432 +|int iBaseID|蝡D|1||
  433 +|int mode|璅∪0||
  434 +|const char* sInfo|摮泵銝琍"41,OK"|1嚗倌璅∪蝛粹璅∪
  435 +
  436 +## 摮
  437 +### 摮[撟踵]
266 438 妍嚗tart_Number_Event
267 439 嚗摮[撟踵]
268 440 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹摮璅∪
269 441  
270 442 | **妍** | **霂湔** | **** | **憭釣** |
271 443 |---|---|---|---|
272   -|secrecyMode|靽芋撘0:銝(暺恕)<br>1:靽|
273   -|modifyMode|靽格璅∪0:銝靽格<br>1:隞乩耨(暺恕)|
274 444 |aswOption|璅∪0: 嚗6憭16雿2憭14雿<br>1:憸<br>2:憸<br>3:撣血雿2銝
  445 +|modifyMode|靽格璅∪0:銝靽格<br>1:隞乩耨(暺恕)|
  446 +|secrecyMode|靽芋撘0:銝(暺恕)<br>1:靽|
275 447 |digits|撠雿|0:瘝⊥<br>1:銝雿<br>2:鈭|
276 448 |numMin|銝aswOption=3<br>digits=0 嚗0~65535 <br> digits=1 嚗0~6553 <br> digits=2 嚗0~655|
277 449 |numMax|銝aswOption=3<br>digits=0 嚗0~65535 <br> digits=1 嚗0~6553 <br> digits=2 嚗0~655|
... ... @@ -279,15 +451,56 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Sign_in_Event_SN(
279 451
280 452 ```C++
281 453 extern"C" __declspec(dllexport) bool Start_Number_Event(
282   - int Moed1 = 1,
283   - int Moed2 = 0,
284   - int Moed3 = 0,
285   - int digits = 0,
286   - USHORT numMax = 0,
287   - USHORT numMin = 0); //
  454 + int aswOption,
  455 + int modifyMode,
  456 + int secrecyMode,
  457 + int digits,
  458 + USHORT numMax,
  459 + USHORT numMin); //
  460 +```
  461 +
  462 +#### 靘
  463 +靘摮隞乩耨蝏舅雿嚗655嚗0
  464 +#####
  465 +```C++
  466 +Set_Custom_Title(0, 3, "TXT"); //霈曄蔭摰
  467 +Start_Number_Event(0, 0, 0, 2, 655, 0); //撘摮
  468 +```
  469 +HDParamCallBack 閫
  470 +
  471 +| **妍** | **霂湔** | **閫** | **憭釣** |
  472 +| --- | --- | --- | --- |
  473 +|int iBaseID|蝡D|1||
  474 +|int mode|璅∪916|摮芋撘
  475 +|const char* sInfo|摮泵銝琍"OK"|
  476 +
  477 +#####
  478 +
  479 +KeyEventCallBack 閫
  480 +
  481 +| **妍** | **霂湔** | **** | **憭釣** |
  482 +| --- | --- | --- | --- |
  483 +|UCHAR iBaseID|蝡D|1||
  484 +|unsigned long long keySn|N|1837454011||
  485 +|float Time|[蝘|0.5||
  486 +|int mode|璅∪4||
  487 +|int RxMode|憸0||
  488 +|const char* sInfo||"0,99.99,0,0"|"憸,,憸,憸"|
  489 +
  490 +#####
  491 +```C++
  492 +ExitEvent(4); //撣行摮芋撘蝛粹璅∪
288 493 ```
  494 +HDParamCallBack 閫
  495 +
  496 +| **妍** | **霂湔** | **閫** | **憭釣** |
  497 +| --- | --- | --- | --- |
  498 +|int iBaseID|蝡D|1||
  499 +|int mode|璅∪0||
  500 +|const char* sInfo|摮泵銝琍"4,OK"|4嚗蒂摮芋撘蝛粹璅∪
  501 +
289 502  
290   -## 摮[N]
  503 +### 摮[N]
291 504 妍嚗tart_Number_Event_SN
292 505 嚗摮[N]
293 506 霂湔DK蝞∠蝥輸挽蝵桐蛹摮璅∪
... ... @@ -320,7 +533,47 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Number_Event_SN(
320 533 const char* Txt); //
321 534 ```
322 535  
323   -## 憸[撟踵]
  536 +#### 靘
  537 +靘摮隞乩耨蝏舅雿嚗655嚗0
  538 +#####
  539 +```C++
  540 +Start_Number_Event_SN(0,1837454011,0, 0, 0, 2, 655, 0, 3, "TXT"); //撘摮
  541 +```
  542 +VoteEventCallBack 閫
  543 +
  544 +| **妍** | **霂湔** | **閫** | **憭釣** |
  545 +| --- | --- | --- | --- |
  546 +|int iBaseID|蝡D|1||
  547 +|int mode|璅∪301:S6<br>302:T2||
  548 +|const char* sInfo|摮泵銝琍S6:"巨璅∪,N,蝏,憸,憸" <br>T2:"巨璅∪,N,蝏"||
  549 +
  550 +#####
  551 +
  552 +KeyEventCallBack 閫
  553 +
  554 +| **妍** | **霂湔** | **** | **憭釣** |
  555 +| --- | --- | --- | --- |
  556 +|UCHAR iBaseID|蝡D|1||
  557 +|unsigned long long keySn|N|1837454011||
  558 +|float Time|[蝘|0.5||
  559 +|int mode|璅∪1||
  560 +|int RxMode|憸0||
  561 +|const char* sInfo||"0,99.99,0,0"|"憸,,憸,憸"|
  562 +
  563 +#####
  564 +```C++
  565 +ExitEvent(4); //撣行摮芋撘蝛粹璅∪
  566 +```
  567 +HDParamCallBack 閫
  568 +
  569 +| **妍** | **霂湔** | **閫** | **憭釣** |
  570 +| --- | --- | --- | --- |
  571 +|int iBaseID|蝡D|1||
  572 +|int mode|璅∪0||
  573 +|const char* sInfo|摮泵銝琍"4,OK"|4嚗蒂摮芋撘蝛粹璅∪
  574 +
  575 +## 憸
  576 +### 憸[撟踵]
324 577 妍嚗tart_TrueFalse_Event
325 578 嚗憸[撟踵]
326 579 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憸璅∪
... ... @@ -328,8 +581,9 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Number_Event_SN(
328 581 | **妍** | **霂湔** | **** | **憭釣** |
329 582 |---|---|---|---|
330 583 | optionsMode | ★蝐餃 | 1:True/False 撖/ </br>2:Yes/No /</br> 3:/
331   -| secrecyMode | 靽芋撘 | 0:銝(暺恕) </br> 1:靽
332 584 | modifyMode | 靽格璅∪ | 0:銝靽格</br>1:隞乩耨(暺恕)|
  585 +| secrecyMode | 靽芋撘 | 0:銝(暺恕) </br> 1:靽
  586 +
333 587  
334 588  
335 589
... ... @@ -340,7 +594,48 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_TrueFalse_Event(
340 594 int Moed3 = 0);
341 595 ```
342 596  
343   -## 憸[N]
  597 +#### 靘
  598 +靘憸隞乩耨蝏
  599 +#####
  600 +```C++
  601 +Set_Custom_Title(0, 3, "TXT"); //霈曄蔭摰
  602 +Start_TrueFalse_Event(1, 1, 0); //撘憸
  603 +```
  604 +HDParamCallBack 閫
  605 +
  606 +| **妍** | **霂湔** | **閫** | **憭釣** |
  607 +| --- | --- | --- | --- |
  608 +|int iBaseID|蝡D|1||
  609 +|int mode|璅∪912|憸芋撘
  610 +|const char* sInfo|摮泵銝琍"OK"|
  611 +
  612 +#####
  613 +
  614 +KeyEventCallBack 閫
  615 +
  616 +| **妍** | **霂湔** | **** | **憭釣** |
  617 +| --- | --- | --- | --- |
  618 +|UCHAR iBaseID|蝡D|1||
  619 +|unsigned long long keySn|N|1837454011||
  620 +|float Time|[蝘|0.5||
  621 +|int mode|璅∪5||
  622 +|int RxMode|憸0||
  623 +|const char* sInfo||"0,1,0,0"|"憸,,憸,憸"|
  624 +
  625 +#####
  626 +```C++
  627 +ExitEvent(5); //撣血憸芋撘蝛粹璅∪
  628 +```
  629 +HDParamCallBack 閫
  630 +
  631 +| **妍** | **霂湔** | **閫** | **憭釣** |
  632 +| --- | --- | --- | --- |
  633 +|int iBaseID|蝡D|1||
  634 +|int mode|璅∪0||
  635 +|const char* sInfo|摮泵銝琍"5,OK"|5嚗蒂憸芋撘蝛粹璅∪
  636 +
  637 +
  638 +### 憸[N]
344 639 妍嚗tart_TrueFalse_Event_SN
345 640 嚗憸[N]
346 641 霂湔DK蝞∠蝥輸挽蝵桐蛹憸璅∪
... ... @@ -350,24 +645,65 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_TrueFalse_Event(
350 645 |UCHAR iBaseID|蝡D|0~32||
351 646 |ULONG KeySN|N|||
352 647 | optionsMode | ★蝐餃 | 1:True/False 撖/ </br>2:Yes/No /</br> 3:/
353   -| secrecyMode | 靽芋撘 | 0:銝(暺恕) </br> 1:靽
354 648 | modifyMode | 靽格璅∪ | 0:銝靽格</br>1:隞乩耨(暺恕)|
  649 +| secrecyMode | 靽芋撘 | 0:銝(暺恕) </br> 1:靽
355 650 |UCHAR Txt_Len|內摨帆1~16摮|
356 651 |Txt|內摮泵銝莎摨行憭16銝芸
357 652  
358 653
359 654 ```C++
360   -extern"C" __declspec(dllexport) bool T2_Start_TrueFalse_Event(
  655 +extern"C" __declspec(dllexport) bool Start_TrueFalse_Event_SN(
361 656 UCHAR iBaseID,
362 657 ULONG KeySN,
363   - int Moed1,
364   - int Moed2,
365   - int Moed3,
  658 + int optionsMode,
  659 + int modifyMode,
  660 + int secrecyMode,
366 661 UCHAR Txt_Len,
367 662 const char* Txt); //
368 663 ```
369 664  
370   -## 憸[撟踵]
  665 +#### 靘
  666 +靘憸隞乩耨蝏
  667 +#####
  668 +```C++
  669 +Start_TrueFalse_Event_SN(0,1837454011,1, 1, 0, 3, "TXT"); //撘憸
  670 +```
  671 +VoteEventCallBack 閫
  672 +
  673 +| **妍** | **霂湔** | **閫** | **憭釣** |
  674 +| --- | --- | --- | --- |
  675 +|int iBaseID|蝡D|1||
  676 +|int mode|璅∪301:S6<br>302:T2||
  677 +|const char* sInfo|摮泵銝琍S6:"巨璅∪,N,蝏,憸,憸" <br>T2:"巨璅∪,N,蝏"||
  678 +
  679 +#####
  680 +
  681 +KeyEventCallBack 閫
  682 +
  683 +| **妍** | **霂湔** | **** | **憭釣** |
  684 +| --- | --- | --- | --- |
  685 +|UCHAR iBaseID|蝡D|1||
  686 +|unsigned long long keySn|N|1837454011||
  687 +|float Time|[蝘|0.5||
  688 +|int mode|璅∪5||
  689 +|int RxMode|憸0||
  690 +|const char* sInfo||"0,1,0,0"|"憸,,憸,憸"|
  691 +
  692 +#####
  693 +```C++
  694 +ExitEvent(5); //撣血憸芋撘蝛粹璅∪
  695 +```
  696 +HDParamCallBack 閫
  697 +
  698 +| **妍** | **霂湔** | **閫** | **憭釣** |
  699 +| --- | --- | --- | --- |
  700 +|int iBaseID|蝡D|1||
  701 +|int mode|璅∪0||
  702 +|const char* sInfo|摮泵銝琍"5,OK"|5嚗蒂憸芋撘蝛粹璅∪
  703 +
  704 +
  705 +## 憸
  706 +### 憸[撟踵]
371 707 妍嚗tart_TrueFalse_Event
372 708 嚗憸[撟踵]
373 709 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憸璅∪
... ... @@ -375,8 +711,8 @@ extern&quot;C&quot; __declspec(dllexport) bool T2_Start_TrueFalse_Event(
375 711 | **妍** | **霂湔** | **** | **憭釣** |
376 712 |---|---|---|---|
377 713 |optionsMode|★蝐餃|1:蝷箏(暺恕) </br>2:蝷箸摮 |
378   -|secrecyMode|靽芋撘0:銝(暺恕)</br>1:靽 |
379 714 |modifyMode|靽格璅∪0:銝靽格 </br>1:隞乩耨(暺恕) |
  715 +|secrecyMode|靽芋撘0:銝(暺恕)</br>1:靽 |
380 716 |lessMode|餈恍芋撘 0:蝻粹(暺恕) </br>1:銝蝻粹</br>2:捂</br>3:捂銝蝻粹 |
381 717 | options|★|1M10(暺恕4)|
382 718 | optionalN|★|1NM(暺恕1)|
... ... @@ -385,15 +721,55 @@ extern&quot;C&quot; __declspec(dllexport) bool T2_Start_TrueFalse_Event(
385 721
386 722 ```C++
387 723 extern"C" __declspec(dllexport) bool Start_Choice_Event(
388   - int Moed1 = 1,
389   - int Moed2 = 0,
390   - int Moed3 = 0,
391   - int Moed4 = 0,
392   - int Moed5 = 0,
393   - int Moed6 = 0);
  724 + int optionsMode,
  725 + int modifyMode,
  726 + int secrecyMode,
  727 + int lessMode,
  728 + int options,
  729 + int optionalN);
  730 +```
  731 +
  732 +#### 靘
  733 +靘憸掩41嚗隞乩耨蝏
  734 +#####
  735 +```C++
  736 +Set_Custom_Title(0, 3, "TXT"); //霈曄蔭摰
  737 +Start_Choice_Event(1, 1, 0嚗0, 4, 1); //撘憸
394 738 ```
  739 +HDParamCallBack 閫
395 740  
396   -## 憸[N]
  741 +| **妍** | **霂湔** | **閫** | **憭釣** |
  742 +| --- | --- | --- | --- |
  743 +|int iBaseID|蝡D|1||
  744 +|int mode|璅∪910|憸芋撘
  745 +|const char* sInfo|摮泵銝琍"OK"|
  746 +
  747 +#####
  748 +
  749 +KeyEventCallBack 閫
  750 +
  751 +| **妍** | **霂湔** | **** | **憭釣** |
  752 +| --- | --- | --- | --- |
  753 +|UCHAR iBaseID|蝡D|1||
  754 +|unsigned long long keySn|N|1837454011||
  755 +|float Time|[蝘|0.5||
  756 +|int mode|璅∪10||
  757 +|int RxMode|憸0||
  758 +|const char* sInfo||"0,A,0,0"|"憸,,憸,憸"|
  759 +
  760 +#####
  761 +```C++
  762 +ExitEvent(10); //撣血憸芋撘蝛粹璅∪
  763 +```
  764 +HDParamCallBack 閫
  765 +
  766 +| **妍** | **霂湔** | **閫** | **憭釣** |
  767 +| --- | --- | --- | --- |
  768 +|int iBaseID|蝡D|1||
  769 +|int mode|璅∪0||
  770 +|const char* sInfo|摮泵銝琍"5,OK"|5嚗蒂憸芋撘蝛粹璅∪
  771 +
  772 +### 憸[N]
397 773 妍嚗tart_Choice_Event_SN
398 774 嚗憸[N]
399 775 霂湔DK蝞∠蝥輸挽蝵桐蛹憸璅∪
... ... @@ -416,17 +792,58 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Choice_Event(
416 792 extern"C" __declspec(dllexport) bool Start_Choice_Event_SN(
417 793 UCHAR iBaseID,
418 794 ULONG KeySN,
419   - int Moed1,
420   - int Moed2,
421   - int Moed3,
422   - int Moed4,
423   - int Moed5,
424   - int Moed6,
  795 + int optionsMode,
  796 + int modifyMode,
  797 + int secrecyMode,
  798 + int lessMode,
  799 + int options,
  800 + int optionalN,
425 801 UCHAR Txt_Len,
426 802 const char* Txt);
427 803 ```
428 804  
429   -## 霂剝憸[撟踵]
  805 +#### 靘
  806 +靘憸掩41嚗隞乩耨蝏
  807 +#####
  808 +```C++
  809 +Start_Choice_Event_SN(0,1837454011, 1, 1, 0嚗0, 4, 1, 3, "TXT"); //撘憸
  810 +```
  811 +VoteEventCallBack 閫
  812 +
  813 +| **妍** | **霂湔** | **閫** | **憭釣** |
  814 +| --- | --- | --- | --- |
  815 +|int iBaseID|蝡D|1||
  816 +|int mode|璅∪301:S6<br>302:T2||
  817 +|const char* sInfo|摮泵銝琍S6:"巨璅∪,N,蝏,憸,憸" <br>T2:"巨璅∪,N,蝏"||
  818 +
  819 +#####
  820 +
  821 +KeyEventCallBack 閫
  822 +
  823 +| **妍** | **霂湔** | **** | **憭釣** |
  824 +| --- | --- | --- | --- |
  825 +|UCHAR iBaseID|蝡D|1||
  826 +|unsigned long long keySn|N|1837454011||
  827 +|float Time|[蝘|0.5||
  828 +|int mode|璅∪10||
  829 +|int RxMode|憸0||
  830 +|const char* sInfo||"0,A,0,0"|"憸,,憸,憸"|
  831 +
  832 +#####
  833 +```C++
  834 +ExitEvent(10); //撣阡憸芋撘蝛粹璅∪
  835 +```
  836 +HDParamCallBack 閫
  837 +
  838 +| **妍** | **霂湔** | **閫** | **憭釣** |
  839 +| --- | --- | --- | --- |
  840 +|int iBaseID|蝡D|1||
  841 +|int mode|璅∪0||
  842 +|const char* sInfo|摮泵銝琍"10,OK"|10嚗蒂憸芋撘蝛粹璅∪
  843 +
  844 +
  845 +## 霂剝憸
  846 +### 霂剝憸[撟踵]
430 847 妍嚗tart_Voice_Event
431 848 嚗祗憸[撟踵]
432 849 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹霂剝憸璅∪
... ... @@ -450,7 +867,52 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Voice_Event(
450 867 int OutMode);
451 868 ```
452 869  
453   -## 霂剝憸[N]
  870 +#### 靘
  871 +靘霂剝憸p3撘
  872 +#####
  873 +```C++
  874 +Set_Custom_Title(0, 3, "TXT"); //霈曄蔭摰
  875 +Start_Voice_Event(0, 0, 0嚗0); //撘霂剝憸
  876 +```
  877 +HDParamCallBack 閫
  878 +
  879 +| **妍** | **霂湔** | **閫** | **憭釣** |
  880 +| --- | --- | --- | --- |
  881 +|int iBaseID|蝡D|1||
  882 +|int mode|璅∪922|霂剝憸芋撘
  883 +|const char* sInfo|摮泵銝琍"OK"|
  884 +
  885 +#####
  886 +
  887 +VoiceStreamEventCallBackFunc 閫
  888 +
  889 +| **妍** | **霂湔** | **** | **憭釣** |
  890 +| --- | --- | --- | --- |
  891 +|UCHAR iBaseID|蝡D|1||
  892 +|unsigned long keySn|N|1837454011||
  893 +|int Mode|璅∪0:mp3(暺恕)<br>1:摰瘚|
  894 +|USHORT voiceId|D|蝑漱霂剝嚗挾霂剝瘚銝芸D嚗鈭|
  895 +|USHORT dataIndex||1撘憪|
  896 +|const char* data||Mode=0嚗MP3辣頝臬 <br> Mode=1嚗摰瘚|
  897 +|int len|摨帆Base64蝻泵銝脤摨艾砲撠 "data" ase64閫摨艾|
  898 +|int sampleRate|憸16000||
  899 +|int bitsPerSample|憸蝎曉漲|16||
  900 +|int channel|憯圈|1|ㄟ
  901 +|int recFlag|蝏暺恕銝0嚗蛹1銵函內蝏|
  902 +
  903 +#####
  904 +```C++
  905 +ExitEvent(16); //撣西祗憸芋撘蝛粹璅∪
  906 +```
  907 +HDParamCallBack 閫
  908 +
  909 +| **妍** | **霂湔** | **閫** | **憭釣** |
  910 +| --- | --- | --- | --- |
  911 +|int iBaseID|蝡D|1||
  912 +|int mode|璅∪0||
  913 +|const char* sInfo|摮泵銝琍"16,OK"|16嚗蒂霂剝憸芋撘蝛粹璅∪
  914 +
  915 +### 霂剝憸[N]
454 916 妍嚗tart_Voice_Event_SN
455 917 嚗祗憸[N]
456 918 霂湔DK蝞∠蝥輸挽蝵桐蛹霂剝憸璅∪
... ... @@ -481,7 +943,52 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Voice_Event_SN(
481 943 const char* Txt);//
482 944 ```
483 945  
484   -## 憸
  946 +#### 靘
  947 +靘霂剝憸p3撘
  948 +#####
  949 +```C++
  950 +Start_Voice_Event_SN(0,1837454011, 0, 0, 0嚗0, 3, "TXT"); //撘霂剝憸
  951 +```
  952 +VoteEventCallBack 閫
  953 +
  954 +| **妍** | **霂湔** | **閫** | **憭釣** |
  955 +| --- | --- | --- | --- |
  956 +|int iBaseID|蝡D|1||
  957 +|int mode|璅∪301:S6<br>302:T2||
  958 +|const char* sInfo|摮泵銝琍S6:"巨璅∪,N,蝏,憸,憸" <br>T2:"巨璅∪,N,蝏"||
  959 +
  960 +#####
  961 +
  962 +VoiceStreamEventCallBackFunc 閫
  963 +
  964 +| **妍** | **霂湔** | **** | **憭釣** |
  965 +| --- | --- | --- | --- |
  966 +|UCHAR iBaseID|蝡D|1||
  967 +|unsigned long keySn|N|1837454011||
  968 +|int Mode|璅∪0:mp3(暺恕)<br>1:摰瘚|
  969 +|USHORT voiceId|D|蝑漱霂剝嚗挾霂剝瘚銝芸D嚗鈭|
  970 +|USHORT dataIndex||1撘憪|
  971 +|const char* data||Mode=0嚗MP3辣頝臬 <br> Mode=1嚗摰瘚|
  972 +|int len|摨帆Base64蝻泵銝脤摨艾砲撠 "data" ase64閫摨艾|
  973 +|int sampleRate|憸16000||
  974 +|int bitsPerSample|憸蝎曉漲|16||
  975 +|int channel|憯圈|1|ㄟ
  976 +|int recFlag|蝏暺恕銝0嚗蛹1銵函內蝏|
  977 +
  978 +#####
  979 +```C++
  980 +ExitEvent(16); //撣西祗憸芋撘蝛粹璅∪
  981 +```
  982 +HDParamCallBack 閫
  983 +
  984 +| **妍** | **霂湔** | **閫** | **憭釣** |
  985 +| --- | --- | --- | --- |
  986 +|int iBaseID|蝡D|1||
  987 +|int mode|璅∪0||
  988 +|const char* sInfo|摮泵銝琍"16,OK"|16嚗蒂霂剝憸芋撘蝛粹璅∪
  989 +
  990 +## 憸
  991 +### 憸
485 992 妍嚗tart_Free_Question_Event
486 993 嚗憸
487 994 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憸璅∪
... ... @@ -489,7 +996,7 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Voice_Event_SN(
489 996 | **妍** | **霂湔** | **** | **憭釣** |
490 997 |---|---|---|---|
491 998 |UCHAR iBaseID|蝡D|0~32||
492   -|ULONG KeySN|N|||
  999 +|ULONG KeySN|N|0嚗恕慝|
493 1000  
494 1001  
495 1002
... ... @@ -498,8 +1005,47 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Free_Question_Event(
498 1005 UCHAR iBaseID,
499 1006 ULONG KeySN);
500 1007 ```
  1008 +#### 靘
  1009 +靘憸
  1010 +#####
  1011 +```C++
  1012 +Start_Free_Question_Event(0,0); //撘憸
  1013 +```
  1014 +HDParamCallBack 閫
  1015 +
  1016 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1017 +| --- | --- | --- | --- |
  1018 +|int iBaseID|蝡D|1||
  1019 +|int mode|璅∪943|憸芋撘
  1020 +|const char* sInfo|摮泵銝琍"OK"|
  1021 +
  1022 +#####
  1023 +
  1024 +KeyEventCallBack 閫
  1025 +
  1026 +| **妍** | **霂湔** | **** | **憭釣** |
  1027 +| --- | --- | --- | --- |
  1028 +|UCHAR iBaseID|蝡D|1||
  1029 +|unsigned long long keySn|N|1837454011||
  1030 +|float Time|[蝘|0.5||
  1031 +|int mode|璅∪10||
  1032 +|int RxMode|憸0||
  1033 +|const char* sInfo||"0,A,0,0"|"憸,,憸,憸"|
  1034 +
  1035 +#####
  1036 +```C++
  1037 +ExitEvent(10); //撣西憸芋撘蝛粹璅∪
  1038 +```
  1039 +HDParamCallBack 閫
501 1040  
502   -## 蝑
  1041 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1042 +| --- | --- | --- | --- |
  1043 +|int iBaseID|蝡D|1||
  1044 +|int mode|璅∪0||
  1045 +|const char* sInfo|摮泵銝琍"10,OK"|10嚗蒂憸芋撘蝛粹璅∪
  1046 +
  1047 +## 蝑
  1048 +### 蝑
503 1049  
504 1050 妍嚗tart_Rush_Answer_Event
505 1051 嚗蝑
... ... @@ -507,20 +1053,58 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Free_Question_Event(
507 1053  
508 1054 | **妍** | **霂湔** | **** | **憭釣** |
509 1055 |---|---|---|---|
510   -|rushAnswerMode| 蝑芋撘0:蝑(暺恕)|
511   -|Moed2| 憸0:(暺恕)|
512   -|modifyMode|靽格璅∪0:銝靽格<br>1:隞乩耨(暺恕)|
  1056 +|int rushAnswerMode| 蝑芋撘0:蝑(暺恕)|
  1057 +|int Moed2| 憸0:(暺恕)|
  1058 +|int modifyMode|靽格璅∪0:銝靽格<br>1:隞乩耨(暺恕)|
513 1059  
514 1060  
515 1061
516 1062 ```C++
517 1063 extern"C" __declspec(dllexport) bool Start_Rush_Answer_Event(
518   - int Moed1 = 1,
519   - int Moed2 = 0,
520   - int Moed3 = 0); //蝑
  1064 + int intrushAnswerMode,
  1065 + int Moed2,
  1066 + int modifyMode); //蝑
  1067 +```
  1068 +#### 靘
  1069 +靘蝑
  1070 +#####
  1071 +```C++
  1072 +Start_Rush_Answer_Event(0, 0, 0); //撘蝑
  1073 +```
  1074 +HDParamCallBack 閫
  1075 +
  1076 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1077 +| --- | --- | --- | --- |
  1078 +|int iBaseID|蝡D|1||
  1079 +|int mode|璅∪914|蝑芋撘
  1080 +|const char* sInfo|摮泵銝琍"OK"|
  1081 +
  1082 +#####
  1083 +
  1084 +KeyEventCallBack 閫
  1085 +
  1086 +| **妍** | **霂湔** | **** | **憭釣** |
  1087 +| --- | --- | --- | --- |
  1088 +|UCHAR iBaseID|蝡D|1||
  1089 +|unsigned long long keySn|N|1837454011||
  1090 +|float Time|[蝘|0.5||
  1091 +|int mode|璅∪13||
  1092 +|int RxMode|憸0||
  1093 +|const char* sInfo||"0,1,0,0"|"憸,,憸,憸"|
  1094 +
  1095 +#####
  1096 +```C++
  1097 +ExitEvent(13); //撣阡憸芋撘蝛粹璅∪
521 1098 ```
  1099 +HDParamCallBack 閫
522 1100  
523   -## 蝑[N]
  1101 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1102 +| --- | --- | --- | --- |
  1103 +|int iBaseID|蝡D|1||
  1104 +|int mode|璅∪0||
  1105 +|const char* sInfo|摮泵銝琍"13,OK"|13嚗蒂蝑芋撘蝛粹璅∪
  1106 +
  1107 +### 蝑[N]
524 1108 妍嚗tart_Rush_Answer_Event_SN
525 1109 嚗蝑[N]
526 1110 霂湔DK蝞∠蝥輸挽蝵桐蛹蝑璅∪
... ... @@ -529,23 +1113,62 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Rush_Answer_Event(
529 1113 | --- | --- | --- | --- |
530 1114 |UCHAR iBaseID|蝡D|0~32||
531 1115 |ULONG KeySN|N|||
532   -|rushAnswerMode| 蝑芋撘0:蝑(暺恕)|
533   -|Moed2| 憸0:(暺恕)|
534   -|modifyMode|靽格璅∪0:銝靽格<br>1:隞乩耨(暺恕)|
535   -|UCHAR Txt_Len|內摨帆1~16摮|
536   -|Txt|內摮泵銝莎摨行憭16銝芸
  1116 +|int rushAnswerMode| 蝑芋撘0:蝑(暺恕)|
  1117 +|int Moed2| 憸0:(暺恕)|
  1118 +|int modifyMode|靽格璅∪0:銝靽格<br>1:隞乩耨(暺恕)|
  1119 +
537 1120  
538 1121
539 1122 ```C++
540 1123 extern"C" __declspec(dllexport) bool Start_Rush_Answer_Event_SN(
541 1124 UCHAR iBaseID,
542 1125 ULONG KeySN,
543   - int Moed1 = 1,
544   - int Moed2 = 0,
545   - int Moed3 = 0); //蝑芋撘
  1126 + int rushAnswerMode,
  1127 + int Moed2,
  1128 + int modifyMode); //蝑芋撘
  1129 +```
  1130 +
  1131 +#### 靘
  1132 +靘蝑
  1133 +#####
  1134 +```C++
  1135 +Start_Rush_Answer_Event_SN(0,1837454011, 0, 0, 0); //撘蝑
  1136 +```
  1137 +VoteEventCallBack 閫
  1138 +
  1139 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1140 +| --- | --- | --- | --- |
  1141 +|int iBaseID|蝡D|1||
  1142 +|int mode|璅∪301:S6<br>302:T2||
  1143 +|const char* sInfo|摮泵銝琍S6:"巨璅∪,N,蝏,憸,憸" <br>T2:"巨璅∪,N,蝏"||
  1144 +
  1145 +#####
  1146 +
  1147 +keyEventCallBack 閫
  1148 +
  1149 +| **妍** | **霂湔** | **** | **憭釣** |
  1150 +| --- | --- | --- | --- |
  1151 +|UCHAR iBaseID|蝡D|1||
  1152 +|unsigned long long keySn|N|1837454011||
  1153 +|float Time|[蝘|0.5||
  1154 +|int mode|璅∪13||
  1155 +|int RxMode|憸0||
  1156 +|const char* sInfo||"0,1,0,0"|"憸,,憸,憸"|
  1157 +
  1158 +#####
  1159 +```C++
  1160 +ExitEvent(13); //撣行蝑芋撘蝛粹璅∪
546 1161 ```
  1162 +HDParamCallBack 閫
547 1163  
548   -## 憛怎征憸
  1164 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1165 +| --- | --- | --- | --- |
  1166 +|int iBaseID|蝡D|1||
  1167 +|int mode|璅∪0||
  1168 +|const char* sInfo|摮泵銝琍"13,OK"|13嚗蒂蝑芋撘蝛粹璅∪
  1169 +
  1170 +## 憛怎征憸
  1171 +### 憛怎征憸
549 1172  
550 1173 妍嚗tart_Rush_Answer_Event
551 1174 嚗‵蝛粹
... ... @@ -553,43 +1176,123 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_Rush_Answer_Event_SN(
553 1176  
554 1177 | **妍** | **霂湔** | **** | **憭釣** |
555 1178 |---|---|---|---|
556   -| optionsMode | 憛怎征蝐餃 | 1:隞餅(暺恕) |
557   -| modifyMode | 憸 | 1: (暺恕) |
558   -| secrecyMode | 憸 | 0: (暺恕) |
  1179 +| int optionsMode | 憛怎征蝐餃 | 1:隞餅(暺恕) |
  1180 +| int modifyMode | 靽格璅∪0:銝靽格 </br>1:隞乩耨(暺恕)|
  1181 +| int secrecyMode | 憸 | 0: (暺恕) |
559 1182  
560 1183  
561 1184
562 1185 ```C++
563 1186 extern"C" __declspec(dllexport) bool Start_TextAnswer_Event(
564   - int Moed1 = 1,
565   - int Moed2 = 0,
566   - int Moed3 = 0);
  1187 + int optionsMode,
  1188 + int modifyMode,
  1189 + int secrecyMode);
567 1190 ```
568 1191  
569   -## 憛怎征憸[N]
570   -妍嚗tart_Rush_Answer_Event_SN
571   -嚗‵蝛粹[N]
572   -霂湔DK蝞∠蝥輸挽蝵桐蛹憛怎征憸璅∪
  1192 +#### 靘
  1193 +靘蝑
  1194 +#####
  1195 +```C++
  1196 +Start_TextAnswer_Event(1, 1, 0); //撘憛怎征憸
  1197 +```
  1198 +HDParamCallBack 閫
573 1199  
574   -| **妍** | **霂湔** | **** | **憭釣** |
  1200 +| **妍** | **霂湔** | **** | **憭釣** |
575 1201 | --- | --- | --- | --- |
576   -|UCHAR iBaseID|蝡D|0~32||
  1202 +|int iBaseID|蝡D|1||
  1203 +|int mode|璅∪924|蝑芋撘
  1204 +|const char* sInfo|摮泵銝琍"OK"|
  1205 +
  1206 +#####
  1207 +
  1208 +KeyEventCallBack 閫
  1209 +
  1210 +| **妍** | **霂湔** | **** | **憭釣** |
  1211 +| --- | --- | --- | --- |
  1212 +|UCHAR iBaseID|蝡D|1||
  1213 +|unsigned long long keySn|N|1837454011||
  1214 +|float Time|[蝘|0.5||
  1215 +|int mode|璅∪12||
  1216 +|int RxMode|憸0||
  1217 +|const char* sInfo||"憛怎征捆"||
  1218 +
  1219 +#####
  1220 +```C++
  1221 +ExitEvent(12); //撣血‵蝛粹芋撘蝛粹璅∪
  1222 +```
  1223 +HDParamCallBack 閫
  1224 +
  1225 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1226 +| --- | --- | --- | --- |
  1227 +|int iBaseID|蝡D|1||
  1228 +|int mode|璅∪0||
  1229 +|const char* sInfo|摮泵銝琍"12,OK"|12嚗蒂憛怎征憸芋撘蝛粹璅∪
  1230 +
  1231 +
  1232 +### 憛怎征憸[N]
  1233 +妍嚗tart_TextAnswer_Event_SN
  1234 +嚗‵蝛粹[N]
  1235 +霂湔DK蝞∠蝥輸挽蝵桐蛹憛怎征憸璅∪
  1236 +
  1237 +| **妍** | **霂湔** | **** | **憭釣** |
  1238 +| --- | --- | --- | --- |
  1239 +|UCHAR iBaseID|蝡D|0~32||
577 1240 |ULONG KeySN|N|||
578   -| optionsMode | 憛怎征蝐餃 | 1:隞餅(暺恕) |
579   -| modifyMode | 憸 | 1: (暺恕) |
580   -| secrecyMode | 憸 | 0: (暺恕) |
  1241 +| int optionsMode | 憛怎征蝐餃 | 1:隞餅(暺恕) |
  1242 +| int modifyMode | 靽格璅∪0:銝靽格 </br>1:隞乩耨(暺恕)|
  1243 +| int secrecyMode | 憸 | 0: (暺恕) |
581 1244  
582 1245
583 1246 ```C++
584 1247 extern"C" __declspec(dllexport) bool Start_TextAnswer_Event_SN(
585 1248 UCHAR iBaseID,
586 1249 ULONG KeySN,
587   - int Moed1 = 1,
588   - int Moed2 = 0,
589   - int Moed3 = 0); //蝑芋撘
  1250 + int optionsMode,
  1251 + int modifyMode,
  1252 + int secrecyMode); //憛怎征璅∪
  1253 +```
  1254 +
  1255 +#### 靘
  1256 +靘憛怎征憸
  1257 +#####
  1258 +```C++
  1259 +Start_Rush_Answer_Event_SN(0,1837454011, 0, 0, 0); //撘憛怎征憸
  1260 +```
  1261 +VoteEventCallBack 閫
  1262 +
  1263 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1264 +| --- | --- | --- | --- |
  1265 +|int iBaseID|蝡D|1||
  1266 +|int mode|璅∪301:S6<br>302:T2||
  1267 +|const char* sInfo|摮泵銝琍S6:"巨璅∪,N,蝏,憸,憸" <br>T2:"巨璅∪,N,蝏"||
  1268 +
  1269 +#####
  1270 +
  1271 +keyEventCallBack 閫
  1272 +
  1273 +| **妍** | **霂湔** | **** | **憭釣** |
  1274 +| --- | --- | --- | --- |
  1275 +|UCHAR iBaseID|蝡D|1||
  1276 +|unsigned long long keySn|N|1837454011||
  1277 +|float Time|[蝘|0.5||
  1278 +|int mode|璅∪12||
  1279 +|int RxMode|憸0||
  1280 +|const char* sInfo||"憛怎征捆"||
  1281 +
  1282 +#####
  1283 +```C++
  1284 +ExitEvent(12); //撣血‵蝛粹芋撘蝛粹璅∪
590 1285 ```
  1286 +HDParamCallBack 閫
  1287 +
  1288 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1289 +| --- | --- | --- | --- |
  1290 +|int iBaseID|蝡D|1||
  1291 +|int mode|璅∪0||
  1292 +|const char* sInfo|摮泵銝琍"12,OK"|12嚗蒂憛怎征憸芋撘蝛粹璅∪
591 1293  
592   -## 璅⊥[撟踵]
  1294 +## 璅⊥
  1295 +### 璅⊥[撟踵]
593 1296 妍嚗ockTest_Event
594 1297 嚗芋[撟踵]
595 1298 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憸璅∪
... ... @@ -597,21 +1300,61 @@ extern&quot;C&quot; __declspec(dllexport) bool Start_TextAnswer_Event_SN(
597 1300 | **妍** | **霂湔** | **** | **憭釣** |
598 1301 |---|---|---|---|
599 1302 |UCHAR iBaseID|蝡D|0~32||
600   -|int Moed1|璅∪||
601   -|UCHAR KeyTime|撘|||
602   -|UCHAR GapTime||||
  1303 +|int Moed1|璅∪1-<br>2-璅⊥|
  1304 +|UCHAR KeyTime|撘|璅⊥嚗0=撽砌|
  1305 +|UCHAR GapTime||漱漱嚗芋耨嚗0=銝|
603 1306  
604 1307  
605 1308
606 1309 ```C++
607 1310 extern"C" __declspec(dllexport) bool MockTest_Event(
608 1311 UCHAR iBaseID,
609   - int Moed1 = 1,
610   - UCHAR KeyTime = 1,
611   - UCHAR GapTime = 1); //璅⊥1
  1312 + int Moed1,
  1313 + UCHAR KeyTime,
  1314 + UCHAR GapTime); //璅⊥1
  1315 +```
  1316 +
  1317 +#### 靘
  1318 +靘璅⊥
  1319 +#####
  1320 +```C++
  1321 +MockTest_Event(0, 1, 0, 0); //撘璅⊥
  1322 +```
  1323 +HDParamCallBack 閫
  1324 +
  1325 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1326 +| --- | --- | --- | --- |
  1327 +|int iBaseID|蝡D|1||
  1328 +|int mode|璅∪9|璅⊥
  1329 +|const char* sInfo|摮泵銝琍"OK"|
  1330 +
  1331 +#####
  1332 +
  1333 +KeyEventCallBack 閫
  1334 +
  1335 +| **妍** | **霂湔** | **** | **憭釣** |
  1336 +| --- | --- | --- | --- |
  1337 +|UCHAR iBaseID|蝡D|1||
  1338 +|unsigned long long keySn|N|1837454011||
  1339 +|float Time|[蝘|0.5||
  1340 +|int mode|璅∪9||
  1341 +|int RxMode|憸0||
  1342 +|const char* sInfo|"67,1837454011,1.0,99"|",N,頧臭辣,"||
  1343 +
  1344 +#####
  1345 +```C++
  1346 +ExitEvent(9); //撣行芋芋撘蝛粹璅∪
612 1347 ```
  1348 +HDParamCallBack 閫
613 1349  
614   -## 撘郊瘚[撟踵]
  1350 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1351 +| --- | --- | --- | --- |
  1352 +|int iBaseID|蝡D|1||
  1353 +|int mode|璅∪0||
  1354 +|const char* sInfo|摮泵銝琍"9,OK"|9嚗蒂璅⊥芋撘蝛粹璅∪
  1355 +
  1356 +## 撘郊瘚
  1357 +### 撘郊瘚[撟踵]
615 1358 妍嚗estMode_Event
616 1359 嚗郊瘚[撟踵]
617 1360 霂湔DK蝞∠蝡蝥輸挽蝵桐蛹撘郊瘚璅∪
... ... @@ -619,8 +1362,8 @@ extern&quot;C&quot; __declspec(dllexport) bool MockTest_Event(
619 1362 | **妍** | **霂湔** | **** | **憭釣** |
620 1363 |---|---|---|---|
621 1364 |UCHAR iBaseID|蝡D|0~32||
622   -|int Moed|璅∪||
623   -|USHORT TestNum||||
  1365 +|int Moed|憸||
  1366 +|USHORT TestNum|瘚||
624 1367  
625 1368  
626 1369
... ... @@ -631,11 +1374,267 @@ extern&quot;C&quot; __declspec(dllexport) bool TestMode_Event(
631 1374 USHORT TestNum);
632 1375 ```
633 1376  
  1377 +#### 靘
  1378 +靘撘郊瘚瘚10
  1379 +#####
  1380 +```C++
  1381 +TestMode_Event(0, 0, 10); //撘撘郊瘚
  1382 +```
  1383 +HDParamCallBack 閫
  1384 +
  1385 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1386 +| --- | --- | --- | --- |
  1387 +|int iBaseID|蝡D|1||
  1388 +|int mode|璅∪14|撘郊瘚
  1389 +|const char* sInfo|摮泵銝琍"OK"|
  1390 +
  1391 +#####
  1392 +
  1393 +KeyEventCallBack 閫
  1394 +
  1395 +| **妍** | **霂湔** | **** | **憭釣** |
  1396 +| --- | --- | --- | --- |
  1397 +|UCHAR iBaseID|蝡D|1||
  1398 +|unsigned long long keySn|N|1837454011||
  1399 +|float Time|[蝘|0.5||
  1400 +|int mode|璅∪14||
  1401 +|int RxMode|憸0||
  1402 +|const char* sInfo||"1,1,0,0"|"憸蝻,,憸,憸"|
  1403 +
  1404 +#####
  1405 +```C++
  1406 +ExitEvent(0); //蝛粹璅∪
  1407 +```
  1408 +HDParamCallBack 閫
  1409 +
  1410 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1411 +| --- | --- | --- | --- |
  1412 +|int iBaseID|蝡D|1||
  1413 +|int mode|璅∪0||
  1414 +|const char* sInfo|摮泵銝琍"0,OK"|0嚗蝛粹璅∪
  1415 +
  1416 +## 憭芋撘
  1417 +### 憭芋撘
  1418 +妍嚗tart_Multiple_Questions_Event
  1419 +嚗憭芋撘[撟踵]
  1420 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憭芋撘璅∪
  1421 +
  1422 +| **妍** | **霂湔** | **** | **憭釣** |
  1423 +|---|---|---|---|
  1424 +|UCHAR iBaseID|蝡D|0~32||
  1425 +|USHORT EXAMNO|瘚|||
  1426 +|USHORT TOTAL|憸餅|||
  1427 +|UCHAR SELMAX|撩★|||
  1428 +|UCHAR QUES_MODE|憸蝷箇掩||
  1429 +|const char* str|憸+憸掩泵銝琍1,1,1,1,1嚗2,1,1,1,4;||
  1430 +
  1431 +
  1432 +隞
  1433 +```C++
  1434 +extern"C" __declspec(dllexport) bool Start_Multiple_Questions_Event(
  1435 + UCHAR iBaseID,
  1436 + USHORT EXAMNO,
  1437 + USHORT TOTAL,
  1438 + UCHAR SELMAX,
  1439 + UCHAR QUES_MODE,
  1440 + const char* str);
  1441 +```
  1442 +### 芋撘
  1443 +妍嚗ause_Multiple_Questions_Event
  1444 +嚗芋撘[撟踵]
  1445 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹芋撘璅∪
  1446 +
  1447 +| **妍** | **霂湔** | **** | **憭釣** |
  1448 +|---|---|---|---|
  1449 +|UCHAR iBaseID|蝡D|0~32||
  1450 +
  1451 +隞
  1452 +```C++
  1453 +extern"C" __declspec(dllexport) bool Pause_Multiple_Questions_Event(UCHAR iBaseID);
  1454 +```
  1455 +### 蝏抒賒憭芋撘
  1456 +妍嚗ontinue_Multiple_Questions_Event
  1457 +嚗憭芋撘[撟踵]
  1458 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憭芋撘璅∪
  1459 +
  1460 +| **妍** | **霂湔** | **** | **憭釣** |
  1461 +|---|---|---|---|
  1462 +|UCHAR iBaseID|蝡D|0~32||
  1463 +|USHORT EXAMNO|瘚|||
  1464 +|USHORT TOTAL|憸餅|||
  1465 +|UCHAR SELMAX|撩★|||
  1466 +|UCHAR QUES_MODE|憸蝷箇掩||
  1467 +|const char* str|憸+憸掩泵銝琍1,1,1,1,1嚗2,1,1,1,4;||
  1468 +
  1469 +
  1470 +隞
  1471 +```C++
  1472 +extern"C" __declspec(dllexport) bool Continue_Multiple_Questions_Event(
  1473 + UCHAR iBaseID,
  1474 + USHORT EXAMNO,
  1475 + USHORT TOTAL,
  1476 + UCHAR SELMAX,
  1477 + UCHAR QUES_MODE,
  1478 + const char* str);
  1479 +```
  1480 +### 甇&蝑
  1481 +妍嚗k_Multiple_Questions_Event
  1482 +嚗憭芋撘[撟踵]
  1483 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憭芋撘璅∪
  1484 +
  1485 +| **妍** | **霂湔** | **** | **憭釣** |
  1486 +|---|---|---|---|
  1487 +|UCHAR iBaseID|蝡D|0~32||
  1488 +|USHORT TOTAL|憸餅|||
  1489 +|const char* str|蝑泵銝琍||
  1490 +
  1491 +
  1492 +隞
  1493 +```C++
  1494 +extern"C" __declspec(dllexport) bool Ok_Multiple_Questions_Event(
  1495 + UCHAR iBaseID,
  1496 + USHORT TOTAL,
  1497 + char* str);
  1498 +```
  1499 +### 頧祉宏
  1500 +妍嚗k_Multiple_Questions_Event
  1501 +嚗憭芋撘[撟踵]
  1502 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹憭芋撘璅∪
  1503 +
  1504 +| **妍** | **霂湔** | **** | **憭釣** |
  1505 +|---|---|---|---|
  1506 +|UCHAR iBaseID|蝡D|0~32||
  1507 +|ULONG KeySN|N|||
  1508 +|USHORT EXAMNO|瘚|||
  1509 +|USHORT TOTAL|憸餅|||
  1510 +|const char* str|蝑泵銝琍||
  1511 +
  1512 +
  1513 +隞
  1514 +```C++
  1515 +extern"C" __declspec(dllexport) bool Copy_Multiple_Questions_Event(
  1516 + UCHAR iBaseID,
  1517 + ULONG KeySN,
  1518 + USHORT EXAMNO,
  1519 + USHORT TOTAL,
  1520 + char* str);
  1521 +```
  1522 +## 摰
  1523 +### 摰
  1524 +妍嚗ustom_Questions_Event
  1525 +嚗摰[撟踵]
  1526 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹摰璅∪
  1527 +
  1528 +| **妍** | **霂湔** | **** | **憭釣** |
  1529 +|---|---|---|---|
  1530 +|UCHAR iBaseID|蝡D|0~32||
  1531 +|const char* sInfo|憸摮泵銝琍||
  1532 +
  1533 +
  1534 +隞
  1535 +```C++
  1536 +extern"C" __declspec(dllexport) bool Custom_Questions_Event(
  1537 + UCHAR iBaseID,
  1538 + const char* sInfo);
  1539 +```
  1540 +## 敹恍笆
  1541 +### 撘敹恍笆[撟踵]
  1542 +妍嚗uickMatch
  1543 +嚗敹恍笆[撟踵]
  1544 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹撘敹恍笆璅∪
  1545 +
  1546 +| **妍** | **霂湔** | **** | **憭釣** |
  1547 +|---|---|---|---|
  1548 +|UCHAR iBaseID|蝡D|0~32||
  1549 +
  1550 +隞
  1551 +```C++
  1552 +extern"C" __declspec(dllexport) bool QuickMatch(UCHAR iBaseID);
  1553 +```
  1554 +
  1555 +#### 靘
  1556 +靘敹恍笆
  1557 +#####
  1558 +```C++
  1559 +QuickMatch(1); //撘敹恍笆
  1560 +```
  1561 +HDParamCallBack 閫
  1562 +
  1563 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1564 +| --- | --- | --- | --- |
  1565 +|int iBaseID|蝡D|1||
  1566 +|int mode|璅∪40|敹恍笆|
  1567 +|const char* sInfo|摮泵銝琍"OK"|
  1568 +
  1569 +
  1570 +
  1571 +#####
  1572 +```C++
  1573 +ExitEvent(40); //敹恍笆璅∪蝛粹璅∪
  1574 +```
  1575 +HDParamCallBack 閫
  1576 +
  1577 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1578 +| --- | --- | --- | --- |
  1579 +|int iBaseID|蝡D|1||
  1580 +|int mode|璅∪0||
  1581 +|const char* sInfo|摮泵銝琍"40,OK"|40嚗翰笆璅∪蝛粹璅∪
  1582 +
  1583 +### 撘敹恍笆[]
  1584 +妍嚗uickMatch_Pro
  1585 +嚗敹恍笆[撟踵]
  1586 +霂湔DK蝞∠蝡蝥輸挽蝵桐蛹撘敹恍笆璅∪
  1587 +
  1588 +| **妍** | **霂湔** | **** | **憭釣** |
  1589 +|---|---|---|---|
  1590 +|UCHAR iBaseID|蝡D|0~32||
  1591 +|UCHAR Mode|笆璅∪||
  1592 +|UCHAR Chan|靽⊿||
  1593 +|USHORT Id|絲憪D|||
  1594 +
  1595 +
  1596 +隞
  1597 +```C++
  1598 +extern"C" __declspec(dllexport) bool QuickMatch_Pro(
  1599 + UCHAR iBaseID,
  1600 + UCHAR Mode,
  1601 + UCHAR Chan,
  1602 + USHORT Id); //撘敹恍笆漣璅∪
  1603 +```
  1604 +
  1605 +#### 靘
  1606 +靘敹恍笆
  1607 +#####
  1608 +```C++
  1609 +QuickMatch_Pro(1嚗4, 10, 1); //撘敹恍笆
  1610 +```
  1611 +HDParamCallBack 閫
  1612 +
  1613 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1614 +| --- | --- | --- | --- |
  1615 +|int iBaseID|蝡D|1||
  1616 +|int mode|璅∪40|敹恍笆|
  1617 +|const char* sInfo|摮泵銝琍"OK"|
  1618 +
  1619 +
  1620 +
  1621 +#####
  1622 +```C++
  1623 +ExitEvent(40); //敹恍笆璅∪蝛粹璅∪
  1624 +```
  1625 +HDParamCallBack 閫
  1626 +
  1627 +| **妍** | **霂湔** | **閫** | **憭釣** |
  1628 +| --- | --- | --- | --- |
  1629 +|int iBaseID|蝡D|1||
  1630 +|int mode|璅∪0||
  1631 +|const char* sInfo|摮泵銝琍"40,OK"|40嚗翰笆璅∪蝛粹璅∪
  1632 +
634 1633 # 挽蝵
635 1634 ## 摰
636 1635 ### 霈曄蔭摰
637   -妍嚗etKeyNameTxt_C100B_S6
638   -嚗挽蝵桅摰100B+S6摰
  1636 +妍嚗etKeyNameTxt
  1637 +嚗挽蝵桅摰200 5.8G+T2200 2.4G+S6100+S6摰
639 1638 霂湔
640 1639  
641 1640 | **妍** | **霂湔** | **** | **憭釣** |
... ... @@ -656,6 +1655,36 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyNameTxt(
656 1655 const char *Name);
657 1656 ```
658 1657  
  1658 +#### 靘
  1659 +靘挽蝵桅摰
  1660 +#####
  1661 +```C++
  1662 +SetKeyNameTxt(1嚗1837454011, 2, "撘"); //霈曄蔭摰
  1663 +```
  1664 +keyEventCallBack 閫
  1665 +
  1666 +###### B200 2.4G + S6 B100 2.4G + S6
  1667 +
  1668 +| **妍** | **霂湔** | **** | **憭釣** |
  1669 +| --- | --- | --- | --- |
  1670 +|UCHAR iBaseID|蝡D|1||
  1671 +|unsigned long long keySn|N|1837454011||
  1672 +|float Time|[蝘|0|
  1673 +|int mode|璅∪303||
  1674 +|int RxMode|憸0||
  1675 +|const char* sInfo||"2,1,1,0"|",憸,摰芋撘,憸"|
  1676 +
  1677 +###### B200 5.8G + T2
  1678 +
  1679 +| **妍** | **霂湔** | **** | **憭釣** |
  1680 +| --- | --- | --- | --- |
  1681 +|UCHAR iBaseID|蝡D|1||
  1682 +|unsigned long long keySn|N|1837454011||
  1683 +|float Time|[蝘|0|
  1684 +|int mode|璅∪300<br>304||
  1685 +|int RxMode|憸0||
  1686 +|const char* sInfo||"2,0,2,0"<br>"2,0,5,0"|",憸,摰芋撘,憸"|
  1687 +
659 1688 ## 摰C100B+S6]
660 1689 ### 霈曄蔭C100B+S6摰
661 1690 妍嚗etKeyNameTxt_C100B_S6
... ... @@ -677,6 +1706,24 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyNameTxt_C100B_S6(
677 1706 UCHAR Name_Len,
678 1707 const char* Name);
679 1708 ```
  1709 +#### 靘
  1710 +靘挽蝵哽100B+S6摰
  1711 +#####
  1712 +```C++
  1713 +SetKeyNameTxt_C100B_S6(1嚗1837454011, 2, "撘"); //霈曄蔭摰
  1714 +```
  1715 +##### keyEventCallBack 閫
  1716 +
  1717 +###### C100B 2.4G + S6
  1718 +
  1719 +| **妍** | **霂湔** | **** | **憭釣** |
  1720 +| --- | --- | --- | --- |
  1721 +|UCHAR iBaseID|蝡D|1||
  1722 +|unsigned long long keySn|N|1837454011||
  1723 +|float Time|[蝘|0|
  1724 +|int mode|璅∪306||
  1725 +|int RxMode|憸0||
  1726 +|const char* sInfo||"撘,OK,0,0"|"憪,,憸,憸"|
680 1727  
681 1728 ### 100B+S6摰
682 1729 妍嚗etKeyNameTxt_C100B_S6
... ... @@ -694,8 +1741,27 @@ extern&quot;C&quot; __declspec(dllexport) bool GetKeyNameTxt_C100B_S6(
694 1741 UCHAR iBaseID,
695 1742 ULONG KeySN);
696 1743 ```
  1744 +#### 靘
  1745 +靘100B+S6摰
  1746 +####
  1747 +```C++
  1748 +GetKeyNameTxt_C100B_S6(1嚗1837454011); //摰
  1749 +```
  1750 +keyEventCallBack 閫
  1751 +
  1752 +###### C100B 2.4G + S6
  1753 +
  1754 +| **妍** | **霂湔** | **** | **憭釣** |
  1755 +| --- | --- | --- | --- |
  1756 +|UCHAR iBaseID|蝡D|1||
  1757 +|unsigned long long keySn|N|1837454011||
  1758 +|float Time|[蝘|0|
  1759 +|int mode|璅∪306||
  1760 +|int RxMode|憸0||
  1761 +|const char* sInfo||"撘,OK,0,0"|"憪,,憸,憸"|
697 1762  
698   -### 霈曄蔭蝘臬
  1763 +
  1764 +## 霈曄蔭蝘臬
699 1765 妍嚗etKeyScore
700 1766 嚗挽蝵桅蝘臬
701 1767 霂湔
... ... @@ -718,7 +1784,37 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyScore(
718 1784 char* Score);
719 1785 ```
720 1786  
721   -### 摰泵銝涵蝚砌
  1787 +### 靘
  1788 +靘挽蝵桅蝘臬
  1789 +####
  1790 +```C++
  1791 +SetKeyScore(1嚗1837454011, 2, 2, "99"); //霈曄蔭蝘臬
  1792 +```
  1793 +#### keyEventCallBack 閫
  1794 +
  1795 +##### B200 2.4G + S6 B100 2.4G + S6
  1796 +
  1797 +| **妍** | **霂湔** | **** | **憭釣** |
  1798 +| --- | --- | --- | --- |
  1799 +|UCHAR iBaseID|蝡D|1||
  1800 +|unsigned long long keySn|N|1837454011||
  1801 +|float Time|[蝘|0|
  1802 +|int mode|璅∪303||
  1803 +|int RxMode|憸0||
  1804 +|const char* sInfo||"2,1,3,0"|",憸,蝘臬璅∪,憸"|
  1805 +
  1806 +##### B200 5.8G + T2
  1807 +
  1808 +| **妍** | **霂湔** | **** | **憭釣** |
  1809 +| --- | --- | --- | --- |
  1810 +|UCHAR iBaseID|蝡D|1||
  1811 +|unsigned long long keySn|N|1837454011||
  1812 +|float Time|[蝘|0|
  1813 +|int mode|璅∪300<br>304||
  1814 +|int RxMode|憸0||
  1815 +|const char* sInfo||"2,0,9,0"<br>"2,0,13,0"|",憸,蝘臬璅∪,憸"|
  1816 +
  1817 +## 摰泵銝涵蝚砌
722 1818 妍嚗etKeyTitleTxt2
723 1819 嚗挽蝵桅摰泵銝涵蝚砌
724 1820 霂湔
... ... @@ -743,7 +1839,37 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyTitleTxt2(
743 1839 const char* Txt);
744 1840 ```
745 1841  
746   -### 摰泵銝涵蝚砌
  1842 +### 靘
  1843 +靘挽蝵桅摰泵銝涵蝚砌
  1844 +####
  1845 +```C++
  1846 +SetKeyTitleTxt2(1嚗1837454011, 2, 1, 2, "蝚砌"); //霈曄蔭摰泵銝涵蝚砌
  1847 +```
  1848 +keyEventCallBack 閫
  1849 +
  1850 +##### B200 2.4G + S6 B100 2.4G + S6
  1851 +
  1852 +| **妍** | **霂湔** | **** | **憭釣** |
  1853 +| --- | --- | --- | --- |
  1854 +|UCHAR iBaseID|蝡D|1||
  1855 +|unsigned long long keySn|N|1837454011||
  1856 +|float Time|[蝘|0|
  1857 +|int mode|璅∪303||
  1858 +|int RxMode|憸0||
  1859 +|const char* sInfo||"2,1,11,0"|",憸,蝚砌璅∪,憸"|
  1860 +
  1861 +##### B200 5.8G + T2
  1862 +
  1863 +| **妍** | **霂湔** | **** | **憭釣** |
  1864 +| --- | --- | --- | --- |
  1865 +|UCHAR iBaseID|蝡D|1||
  1866 +|unsigned long long keySn|N|1837454011||
  1867 +|float Time|[蝘|0|
  1868 +|int mode|璅∪300<br>304||
  1869 +|int RxMode|憸0||
  1870 +|const char* sInfo||"2,0,16,0"<br>"2,0,17,0"|",憸,蝚砌璅∪,憸"|
  1871 +
  1872 +## 摰泵銝涵蝚砌
747 1873 妍嚗etKeyTitleTxt3
748 1874 嚗挽蝵桅摰泵銝涵蝚砌
749 1875 霂湔
... ... @@ -766,7 +1892,7 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyTitleTxt3(
766 1892 const char* Txt);
767 1893 ```
768 1894  
769   -### 摰蝘臬泵銝涵蝚砌
  1895 +## 摰蝘臬泵銝涵蝚砌
770 1896 妍嚗etKeyScreTxt2
771 1897 嚗挽蝵桅摰蝘臬泵銝涵蝚砌
772 1898 霂湔
... ... @@ -795,7 +1921,7 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyScreTxt2(
795 1921 const char* Txt);
796 1922 ```
797 1923  
798   -### 摰靽
  1924 +## 摰靽
799 1925 妍嚗etKeyMessage
800 1926 嚗挽蝵桅摰靽
801 1927 霂湔
... ... @@ -814,6 +1940,68 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyMessage(
814 1940 const char* Txt);
815 1941 ```
816 1942  
  1943 +### 靘
  1944 +靘挽蝵桅摰靽
  1945 +####
  1946 +```C++
  1947 +SetKeyMessage(1嚗1837454011, "靽⊥"); //霈曄蔭摰靽
  1948 +```
  1949 +keyEventCallBack 閫
  1950 +
  1951 +##### B200 2.4G + S6 B100 2.4G + S6
  1952 +
  1953 +| **妍** | **霂湔** | **** | **憭釣** |
  1954 +| --- | --- | --- | --- |
  1955 +|UCHAR iBaseID|蝡D|1||
  1956 +|unsigned long long keySn|N|1837454011||
  1957 +|float Time|[蝘|0|
  1958 +|int mode|璅∪303||
  1959 +|int RxMode|憸0||
  1960 +|const char* sInfo||"2,1,60,0"|",憸,靽⊥,憸"|
  1961 +
  1962 +## 內憸挽
  1963 +霈曄蔭內憸挽
  1964 +妍嚗etKeyFunPromptPresetTxt
  1965 +霂湔
  1966 +
  1967 +| **妍** | **霂湔** | **** | **憭釣** |
  1968 +| --- | --- | --- | --- |
  1969 +|UCHAR iBaseID|蝡D|0~32|
  1970 +|ULONG KeySN|N||
  1971 +|UCHAR mode|璅∪|
  1972 +|UCHAR type|蝐餃|
  1973 +|UCHAR Txt_Len|摮泵銝脤摨帆|
  1974 +|const char* Txt|摮泵銝琍|
  1975 +
  1976 +隞
  1977 +```C++
  1978 +extern"C" __declspec(dllexport) bool SetKeyFunPromptPresetTxt(
  1979 + UCHAR iBaseID,
  1980 + ULONG KeySN,
  1981 + UCHAR mode,
  1982 + UCHAR type,
  1983 + UCHAR Txt_Len,
  1984 + const char* Txt);
  1985 +```
  1986 +
  1987 +### 靘
  1988 +靘挽蝵桀內憸挽
  1989 +```C++
  1990 +SetKeyFunPromptPresetTxt(1嚗1837454011嚗 0, 1, 4嚗 "漱"); //霈曄蔭內憸挽
  1991 +```
  1992 +keyEventCallBack 閫
  1993 +
  1994 +B200 2.4G + S6 B100 2.4G + S6
  1995 +
  1996 +| **妍** | **霂湔** | **** | **憭釣** |
  1997 +| --- | --- | --- | --- |
  1998 +|UCHAR iBaseID|蝡D|1||
  1999 +|unsigned long long keySn|N|1837454011||
  2000 +|float Time|[蝘|0|
  2001 +|int mode|璅∪303||
  2002 +|int RxMode|憸0||
  2003 +|const char* sInfo||"2,1,52,0"|",憸,內憸挽璅∪,憸"|
  2004 +
817 2005 ##
818 2006  
819 2007 霈曄蔭
... ... @@ -830,9 +2018,23 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyMessage(
830 2018 extern"C" __declspec(dllexport) bool Key_Pause_Sleep(UCHAR iBaseID, UCHAR Time);//
831 2019 ```
832 2020  
833   -## 霈曄蔭
  2021 +### 靘
  2022 +靘挽蝵桅 10蝘
  2023 +```C++
  2024 +Key_Pause_Sleep(0, 0); //霈曄蔭 10蝘
  2025 +
  2026 +```
  2027 +HDParamCallBack 閫
  2028 +
  2029 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2030 +| --- | --- | --- | --- |
  2031 +|int iBaseID|蝡D|1||
  2032 +|int mode|璅∪53||
  2033 +|const char* sInfo|摮泵銝琍"0"| 10蝘
  2034 +
  2035 +## 蝑漣霈曄蔭
834 2036  
835   -蝑漣
  2037 +### 蝑漣
836 2038 妍嚗etKeyboardAutoPowerOffLevel
837 2039 霂湔
838 2040  
... ... @@ -845,7 +2047,20 @@ extern&quot;C&quot; __declspec(dllexport) bool Key_Pause_Sleep(UCHAR iBaseID, UCHAR Time);
845 2047 extern"C" __declspec(dllexport) bool GetKeyboardAutoPowerOffLevel(UCHAR iBaseID);
846 2048 ```
847 2049  
848   -霈曄蔭蝑漣
  2050 +靘
  2051 +靘蝑漣
  2052 +```C++
  2053 +GetKeyboardAutoPowerOffLevel(1); //蝑漣
  2054 +```
  2055 +HDParamCallBack 閫
  2056 +
  2057 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2058 +| --- | --- | --- | --- |
  2059 +|int iBaseID|蝡D|1||
  2060 +|int mode|璅∪202|蝡敺|
  2061 +|const char* sInfo|摮泵銝琍"A嚗嚗嚗嚗嚗嚗嚗嚗"|A:憸<br>B:憸<br>C:蝑漣<br>D:敹歲撘<br>E:敶<br>F:憸<br>G:活<br>H:憸<br>I:
  2062 +
  2063 +### 霈曄蔭蝑漣
849 2064 妍嚗etKeyboardAutoPowerOffLevel
850 2065 霂湔
851 2066  
... ... @@ -859,6 +2074,19 @@ extern&quot;C&quot; __declspec(dllexport) bool GetKeyboardAutoPowerOffLevel(UCHAR iBaseID)
859 2074 extern"C" __declspec(dllexport) bool SetKeyboardAutoPowerOffLevel(UCHAR iBaseID, UCHAR Level);
860 2075 ```
861 2076  
  2077 +靘
  2078 +靘蝑漣
  2079 +```C++
  2080 +SetKeyboardAutoPowerOffLevel(1,255); //霈曄蔭蝑漣
  2081 +```
  2082 +HDParamCallBack 閫
  2083 +
  2084 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2085 +| --- | --- | --- | --- |
  2086 +|int iBaseID|蝡D|1||
  2087 +|int mode|璅∪202|蝡敺|
  2088 +|const char* sInfo|摮泵銝琍"A嚗嚗嚗嚗嚗嚗嚗嚗"|A:憸<br>B:憸<br>C:蝑漣<br>D:敹歲撘<br>E:敶<br>F:憸<br>G:活<br>H:憸<br>I:
  2089 +
862 2090 ## 挽隞2
863 2091  
864 2092 霈曄蔭挽隞2
... ... @@ -867,20 +2095,23 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyboardAutoPowerOffLevel(UCHAR iBaseID,
867 2095  
868 2096 | **妍** | **霂湔** | **** | **憭釣** |
869 2097 | --- | --- | --- | --- |
870   -|UCHAR iBaseID|蝡D|0~32||
871   -| keySn | N |蝛箏泵銝莎蛹蝥輸
872   -| ledTimes | Led活 | 0~255 (0撽砌嚗255鈭)|
873   -| ledOnTime | Led瘥活撘 |0~255 (0.1s)|
874   -| ledOffTime | Led瘥活 |0~255 (0.1s嚗蛹0撠望餈賒鈭)|
875   -| ledColorR | Led憸,蝥W |0~255(01鈭,嚗>1銋恕銝箸1)|
876   -| ledColorG | Led憸,蝏踹 |0~255(01鈭,嚗>1銋恕銝箸1)|
877   -| ledColorB | Led憸, |0~255(01鈭,嚗>1銋恕銝箸1)|
878   -| beepTimes | 腦活 | 0~255 (0撽砌255) |
879   -| beepOnTime | 腦瘥活撘 |0~255 (0.1s)|
  2098 +| UCHAR iBaseID|蝡D|0~32||
  2099 +| ULONG keySn | N |蝛箏泵銝莎蛹蝥輸
  2100 +| UCHAR LED_CTRL | Led雿輯 | 0嚗 1嚗|
  2101 +| UCHAR ledTimes | Led活 | 0~255 (0撽砌嚗255鈭)|
  2102 +| UCHAR ledOnTime | Led瘥活撘 |0~255 (0.1s)|
  2103 +| UCHAR ledOffTime | Led瘥活 |0~255 (0.1s嚗蛹0撠望餈賒鈭)|
  2104 +| UCHAR ledColorR | Led憸,蝥W |0~255(01鈭,嚗>1銋恕銝箸1)|
  2105 +| UCHAR ledColorG | Led憸,蝏踹 |0~255(01鈭,嚗>1銋恕銝箸1)|
  2106 +| UCHAR edColorB | Led憸, |0~255(01鈭,嚗>1銋恕銝箸1)|
  2107 +| UCHAR BEEP_CTRL | 腦雿輯 | 0嚗 1嚗|
  2108 +| UCHAR beepTimes | 腦活 | 0~255 (0撽砌255) |
  2109 +| UCHAR beepOnTime | 腦瘥活撘 |0~255 (0.1s)|
880 2110 | beepOffTime | 腦瘥活 |0~255 (0.1s嚗蛹0撠望餈賒)|
881   -| motorTimes |撽祈噢甈⊥|0~255|
882   -| motorOnTime | 撽祈噢瘥活撘 |0~255 (0.1s)|
883   -| motorOffTime | 撽祈噢瘥活 |0~255 (0.1s嚗蛹0撠望餈賒)|
  2111 +| UCHAR MOTO_CTRL | 撽祈噢雿輯 | 0嚗 1嚗|
  2112 +| UCHAR motorTimes |撽祈噢甈⊥|0~255|
  2113 +| UCHAR motorOnTime | 撽祈噢瘥活撘 |0~255 (0.1s)|
  2114 +| UCHAR motorOffTime | 撽祈噢瘥活 |0~255 (0.1s嚗蛹0撠望餈賒)|
884 2115  
885 2116
886 2117 ```C++
... ... @@ -904,6 +2135,24 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyPeripheral(
904 2135 UCHAR MOTO_TOFF);
905 2136 ```
906 2137  
  2138 +### 靘
  2139 +靘挽蝵桅挽隞2 led 蝥Y3甈∴3甈~
  2140 +
  2141 +```C++
  2142 +//霈曄蔭挽隞2
  2143 +SetKeyPeripheral(1嚗1837454011, 1, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 3, 1, 1);
  2144 +```
  2145 +keyEventCallBack 閫
  2146 +
  2147 +| **妍** | **霂湔** | **** | **憭釣** |
  2148 +| --- | --- | --- | --- |
  2149 +|UCHAR iBaseID|蝡D|1||
  2150 +|unsigned long long keySn|N|1837454011||
  2151 +|float Time|[蝘|0|
  2152 +|int mode|璅∪600||
  2153 +|int RxMode|憸0||
  2154 +|const char* sInfo||"2,3"|",憭挽璅∪"|
  2155 +
907 2156 ##
908 2157  
909 2158  
... ... @@ -923,13 +2172,44 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyRemoteShutdown(
923 2172 ULONG KeySN);
924 2173 ```
925 2174  
926   -## D漣璅∪
  2175 +### 靘
  2176 +靘挽蝵桅挽隞2 led 蝥Y3甈∴3甈~
927 2177  
928   -D漣璅∪
929   -妍嚗etKeyRemoteShutdown_Pro
930   -霂湔
  2178 +```C++
  2179 +//
  2180 +SetKeyRemoteShutdown(1嚗1837454011);
  2181 +```
  2182 +keyEventCallBack 閫
931 2183  
932   -| **妍** | **霂湔** | **** | **憭釣** |
  2184 +B200 2.4G + S6 B100 2.4G + S6
  2185 +
  2186 +| **妍** | **霂湔** | **** | **憭釣** |
  2187 +| --- | --- | --- | --- |
  2188 +|UCHAR iBaseID|蝡D|1||
  2189 +|unsigned long long keySn|N|1837454011||
  2190 +|float Time|[蝘|0|
  2191 +|int mode|璅∪303||
  2192 +|int RxMode|憸0||
  2193 +|const char* sInfo||"2,0,40,0"|",璅∪"|
  2194 +
  2195 +B200 5.8G + T2
  2196 +
  2197 +| **妍** | **霂湔** | **** | **憭釣** |
  2198 +| --- | --- | --- | --- |
  2199 +|UCHAR iBaseID|蝡D|1||
  2200 +|unsigned long long keySn|N|1837454011||
  2201 +|float Time|[蝘|0|
  2202 +|int mode|璅∪304||
  2203 +|int RxMode|憸0||
  2204 +|const char* sInfo||"2,0,4,0"|",璅∪"|
  2205 +
  2206 +## D漣璅∪
  2207 +
  2208 +D漣璅∪
  2209 +妍嚗etKeyRemoteShutdown_Pro
  2210 +霂湔
  2211 +
  2212 +| **妍** | **霂湔** | **** | **憭釣** |
933 2213 | --- | --- | --- | --- |
934 2214 |UCHAR iBaseID|蝡D|0~32||
935 2215 |UCHAR Mode| 璅∪ |0~255;0:甇虜 255嚗撘|
... ... @@ -946,6 +2226,26 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyRemoteShutdown_Pro(
946 2226 USHORT KeyIdMax);
947 2227 ```
948 2228  
  2229 +### 靘
  2230 +靘D漣璅∪ 甇虜,蝻1~100
  2231 +
  2232 +```C++
  2233 +//
  2234 +SetKeyRemoteShutdown_Pro(1, 1, 100);
  2235 +```
  2236 +keyEventCallBack 閫
  2237 +
  2238 +B200 2.4G + S6 B100 2.4G + S6
  2239 +
  2240 +| **妍** | **霂湔** | **** | **憭釣** |
  2241 +| --- | --- | --- | --- |
  2242 +|UCHAR iBaseID|蝡D|1||
  2243 +|unsigned long long keySn|N|1837454011||
  2244 +|float Time|[蝘|0|
  2245 +|int mode|璅∪303||
  2246 +|int RxMode|憸0||
  2247 +|const char* sInfo||"2,0,40,0"|",璅∪"|
  2248 +
949 2249 ## 憭挽蝵
950 2250  
951 2251 霈曄蔭憭挽蝵
... ... @@ -954,8 +2254,8 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyRemoteShutdown_Pro(
954 2254  
955 2255 | **妍** | **霂湔** | **** | **憭釣** |
956 2256 | --- | --- | --- | --- |
957   -|UCHAR iBaseID|蝡D|0~32||
958   -| keySn | N |蝛箏泵銝莎蛹蝥輸
  2257 +| UCHAR iBaseID|蝡D|0~32||
  2258 +| ULONG KeySN | N |蝛箏泵銝莎蛹蝥輸
959 2259  
960 2260  
961 2261
... ... @@ -965,6 +2265,2857 @@ extern&quot;C&quot; __declspec(dllexport) bool SetKeyFactory(
965 2265 ULONG KeySN);
966 2266 ```
967 2267  
  2268 +### 靘
  2269 +靘蝥輸憭挽蝵
  2270 +
  2271 +```C++
  2272 +//蝥輸憭挽蝵
  2273 +SetKeyFactory(0, 0);
  2274 +```
  2275 +
  2276 +## 蝷箄”靽⊥
  2277 +
  2278 +霈曄蔭蝷箄”靽⊥
  2279 +妍嚗etKey_SignificantlyDisplay
  2280 +霂湔
  2281 +
  2282 +| **妍** | **霂湔** | **** | **憭釣** |
  2283 +| --- | --- | --- | --- |
  2284 +|UCHAR iBaseID|蝡D|0~32||
  2285 +| UCHAR Mode | 蝷箸芋撘 |1 憭批蝷箄”蝻<br>2 瘨脫蝷綽鈭|
  2286 +
  2287 +
  2288 +隞
  2289 +```C++
  2290 +extern"C" __declspec(dllexport) bool SetKey_SignificantlyDisplay(
  2291 + UCHAR iBaseID,
  2292 + UCHAR Mode);
  2293 +```
  2294 +
  2295 +### 靘
  2296 +靘蝥輸 憭批蝷箄”蝻
  2297 +
  2298 +```C++
  2299 +//蝥輸 憭批蝷箄”蝻
  2300 +SetKey_SignificantlyDisplay(0, 1);
  2301 +```
  2302 +
  2303 +## 瑪靽格笆圾蝏
  2304 +
  2305 +瑪靽格笆圾蝏
  2306 +妍嚗etKeyUnbind
  2307 +霂湔
  2308 +
  2309 +| **妍** | **霂湔** | **** | **憭釣** |
  2310 +| --- | --- | --- | --- |
  2311 +|UCHAR iBaseID|蝡D|0~32||
  2312 +|ULONG KeySN| N |0嚗蛹蝥輸
  2313 +|const char* MatchCode| 笆 ||
  2314 +
  2315 +
  2316 +隞
  2317 +```C++
  2318 +extern"C" __declspec(dllexport) bool SetKeyUnbind(
  2319 + UCHAR iBaseID,
  2320 + ULONG KeySN,
  2321 + const char* MatchCode);
  2322 +```
  2323 +
  2324 +### 靘
  2325 +靘蝥輸 閫
  2326 +
  2327 +```C++
  2328 +//蝥輸 閫
  2329 +SetKeyUnbind(0, 0嚗"FFFFFFFF");
  2330 +```
  2331 +
  2332 +keyEventCallBack 閫
  2333 +
  2334 +B200 2.4G + S6 B100 2.4G + S6
  2335 +
  2336 +| **妍** | **霂湔** | **** | **憭釣** |
  2337 +| --- | --- | --- | --- |
  2338 +|UCHAR iBaseID|蝡D|1||
  2339 +|unsigned long long keySn|N|1837454011||
  2340 +|float Time|[蝘|0|
  2341 +|int mode|璅∪303||
  2342 +|int RxMode|憸0||
  2343 +|const char* sInfo||"2,0,41,0"|",笆芋撘"|
  2344 +
  2345 +## 霈曄蔭OEM蝷箏妍
  2346 +
  2347 +霈曄蔭OEM蝷箏妍
  2348 +妍嚗etKeyOEMModel
  2349 +霂湔
  2350 +
  2351 +| **妍** | **霂湔** | **** | **憭釣** |
  2352 +| --- | --- | --- | --- |
  2353 +|UCHAR iBaseID|蝡D|0~32||
  2354 +|ULONG KeySN| N |0嚗蛹蝥輸
  2355 +|UCHAR Model_Len| OEM摮泵銝脤摨 ||
  2356 +|const char* Model| OEM摮泵銝 ||
  2357 +
  2358 +
  2359 +隞
  2360 +```C++
  2361 +extern"C" __declspec(dllexport) bool SetKeyOEMModel(
  2362 + UCHAR iBaseID,
  2363 + ULONG KeySN,
  2364 + UCHAR Model_Len,
  2365 + const char* Model);//霈曄蔭EM妍
  2366 +```
  2367 +
  2368 +### 靘
  2369 +靘蝥輸 閫
  2370 +
  2371 +```C++
  2372 +//蝥輸 霈曄蔭OEM蝷箏妍
  2373 +SetKeyOEMModel(0, 0嚗 2, "T3");
  2374 +```
  2375 +
  2376 +## ,閫
  2377 +
  2378 +,閫
  2379 +妍嚗eySN_Manage
  2380 +霂湔
  2381 +
  2382 +| **妍** | **霂湔** | **** | **憭釣** |
  2383 +| --- | --- | --- | --- |
  2384 +|UCHAR iBaseID|蝡D|0~32||
  2385 +|UCHAR Mode|璅∪4:<br>5:蝥輸<br>6:閫<br>7:閫
  2386 +|UCHAR NUM| 蝏葵 ||
  2387 +|ULONG KeySN[250]| ”蝏 ||
  2388 +
  2389 +
  2390 +隞
  2391 +```C++
  2392 +extern"C" __declspec(dllexport) bool KeySN_Manage(
  2393 + UCHAR iBaseID,
  2394 + UCHAR Mode,
  2395 + UCHAR NUM,
  2396 + ULONG KeySN[250]);
  2397 +```
  2398 +
  2399 +### 靘1嚗
  2400 +靘蝥輸
  2401 +
  2402 +```C++
  2403 +//蝥輸
  2404 +KeySN_Manage(0, 5嚗 0, NULL);
  2405 +```
  2406 +
  2407 +HDParamCallBack 閫
  2408 +
  2409 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2410 +| --- | --- | --- | --- |
  2411 +|int iBaseID|蝡D|1||
  2412 +|int mode|璅∪33|
  2413 +|const char* sInfo|摮泵銝琍"-99,0"|""|
  2414 +
  2415 +### 靘2嚗
  2416 +靘圾
  2417 +
  2418 +```C++
  2419 +//蝥輸
  2420 +KeySN_Manage(0, 7嚗 0, NULL);
  2421 +```
  2422 +
  2423 +HDParamCallBack 閫
  2424 +
  2425 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2426 +| --- | --- | --- | --- |
  2427 +|int iBaseID|蝡D|1||
  2428 +|int mode|璅∪34|閫
  2429 +|const char* sInfo|摮泵銝琍"-99,0"|""|
  2430 +
  2431 +## SN
  2432 +
  2433 +霈曄蔭SN
  2434 +妍嚗etKeyFSN
  2435 +霂湔
  2436 +
  2437 +| **妍** | **霂湔** | **** | **憭釣** |
  2438 +| --- | --- | --- | --- |
  2439 +|UCHAR iBaseID|蝡D|0~32|
  2440 +|ULONG KeySN_Old| N ||
  2441 +|ULONG KeySN_New| N ||
  2442 +
  2443 +
  2444 +隞
  2445 +```C++
  2446 +extern"C" __declspec(dllexport) bool SetKeyFSN(
  2447 + UCHAR iBaseID,
  2448 + ULONG KeySN_Old,
  2449 + ULONG KeySN_New);
  2450 +```
  2451 +
  2452 +### 靘
  2453 +靘挽蝵桀蝥輸SN銝算1837454011
  2454 +
  2455 +```C++
  2456 +//霈曄蔭蝥輸SN
  2457 +SetKeyFSN(1嚗0嚗1837454011);
  2458 +```
  2459 +keyEventCallBack 閫
  2460 +
  2461 +B200 2.4G + S6 B100 2.4G + S6
  2462 +
  2463 +| **妍** | **霂湔** | **** | **憭釣** |
  2464 +| --- | --- | --- | --- |
  2465 +|UCHAR iBaseID|蝡D|1||
  2466 +|unsigned long long keySn|N|1837454011||
  2467 +|float Time|[蝘|0|
  2468 +|int mode|璅∪303||
  2469 +|int RxMode|憸0||
  2470 +|const char* sInfo||"2,0,43,0"|",霈曄蔭N璅∪"|
  2471 +
  2472 +##
  2473 +
  2474 +霈曄蔭
  2475 +妍嚗etKeyDate
  2476 +霂湔
  2477 +
  2478 +| **妍** | **霂湔** | **** | **憭釣** |
  2479 +| --- | --- | --- | --- |
  2480 +|UCHAR iBaseID|蝡D|0~32|
  2481 +|ULONG KeySN| N ||
  2482 +|UCHAR Date[12]| |2022-01-01|
  2483 +
  2484 +
  2485 +隞
  2486 +```C++
  2487 +extern"C" __declspec(dllexport) bool SetKeyDate(
  2488 + UCHAR iBaseID,
  2489 + ULONG KeySN,
  2490 + UCHAR Date[12]);//霈曄蔭2022-01-01
  2491 +```
  2492 +
  2493 +## D[S6雿輻]
  2494 +
  2495 +霈曄蔭D[S6雿輻]
  2496 +妍嚗etKeyID
  2497 +霂湔
  2498 +
  2499 +| **妍** | **霂湔** | **** | **憭釣** |
  2500 +| --- | --- | --- | --- |
  2501 +|UCHAR iBaseID|蝡D|0~32|
  2502 +|ULONG KeySN| N ||
  2503 +|USHORT ID| D ||
  2504 +
  2505 +
  2506 +隞
  2507 +```C++
  2508 +extern"C" __declspec(dllexport) bool SetKeyID(
  2509 + UCHAR iBaseID,
  2510 + ULONG KeySN,
  2511 + USHORT ID);//霈曄蔭D
  2512 +```
  2513 +
  2514 +### 靘
  2515 +靘挽蝵桅D
  2516 +
  2517 +```C++
  2518 +//霈曄蔭D
  2519 +SetKeyID(1嚗1837454011嚗100);
  2520 +```
  2521 +keyEventCallBack 閫
  2522 +
  2523 +B200 2.4G + S6 B100 2.4G + S6
  2524 +
  2525 +| **妍** | **霂湔** | **** | **憭釣** |
  2526 +| --- | --- | --- | --- |
  2527 +|UCHAR iBaseID|蝡D|1||
  2528 +|unsigned long long keySn|N|1837454011||
  2529 +|float Time|[蝘|0|
  2530 +|int mode|璅∪303||
  2531 +|int RxMode|憸0||
  2532 +|const char* sInfo||"2,0,42,0"|",霈曄蔭D璅∪"|
  2533 +
  2534 +# 蝡霈曄蔭
  2535 +## 蝡挽憭D
  2536 +
  2537 +### 霈曄蔭蝡挽憭D
  2538 +妍嚗etDevBaseId
  2539 +霂湔
  2540 +
  2541 +| **妍** | **霂湔** | **** | **憭釣** |
  2542 +| --- | --- | --- | --- |
  2543 +|int pathAdd|USB霈曉|隞仿etDevBaseId()||
  2544 +|UCHAR iBaseID|蝡D|1~32|
  2545 +
  2546 +隞
  2547 +```C++
  2548 +extern"C" __declspec(dllexport) bool SetDevBaseId(
  2549 + int pathAdd,
  2550 + UCHAR iBaseID); //霈曄蔭蝡挽憭D
  2551 +```
  2552 +
  2553 +靘
  2554 +靘挽蝵桀蝡挽憭D
  2555 +
  2556 +```C++
  2557 +SetDevBaseId(0xFFFF, 1);
  2558 +```
  2559 +
  2560 +HDParamCallBack 閫
  2561 +
  2562 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2563 +| --- | --- | --- | --- |
  2564 +|int iBaseID|蝡D|1||
  2565 +|int mode|璅∪201|蝡粉D 縑F漣|
  2566 +|const char* sInfo|摮泵銝琍"1,10嚗1"|"蝡D嚗縑,RF"|
  2567 +
  2568 +### 蝡挽憭D
  2569 +妍嚗etDevBaseId
  2570 +霂湔
  2571 +
  2572 +| **妍** | **霂湔** | **** | **憭釣** |
  2573 +| --- | --- | --- | --- |
  2574 +|UCHAR iBaseID|蝡D|0~32|
  2575 +
  2576 +隞
  2577 +```C++
  2578 +extern"C" __declspec(dllexport) bool GetDevBaseId(UCHAR iBaseID); //蝡挽憭D
  2579 +```
  2580 +
  2581 +靘
  2582 +靘挽蝵桀蝡挽憭D
  2583 +
  2584 +```C++
  2585 +GetDevBaseId(0);
  2586 +```
  2587 +
  2588 +HDParamCallBack 閫
  2589 +
  2590 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2591 +| --- | --- | --- | --- |
  2592 +|int iBaseID|蝡D|1||
  2593 +|int mode|璅∪201|蝡粉D 縑F漣|
  2594 +|const char* sInfo|摮泵銝琍"1,10嚗1"|"蝡D嚗縑,RF"|
  2595 +
  2596 +## 蝡
  2597 +霈曄蔭蝡蝡
  2598 +妍嚗etDevBaseBlacklist
  2599 +霂湔
  2600 +
  2601 +| **妍** | **霂湔** | **** | **憭釣** |
  2602 +| --- | --- | --- | --- |
  2603 +|int pathAdd|USB霈曉|隞仿etDevBaseId()||
  2604 +
  2605 +隞
  2606 +```C++
  2607 +//霈曄蔭蝡蝡
  2608 +extern"C" __declspec(dllexport) bool SetDevBaseBlacklist(int pathAdd);
  2609 +```
  2610 +
  2611 +靘
  2612 +靘撖孵蝡挽蝵桀蝡”
  2613 +
  2614 +```C++
  2615 +SetDevBaseBlacklist(XXXXX);
  2616 +```
  2617 +
  2618 +蝡”
  2619 +妍嚗etDevBaseBlacklist
  2620 +霂湔
  2621 +
  2622 +隞
  2623 +```C++
  2624 +extern"C" __declspec(dllexport) bool GetDevBaseBlacklist(); //蝡”
  2625 +```
  2626 +
  2627 +靘
  2628 +靘蝡”頧賢
  2629 +
  2630 +```C++
  2631 +GetDevBaseBlacklist();
  2632 +```
  2633 +
  2634 +## 蝡挽憭F
  2635 +### 霈曄蔭蝡挽憭F
  2636 +妍嚗etDevRFPWR
  2637 +霂湔
  2638 +
  2639 +| **妍** | **霂湔** | **** | **憭釣** |
  2640 +| --- | --- | --- | --- |
  2641 +|UCHAR iBaseID|蝡D|0~32|
  2642 +|UCHAR RFPWR|霈曉F1:雿<br>2:銝剖<br>3:擃
  2643 +
  2644 +隞
  2645 +```C++
  2646 +extern"C" __declspec(dllexport) bool SetDevRFPWR(
  2647 + UCHAR iBaseID,
  2648 + UCHAR RFPWR); //霈曄蔭蝡挽憭F
  2649 +```
  2650 +
  2651 +靘
  2652 +靘挽蝵桀蝡挽憭D
  2653 +
  2654 +```C++
  2655 +SetDevRFPWR(0, 1);
  2656 +```
  2657 +
  2658 +HDParamCallBack 閫
  2659 +
  2660 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2661 +| --- | --- | --- | --- |
  2662 +|int iBaseID|蝡D|1||
  2663 +|int mode|璅∪201|蝡粉D 縑F漣|
  2664 +|const char* sInfo|摮泵銝琍"1,10嚗1"|"蝡D嚗縑,RF"|
  2665 +
  2666 +### 蝡挽憭F
  2667 +妍嚗etDevRFPWR
  2668 +霂湔
  2669 +
  2670 +| **妍** | **霂湔** | **** | **憭釣** |
  2671 +| --- | --- | --- | --- |
  2672 +|UCHAR iBaseID|蝡D|0~32|
  2673 +
  2674 +隞
  2675 +```C++
  2676 +extern"C" __declspec(dllexport) bool GetDevRFPWR(UCHAR iBaseID); //蝡挽憭F
  2677 +```
  2678 +
  2679 +靘
  2680 +靘蝡挽憭D
  2681 +
  2682 +```C++
  2683 +GetDevRFPWR(0);
  2684 +```
  2685 +
  2686 +HDParamCallBack 閫
  2687 +
  2688 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2689 +| --- | --- | --- | --- |
  2690 +|int iBaseID|蝡D|1||
  2691 +|int mode|璅∪201|蝡粉D 縑F漣|
  2692 +|const char* sInfo|摮泵銝琍"1,10嚗1"|"蝡D嚗縑,RF"|
  2693 +
  2694 +## 蝡縑
  2695 +### 霈曄蔭蝡挽憭縑
  2696 +妍嚗etDevCHAN
  2697 +霂湔
  2698 +
  2699 +| **妍** | **霂湔** | **** | **憭釣** |
  2700 +| --- | --- | --- | --- |
  2701 +|UCHAR iBaseID|蝡D|0~32|
  2702 +|UCHAR chans|靽⊿1~4|
  2703 +|UCHAR * chan靽⊿蝏|
  2704 +
  2705 +隞
  2706 +```C++
  2707 +extern"C" __declspec(dllexport) bool SetDevCHAN(
  2708 + UCHAR iBaseID,
  2709 + UCHAR chans,
  2710 + UCHAR * chan); //霈曄蔭蝡挽憭縑
  2711 +```
  2712 +
  2713 +靘
  2714 +靘挽蝵1蝡挽憭縑縑1嚗0嚗縑2嚗:8
  2715 +
  2716 +```C++
  2717 +SetDevCHAN(1,2,10,18);
  2718 +```
  2719 +
  2720 +HDParamCallBack 閫
  2721 +
  2722 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2723 +| --- | --- | --- | --- |
  2724 +|int iBaseID|蝡D|1||
  2725 +|int mode|璅∪206|蝡|
  2726 +|const char* sInfo|摮泵銝琍"2,10,18,0,0"|"靽⊿,靽⊿1,靽⊿2,靽⊿3,靽⊿4"|
  2727 +
  2728 +### 蝡挽憭縑
  2729 +妍嚗etDevCHAN
  2730 +霂湔
  2731 +
  2732 +| **妍** | **霂湔** | **** | **憭釣** |
  2733 +| --- | --- | --- | --- |
  2734 +|UCHAR iBaseID|蝡D|0~32|
  2735 +
  2736 +隞
  2737 +```C++
  2738 +extern"C" __declspec(dllexport) bool GetDevCHAN(UCHAR iBaseID);
  2739 +```
  2740 +
  2741 +靘
  2742 +靘蝡挽憭縑
  2743 +
  2744 +```C++
  2745 +GetDevCHAN(1);
  2746 +```
  2747 +
  2748 +HDParamCallBack 閫
  2749 +
  2750 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2751 +| --- | --- | --- | --- |
  2752 +|int iBaseID|蝡D|1||
  2753 +|int mode|璅∪206|蝡|
  2754 +|const char* sInfo|摮泵銝琍"2,10,18,0,0"|"靽⊿,靽⊿1,靽⊿2,靽⊿3,靽⊿4"|
  2755 +
  2756 +## 蝡笆
  2757 +### 霈曄蔭蝡笆
  2758 +妍嚗etDevSYSCODE
  2759 +霂湔
  2760 +
  2761 +| **妍** | **霂湔** | **** | **憭釣** |
  2762 +| --- | --- | --- | --- |
  2763 +|UCHAR iBaseID|蝡D|0~32|
  2764 +|UCHAR code[4]|笆|
  2765 +
  2766 +隞
  2767 +```C++
  2768 +extern"C" __declspec(dllexport) bool SetDevSYSCODE(
  2769 + UCHAR iBaseID,
  2770 + UCHAR code[4]); //霈曄蔭蝡笆
  2771 +```
  2772 +靘
  2773 +靘蝡挽憭縑
  2774 +
  2775 +```C++
  2776 +SetDevSYSCODE(1,0xFF010203);
  2777 +```
  2778 +
  2779 +HDParamCallBack 閫
  2780 +
  2781 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2782 +| --- | --- | --- | --- |
  2783 +|int iBaseID|蝡D|1||
  2784 +|int mode|璅∪5|蝡笆
  2785 +|const char* sInfo|摮泵銝琍"FF010203"|蝡笆
  2786 +
  2787 +### 蝡笆
  2788 +妍嚗etDevSYSCODE
  2789 +霂湔
  2790 +
  2791 +| **妍** | **霂湔** | **** | **憭釣** |
  2792 +| --- | --- | --- | --- |
  2793 +|UCHAR iBaseID|蝡D|0~32|
  2794 +
  2795 +隞
  2796 +```C++
  2797 +extern"C" __declspec(dllexport) bool GetDevSYSCODE(UCHAR iBaseID); //蝡笆
  2798 +```
  2799 +
  2800 +靘
  2801 +靘蝡笆
  2802 +
  2803 +```C++
  2804 +GetDevSYSCODE(1);
  2805 +```
  2806 +
  2807 +HDParamCallBack 閫
  2808 +
  2809 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2810 +| --- | --- | --- | --- |
  2811 +|int iBaseID|蝡D|1||
  2812 +|int mode|璅∪5|蝡笆
  2813 +|const char* sInfo|摮泵銝琍"FF010203"|蝡笆
  2814 +
  2815 +## 蝡笆璅∪
  2816 +### 霈曄蔭蝡笆璅∪
  2817 +妍嚗etDevPairMode
  2818 +霂湔
  2819 +
  2820 +| **妍** | **霂湔** | **** | **憭釣** |
  2821 +| --- | --- | --- | --- |
  2822 +|UCHAR iBaseID|蝡D|0~32|
  2823 +|UCHAR mode|笆璅∪1:摰芋撘<br>2:璅∪<br>3:笆璅∪<br>4:笆SN璅∪<br>5:SN璅∪<br>6:笆SN璅∪<br>7:笆SN璅∪<br>8:芋撘<br>9:笆芋撘
  2824 +
  2825 +隞
  2826 +```C++
  2827 +extern"C" __declspec(dllexport) bool SetDevPairMode(
  2828 + UCHAR iBaseID,
  2829 + UCHAR mode); //霈曄蔭蝡笆璅∪
  2830 +```
  2831 +
  2832 +靘
  2833 +靘挽蝵桀蝡笆璅∪ 4:笆SN璅∪
  2834 +
  2835 +```C++
  2836 +SetDevPairMode(1,4);
  2837 +```
  2838 +
  2839 +HDParamCallBack 閫
  2840 +
  2841 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2842 +| --- | --- | --- | --- |
  2843 +|int iBaseID|蝡D|1||
  2844 +|int mode|璅∪204|蝡笆璅∪蝡妍嚗摰
  2845 +|const char* sInfo|摮泵銝琍"4,霈曉1"|"蝡笆璅∪,蝡妍"|
  2846 +
  2847 +
  2848 +### 蝡笆璅∪
  2849 +妍嚗etDevPairMode
  2850 +霂湔
  2851 +
  2852 +| **妍** | **霂湔** | **** | **憭釣** |
  2853 +| --- | --- | --- | --- |
  2854 +|UCHAR iBaseID|蝡D|0~32|
  2855 +
  2856 +隞
  2857 +```C++
  2858 +extern"C" __declspec(dllexport) bool GetDevPairMode(UCHAR iBaseID); //蝡笆璅∪
  2859 +```
  2860 +
  2861 +靘
  2862 +靘挽蝵桀蝡笆璅∪ 4:笆SN璅∪
  2863 +
  2864 +```C++
  2865 +GetDevPairMode(1);
  2866 +```
  2867 +
  2868 +HDParamCallBack 閫
  2869 +
  2870 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2871 +| --- | --- | --- | --- |
  2872 +|int iBaseID|蝡D|1||
  2873 +|int mode|璅∪204|蝡笆璅∪蝡妍嚗摰
  2874 +|const char* sInfo|摮泵銝琍"4,霈曉1"|"蝡笆璅∪,蝡妍"|
  2875 +
  2876 +## 蝡妍
  2877 +### 霈曄蔭蝡妍
  2878 +妍嚗etDevNmae
  2879 +霂湔
  2880 +
  2881 +| **妍** | **霂湔** | **** | **憭釣** |
  2882 +| --- | --- | --- | --- |
  2883 +|UCHAR iBaseID|蝡D|0~32|
  2884 +|UCHAR Len| 蝡妍摮泵銝脤摨 ||
  2885 +|const char *Name| 蝡妍摮泵銝 ||
  2886 +
  2887 +隞
  2888 +```C++
  2889 +extern"C" __declspec(dllexport) bool SetDevNmae(
  2890 + UCHAR iBaseID,
  2891 + UCHAR Len,
  2892 + const char *Name); //霈曄蔭蝡妍
  2893 +```
  2894 +
  2895 +靘
  2896 +靘挽蝵桀蝡妍
  2897 +
  2898 +```C++
  2899 +SetDevNmae(1,3,"霈曉1");
  2900 +```
  2901 +
  2902 +HDParamCallBack 閫
  2903 +
  2904 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2905 +| --- | --- | --- | --- |
  2906 +|int iBaseID|蝡D|1||
  2907 +|int mode|璅∪204|蝡笆璅∪蝡妍嚗摰
  2908 +|const char* sInfo|摮泵銝琍"4,霈曉1"|"蝡笆璅∪,蝡妍"|
  2909 +
  2910 +### 蝡妍
  2911 +妍嚗etDevNmae
  2912 +霂湔
  2913 +
  2914 +| **妍** | **霂湔** | **** | **憭釣** |
  2915 +| --- | --- | --- | --- |
  2916 +|UCHAR iBaseID|蝡D|0~32|
  2917 +
  2918 +隞
  2919 +```C++
  2920 +extern"C" __declspec(dllexport) bool GetDevNmae(UCHAR iBaseID); //蝡妍
  2921 +```
  2922 +
  2923 +靘
  2924 +靘挽蝵桀蝡妍
  2925 +
  2926 +```C++
  2927 +GetDevNmae(1);
  2928 +```
  2929 +
  2930 +HDParamCallBack 閫
  2931 +
  2932 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2933 +| --- | --- | --- | --- |
  2934 +|int iBaseID|蝡D|1||
  2935 +|int mode|璅∪204|蝡笆璅∪蝡妍嚗摰
  2936 +|const char* sInfo|摮泵銝琍"4,霈曉1"|"蝡笆璅∪,蝡妍"|
  2937 +
  2938 +## 蝡捆
  2939 +### 霈曄蔭蝡捆
  2940 +妍嚗etDevKPNUMS
  2941 +霂湔
  2942 +
  2943 +| **妍** | **霂湔** | **** | **憭釣** |
  2944 +| --- | --- | --- | --- |
  2945 +|UCHAR iBaseID|蝡D|0~32|
  2946 +|USHORT kPnums| |B200_5.8G+T2 :1~70|
  2947 +|UCHAR Lock| 憸 |0嚗恕|
  2948 +
  2949 +隞
  2950 +```C++
  2951 +extern"C" __declspec(dllexport) bool SetDevKPNUMS(
  2952 + UCHAR iBaseID,
  2953 + USHORT kPnums,
  2954 + UCHAR Lock=0); //霈曄蔭蝡捆
  2955 +```
  2956 +
  2957 +靘
  2958 +靘挽蝵桀蝡捆
  2959 +
  2960 +```C++
  2961 +SetDevKPNUMS(1嚗60,0);
  2962 +```
  2963 +
  2964 +HDParamCallBack 閫
  2965 +
  2966 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2967 +| --- | --- | --- | --- |
  2968 +|int iBaseID|蝡D|1||
  2969 +|int mode|璅∪10|蝡捆
  2970 +|const char* sInfo|摮泵銝琍"60,0"|"蝡捆,憸"|
  2971 +
  2972 +### 蝡捆
  2973 +妍嚗etDevKPNUMS
  2974 +霂湔
  2975 +
  2976 +| **妍** | **霂湔** | **** | **憭釣** |
  2977 +| --- | --- | --- | --- |
  2978 +|UCHAR iBaseID|蝡D|0~32|
  2979 +
  2980 +隞
  2981 +```C++
  2982 +extern"C" __declspec(dllexport) bool GetDevKPNUMS(UCHAR iBaseID); //蝡捆
  2983 +```
  2984 +
  2985 +靘
  2986 +靘蝡捆
  2987 +
  2988 +```C++
  2989 +GetDevKPNUMS(1);
  2990 +```
  2991 +
  2992 +HDParamCallBack 閫
  2993 +
  2994 +| **妍** | **霂湔** | **閫** | **憭釣** |
  2995 +| --- | --- | --- | --- |
  2996 +|int iBaseID|蝡D|1||
  2997 +|int mode|璅∪10|蝡捆
  2998 +|const char* sInfo|摮泵銝琍"60,0"|"蝡捆,憸"|
  2999 +
  3000 +
  3001 +## 敶蝷箏捂[S6]
  3002 +### 霈曄蔭敶蝷箏捂[S6]
  3003 +妍嚗etKeyboardLoginMenu
  3004 +霂湔
  3005 +
  3006 +| **妍** | **霂湔** | **** | **憭釣** |
  3007 +| --- | --- | --- | --- |
  3008 +|UCHAR iBaseID|蝡D|0~32|
  3009 +|UCHAR OnOff| 敶芋撘 |0:銝捂敶<br>1:捂敶
  3010 +
  3011 +
  3012 +隞
  3013 +```C++
  3014 +extern"C" __declspec(dllexport) bool SetKeyboardLoginMenu(
  3015 + UCHAR iBaseID,
  3016 + UCHAR OnOff);
  3017 +```
  3018 +
  3019 +靘
  3020 +靘挽蝵桅敶蝷箏捂
  3021 +
  3022 +```C++
  3023 +SetKeyboardLoginMenu(1,1); //
  3024 +```
  3025 +
  3026 +HDParamCallBack 閫
  3027 +
  3028 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3029 +| --- | --- | --- | --- |
  3030 +|int iBaseID|蝡D|1||
  3031 +|int mode|璅∪202|蝡敺|
  3032 +|const char* sInfo|摮泵銝琍"A嚗嚗嚗嚗嚗嚗嚗嚗"|A:憸<br>B:憸<br>C:蝑漣<br>D:敹歲撘<br>E:敶<br>F:憸<br>G:活<br>H:憸<br>I:
  3033 +
  3034 +### 敶蝷箏捂[S6]
  3035 +妍嚗etKeyboardLoginMenu
  3036 +霂湔
  3037 +
  3038 +| **妍** | **霂湔** | **** | **憭釣** |
  3039 +| --- | --- | --- | --- |
  3040 +|UCHAR iBaseID|蝡D|0~32|
  3041 +
  3042 +隞
  3043 +```C++
  3044 +extern"C" __declspec(dllexport) bool GetKeyboardLoginMenu(UCHAR iBaseID);
  3045 +```
  3046 +
  3047 +靘
  3048 +靘敶蝷箏捂
  3049 +
  3050 +```C++
  3051 +GetKeyboardLoginMenu(1); //
  3052 +```
  3053 +
  3054 +HDParamCallBack 閫
  3055 +
  3056 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3057 +| --- | --- | --- | --- |
  3058 +|int iBaseID|蝡D|1||
  3059 +|int mode|璅∪202|蝡敺|
  3060 +|const char* sInfo|摮泵銝琍"A嚗嚗嚗嚗嚗嚗嚗嚗"|A:憸<br>B:憸<br>C:蝑漣<br>D:敹歲撘<br>E:敶<br>F:憸<br>G:活<br>H:憸<br>I:
  3061 +
  3062 +## 蝡撘敹歲
  3063 +### 霈曄蔭蝡撘敹歲
  3064 +妍嚗etKeyboardHeartbeat
  3065 +霂湔
  3066 +
  3067 +| **妍** | **霂湔** | **** | **憭釣** |
  3068 +| --- | --- | --- | --- |
  3069 +|UCHAR iBaseID|蝡D|0~32|
  3070 +|UCHAR OnOff| 敶芋撘 |0:<br>1:撘|
  3071 +
  3072 +
  3073 +隞
  3074 +```C++
  3075 +extern"C" __declspec(dllexport) bool SetKeyboardHeartbeat(
  3076 + UCHAR iBaseID,
  3077 + UCHAR OnOff);
  3078 +```
  3079 +
  3080 +靘
  3081 +靘挽蝵桅蝡撘敹歲
  3082 +
  3083 +```C++
  3084 +SetKeyboardHeartbeat(1,1); //
  3085 +```
  3086 +
  3087 +HDParamCallBack 閫
  3088 +
  3089 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3090 +| --- | --- | --- | --- |
  3091 +|int iBaseID|蝡D|1||
  3092 +|int mode|璅∪202|蝡敺|
  3093 +|const char* sInfo|摮泵銝琍"A嚗嚗嚗嚗嚗嚗嚗嚗"|A:憸<br>B:憸<br>C:蝑漣<br>D:敹歲撘<br>E:敶<br>F:憸<br>G:活<br>H:憸<br>I:
  3094 +
  3095 +### 蝡撘敹歲
  3096 +妍嚗etKeyboardHeartbeat
  3097 +霂湔
  3098 +
  3099 +| **妍** | **霂湔** | **** | **憭釣** |
  3100 +| --- | --- | --- | --- |
  3101 +|UCHAR iBaseID|蝡D|0~32|
  3102 +
  3103 +隞
  3104 +```C++
  3105 +extern"C" __declspec(dllexport) bool GetKeyboardHeartbeat(UCHAR iBaseID);
  3106 +```
  3107 +
  3108 +靘
  3109 +靘蝡撘敹歲
  3110 +
  3111 +```C++
  3112 +GetKeyboardHeartbeat(1); //
  3113 +```
  3114 +
  3115 +HDParamCallBack 閫
  3116 +
  3117 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3118 +| --- | --- | --- | --- |
  3119 +|int iBaseID|蝡D|1||
  3120 +|int mode|璅∪202|蝡敺|
  3121 +|const char* sInfo|摮泵銝琍"A嚗嚗嚗嚗嚗嚗嚗嚗"|A:憸<br>B:憸<br>C:蝑漣<br>D:敹歲撘<br>E:敶<br>F:憸<br>G:活<br>H:憸<br>I:
  3122 +
  3123 +
  3124 +## 敶S6]
  3125 +### 霈曄蔭敶S6]
  3126 +妍嚗etKeyboardLoginPW
  3127 +霂湔
  3128 +
  3129 +| **妍** | **霂湔** | **** | **憭釣** |
  3130 +| --- | --- | --- | --- |
  3131 +|UCHAR iBaseID|蝡D|0~32|
  3132 +|USHORT PW| 敶 |0~9999嚗0嚗撖孵
  3133 +
  3134 +
  3135 +隞
  3136 +```C++
  3137 +extern"C" __declspec(dllexport) bool SetKeyboardLoginPW(
  3138 + UCHAR iBaseID,
  3139 + USHORT PW);
  3140 +```
  3141 +
  3142 +靘
  3143 +靘挽蝵桅敶S6]
  3144 +
  3145 +```C++
  3146 +SetKeyboardLoginPW(1嚗1234); //
  3147 +```
  3148 +
  3149 +HDParamCallBack 閫
  3150 +
  3151 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3152 +| --- | --- | --- | --- |
  3153 +|int iBaseID|蝡D|1||
  3154 +|int mode|璅∪18|敶
  3155 +|const char* sInfo|摮泵銝琍"1234"|敶
  3156 +
  3157 +### 敶S6]
  3158 +妍嚗etKeyboardLoginPW
  3159 +霂湔
  3160 +
  3161 +| **妍** | **霂湔** | **** | **憭釣** |
  3162 +| --- | --- | --- | --- |
  3163 +|UCHAR iBaseID|蝡D|0~32|
  3164 +
  3165 +隞
  3166 +```C++
  3167 +extern"C" __declspec(dllexport) bool GetKeyboardLoginPW(UCHAR iBaseID);
  3168 +```
  3169 +
  3170 +靘
  3171 +靘挽蝵桅敶S6]
  3172 +
  3173 +```C++
  3174 +GetKeyboardLoginPW(1); //
  3175 +```
  3176 +
  3177 +HDParamCallBack 閫
  3178 +
  3179 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3180 +| --- | --- | --- | --- |
  3181 +|int iBaseID|蝡D|1||
  3182 +|int mode|璅∪18|敶
  3183 +|const char* sInfo|摮泵銝琍"1234"|敶
  3184 +
  3185 +## 蝡敶
  3186 +### 霈曄蔭蝡敶
  3187 +妍嚗etDevBaseManualLogin
  3188 +霂湔
  3189 +
  3190 +| **妍** | **霂湔** | **** | **憭釣** |
  3191 +| --- | --- | --- | --- |
  3192 +|UCHAR iBaseID|蝡D|0~32|
  3193 +|UCHAR OnOff| 敶芋撘 |0:銝捂蝡縑妍<br>1:捂蝡縑妍|
  3194 +
  3195 +
  3196 +隞
  3197 +```C++
  3198 +extern"C" __declspec(dllexport) bool SetDevBaseManualLogin(
  3199 + UCHAR iBaseID,
  3200 + UCHAR OnOff);
  3201 +```
  3202 +
  3203 +靘
  3204 +靘挽蝵桀蝡敶
  3205 +
  3206 +```C++
  3207 +SetDevBaseManualLogin(1嚗1); //
  3208 +```
  3209 +
  3210 +HDParamCallBack 閫
  3211 +
  3212 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3213 +| --- | --- | --- | --- |
  3214 +|int iBaseID|蝡D|1||
  3215 +|int mode|璅∪19|蝡敶|
  3216 +|const char* sInfo|摮泵銝琍"1"|蝡敶|
  3217 +
  3218 +### 蝡敶
  3219 +妍嚗etDevBaseManualLogin
  3220 +霂湔
  3221 +
  3222 +| **妍** | **霂湔** | **** | **憭釣** |
  3223 +| --- | --- | --- | --- |
  3224 +|UCHAR iBaseID|蝡D|0~32|
  3225 +
  3226 +隞
  3227 +```C++
  3228 +extern"C" __declspec(dllexport) bool GetDevBaseManualLogin(UCHAR iBaseID);
  3229 +```
  3230 +
  3231 +靘
  3232 +靘蝡敶
  3233 +
  3234 +```C++
  3235 +GetDevBaseManualLogin(1); //
  3236 +```
  3237 +
  3238 +HDParamCallBack 閫
  3239 +
  3240 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3241 +| --- | --- | --- | --- |
  3242 +|int iBaseID|蝡D|1||
  3243 +|int mode|璅∪19|蝡敶|
  3244 +|const char* sInfo|摮泵銝琍"1"|蝡敶|
  3245 +
  3246 +## 蝡祗閮
  3247 +### 霈曄蔭蝡祗閮
  3248 +妍嚗etDevLanguage
  3249 +霂湔
  3250 +
  3251 +| **妍** | **霂湔** | **** | **憭釣** |
  3252 +| --- | --- | --- | --- |
  3253 +|UCHAR iBaseID|蝡D|0~32|
  3254 +|UCHAR Language| 霂剛 |0:暺恕<br>1:銝剜<br>2:
  3255 +
  3256 +
  3257 +隞
  3258 +```C++
  3259 +extern"C" __declspec(dllexport) bool SetDevLanguage(
  3260 + UCHAR iBaseID,
  3261 + UCHAR Language);
  3262 +```
  3263 +
  3264 +靘
  3265 +靘挽蝵桀蝡祗閮
  3266 +
  3267 +```C++
  3268 +SetDevLanguage(1嚗1); //
  3269 +```
  3270 +
  3271 +HDParamCallBack 閫
  3272 +
  3273 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3274 +| --- | --- | --- | --- |
  3275 +|int iBaseID|蝡D|1||
  3276 +|int mode|璅∪21|蝡祗閮|
  3277 +|const char* sInfo|摮泵銝琍"1"|銝剜
  3278 +
  3279 +### 蝡祗閮
  3280 +妍嚗etDevLanguage
  3281 +霂湔
  3282 +
  3283 +| **妍** | **霂湔** | **** | **憭釣** |
  3284 +| --- | --- | --- | --- |
  3285 +|UCHAR iBaseID|蝡D|0~32|
  3286 +
  3287 +隞
  3288 +```C++
  3289 +extern"C" __declspec(dllexport) bool GetDevLanguage(UCHAR iBaseID);
  3290 +```
  3291 +
  3292 +靘
  3293 +靘蝡祗閮
  3294 +
  3295 +```C++
  3296 +GetDevLanguage(1); //
  3297 +```
  3298 +
  3299 +HDParamCallBack 閫
  3300 +
  3301 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3302 +| --- | --- | --- | --- |
  3303 +|int iBaseID|蝡D|1||
  3304 +|int mode|璅∪21|蝡祗閮|
  3305 +|const char* sInfo|摮泵銝琍"1"|銝剜
  3306 +
  3307 +## 蝡撘CRC
  3308 +### 霈曄蔭蝡撘CRC
  3309 +妍嚗etDevCRC
  3310 +霂湔
  3311 +
  3312 +| **妍** | **霂湔** | **** | **憭釣** |
  3313 +| --- | --- | --- | --- |
  3314 +|UCHAR iBaseID|蝡D|0~32|
  3315 +|UCHAR CRC| 霂剛 |0:銝<br>1:|
  3316 +
  3317 +
  3318 +隞
  3319 +```C++
  3320 +extern"C" __declspec(dllexport) bool SetDevCRC(
  3321 + UCHAR iBaseID,
  3322 + UCHAR CRC);
  3323 +```
  3324 +
  3325 +靘
  3326 +靘挽蝵桀蝡撘CRC
  3327 +
  3328 +```C++
  3329 +SetDevCRC(1嚗1); //
  3330 +```
  3331 +
  3332 +HDParamCallBack 閫
  3333 +
  3334 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3335 +| --- | --- | --- | --- |
  3336 +|int iBaseID|蝡D|1||
  3337 +|int mode|璅∪22|蝡撘CRC|
  3338 +|const char* sInfo|摮泵銝琍"1"|撘|
  3339 +
  3340 +### 蝡撘CRC
  3341 +妍嚗etDevCRC
  3342 +霂湔
  3343 +
  3344 +| **妍** | **霂湔** | **** | **憭釣** |
  3345 +| --- | --- | --- | --- |
  3346 +|UCHAR iBaseID|蝡D|0~32|
  3347 +
  3348 +隞
  3349 +```C++
  3350 +extern"C" __declspec(dllexport) bool GetDevCRC(UCHAR iBaseID);
  3351 +```
  3352 +
  3353 +靘
  3354 +靘挽蝵桀蝡撘CRC
  3355 +
  3356 +```C++
  3357 +GetDevCRC(1); //
  3358 +```
  3359 +
  3360 +HDParamCallBack 閫
  3361 +
  3362 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3363 +| --- | --- | --- | --- |
  3364 +|int iBaseID|蝡D|1||
  3365 +|int mode|璅∪22|蝡撘CRC|
  3366 +|const char* sInfo|摮泵銝琍"1"|撘|
  3367 +
  3368 +## 蝡蔓隞嗥
  3369 +### 霈曄蔭蝡蔓隞嗥雿輻]
  3370 +妍嚗etDevCRC
  3371 +霂湔
  3372 +
  3373 +| **妍** | **霂湔** | **** | **憭釣** |
  3374 +| --- | --- | --- | --- |
  3375 +|UCHAR iBaseID|蝡D|0~32|
  3376 +|UCHAR Len| 撖摨 ||
  3377 +|char* buf| 撖泵銝 ||
  3378 +
  3379 +
  3380 +隞
  3381 +```C++
  3382 +extern"C" __declspec(dllexport) bool SetDevVotePW(
  3383 + UCHAR iBaseID,
  3384 + UCHAR Len,
  3385 + char* buf);
  3386 +```
  3387 +
  3388 +靘
  3389 +靘挽蝵桀蝡蔓隞嗥雿輻]
  3390 +
  3391 +```C++
  3392 +SetDevVotePW(1嚗6嚗"123456"); //
  3393 +```
  3394 +
  3395 +HDParamCallBack 閫
  3396 +
  3397 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3398 +| --- | --- | --- | --- |
  3399 +|int iBaseID|蝡D|1||
  3400 +|int mode|璅∪24|蝡蔓隞嗥
  3401 +|const char* sInfo|摮泵銝琍"123456"||
  3402 +
  3403 +### 蝡蔓隞嗥雿輻]
  3404 +妍嚗etDevVotePW
  3405 +霂湔
  3406 +
  3407 +| **妍** | **霂湔** | **** | **憭釣** |
  3408 +| --- | --- | --- | --- |
  3409 +|UCHAR iBaseID|蝡D|0~32|
  3410 +
  3411 +隞
  3412 +```C++
  3413 +extern"C" __declspec(dllexport) bool GetDevVotePW(UCHAR iBaseID);
  3414 +```
  3415 +
  3416 +靘
  3417 +靘蝡蔓隞嗥雿輻]
  3418 +
  3419 +```C++
  3420 +GetDevVotePW(1); //
  3421 +```
  3422 +
  3423 +HDParamCallBack 閫
  3424 +
  3425 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3426 +| --- | --- | --- | --- |
  3427 +|int iBaseID|蝡D|1||
  3428 +|int mode|璅∪24|蝡蔓隞嗥
  3429 +|const char* sInfo|摮泵銝琍"123456"||
  3430 +
  3431 +### 撉蝡蔓隞嗥
  3432 +妍嚗heckDevVotePW
  3433 +霂湔
  3434 +
  3435 +| **妍** | **霂湔** | **** | **憭釣** |
  3436 +| --- | --- | --- | --- |
  3437 +|UCHAR iBaseID|蝡D|0~32|
  3438 +|UCHAR Len| 撖摨 ||
  3439 +|char* buf| 撖泵銝 ||
  3440 +
  3441 +隞
  3442 +```C++
  3443 +extern"C" __declspec(dllexport) bool CheckDevVotePW(UCHAR iBaseID, UCHAR Len, char* buf);
  3444 +```
  3445 +
  3446 +靘
  3447 +靘撉蝡蔓隞嗥
  3448 +
  3449 +```C++
  3450 +CheckDevVotePW(1嚗6嚗"123456"); //
  3451 +```
  3452 +
  3453 +HDParamCallBack 閫
  3454 +
  3455 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3456 +| --- | --- | --- | --- |
  3457 +|int iBaseID|蝡D|1||
  3458 +|int mode|璅∪23|撉蝡蔓隞嗥
  3459 +|const char* sInfo|摮泵銝琍"1"|撖寥
  3460 +
  3461 +
  3462 +## 蝡摰泵銝
  3463 +
  3464 +### 霈曄蔭蝡摰泵銝
  3465 +妍嚗etDevUserTxt
  3466 +霂湔
  3467 +
  3468 +| **妍** | **霂湔** | **** | **憭釣** |
  3469 +| --- | --- | --- | --- |
  3470 +|UCHAR iBaseID|蝡D|0~32|
  3471 +|UCHAR id| 摮泵銝脖 |1~2|
  3472 +|UCHAR Len| 撖摨 ||
  3473 +|char* buf| 撖泵銝 ||
  3474 +
  3475 +
  3476 +隞
  3477 +```C++
  3478 +extern"C" __declspec(dllexport) bool SetDevUserTxt(
  3479 + UCHAR iBaseID,
  3480 + UCHAR id,
  3481 + UCHAR Len,
  3482 + char* buf);
  3483 +```
  3484 +
  3485 +靘
  3486 +靘挽蝵桀蝡摰泵銝
  3487 +
  3488 +```C++
  3489 +SetDevUserTxt(1嚗1嚗6嚗"333444"); //
  3490 +```
  3491 +
  3492 +HDParamCallBack 閫
  3493 +
  3494 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3495 +| --- | --- | --- | --- |
  3496 +|int iBaseID|蝡D|1||
  3497 +|int mode|璅∪25|蝡摰泵銝琍
  3498 +|const char* sInfo|摮泵銝琍"1嚗333444"|"摨嚗蝡摰泵銝"|
  3499 +
  3500 +### 蝡摰泵銝
  3501 +妍嚗etDevVotePW
  3502 +霂湔
  3503 +
  3504 +| **妍** | **霂湔** | **** | **憭釣** |
  3505 +| --- | --- | --- | --- |
  3506 +|UCHAR iBaseID|蝡D|0~32|
  3507 +|UCHAR id| 摮泵銝脖 |1~2|
  3508 +
  3509 +隞
  3510 +```C++
  3511 +extern"C" __declspec(dllexport) bool GetDevUserTxt(UCHAR iBaseID, UCHAR id);
  3512 +```
  3513 +
  3514 +靘
  3515 +靘蝡摰泵銝
  3516 +
  3517 +```C++
  3518 +GetDevUserTxt(1嚗1); //
  3519 +```
  3520 +
  3521 +HDParamCallBack 閫
  3522 +
  3523 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3524 +| --- | --- | --- | --- |
  3525 +|int iBaseID|蝡D|1||
  3526 +|int mode|璅∪25|蝡摰泵銝琍
  3527 +|const char* sInfo|摮泵銝琍"1嚗333444"|"摨嚗蝡摰泵銝"|
  3528 +
  3529 +## 蝡銝蝖砌辣蝻UID
  3530 +### 蝡銝蝖砌辣蝻UID
  3531 +妍嚗etDevUID
  3532 +霂湔
  3533 +
  3534 +| **妍** | **霂湔** | **** | **憭釣** |
  3535 +| --- | --- | --- | --- |
  3536 +|UCHAR iBaseID|蝡D|0~32|
  3537 +
  3538 +隞
  3539 +```C++
  3540 +extern"C" __declspec(dllexport) bool GetDevUID(UCHAR iBaseID);
  3541 +```
  3542 +
  3543 +靘
  3544 +靘蝡銝蝖砌辣蝻UID
  3545 +
  3546 +```C++
  3547 +GetDevUID(1); //
  3548 +```
  3549 +
  3550 +HDParamCallBack 閫
  3551 +
  3552 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3553 +| --- | --- | --- | --- |
  3554 +|int iBaseID|蝡D|1||
  3555 +|int mode|璅∪26|蝡銝蝖砌辣蝻UID|
  3556 +|const char* sInfo|摮泵銝琍"12345678"||
  3557 +
  3558 +## 蝡霈曄蔭
  3559 +### 霈曄蔭蝛粹璅∪-
  3560 +妍嚗etFeedbackMode
  3561 +霂湔
  3562 +
  3563 +| **妍** | **霂湔** | **** | **憭釣** |
  3564 +| --- | --- | --- | --- |
  3565 +|UCHAR iBaseID|蝡D|0~32|
  3566 +|UCHAR Mode| 芋撘 ||
  3567 +|UCHAR KeyValue| ||
  3568 +
  3569 +
  3570 +隞
  3571 +```C++
  3572 +extern"C" __declspec(dllexport) bool SetFeedbackMode(
  3573 + UCHAR iBaseID,
  3574 + UCHAR Mode,
  3575 + UCHAR KeyValue);
  3576 +```
  3577 +
  3578 +靘
  3579 +靘挽蝵桃征璅∪-
  3580 +
  3581 +```C++
  3582 +SetFeedbackMode(1嚗0,1); //
  3583 +```
  3584 +
  3585 +HDParamCallBack 閫
  3586 +
  3587 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3588 +| --- | --- | --- | --- |
  3589 +|int iBaseID|蝡D|1||
  3590 +|int mode|璅∪27|蝛粹璅∪-|
  3591 +|const char* sInfo|摮泵銝琍"0嚗1"|"璅∪,"|
  3592 +
  3593 +### 征璅∪-
  3594 +妍嚗etFeedbackMode
  3595 +霂湔
  3596 +
  3597 +| **妍** | **霂湔** | **** | **憭釣** |
  3598 +| --- | --- | --- | --- |
  3599 +|UCHAR iBaseID|蝡D|0~32|
  3600 +|UCHAR id| 摮泵銝脖 |1~2|
  3601 +
  3602 +隞
  3603 +```C++
  3604 +extern"C" __declspec(dllexport) bool GetFeedbackMode(UCHAR iBaseID);
  3605 +```
  3606 +
  3607 +靘
  3608 +靘征璅∪-
  3609 +
  3610 +```C++
  3611 +GetFeedbackMode(1); //
  3612 +```
  3613 +
  3614 +HDParamCallBack 閫
  3615 +
  3616 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3617 +| --- | --- | --- | --- |
  3618 +|int iBaseID|蝡D|1||
  3619 +|int mode|璅∪27|蝛粹璅∪-|
  3620 +|const char* sInfo|摮泵銝琍"0嚗1"|"璅∪,"|
  3621 +
  3622 +## 蝡N
  3623 +### 霈曄蔭蝡N
  3624 +妍嚗etDevBaseSn
  3625 +霂湔
  3626 +
  3627 +| **妍** | **霂湔** | **** | **憭釣** |
  3628 +| --- | --- | --- | --- |
  3629 +|UCHAR iBaseID|蝡D|0~32|
  3630 +|UCHAR SN[5]| 蝡N ||
  3631 +
  3632 +隞
  3633 +```C++
  3634 +extern"C" __declspec(dllexport) bool SetDevBaseSn(
  3635 + UCHAR iBaseID,
  3636 + UCHAR SN[5]);
  3637 +```
  3638 +
  3639 +靘
  3640 +靘挽蝵桀蝡N
  3641 +
  3642 +```C++
  3643 +SetDevBaseSn(1嚗"1122334455"); //
  3644 +```
  3645 +
  3646 +HDParamCallBack 閫
  3647 +
  3648 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3649 +| --- | --- | --- | --- |
  3650 +|int iBaseID|蝡D|1||
  3651 +|int mode|璅∪203|蝡′隞嗥蔓隞嗥挽憭N|
  3652 +|const char* sInfo|摮泵銝琍"218;1;1.0.1;1112334455"|"蝡;蝖砌辣;頧臭辣;霈曉N"|
  3653 +
  3654 +### 蝡N
  3655 +妍嚗etDevBaseSn
  3656 +霂湔
  3657 +
  3658 +| **妍** | **霂湔** | **** | **憭釣** |
  3659 +| --- | --- | --- | --- |
  3660 +|UCHAR iBaseID|蝡D|0~32|
  3661 +
  3662 +隞
  3663 +```C++
  3664 +extern"C" __declspec(dllexport) bool GetDevBaseSn(UCHAR iBaseID);
  3665 +```
  3666 +
  3667 +靘
  3668 +靘蝡N
  3669 +
  3670 +```C++
  3671 +GetDevBaseSn(1); //
  3672 +```
  3673 +
  3674 +HDParamCallBack 閫
  3675 +
  3676 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3677 +| --- | --- | --- | --- |
  3678 +|int iBaseID|蝡D|1||
  3679 +|int mode|璅∪203|蝡′隞嗥蔓隞嗥挽憭N|
  3680 +|const char* sInfo|摮泵銝琍"218;1;1.0.1;1112334455"|"蝡;蝖砌辣;頧臭辣;霈曉N"|
  3681 +
  3682 +## 蝡蔓隞嗥
  3683 +### 蝡蔓隞嗥
  3684 +妍嚗etDevBaseVer
  3685 +霂湔
  3686 +
  3687 +| **妍** | **霂湔** | **** | **憭釣** |
  3688 +| --- | --- | --- | --- |
  3689 +|UCHAR iBaseID|蝡D|0~32|
  3690 +
  3691 +隞
  3692 +```C++
  3693 +extern"C" __declspec(dllexport) bool GetDevBaseVer(UCHAR iBaseID);
  3694 +```
  3695 +
  3696 +靘
  3697 +靘蝡N
  3698 +
  3699 +```C++
  3700 +GetDevBaseVer(1); //
  3701 +```
  3702 +
  3703 +HDParamCallBack 閫
  3704 +
  3705 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3706 +| --- | --- | --- | --- |
  3707 +|int iBaseID|蝡D|1||
  3708 +|int mode|璅∪203|蝡′隞嗥蔓隞嗥挽憭N|
  3709 +|const char* sInfo|摮泵銝琍"218;1;1.0.1;1112334455"|"蝡;蝖砌辣;頧臭辣;霈曉N"|
  3710 +
  3711 +## 蝡
  3712 +### 蝡
  3713 +妍嚗etDevBaseModel
  3714 +霂湔
  3715 +
  3716 +| **妍** | **霂湔** | **** | **憭釣** |
  3717 +| --- | --- | --- | --- |
  3718 +|UCHAR iBaseID|蝡D|0~32|
  3719 +
  3720 +隞
  3721 +```C++
  3722 +extern"C" __declspec(dllexport) bool GetDevBaseModel(UCHAR iBaseID);
  3723 +```
  3724 +
  3725 +靘
  3726 +靘蝡N
  3727 +
  3728 +```C++
  3729 +GetDevBaseModel(1); //
  3730 +```
  3731 +
  3732 +HDParamCallBack 閫
  3733 +
  3734 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3735 +| --- | --- | --- | --- |
  3736 +|int iBaseID|蝡D|1||
  3737 +|int mode|璅∪203|蝡′隞嗥蔓隞嗥挽憭N|
  3738 +|const char* sInfo|摮泵銝琍"218;1;1.0.1;1112334455"|"蝡;蝖砌辣;頧臭辣;霈曉N"|
  3739 +
  3740 +## 蝡”
  3741 +### 蝡”
  3742 +妍嚗etHidList_len
  3743 +餈嚗 敶DK蝥輯挽憭
  3744 +
  3745 +隞
  3746 +```C++
  3747 +extern"C" __declspec(dllexport) int GetHidList_len();
  3748 +```
  3749 +
  3750 +## 敹恍笆璅∪撘雿芋撘
  3751 +### 霈曄蔭蝡翰笆璅∪撘雿芋撘
  3752 +妍嚗et_QuickMatchPower
  3753 +霂湔
  3754 +
  3755 +| **妍** | **霂湔** | **** | **憭釣** |
  3756 +| --- | --- | --- | --- |
  3757 +|UCHAR iBaseID|蝡D|0~32|
  3758 +|UCHAR LoPower|雿芋撘0:銝蝙雿芋撘<br>1:雿輻雿芋撘
  3759 +
  3760 +隞
  3761 +```C++
  3762 +extern"C" __declspec(dllexport) bool Set_QuickMatchPower(
  3763 + UCHAR iBaseID,
  3764 + UCHAR LoPower);
  3765 +```
  3766 +
  3767 +靘
  3768 +靘挽蝵桀蝡翰笆璅∪撘雿芋撘
  3769 +
  3770 +```C++
  3771 +Set_QuickMatchPower(1,1); //
  3772 +```
  3773 +
  3774 +HDParamCallBack 閫
  3775 +
  3776 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3777 +| --- | --- | --- | --- |
  3778 +|int iBaseID|蝡D|1||
  3779 +|int mode|璅∪16||
  3780 +|const char* sInfo|摮泵銝琍"1"|1:雿輻雿芋撘
  3781 +
  3782 +### 蝡翰笆璅∪撘雿芋撘
  3783 +妍嚗et_QuickMatchPower
  3784 +霂湔
  3785 +
  3786 +| **妍** | **霂湔** | **** | **憭釣** |
  3787 +| --- | --- | --- | --- |
  3788 +|UCHAR iBaseID|蝡D|0~32|
  3789 +
  3790 +隞
  3791 +```C++
  3792 +extern"C" __declspec(dllexport) bool Get_QuickMatchPower(UCHAR iBaseID);
  3793 +```
  3794 +
  3795 +靘
  3796 +靘蝡翰笆璅∪撘雿芋撘
  3797 +
  3798 +```C++
  3799 +Get_QuickMatchPower(1); //
  3800 +```
  3801 +
  3802 +HDParamCallBack 閫
  3803 +
  3804 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3805 +| --- | --- | --- | --- |
  3806 +|int iBaseID|蝡D|1||
  3807 +|int mode|璅∪16||
  3808 +|const char* sInfo|摮泵銝琍"1"|1:雿輻雿芋撘
  3809 +
  3810 +
  3811 +
  3812 +## 蝡
  3813 +### 霈曄蔭NFC靽⊥ 憪
  3814 +霈曄蔭霈曄蔭NFC靽⊥ 憪
  3815 +妍嚗etNFCinf
  3816 +霂湔
  3817 +
  3818 +| **妍** | **霂湔** | **** | **憭釣** |
  3819 +| --- | --- | --- | --- |
  3820 +|UCHAR iBaseID|蝡D|0~32|
  3821 +|UCHAR NameLen|憪泵銝脤摨帆|
  3822 +|char* Name|憪泵銝琍|
  3823 +
  3824 +隞
  3825 +```C++
  3826 +extern"C" __declspec(dllexport) bool SetNFCinf(
  3827 + UCHAR iBaseID,
  3828 + UCHAR NameLen,
  3829 + char* Name);
  3830 +```
  3831 +
  3832 +靘
  3833 +靘挽蝵奘FC靽⊥ 憪
  3834 +
  3835 +```C++
  3836 +SetNFCinf(1,2,"撘"); //
  3837 +```
  3838 +
  3839 +HDParamCallBack 閫
  3840 +
  3841 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3842 +| --- | --- | --- | --- |
  3843 +|int iBaseID|蝡D|1||
  3844 +|int mode|璅∪43||
  3845 +|const char* sInfo|摮泵銝琍"OK"||
  3846 +
  3847 +### 霈曄蔭NFC笆
  3848 +霈曄蔭霈曄蔭NFC笆
  3849 +妍嚗etNFCmatchCode
  3850 +霂湔
  3851 +
  3852 +| **妍** | **霂湔** | **** | **憭釣** |
  3853 +| --- | --- | --- | --- |
  3854 +|UCHAR iBaseID|蝡D|0~32|
  3855 +|char* MatchCode|笆|
  3856 +
  3857 +隞
  3858 +```C++
  3859 +extern"C" __declspec(dllexport) bool SetNFCmatchCode(
  3860 + UCHAR iBaseID,
  3861 + char* MatchCode);
  3862 +```
  3863 +
  3864 +### 霈曄蔭NFC皜誘
  3865 +霈曄蔭霈曄蔭NFC皜誘
  3866 +妍嚗etNFC_Empty
  3867 +霂湔
  3868 +
  3869 +| **妍** | **霂湔** | **** | **憭釣** |
  3870 +| --- | --- | --- | --- |
  3871 +|UCHAR iBaseID|蝡D|0~32|
  3872 +
  3873 +隞
  3874 +```C++
  3875 +extern"C" __declspec(dllexport) bool SetNFC_Empty(UCHAR iBaseID);
  3876 +```
  3877 +
  3878 +靘
  3879 +靘挽蝵株挽蝵奘FC皜誘
  3880 +
  3881 +```C++
  3882 +SetNFC_Empty(1); //
  3883 +```
  3884 +
  3885 +HDParamCallBack 閫
  3886 +
  3887 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3888 +| --- | --- | --- | --- |
  3889 +|int iBaseID|蝡D|1||
  3890 +|int mode|璅∪45||
  3891 +|const char* sInfo|摮泵銝琍"OK"||
  3892 +
  3893 +### [銝餃銝]
  3894 +
  3895 +靘
  3896 +靘[銝餃銝]
  3897 +
  3898 +keyEventCallBack 閫
  3899 +
  3900 +| **妍** | **霂湔** | **** | **憭釣** |
  3901 +| --- | --- | --- | --- |
  3902 +|UCHAR iBaseID|蝡D|1||
  3903 +|unsigned long long keySn|N|1837454011||
  3904 +|float Time|[蝘|0|
  3905 +|int mode|璅∪305||
  3906 +|int RxMode|憸0||
  3907 +|const char* sInfo||"1,1"|",”"|
  3908 +
  3909 +## 蝡
  3910 +### 蝡
  3911 +#### 霈曄蔭蝡
  3912 +妍嚗etDevBaseDTime
  3913 +霂湔
  3914 +
  3915 +| **妍** | **霂湔** | **** | **憭釣** |
  3916 +| --- | --- | --- | --- |
  3917 +|UCHAR iBaseID|蝡D|0~32|
  3918 +|UCHAR HOUR||1~24|
  3919 +|UCHAR MIN|0~59|
  3920 +|UCHAR SEC|蝘0~59|
  3921 +
  3922 +隞
  3923 +```C++
  3924 +extern"C" __declspec(dllexport) bool SetDevBaseDTime(
  3925 + UCHAR iBaseID,
  3926 + UCHAR HOUR,
  3927 + UCHAR MIN,
  3928 + UCHAR SEC);
  3929 +```
  3930 +
  3931 +靘
  3932 +靘挽蝵株蝡 1:1:1
  3933 +
  3934 +```C++
  3935 +SetDevBaseDTime(1嚗01,01,01); //
  3936 +```
  3937 +
  3938 +HDParamCallBack 閫
  3939 +
  3940 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3941 +| --- | --- | --- | --- |
  3942 +|int iBaseID|蝡D|1||
  3943 +|int mode|璅∪36||
  3944 +|const char* sInfo|摮泵銝琍"1,1,1"|"1:1:1"|
  3945 +
  3946 +#### 蝡
  3947 +妍嚗etDevBaseDTime
  3948 +霂湔
  3949 +
  3950 +| **妍** | **霂湔** | **** | **憭釣** |
  3951 +| --- | --- | --- | --- |
  3952 +|UCHAR iBaseID|蝡D|0~32|
  3953 +
  3954 +隞
  3955 +```C++
  3956 +extern"C" __declspec(dllexport) bool GetDevBaseDTime(UCHAR iBaseID);
  3957 +```
  3958 +
  3959 +靘
  3960 +靘蝡
  3961 +
  3962 +```C++
  3963 +GetDevBaseDTime(1); //
  3964 +```
  3965 +
  3966 +HDParamCallBack 閫
  3967 +
  3968 +| **妍** | **霂湔** | **閫** | **憭釣** |
  3969 +| --- | --- | --- | --- |
  3970 +|int iBaseID|蝡D|1||
  3971 +|int mode|璅∪36||
  3972 +|const char* sInfo|摮泵銝琍"1,1,1"|"1:1:1"|
  3973 +
  3974 +### 活
  3975 +#### 霈曄蔭活
  3976 +妍嚗etKeyboardAttendanceTimes
  3977 +霂湔
  3978 +
  3979 +| **妍** | **霂湔** | **** | **憭釣** |
  3980 +| --- | --- | --- | --- |
  3981 +|UCHAR iBaseID|蝡D|0~32|
  3982 +|UCHAR Number|甈⊥||
  3983 +
  3984 +
  3985 +隞
  3986 +```C++
  3987 +extern"C" __declspec(dllexport) bool SetKeyboardAttendanceTimes(
  3988 + UCHAR iBaseID,
  3989 + UCHAR Number);
  3990 +```
  3991 +
  3992 +靘
  3993 +靘挽蝵桅活
  3994 +
  3995 +```C++
  3996 +SetKeyboardAttendanceTimes(1,3); //
  3997 +```
  3998 +
  3999 +HDParamCallBack 閫
  4000 +
  4001 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4002 +| --- | --- | --- | --- |
  4003 +|int iBaseID|蝡D|1||
  4004 +|int mode|璅∪37||
  4005 +|const char* sInfo|摮泵銝琍"3"||
  4006 +
  4007 +#### 活
  4008 +妍嚗etKeyboardAttendanceTimes
  4009 +霂湔
  4010 +
  4011 +| **妍** | **霂湔** | **** | **憭釣** |
  4012 +| --- | --- | --- | --- |
  4013 +|UCHAR iBaseID|蝡D|0~32|
  4014 +
  4015 +隞
  4016 +```C++
  4017 +extern"C" __declspec(dllexport) bool GetKeyboardAttendanceTimes(UCHAR iBaseID);
  4018 +```
  4019 +
  4020 +靘
  4021 +靘活
  4022 +
  4023 +```C++
  4024 +GetKeyboardAttendanceTimes(1); //
  4025 +```
  4026 +
  4027 +HDParamCallBack 閫
  4028 +
  4029 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4030 +| --- | --- | --- | --- |
  4031 +|int iBaseID|蝡D|1||
  4032 +|int mode|璅∪37||
  4033 +|const char* sInfo|摮泵銝琍"3"||
  4034 +
  4035 +###
  4036 +#### 霈曄蔭
  4037 +妍嚗etKeyboardAttendanceTimes
  4038 +霂湔
  4039 +
  4040 +| **妍** | **霂湔** | **** | **憭釣** |
  4041 +| --- | --- | --- | --- |
  4042 +|UCHAR iBaseID|蝡D|0~32|
  4043 +|UCHAR Power||
  4044 +
  4045 +
  4046 +隞
  4047 +```C++
  4048 +extern"C" __declspec(dllexport) bool SetKeyboardAttendancePower(
  4049 + UCHAR iBaseID,
  4050 + UCHAR Power);
  4051 +```
  4052 +
  4053 +靘
  4054 +靘挽蝵桅
  4055 +
  4056 +```C++
  4057 +SetKeyboardAttendancePower(1,1); //
  4058 +```
  4059 +
  4060 +HDParamCallBack 閫
  4061 +
  4062 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4063 +| --- | --- | --- | --- |
  4064 +|int iBaseID|蝡D|1||
  4065 +|int mode|璅∪38||
  4066 +|const char* sInfo|摮泵銝琍"1"||
  4067 +
  4068 +
  4069 +####
  4070 +妍嚗etKeyboardAttendancePower
  4071 +霂湔
  4072 +
  4073 +| **妍** | **霂湔** | **** | **憭釣** |
  4074 +| --- | --- | --- | --- |
  4075 +|UCHAR iBaseID|蝡D|0~32|
  4076 +
  4077 +隞
  4078 +```C++
  4079 +extern"C" __declspec(dllexport) bool GetKeyboardAttendancePower(UCHAR iBaseID);
  4080 +```
  4081 +
  4082 +靘
  4083 +靘挽蝵桅
  4084 +
  4085 +```C++
  4086 +GetKeyboardAttendancePower(1); //
  4087 +```
  4088 +
  4089 +HDParamCallBack 閫
  4090 +
  4091 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4092 +| --- | --- | --- | --- |
  4093 +|int iBaseID|蝡D|1||
  4094 +|int mode|璅∪38||
  4095 +|const char* sInfo|摮泵銝琍"1"||
  4096 +
  4097 +## 蝡
  4098 +### 霈曄蔭
  4099 +妍嚗etWhiteList
  4100 +霂湔
  4101 +
  4102 +| **妍** | **霂湔** | **** | **憭釣** |
  4103 +| --- | --- | --- | --- |
  4104 +|UCHAR iBaseID|蝡D|0~32|
  4105 +|const char* keylist|N”||
  4106 +
  4107 +隞
  4108 +```C++
  4109 +extern"C" __declspec(dllexport) bool SetWhiteList(
  4110 + UCHAR iBaseID,
  4111 + const char* keylist);
  4112 +```
  4113 +
  4114 +#### 靘
  4115 +靘挽蝵桅
  4116 +
  4117 +```C++
  4118 +SetWhiteList(1,"1837454011,1837454012"); //
  4119 +```
  4120 +
  4121 +B200 2.4G + S6 B100 2.4G + S6
  4122 +
  4123 +HDParamCallBack 閫
  4124 +
  4125 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4126 +| --- | --- | --- | --- |
  4127 +|int iBaseID|蝡D|1||
  4128 +|int mode|璅∪48||
  4129 +|const char* sInfo|摮泵銝琍"1837454011,1"|"N,"|
  4130 +
  4131 +B200 5.8G + T2
  4132 +
  4133 +HDParamCallBack 閫
  4134 +
  4135 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4136 +| --- | --- | --- | --- |
  4137 +|int iBaseID|蝡D|1||
  4138 +|int mode|璅∪56||
  4139 +|const char* sInfo|摮泵銝琍"1837454011,1"|"N,"|
  4140 +
  4141 +###
  4142 +妍嚗etWhiteList
  4143 +霂湔
  4144 +
  4145 +| **妍** | **霂湔** | **** | **憭釣** |
  4146 +| --- | --- | --- | --- |
  4147 +|UCHAR iBaseID|蝡D|0~32|
  4148 +
  4149 +隞
  4150 +```C++
  4151 +extern"C" __declspec(dllexport) bool GetWhiteList(UCHAR iBaseID);
  4152 +```
  4153 +
  4154 +#### 靘
  4155 +靘
  4156 +
  4157 +```C++
  4158 +GetWhiteList(1); //
  4159 +```
  4160 +
  4161 +HDParamCallBack 閫
  4162 +
  4163 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4164 +| --- | --- | --- | --- |
  4165 +|int iBaseID|蝡D|1||
  4166 +|int mode|璅∪47||
  4167 +|const char* sInfo|摮泵銝琍"1837454011嚗1837454012"|"N1嚗N2"|
  4168 +
  4169 +### N
  4170 +妍嚗elWhiteList
  4171 +霂湔
  4172 +
  4173 +| **妍** | **霂湔** | **** | **憭釣** |
  4174 +| --- | --- | --- | --- |
  4175 +|UCHAR iBaseID|蝡D|0~32|
  4176 +|const char* keylist|N”||
  4177 +
  4178 +隞
  4179 +```C++
  4180 +extern"C" __declspec(dllexport) bool DelWhiteList(
  4181 + UCHAR iBaseID,
  4182 + const char* keylist);
  4183 +```
  4184 +
  4185 +#### 靘
  4186 +靘N
  4187 +
  4188 +```C++
  4189 +DelWhiteList(1,"1837454011,1837454012"); //
  4190 +```
  4191 +
  4192 +HDParamCallBack 閫
  4193 +
  4194 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4195 +| --- | --- | --- | --- |
  4196 +|int iBaseID|蝡D|1||
  4197 +|int mode|璅∪31||
  4198 +|const char* sInfo|摮泵銝琍"1837454011,1"|"N,"|
  4199 +
  4200 +### 憓N
  4201 +妍嚗ddWhiteList
  4202 +霂湔
  4203 +
  4204 +| **妍** | **霂湔** | **** | **憭釣** |
  4205 +| --- | --- | --- | --- |
  4206 +|UCHAR iBaseID|蝡D|0~32|
  4207 +|const char* keylist|N”||
  4208 +
  4209 +隞
  4210 +```C++
  4211 +extern"C" __declspec(dllexport) bool AddWhiteList(
  4212 + UCHAR iBaseID,
  4213 + const char* keylist);
  4214 +```
  4215 +
  4216 +#### 靘
  4217 +靘N
  4218 +
  4219 +```C++
  4220 +AddWhiteList(1,"1837454011,1837454012"); //
  4221 +```
  4222 +
  4223 +B200 2.4G + S6 B100 2.4G + S6
  4224 +
  4225 +HDParamCallBack 閫
  4226 +
  4227 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4228 +| --- | --- | --- | --- |
  4229 +|int iBaseID|蝡D|1||
  4230 +|int mode|璅∪48||
  4231 +|const char* sInfo|摮泵銝琍"1837454011,1"|"N,"|
  4232 +
  4233 +B200 5.8G + T2
  4234 +
  4235 +HDParamCallBack 閫
  4236 +
  4237 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4238 +| --- | --- | --- | --- |
  4239 +|int iBaseID|蝡D|1||
  4240 +|int mode|璅∪56||
  4241 +|const char* sInfo|摮泵銝琍"1837454011,1"|"N,"|
  4242 +
  4243 +### 皜征
  4244 +妍嚗leWhiteList
  4245 +霂湔
  4246 +
  4247 +| **妍** | **霂湔** | **** | **憭釣** |
  4248 +| --- | --- | --- | --- |
  4249 +|UCHAR iBaseID|蝡D|0~32|
  4250 +
  4251 +隞
  4252 +```C++
  4253 +extern"C" __declspec(dllexport) bool CleWhiteList(UCHAR iBaseID);
  4254 +```
  4255 +
  4256 +#### 靘
  4257 +靘征
  4258 +
  4259 +```C++
  4260 +CleWhiteList(1"); //
  4261 +```
  4262 +
  4263 +HDParamCallBack 閫
  4264 +
  4265 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4266 +| --- | --- | --- | --- |
  4267 +|int iBaseID|蝡D|1||
  4268 +|int mode|璅∪32||
  4269 +|const char* sInfo|摮泵銝琍"1"|""|
  4270 +
  4271 +## 蝡cp
  4272 +### Tcp IP
  4273 +#### 霈曄蔭蝡cp IP
  4274 +妍嚗etDevBase_Tcp_IP
  4275 +霂湔
  4276 +
  4277 +| **妍** | **霂湔** | **** | **憭釣** |
  4278 +| --- | --- | --- | --- |
  4279 +|UCHAR iBaseID|蝡D|0~32|
  4280 +|char* buf|IP|192.168.10.1|
  4281 +
  4282 +
  4283 +隞
  4284 +```C++
  4285 +extern"C" __declspec(dllexport) bool SetDevBase_Tcp_IP(
  4286 + UCHAR iBaseID,
  4287 + char* buf);
  4288 +```
  4289 +
  4290 +靘
  4291 +靘挽蝵桀蝡cp IP
  4292 +
  4293 +```C++
  4294 +SetDevBase_Tcp_IP(1,"192.168.0.100"); //
  4295 +```
  4296 +
  4297 +HDParamCallBack 閫
  4298 +
  4299 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4300 +| --- | --- | --- | --- |
  4301 +|int iBaseID|蝡D|1||
  4302 +|int mode|璅∪54||
  4303 +|const char* sInfo|摮泵銝琍"1;192.168.0.100"|"璅∪;"|
  4304 +
  4305 +#### 蝡cp IP
  4306 +妍嚗etDevBase_Tcp_IP
  4307 +霂湔
  4308 +
  4309 +| **妍** | **霂湔** | **** | **憭釣** |
  4310 +| --- | --- | --- | --- |
  4311 +|UCHAR iBaseID|蝡D|0~32|
  4312 +
  4313 +隞
  4314 +```C++
  4315 +extern"C" __declspec(dllexport) bool GetDevBase_Tcp_IP(UCHAR iBaseID);
  4316 +```
  4317 +
  4318 +### Tcp MAC
  4319 +#### 霈曄蔭蝡cp MAC
  4320 +妍嚗etDevBase_Tcp_mac
  4321 +霂湔
  4322 +
  4323 +| **妍** | **霂湔** | **** | **憭釣** |
  4324 +| --- | --- | --- | --- |
  4325 +|UCHAR iBaseID|蝡D|0~32|
  4326 +|char* buf|mac|FF:FF:FF:FF:FF:FF|
  4327 +
  4328 +
  4329 +隞
  4330 +```C++
  4331 +extern"C" __declspec(dllexport) bool SetDevBase_Tcp_mac(
  4332 + UCHAR iBaseID,
  4333 + char* buf);
  4334 +```
  4335 +
  4336 +靘
  4337 +靘挽蝵桀蝡cp MAC
  4338 +
  4339 +```C++
  4340 +SetDevBase_Tcp_mac(1,"FF:FF:FF:FF:FF:FF"); //
  4341 +```
  4342 +
  4343 +HDParamCallBack 閫
  4344 +
  4345 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4346 +| --- | --- | --- | --- |
  4347 +|int iBaseID|蝡D|1||
  4348 +|int mode|璅∪54||
  4349 +|const char* sInfo|摮泵銝琍"2;FF:FF:FF:FF:FF:FF"|"璅∪;"|
  4350 +
  4351 +#### 蝡cp MAC
  4352 +妍嚗etDevBase_Tcp_mac
  4353 +霂湔
  4354 +
  4355 +| **妍** | **霂湔** | **** | **憭釣** |
  4356 +| --- | --- | --- | --- |
  4357 +|UCHAR iBaseID|蝡D|0~32|
  4358 +
  4359 +隞
  4360 +```C++
  4361 +extern"C" __declspec(dllexport) bool GetDevBase_Tcp_mac(UCHAR iBaseID);
  4362 +```
  4363 +
  4364 +靘
  4365 +靘蝡cp MAC
  4366 +
  4367 +```C++
  4368 +GetDevBase_Tcp_mac(1); //
  4369 +```
  4370 +
  4371 +HDParamCallBack 閫
  4372 +
  4373 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4374 +| --- | --- | --- | --- |
  4375 +|int iBaseID|蝡D|1||
  4376 +|int mode|璅∪54||
  4377 +|const char* sInfo|摮泵銝琍"2;FF:FF:FF:FF:FF:FF"|"璅∪;"|
  4378 +
  4379 +### Tcp 摮
  4380 +#### 霈曄蔭蝡cp 摮
  4381 +妍嚗etDevBase_Tcp_mask
  4382 +霂湔
  4383 +
  4384 +| **妍** | **霂湔** | **** | **憭釣** |
  4385 +| --- | --- | --- | --- |
  4386 +|UCHAR iBaseID|蝡D|0~32|
  4387 +|char* buf|摮|255.255.255.0|
  4388 +
  4389 +
  4390 +隞
  4391 +```C++
  4392 +extern"C" __declspec(dllexport) bool SetDevBase_Tcp_mask(
  4393 + UCHAR iBaseID,
  4394 + char* buf);
  4395 +```
  4396 +
  4397 +靘
  4398 +靘挽蝵桀蝡cp 摮
  4399 +
  4400 +```C++
  4401 +SetDevBase_Tcp_mask(1嚗"255.255.255.0"); //
  4402 +```
  4403 +
  4404 +HDParamCallBack 閫
  4405 +
  4406 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4407 +| --- | --- | --- | --- |
  4408 +|int iBaseID|蝡D|1||
  4409 +|int mode|璅∪54||
  4410 +|const char* sInfo|摮泵銝琍"3;255.255.255.0"|"璅∪;"|
  4411 +
  4412 +#### 蝡cp 摮
  4413 +妍嚗etDevBase_Tcp_mask
  4414 +霂湔
  4415 +
  4416 +| **妍** | **霂湔** | **** | **憭釣** |
  4417 +| --- | --- | --- | --- |
  4418 +|UCHAR iBaseID|蝡D|0~32|
  4419 +
  4420 +隞
  4421 +```C++
  4422 +extern"C" __declspec(dllexport) bool GetDevBase_Tcp_mask(UCHAR iBaseID);
  4423 +```
  4424 +
  4425 +靘
  4426 +靘蝡cp 摮
  4427 +
  4428 +```C++
  4429 +GetDevBase_Tcp_mask(1); //
  4430 +```
  4431 +
  4432 +HDParamCallBack 閫
  4433 +
  4434 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4435 +| --- | --- | --- | --- |
  4436 +|int iBaseID|蝡D|1||
  4437 +|int mode|璅∪54||
  4438 +|const char* sInfo|摮泵銝琍"3;255.255.255.0"|"璅∪;"|
  4439 +
  4440 +### Tcp 蝵
  4441 +#### 霈曄蔭蝡cp 蝵
  4442 +妍嚗etDevBase_Tcp_gateway
  4443 +霂湔
  4444 +
  4445 +| **妍** | **霂湔** | **** | **憭釣** |
  4446 +| --- | --- | --- | --- |
  4447 +|UCHAR iBaseID|蝡D|0~32|
  4448 +|char* buf|蝵|192.168.10.1|
  4449 +
  4450 +
  4451 +隞
  4452 +```C++
  4453 +extern"C" __declspec(dllexport) bool SetDevBase_Tcp_gateway(
  4454 + UCHAR iBaseID,
  4455 + char* buf);
  4456 +```
  4457 +
  4458 +靘
  4459 +靘挽蝵桀蝡cp 蝵
  4460 +
  4461 +```C++
  4462 +SetDevBase_Tcp_gateway(1,"192.168.10.1"); //
  4463 +```
  4464 +
  4465 +HDParamCallBack 閫
  4466 +
  4467 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4468 +| --- | --- | --- | --- |
  4469 +|int iBaseID|蝡D|1||
  4470 +|int mode|璅∪54||
  4471 +|const char* sInfo|摮泵銝琍"4;192.168.10.1"|"璅∪;"|
  4472 +
  4473 +
  4474 +#### 蝡cp 蝵
  4475 +妍嚗etDevBase_Tcp_gateway
  4476 +霂湔
  4477 +
  4478 +| **妍** | **霂湔** | **** | **憭釣** |
  4479 +| --- | --- | --- | --- |
  4480 +|UCHAR iBaseID|蝡D|0~32|
  4481 +
  4482 +隞
  4483 +```C++
  4484 +extern"C" __declspec(dllexport) bool GetDevBase_Tcp_gateway(UCHAR iBaseID);
  4485 +```
  4486 +
  4487 +靘
  4488 +靘挽蝵桀蝡cp 蝵
  4489 +
  4490 +```C++
  4491 +GetDevBase_Tcp_gateway(1"); //
  4492 +```
  4493 +
  4494 +HDParamCallBack 閫
  4495 +
  4496 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4497 +| --- | --- | --- | --- |
  4498 +|int iBaseID|蝡D|1||
  4499 +|int mode|璅∪54||
  4500 +|const char* sInfo|摮泵銝琍"4;192.168.10.1"|"璅∪;"|
  4501 +
  4502 +### Tcp DNS
  4503 +#### 霈曄蔭蝡cp DNS
  4504 +妍嚗etDevBase_Tcp_dns
  4505 +霂湔
  4506 +
  4507 +| **妍** | **霂湔** | **** | **憭釣** |
  4508 +| --- | --- | --- | --- |
  4509 +|UCHAR iBaseID|蝡D|0~32|
  4510 +|char* buf|DNS|114.114.114.114|
  4511 +
  4512 +
  4513 +隞
  4514 +```C++
  4515 +extern"C" __declspec(dllexport) bool SetDevBase_Tcp_dns(
  4516 + UCHAR iBaseID,
  4517 + char* buf);
  4518 +```
  4519 +
  4520 +靘
  4521 +靘挽蝵桀蝡cp DNS
  4522 +
  4523 +```C++
  4524 +SetDevBase_Tcp_dns(1,"114.114.114.114"); //
  4525 +```
  4526 +
  4527 +HDParamCallBack 閫
  4528 +
  4529 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4530 +| --- | --- | --- | --- |
  4531 +|int iBaseID|蝡D|1||
  4532 +|int mode|璅∪54||
  4533 +|const char* sInfo|摮泵銝琍"5;114.114.114.114"|"璅∪;"|
  4534 +
  4535 +#### 蝡cp DNS
  4536 +妍嚗etDevBase_Tcp_dns
  4537 +霂湔
  4538 +
  4539 +| **妍** | **霂湔** | **** | **憭釣** |
  4540 +| --- | --- | --- | --- |
  4541 +|UCHAR iBaseID|蝡D|0~32|
  4542 +
  4543 +隞
  4544 +```C++
  4545 +extern"C" __declspec(dllexport) bool GetDevBase_Tcp_dns(UCHAR iBaseID);
  4546 +```
  4547 +
  4548 +靘
  4549 +靘蝡cp DNS
  4550 +
  4551 +```C++
  4552 +GetDevBase_Tcp_dns(1); //
  4553 +```
  4554 +
  4555 +HDParamCallBack 閫
  4556 +
  4557 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4558 +| --- | --- | --- | --- |
  4559 +|int iBaseID|蝡D|1||
  4560 +|int mode|璅∪54||
  4561 +|const char* sInfo|摮泵銝琍"5;114.114.114.114"|"璅∪;"|
  4562 +
  4563 +### IP
  4564 +#### 霈曄蔭 IP
  4565 +妍嚗etServer_Tcp_IP
  4566 +霂湔
  4567 +
  4568 +| **妍** | **霂湔** | **** | **憭釣** |
  4569 +| --- | --- | --- | --- |
  4570 +|UCHAR iBaseID|蝡D|0~32|
  4571 +|char* buf|DNS|210.98.10.124|
  4572 +
  4573 +
  4574 +隞
  4575 +```C++
  4576 +extern"C" __declspec(dllexport) bool SetServer_Tcp_IP(
  4577 + UCHAR iBaseID,
  4578 + char* buf);
  4579 +```
  4580 +
  4581 +靘
  4582 +靘挽蝵格 IP
  4583 +
  4584 +```C++
  4585 +SetServer_Tcp_IP(1,"210.98.10.124"); //
  4586 +```
  4587 +
  4588 +HDParamCallBack 閫
  4589 +
  4590 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4591 +| --- | --- | --- | --- |
  4592 +|int iBaseID|蝡D|1||
  4593 +|int mode|璅∪54||
  4594 +|const char* sInfo|摮泵銝琍"6;210.98.10.124"|"璅∪;"|
  4595 +
  4596 +
  4597 +#### IP
  4598 +妍嚗etServer_Tcp_IP
  4599 +霂湔
  4600 +
  4601 +| **妍** | **霂湔** | **** | **憭釣** |
  4602 +| --- | --- | --- | --- |
  4603 +|UCHAR iBaseID|蝡D|0~32|
  4604 +
  4605 +隞
  4606 +```C++
  4607 +extern"C" __declspec(dllexport) bool GetServer_Tcp_IP(UCHAR iBaseID);
  4608 +```
  4609 +
  4610 +靘
  4611 +靘挽蝵格 IP
  4612 +
  4613 +```C++
  4614 +GetServer_Tcp_IP(1); //
  4615 +```
  4616 +
  4617 +HDParamCallBack 閫
  4618 +
  4619 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4620 +| --- | --- | --- | --- |
  4621 +|int iBaseID|蝡D|1||
  4622 +|int mode|璅∪54||
  4623 +|const char* sInfo|摮泵銝琍"6;210.98.10.124"|"璅∪;"|
  4624 +
  4625 +### DHCP垢
  4626 +#### 霈曄蔭DHCP垢
  4627 +妍嚗etServer_Tcp_Prot
  4628 +霂湔
  4629 +
  4630 +| **妍** | **霂湔** | **** | **憭釣** |
  4631 +| --- | --- | --- | --- |
  4632 +|UCHAR iBaseID|蝡D|0~32|
  4633 +|UCHAR DHCP|DHCP||
  4634 +|ULONG Server_Port|蝡臬||
  4635 +
  4636 +
  4637 +隞
  4638 +```C++
  4639 +extern"C" __declspec(dllexport) bool SetServer_Tcp_Prot(
  4640 + UCHAR iBaseID,
  4641 + UCHAR DHCP,
  4642 + ULONG Server_Port);
  4643 +```
  4644 +
  4645 +靘
  4646 +靘挽蝵唏HCP垢
  4647 +
  4648 +```C++
  4649 +SetServer_Tcp_Prot(1,0,12000); //
  4650 +```
  4651 +
  4652 +HDParamCallBack 閫
  4653 +
  4654 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4655 +| --- | --- | --- | --- |
  4656 +|int iBaseID|蝡D|1||
  4657 +|int mode|璅∪54||
  4658 +|const char* sInfo|摮泵銝琍"7;0;12000"|"璅∪;DHCP璅∪;蝡臬"|
  4659 +
  4660 +#### HCP垢
  4661 +妍嚗etServer_Tcp_IP
  4662 +霂湔
  4663 +
  4664 +| **妍** | **霂湔** | **** | **憭釣** |
  4665 +| --- | --- | --- | --- |
  4666 +|UCHAR iBaseID|蝡D|0~32|
  4667 +
  4668 +隞
  4669 +```C++
  4670 +extern"C" __declspec(dllexport) bool GetServer_Tcp_Prot(UCHAR iBaseID);
  4671 +```
  4672 +
  4673 +靘
  4674 +靘HCP垢
  4675 +
  4676 +```C++
  4677 +GetServer_Tcp_Prot(1); //
  4678 +```
  4679 +
  4680 +HDParamCallBack 閫
  4681 +
  4682 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4683 +| --- | --- | --- | --- |
  4684 +|int iBaseID|蝡D|1||
  4685 +|int mode|璅∪54||
  4686 +|const char* sInfo|摮泵銝琍"7;0;12000"|"璅∪;DHCP璅∪;蝡臬"|
  4687 +
  4688 +###
  4689 +#### 霈曄蔭
  4690 +妍嚗etServer_UserName
  4691 +霂湔
  4692 +
  4693 +| **妍** | **霂湔** | **** | **憭釣** |
  4694 +| --- | --- | --- | --- |
  4695 +|UCHAR iBaseID|蝡D|0~32|
  4696 +|char* buf|泵銝琍|
  4697 +
  4698 +
  4699 +隞
  4700 +```C++
  4701 +extern"C" __declspec(dllexport) bool SetServer_UserName(
  4702 + UCHAR iBaseID,
  4703 + char* buf);
  4704 +```
  4705 +
  4706 +靘
  4707 +靘
  4708 +
  4709 +```C++
  4710 +SetServer_UserName(1,"admin"); //
  4711 +```
  4712 +
  4713 +HDParamCallBack 閫
  4714 +
  4715 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4716 +| --- | --- | --- | --- |
  4717 +|int iBaseID|蝡D|1||
  4718 +|int mode|璅∪54||
  4719 +|const char* sInfo|摮泵銝琍"8;admin"|"璅∪;"|
  4720 +
  4721 +####
  4722 +妍嚗etServer_UserName
  4723 +霂湔
  4724 +
  4725 +| **妍** | **霂湔** | **** | **憭釣** |
  4726 +| --- | --- | --- | --- |
  4727 +|UCHAR iBaseID|蝡D|0~32|
  4728 +
  4729 +隞
  4730 +```C++
  4731 +extern"C" __declspec(dllexport) bool GetServer_UserName(UCHAR iBaseID);
  4732 +```
  4733 +
  4734 +靘
  4735 +靘
  4736 +
  4737 +```C++
  4738 +GetServer_UserName(1); //
  4739 +```
  4740 +
  4741 +HDParamCallBack 閫
  4742 +
  4743 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4744 +| --- | --- | --- | --- |
  4745 +|int iBaseID|蝡D|1||
  4746 +|int mode|璅∪54||
  4747 +|const char* sInfo|摮泵銝琍"8;admin"|"璅∪;"|
  4748 +
  4749 +### 撖
  4750 +#### 霈曄蔭 撖
  4751 +妍嚗etServer_UserPW
  4752 +霂湔
  4753 +
  4754 +| **妍** | **霂湔** | **** | **憭釣** |
  4755 +| --- | --- | --- | --- |
  4756 +|UCHAR iBaseID|蝡D|0~32|
  4757 +|char* buf|撖泵銝琍|
  4758 +
  4759 +
  4760 +隞
  4761 +```C++
  4762 +extern"C" __declspec(dllexport) bool SetServer_UserPW(
  4763 + UCHAR iBaseID,
  4764 + char* buf);
  4765 +```
  4766 +
  4767 +靘
  4768 +靘
  4769 +
  4770 +```C++
  4771 +SetServer_UserPW(1,"123456"); //
  4772 +```
  4773 +
  4774 +HDParamCallBack 閫
  4775 +
  4776 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4777 +| --- | --- | --- | --- |
  4778 +|int iBaseID|蝡D|1||
  4779 +|int mode|璅∪54||
  4780 +|const char* sInfo|摮泵銝琍"9;123456"|"璅∪;"|
  4781 +
  4782 +
  4783 +#### 撖
  4784 +妍嚗etServer_UserPW
  4785 +霂湔
  4786 +
  4787 +| **妍** | **霂湔** | **** | **憭釣** |
  4788 +| --- | --- | --- | --- |
  4789 +|UCHAR iBaseID|蝡D|0~32|
  4790 +
  4791 +隞
  4792 +```C++
  4793 +extern"C" __declspec(dllexport) bool GetServer_UserPW(UCHAR iBaseID);
  4794 +```
  4795 +
  4796 +靘
  4797 +靘
  4798 +
  4799 +```C++
  4800 +GetServer_UserPW(1); //
  4801 +```
  4802 +
  4803 +HDParamCallBack 閫
  4804 +
  4805 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4806 +| --- | --- | --- | --- |
  4807 +|int iBaseID|蝡D|1||
  4808 +|int mode|璅∪54||
  4809 +|const char* sInfo|摮泵銝琍"9;123456"|"璅∪;"|
  4810 +
  4811 +## AES
  4812 +### AES撘霈曄蔭
  4813 +#### 霈曄蔭AES撘
  4814 +妍嚗etAESPar
  4815 +霂湔
  4816 +
  4817 +| **妍** | **霂湔** | **** | **憭釣** |
  4818 +| --- | --- | --- | --- |
  4819 +|UCHAR iBaseID|蝡D|0~32|
  4820 +|UCHAR par|AES撘||
  4821 +
  4822 +
  4823 +隞
  4824 +```C++
  4825 +extern"C" __declspec(dllexport) bool SetAESPar(
  4826 + UCHAR iBaseID,
  4827 + UCHAR par);
  4828 +```
  4829 +
  4830 +靘
  4831 +靘挽蝵唧ES撘
  4832 +
  4833 +```C++
  4834 +SetAESPar(1,1); //
  4835 +```
  4836 +
  4837 +HDParamCallBack 閫
  4838 +
  4839 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4840 +| --- | --- | --- | --- |
  4841 +|int iBaseID|蝡D|1||
  4842 +|int mode|璅∪55||
  4843 +|const char* sInfo|摮泵銝琍"1"||
  4844 +
  4845 +
  4846 +ES撘
  4847 +妍嚗etAESPar
  4848 +霂湔
  4849 +
  4850 +| **妍** | **霂湔** | **** | **憭釣** |
  4851 +| --- | --- | --- | --- |
  4852 +|UCHAR iBaseID|蝡D|0~32|
  4853 +
  4854 +隞
  4855 +```C++
  4856 +extern"C" __declspec(dllexport) bool GetAESPar(UCHAR iBaseID);
  4857 +```
  4858 +
  4859 +靘
  4860 +靘挽蝵唧ES撘
  4861 +
  4862 +```C++
  4863 +GetAESPar(1); //
  4864 +```
  4865 +
  4866 +HDParamCallBack 閫
  4867 +
  4868 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4869 +| --- | --- | --- | --- |
  4870 +|int iBaseID|蝡D|1||
  4871 +|int mode|璅∪55||
  4872 +|const char* sInfo|摮泵銝琍"1"||
  4873 +
  4874 +### AES蝘
  4875 +霈曄蔭蝘
  4876 +妍嚗etAESData
  4877 +霂湔
  4878 +
  4879 +| **妍** | **霂湔** | **** | **憭釣** |
  4880 +| --- | --- | --- | --- |
  4881 +|UCHAR iBaseID|蝡D|0~32|
  4882 +|char* data|AES蝘||
  4883 +
  4884 +
  4885 +隞
  4886 +```C++
  4887 +extern"C" __declspec(dllexport) bool SetAESData(
  4888 + UCHAR iBaseID,
  4889 + char* data);
  4890 +```
  4891 +
  4892 +ES蝘
  4893 +妍嚗etAESData
  4894 +霂湔
  4895 +
  4896 +| **妍** | **霂湔** | **** | **憭釣** |
  4897 +| --- | --- | --- | --- |
  4898 +|UCHAR iBaseID|蝡D|0~32|
  4899 +
  4900 +隞
  4901 +```C++
  4902 +extern"C" __declspec(dllexport) bool GetAESData(UCHAR iBaseID);
  4903 +```
  4904 +
  4905 +### AES蝘憭
  4906 +霈曄蔭AES蝘憭
  4907 +妍嚗opyBaseAES
  4908 +霂湔
  4909 +
  4910 +| **妍** | **霂湔** | **** | **憭釣** |
  4911 +| --- | --- | --- | --- |
  4912 +|UCHAR destBaseID|蝡1~32|
  4913 +|UCHAR srcBaseID|皞蝡1~32|
  4914 +
  4915 +
  4916 +隞
  4917 +```C++
  4918 +extern"C" __declspec(dllexport) bool CopyBaseAES(
  4919 + UCHAR destBaseID,
  4920 + UCHAR srcBaseID);
  4921 +```
  4922 +
  4923 +## 蝡蝖蔭
  4924 +### 霈曄蔭蝖蔭
  4925 +妍嚗etBasicSet
  4926 +霂湔
  4927 +
  4928 +| **妍** | **霂湔** | **** | **憭釣** |
  4929 +| --- | --- | --- | --- |
  4930 +|UCHAR iBaseID|蝡D|0~32|
  4931 +|char BootVibraton|||
  4932 +|char VoteVibraton|蝑憪||
  4933 +|char Led|內撘||
  4934 +
  4935 +
  4936 +隞
  4937 +```C++
  4938 +extern"C" __declspec(dllexport) bool SetBasicSet(
  4939 + UCHAR iBaseID,
  4940 + char BootVibraton,
  4941 + char VoteVibraton,
  4942 + char Led);
  4943 +```
  4944 +
  4945 +靘
  4946 +靘挽蝵桀蝖蔭
  4947 +
  4948 +```C++
  4949 +SetBasicSet(1,1,1,1); //
  4950 +```
  4951 +
  4952 +HDParamCallBack 閫
  4953 +
  4954 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4955 +| --- | --- | --- | --- |
  4956 +|int iBaseID|蝡D|1||
  4957 +|int mode|璅∪57||
  4958 +|const char* sInfo|摮泵銝琍"1;1;1"|";蝑憪;內撘"|
  4959 +
  4960 +### 蝖蔭
  4961 +妍嚗etBasicSet
  4962 +霂湔
  4963 +
  4964 +| **妍** | **霂湔** | **** | **憭釣** |
  4965 +| --- | --- | --- | --- |
  4966 +|UCHAR iBaseID|蝡D|0~32|
  4967 +
  4968 +隞
  4969 +```C++
  4970 +extern"C" __declspec(dllexport) bool GetBasicSet(UCHAR iBaseID);
  4971 +```
  4972 +
  4973 +靘
  4974 +靘挽蝵桀蝖蔭
  4975 +
  4976 +```C++
  4977 +GetBasicSet(1); //
  4978 +```
  4979 +
  4980 +HDParamCallBack 閫
  4981 +
  4982 +| **妍** | **霂湔** | **閫** | **憭釣** |
  4983 +| --- | --- | --- | --- |
  4984 +|int iBaseID|蝡D|1||
  4985 +|int mode|璅∪57||
  4986 +|const char* sInfo|摮泵銝琍"1;1;1"|";蝑憪;內撘"|
  4987 +
  4988 +# 隞嗅漣
  4989 +## 蝡隞嗅漣
  4990 +蝡隞嗅漣
  4991 +妍嚗evBaseFirmwareUpdate
  4992 +霂湔
  4993 +
  4994 +| **妍** | **霂湔** | **** | **憭釣** |
  4995 +| --- | --- | --- | --- |
  4996 +|UCHAR iBaseID|蝡D|0~32|
  4997 +|char *Path|蝡隞嗆辣頝臬|
  4998 +
  4999 +隞
  5000 +```C++
  5001 +extern"C" __declspec(dllexport) bool DevBaseFirmwareUpdate(
  5002 + UCHAR iBaseID,
  5003 + char *Path);
  5004 +```
  5005 +
  5006 +靘
  5007 +靘蝡隞嗅漣
  5008 +
  5009 +```C++
  5010 +DevBaseFirmwareUpdate(1,"C:\123.bin"); //
  5011 +```
  5012 +
  5013 +撘
  5014 +HDParamCallBack 閫
  5015 +
  5016 +| **妍** | **霂湔** | **閫** | **憭釣** |
  5017 +| --- | --- | --- | --- |
  5018 +|int iBaseID|蝡D|1||
  5019 +|int mode|璅∪28||
  5020 +|const char* sInfo|摮泵銝琍"1,OK"|"撘漣;"|
  5021 +
  5022 +餈漲
  5023 +HDParamCallBack 閫
  5024 +
  5025 +| **妍** | **霂湔** | **閫** | **憭釣** |
  5026 +| --- | --- | --- | --- |
  5027 +|int iBaseID|蝡D|1||
  5028 +|int mode|璅∪28||
  5029 +|const char* sInfo|摮泵銝琍"2,100,50,OK"|"甇漣嚗餉漲嚗漲;"|
  5030 +
  5031 +蝏
  5032 +HDParamCallBack 閫
  5033 +
  5034 +| **妍** | **霂湔** | **閫** | **憭釣** |
  5035 +| --- | --- | --- | --- |
  5036 +|int iBaseID|蝡D|1||
  5037 +|int mode|璅∪28||
  5038 +|const char* sInfo|摮泵銝琍"3,OK"|"摰漣;"|
  5039 +
  5040 +## 隞嗅漣
  5041 +隞嗅漣
  5042 +妍嚗eyFirmwareUpdateStart
  5043 +霂湔
  5044 +
  5045 +| **妍** | **霂湔** | **** | **憭釣** |
  5046 +| --- | --- | --- | --- |
  5047 +|UCHAR iBaseID|蝡D|0~32|
  5048 +|char *Path|隞嗆辣頝臬|
  5049 +
  5050 +隞
  5051 +```C++
  5052 +extern"C" __declspec(dllexport) bool KeyFirmwareUpdateStart(
  5053 + UCHAR iBaseID,
  5054 + char* Path);
  5055 +```
  5056 +
  5057 +靘
  5058 +靘隞嗅漣
  5059 +
  5060 +```C++
  5061 +KeyFirmwareUpdateStart(1,"C:\234.bin"); //
  5062 +```
  5063 +
  5064 +撘
  5065 +HDParamCallBack 閫
  5066 +
  5067 +| **妍** | **霂湔** | **閫** | **憭釣** |
  5068 +| --- | --- | --- | --- |
  5069 +|int iBaseID|蝡D|1||
  5070 +|int mode|璅∪30||
  5071 +|const char* sInfo|摮泵銝琍"11,OK"|"撘漣;"|
  5072 +
  5073 +餈漲
  5074 +HDParamCallBack 閫
  5075 +
  5076 +| **妍** | **霂湔** | **閫** | **憭釣** |
  5077 +| --- | --- | --- | --- |
  5078 +|int iBaseID|蝡D|1||
  5079 +|int mode|璅∪30||
  5080 +|const char* sInfo|摮泵銝琍"12,100,50,OK"|"甇漣嚗餉漲嚗漲;"|
  5081 +
  5082 +蝏
  5083 +HDParamCallBack 閫
  5084 +
  5085 +| **妍** | **霂湔** | **閫** | **憭釣** |
  5086 +| --- | --- | --- | --- |
  5087 +|int iBaseID|蝡D|1||
  5088 +|int mode|璅∪30||
  5089 +|const char* sInfo|摮泵銝琍"13,OK"|"摰漣;"|
  5090 +
  5091 +迫隞嗅漣
  5092 +妍嚗eyFirmwareUpdateStop
  5093 +霂湔
  5094 +
  5095 +| **妍** | **霂湔** | **** | **憭釣** |
  5096 +| --- | --- | --- | --- |
  5097 +|UCHAR iBaseID|蝡D|0~32|
  5098 +
  5099 +隞
  5100 +```C++
  5101 +extern"C" __declspec(dllexport) bool KeyFirmwareUpdateStop(UCHAR iBaseID);
  5102 +```
  5103 +
  5104 +靘
  5105 +靘迫隞嗅漣
  5106 +
  5107 +```C++
  5108 +KeyFirmwareUpdateStop(1); //
  5109 +```
  5110 +
  5111 +HDParamCallBack 閫
  5112 +
  5113 +| **妍** | **霂湔** | **閫** | **憭釣** |
  5114 +| --- | --- | --- | --- |
  5115 +|int iBaseID|蝡D|1||
  5116 +|int mode|璅∪30||
  5117 +|const char* sInfo|摮泵銝琍"13,OK"|"迫漣;"|
  5118 +
968 5119 ## 撘虜憭
969 5120  
970 5121 ### WSCmdApp撘虜
... ...
通讯协议-SDK应用使用说明.docx 0 → 100644
No preview for this file type
通讯协议-SDK应用部分.md
... ... @@ -8,7 +8,7 @@ WSCmdApp悅霂湔
8 8  
9 9  
10 10 <div style="text-align: center;font-size: 30px;">
11   -Ver5.1.1
  11 +Ver5.1.5
12 12 </div>
13 13 <br>
14 14 <br>
... ... @@ -24,7 +24,7 @@ Ver5.1.1
24 24 <br>
25 25  
26 26 <div style="text-align: center;font-size: 30px;">
27   -鈭僑
  27 +鈭僑
28 28 </div>
29 29  
30 30 <br>
... ... @@ -44,6 +44,9 @@ Ver5.1.1
44 44 | ﹝ | | 雿 | 霂湔 |
45 45 |---|---|---|---|
46 46 |5.1.1| 2023撟1009|1.
  47 +|5.1.2| 2023撟1107|1. 憓笆璅∪挽蝵格|
  48 +|5.1.3| 2023撟1115|1. 霂剝憸|
  49 +|5.1.5| 2023撟1228|1. 憓son誘蝡d蝡N銝斤芋撘
47 50  
48 51 <br>
49 52  
... ... @@ -66,7 +69,17 @@ WSCmdApp蝔葉config.ini蔭辣銝剖霈曄蔭WebSocket垢嚗誑銝
66 69  
67 70 ![](img/image3.png)
68 71  
69   -銝膩蔭#撘憭渲蛹瘜券笆銝銝銝芷蔭餈秩葵蔭霂湔
  72 +config.ini 辣摮圾秩
  73 +role嚗 WSCmdApp敶ebSocket餈芋撘lient嚗恥蝡舀芋撘erver嚗蝡舀芋撘
  74 +ip: 閬挪ebSocketp嚗迨摰X蝡舀芋撘
  75 +port: WebSocket悖垢
  76 +heartBeatOnOf:敹歲摰嚗迨悅﹝銝剔歲誘雿輻
  77 +敶蔭銝0: WSCmdApp隡笆摨嚗敹歲璉瘚
  78 +敶蔭銝1: WSCmdApp隡笆摨嚗敹歲璉瘚
  79 +heartbeat: 敹歲 嚗10-60
  80 +敶eartBeatOnOff蔭銝1嚗僎銝ebSocket餈芋撘蛹摰X蝡舀嚗敹歲璉瘚瘝⊥敹歲誘嚗ebSocket摰X蝡臭嚗餈
  81 +language嚗WSCmdApp雿輻祗閮嚗0:蝞雿葉 1:
  82 +jsonBase嚗Json誘銝凋蝙蝡D餈蝡N嚗 0:蝡D蝡N1:蝡N蝡D
70 83  
71 84 # 霈曇恣
72 85  
... ... @@ -80,12 +93,15 @@ WSCmdApp蝔葉config.ini蔭辣銝剖霈曄蔭WebSocket垢嚗誑銝
80 93  
81 94 摨蝔SCmdApp銋Json縑嚗縑撘
82 95  
  96 +鈭aseIdaseSn蝙霂湔蝙隞亙config.ini 辣摮sonBase銝剖嚗0:蝡DbaseId潭嚗蝡N1:蝡NbaseSn潭嚗蝡DaseSn摮泵銝脫摮掩,隞乩銝芸蝡N
  97 +
83 98 銝蝔 -> WSCmdApp
84 99  
85 100 ```json
86 101 {
87 102 fun: "" // 摰
88 103 baseId: 1 // 蝡d,摮掩
  104 + baseSn:"2023031402" //蝡N嚗泵銝
89 105 params嚗 {} //撖寡情/蝏
90 106 packetTag: "" //倌摮泵銝
91 107 }
... ... @@ -93,7 +109,8 @@ WSCmdApp蝔葉config.ini蔭辣銝剖霈曄蔭WebSocket垢嚗誑銝
93 109  
94 110 fun 銝箏撖孵妍 憒"readBaseStationID" 霂餃蝡d,"startChoices" //撘憪憸, "stopChoices" //迫憸.
95 111  
96   -baseId嚗蝡D嚗蝡,0隞”蝡1隞”1蝡
  112 +baseId嚗蝡D嚗蝡,1~32嚗蝡笆摨aseId 隞仿eadConnectBase誘甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
  113 +baseSn嚗蝡N”嚗蝡甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
97 114 params嚗嚗撖嫣嚗隞交蝏挾
98 115 packerTag:餈葵撅挾嚗捆閬蝔恣摨誘packerTag雿蔭隡泵銝莎靘踹蝔葵霈啣
99 116  
... ... @@ -103,13 +120,15 @@ packerTag:餈葵撅挾嚗捆閬蝔恣摨
103 120 {
104 121 fun: "" //摰
105 122 baseId: 1 //蝡d,摮掩
  123 + baseSn:"2023031402" //蝡N
106 124 infos: {} //靽⊥撖寡情/蝏
107 125 packetTag: "" // 倌摮泵銝脯
108 126 }
109 127 ```
110 128  
111 129 fun嚗 撖孵妍,憒:"BaseStationID"霂餃蝡d, " answerChoices" //憸.
112   -baseId: 蝡D嚗蝡0畾誨銵冽蝡1隞”1蝡
  130 +baseId: 蝡D嚗蝡1~32嚗蝡笆摨aseId 隞仿eadConnectBase誘
  131 +baseSn: 蝡N嚗蝡
113 132 infos: WSCmdAppPP撅雿祕閫雿摰
114 133 packetTag:餈葵撅挾嚗捆閬蝔恣泵銝脯
115 134  
... ... @@ -121,22 +140,19 @@ X\~Y:潛
121 140 # 縑撘
122 141 鈭支<-->摨撘蝔WSCmdApp嚗SCmdApp銵
123 142  
124   -摨蝔瓷SCmdApp嚗閬歲嚗SCmdApp敹歲歲嚗鈭銝蝔蔭辣銝哨鈭歲璉嚗蝔歲嚗SCmdApp隡撘敶嚗撠嚗
  143 +摨蝔瓷SCmdApp嚗SCmdApp歲誘
  144 +
  145 +WSCmdApp蝡航◤霈曄蔭銝斡ebsocket 蝡舀芋撘嚗蝔SCmdApp歲蝖株恕銝SCmdApp
  146 +
  147 +WSCmdApp蝡航◤霈曄蔭銝斡ebsocket 摰X蝡舀芋撘嚗 WSCmdApp撠敹歲摰歲挽蝵桀捆餈
  148 +
  149 +
125 150  
126 151 # 蝻秩
127 152  
128 153 雿輻WSCmdApp蝻瘚
129 154 蔭嚗(蔭祕蔭辣config.ini)
130 155  
131   -1dk->role websocket
132   -芋撘lient:摰X蝡舀芋撘erver嚗蝡舀芋撘
133   -
134   -2dk-> ip 憒ebsocket憭恥蝡舀芋撘
135   -甇夕p銝箇ip嚗ebsocket憭蝡舀芋撘 甇夕p
136   -
137   -3dk-> port憒ebsocket憭恥蝡舀芋撘
138   -甇小ort銝箇port嚗ebsocket憭蝡舀芋撘
139   -甇小ort銝箸蝡皰ort
140 156
141 157  
142 158 1蝙websocket悖嚗P銝截P
... ... @@ -148,12 +164,15 @@ X\~Y:潛
148 164  
149 165 摨蝔SCmdApp銋Json縑嚗縑撘
150 166  
  167 +
  168 +
151 169 銝蝔 ->WSCmdApp
152 170  
153 171 ```json
154 172 {
155 173 fun: "" // 摰
156 174 baseId: 1 // 蝡d,摮掩
  175 + baseSn:"2023031402" //蝡N嚗泵銝
157 176 params嚗 {} //撖寡情/蝏
158 177 packetTag: "" //倌摮泵銝
159 178 }
... ... @@ -161,7 +180,9 @@ X\~Y:潛
161 180  
162 181 fun嚗蛹摰隞歹隞文
163 182  
164   -baseId嚗蝡D嚗摮掩雿蝡D嚗隞乩0砲Key潦葵蝡D嚗閬活銝砲隞歹銝蝡D餈
  183 +baseId嚗蝡D嚗摮掩1~32嚗蝡笆摨aseId 隞仿eadConnectBase誘葵蝡D嚗閬活銝砲隞歹銝蝡D餈甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
  184 +
  185 +baseSn嚗蝡N”嚗泵銝脫蝏隞乩銝芸蝡N甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
165 186  
166 187 params嚗嚗隞乩蛹撖寡情蝏鈭撈隞支祕閫雿摰
167 188  
... ... @@ -174,6 +195,7 @@ packerTag:
174 195 {
175 196 fun: "" //摰
176 197 baseId: 1 //蝡d,摮掩
  198 + baseSn:"2023031402" //蝡N
177 199 infos: {} //靽⊥撖寡情/蝏
178 200 packetTag: "" // 倌摮泵銝莎鈭敶誘銝隞誘SCmdApp蝔憓摮扇SCmdApp蝔‵WSCmdApp倌
179 201 }
... ... @@ -181,6 +203,7 @@ packerTag:
181 203  
182 204 fun嚗膩.
183 205 baseId:膩.
  206 +baseSn嚗膩.
184 207 infos:WSCmdApp蝔雿祕閫雿摰
185 208 packetTag:倌摮泵銝莎蛹摨蝔蒂SCmdApp銝餃嚗銝蝏憓
186 209  
... ... @@ -233,15 +256,12 @@ packetTag:&quot;1&quot;//倌
233 256 霂餃蝥踹蝡
234 257  
235 258 fun: "readConnectBase" //餈蝡
236   -baseId:0 //蝡D
237   -params嚗} //銝箇征
238 259 packetTag:"1" //
239 260  
240 261 誘靘
241 262 ```json
242 263 {
243 264 "fun": "readConnectBase",
244   - "baseId": 0,
245 265 "packetTag": "1"
246 266 }
247 267 ```
... ... @@ -250,6 +270,7 @@ packetTag:&quot;1&quot; //
250 270  
251 271 fun: "connectBase" //餈蝡
252 272 baseId:1 //蝡D
  273 +baseSn:"2023031402" //蝡N
253 274 infos: {"state":"OK"} //OK餈
254 275 packetTag:"1" //acketTag
255 276  
... ... @@ -258,6 +279,7 @@ packetTag:&quot;1&quot; //acketTag
258 279 {
259 280 "fun": "connectBase",
260 281 "baseId": 1,
  282 + "baseSn":"2023031402",
261 283 "infos": {
262 284 "state": "OK"
263 285 },
... ... @@ -271,6 +293,7 @@ packetTag:&quot;1&quot; //acketTag
271 293  
272 294 fun: "connectBase" //餈蝡
273 295 baseId:1 //蝡D
  296 +baseSn:"2023031402" //蝡N
274 297 infos: {"state":"OK"} //OK餈
275 298 packetTag:"1" //acketTag
276 299  
... ... @@ -279,6 +302,7 @@ packetTag:&quot;1&quot; //acketTag
279 302 {
280 303 "fun": "connectBase",
281 304 "baseId": 1,
  305 + "baseSn":"2023031402",
282 306 "infos": {
283 307 "state": "OK"
284 308 },
... ... @@ -302,6 +326,7 @@ packetTag:&quot;1&quot;
302 326 {
303 327 "fun": "disconnectBase",
304 328 "baseId": 1,
  329 + "baseSn":"2023031402",
305 330 "packetTag": "1"
306 331 }
307 332 ```
... ... @@ -321,6 +346,7 @@ params:{} //砲
321 346 {
322 347 "fun": "resetBase",
323 348 "baseId": 1,
  349 + "baseSn":"2023031402",
324 350 "packetTag": "1"
325 351 }
326 352 ```
... ... @@ -393,6 +419,7 @@ infos:{}//蝏笆鞊
393 419 {
394 420 "fun": "startBindKeypad",
395 421 "baseId": 1,
  422 + "baseSn":"2023031402",
396 423 "infos": [{
397 424 "keySn": "1837454011",
398 425 "state": "OK"
... ... @@ -417,24 +444,11 @@ params:{} //銝箇征
417 444 {
418 445 "fun": "startBindKeypad",
419 446 "baseId": 1,
  447 + "baseSn":"2023031402",
420 448 "packetTag": "1"
421 449 }
422 450 ```
423 451  
424   -迫雿
425   -
426   -誘靘
427   -
428   -```json
429   -{
430   - "keySnList": [{
431   - "keySn": "1837454011"
432   - }, {
433   - "keySn": "1837454012"
434   - }]
435   -}
436   -```
437   -
438 452  
439 453  
440 454 fun: "stopXXKeypad" //迫XX雿(XX迫雿笆摨雿妍)
... ... @@ -447,6 +461,7 @@ infos:{}//蝏笆鞊
447 461 {
448 462 "fun": "stopBindKeypad",
449 463 "baseId": 1,
  464 + "baseSn":"2023031402",
450 465 "infos": [{
451 466 "keySn": "1837454011",
452 467 "state": "OK"
... ... @@ -468,6 +483,7 @@ params嚗} //銝箇征
468 483 {
469 484 "fun": "stopBindKeypad",
470 485 "baseId": 1,
  486 + "baseSn":"2023031402",
471 487 "packetTag": "1"
472 488 }
473 489 ```
... ... @@ -485,12 +501,11 @@ params嚗}
485 501  
486 502 |**Json摮挾**| **摮挾銋** | **韏澆銋**|
487 503 | --- | --- | --- |
488   -|bindMode| 蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕) |
489   -| lessMode | 憸 0:(暺恕潘
  504 +| bindMode | 蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕) |
490 505 | modifyMode | 靽格璅∪ | 0:銝靽格 <br>1:隞乩耨(暺恕)|
491   -| limitNumber | | 0:銝(暺恕) <br> 1: |
492   -| options | 憸 | 10:(暺恕潘
493   -| optionalN | 摮 | 1N14 (閬挽蝵) |
  506 +| lessMode | 憸 0:(暺恕潘
  507 +| options | 憸 | 10:(暺恕潘
  508 +| optionalN | | 1N14 |
494 509 | keyValue | | 0:OK蝑曉] <br>1:1 <br>2:2 <br> 3:3 <br> 4:4 <br> 5:5 <br> 6:6 <br> 7:7 <br> 8:8 <br> 9:9 <br> 10:0 <br> 11:銝 <br> 12:銝 <br> 13:OK <br> 14:ESC <br> 15: Menu |
495 510 | tipTitle | 內 | 摮泵銝莎摨行憭16銝芸
496 511  
... ... @@ -501,6 +516,7 @@ params嚗}
501 516 {
502 517 "fun": "startBind",
503 518 "baseId": 0,
  519 + "baseSn":"2023031402",
504 520 "params": {
505 521 "bindMode": "1",
506 522 "lessMode": "0",
... ... @@ -534,6 +550,7 @@ infos:{}
534 550 {
535 551 "fun": "answerBind",
536 552 "baseId": 1,
  553 + "baseSn":"2023031402",
537 554 "infos": {
538 555 "time": "2.42",
539 556 "keySn": "1479824643",
... ... @@ -556,6 +573,7 @@ params:{} //暺恕蝛
556 573 {
557 574 "fun": "stopBind",
558 575 "baseId": 0,
  576 + "baseSn":"2023031402",
559 577 "packetTag": "1"
560 578 }
561 579 ```
... ... @@ -613,6 +631,7 @@ params嚗}
613 631 {
614 632 "fun": "startChoices",
615 633 "baseId": 0,
  634 + "baseSn":"2023031402",
616 635 "params": {
617 636 "optionsMode": "1",
618 637 "secrecyMode": "0",
... ... @@ -637,6 +656,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
637 656 {
638 657 "fun": "startChoices",
639 658 "baseId": 1,
  659 + "baseSn":"2023031402",
640 660 "infos": {
641 661 "state": "OK"
642 662 },
... ... @@ -655,9 +675,10 @@ infos: {}
655 675  
656 676 |Json摮挾|摮挾銋韏澆銋
657 677 |---|---|---|
658   -| time|蝑|
  678 +|time|蝑|
659 679 |keySn|n||
660 680 |keyValue|慝漱慝
  681 +|keyBattery|瘙S6潘嚗<br>T2潘%嚗
661 682  
662 683  
663 684 誘靘
... ... @@ -665,6 +686,7 @@ infos: {}
665 686 {
666 687 "fun": "answerChoices",
667 688 "baseId": 1,
  689 + "baseSn":"2023031402",
668 690 "infos": {
669 691 "time": "2.42",
670 692 "keySn": "1479824643",
... ... @@ -686,6 +708,7 @@ params:{} //暺恕蝛
686 708 {
687 709 "fun": "stopChoices",
688 710 "baseId": 0,
  711 + "baseSn":"2023031402",
689 712 "packetTag": "1"
690 713 }
691 714 ```
... ... @@ -702,6 +725,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
702 725 {
703 726 "fun": "stopChoices",
704 727 "baseId": 1,
  728 + "baseSn":"2023031402",
705 729 "infos": {
706 730 "state": "OK"
707 731 },
... ... @@ -740,6 +764,7 @@ params嚗}
740 764 {
741 765 "fun": "startTrueFalse",
742 766 "baseId": 0,
  767 + "baseSn":"2023031402",
743 768 "params": {
744 769 "optionsMode": "1",
745 770 "secrecyMode": "0",
... ... @@ -761,6 +786,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
761 786 {
762 787 "fun": "startTrueFalse",
763 788 "baseId": 1,
  789 + "baseSn":"2023031402",
764 790 "infos": {
765 791 "state": "OK"
766 792 },
... ... @@ -789,6 +815,7 @@ infos: {}
789 815 {
790 816 "fun": "answerTrueFalse",
791 817 "baseId": 1,
  818 + "baseSn":"2023031402",
792 819 "infos": {
793 820 "time": "2.42",
794 821 "keySn": "1479824643",
... ... @@ -811,6 +838,7 @@ params:{} //暺恕蝛
811 838 {
812 839 "fun": "stopTrueFalse",
813 840 "baseId": 0,
  841 + "baseSn":"2023031402",
814 842 "packetTag": "1"
815 843 }
816 844 ```
... ... @@ -827,6 +855,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
827 855 {
828 856 "fun": "stopTrueFalse",
829 857 "baseId": 1,
  858 + "baseSn":"2023031402",
830 859 "infos": {
831 860 "state": "OK"
832 861 },
... ... @@ -867,6 +896,7 @@ params嚗}
867 896 {
868 897 "fun": "startMulQuestions",
869 898 "baseId": 0,
  899 + "baseSn":"2023031402",
870 900 "params": {
871 901 "questionType": "0",
872 902 "secrecyMode": "0",
... ... @@ -891,6 +921,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
891 921 {
892 922 "fun": "startMulQuestions",
893 923 "baseId": 1,
  924 + "baseSn":"2023031402",
894 925 "infos": {
895 926 "state": "OK"
896 927 },
... ... @@ -918,6 +949,7 @@ infos: {}
918 949 {
919 950 "fun": "answerMulQuestions",
920 951 "baseId": 1,
  952 + "baseSn":"2023031402",
921 953 "infos": {
922 954 "time": "2.42",
923 955 "keySn": "1479824643",
... ... @@ -940,6 +972,7 @@ params:{} //暺恕蝛
940 972 {
941 973 "fun": "stopMulQuestions",
942 974 "baseId": 0,
  975 + "baseSn":"2023031402",
943 976 "packetTag": "1"
944 977 }
945 978 ```
... ... @@ -956,6 +989,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;} //餈,蛹OK
956 989 {
957 990 "fun": "stopMulQuestions",
958 991 "baseId": 1,
  992 + "baseSn":"2023031402",
959 993 "infos": {
960 994 "state": "OK"
961 995 },
... ... @@ -987,6 +1021,7 @@ params嚗}
987 1021 |recordingTimeLimit|憸0|
988 1022 |recordingFormat|憸0(暺恕0)|
989 1023 |recordAudioFormat|憸撘0:mp3(暺恕)<br>1:摰瘚
  1024 +|buttonMode|撘0:(暺恕)<br>1:敶|
990 1025  
991 1026  
992 1027 誘靘
... ... @@ -995,12 +1030,14 @@ params嚗}
995 1030 {
996 1031 "fun": "startVoice",
997 1032 "baseId": 0,
  1033 + "baseSn":"2023031402",
998 1034 "params": {
999 1035 "recordingMode": "0",
1000 1036 "submitTimes": "0",
1001 1037 "recordingTimeLimit": "0",
1002 1038 "recordingFormat": "0",
1003   - "recordAudioFormat": "0"
  1039 + "recordAudioFormat": "0",
  1040 + "buttonMode": "0"
1004 1041 },
1005 1042 "packetTag": "1"
1006 1043 }
... ... @@ -1018,6 +1055,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1018 1055 {
1019 1056 "fun": "startVoice",
1020 1057 "baseId": 1,
  1058 + "baseSn":"2023031402",
1021 1059 "infos": {
1022 1060 "state": "OK"
1023 1061 },
... ... @@ -1048,6 +1086,7 @@ infos: {}
1048 1086 {
1049 1087 "fun": "answerVoiceFile",
1050 1088 "baseId": 1,
  1089 + "baseSn":"2023031402",
1051 1090 "infos": {
1052 1091 "keySn": "1479749926",
1053 1092 "filePath": "D:\voice\3_1479749926_196_2023-08-21 16-09-02 530.Mp3"
... ... @@ -1083,6 +1122,7 @@ infos: {}
1083 1122 {
1084 1123 "fun": "answerVoiceStream",
1085 1124 "baseId": 1,
  1125 + "baseSn":"2023031402",
1086 1126 "infos": {
1087 1127 "keySn": "1479824643",
1088 1128 "voiceId": "1",
... ... @@ -1115,6 +1155,7 @@ params:{} //暺恕蝛綽
1115 1155 {
1116 1156 "fun": "stopVoice",
1117 1157 "baseId": 0,
  1158 + "baseSn":"2023031402",
1118 1159 "packetTag": "1"
1119 1160 }
1120 1161 ```
... ... @@ -1131,6 +1172,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1131 1172 {
1132 1173 "fun": "stopVoice",
1133 1174 "baseId": 1,
  1175 + "baseSn":"2023031402",
1134 1176 "infos": {
1135 1177 "state": "OK"
1136 1178 },
... ... @@ -1166,6 +1208,7 @@ infos:{} //
1166 1208 {
1167 1209 "fun": "voicePacketLossInfo",
1168 1210 "baseId": 1,
  1211 + "baseSn":"2023031402",
1169 1212 "infos": {
1170 1213 "keySn": "1837454011",
1171 1214 "voiceId": "1",
... ... @@ -1185,6 +1228,7 @@ infos:{} //
1185 1228 |B200-5.8G+T2|活敶180蝘
1186 1229  
1187 1230 ### 蝑
  1231 +
1188 1232 #### 撘憪
1189 1233  
1190 1234  
... ... @@ -1204,6 +1248,7 @@ params嚗}
1204 1248 {
1205 1249 "fun": "startRushAnswer",
1206 1250 "baseId": 0,
  1251 + "baseSn":"2023031402",
1207 1252 "params": {
1208 1253 "rushAnswerMode": "0",
1209 1254 "modifyMode": "1"
... ... @@ -1224,6 +1269,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1224 1269 {
1225 1270 "fun": "startRushAnswer",
1226 1271 "baseId": 1,
  1272 + "baseSn":"2023031402",
1227 1273 "infos": {
1228 1274 "state": "OK"
1229 1275 },
... ... @@ -1251,6 +1297,7 @@ infos: {}
1251 1297 {
1252 1298 "fun": "answerRushAnswer",
1253 1299 "baseId": 1,
  1300 + "baseSn":"2023031402",
1254 1301 "infos": {
1255 1302 "time": "1.42",
1256 1303 "keySn": "1479824643",
... ... @@ -1272,6 +1319,7 @@ params:{} //暺恕蝛
1272 1319 {
1273 1320 "fun": "stopRushAnswer",
1274 1321 "baseId": 0,
  1322 + "baseSn":"2023031402",
1275 1323 "packetTag": "1"
1276 1324 }
1277 1325 ```
... ... @@ -1288,6 +1336,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1288 1336 {
1289 1337 "fun": "stopRushAnswer",
1290 1338 "baseId": 1,
  1339 + "baseSn":"2023031402",
1291 1340 "infos": {
1292 1341 "state": "OK"
1293 1342 },
... ... @@ -1329,6 +1378,7 @@ params嚗}
1329 1378 {
1330 1379 "fun": "startNumber",
1331 1380 "baseId": 0,
  1381 + "baseSn":"2023031402",
1332 1382 "params": {
1333 1383 "secrecyMode": "0",
1334 1384 "modifyMode": "1",
... ... @@ -1353,6 +1403,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1353 1403 {
1354 1404 "fun": "startNumber",
1355 1405 "baseId": 1,
  1406 + "baseSn":"2023031402",
1356 1407 "infos": {
1357 1408 "state": "OK"
1358 1409 },
... ... @@ -1381,6 +1432,7 @@ infos: {}
1381 1432 {
1382 1433 "fun": "answerNumber",
1383 1434 "baseId": 1,
  1435 + "baseSn":"2023031402",
1384 1436 "infos": {
1385 1437 "time": "2.42",
1386 1438 "keySn": "1479824643",
... ... @@ -1403,6 +1455,7 @@ params:{} //暺恕蝛
1403 1455 {
1404 1456 "fun": "stopNumber",
1405 1457 "baseId": 0,
  1458 + "baseSn":"2023031402",
1406 1459 "packetTag": "1"
1407 1460 }
1408 1461 ```
... ... @@ -1419,6 +1472,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1419 1472 {
1420 1473 "fun": "stopNumber",
1421 1474 "baseId": 1,
  1475 + "baseSn":"2023031402",
1422 1476 "infos": {
1423 1477 "state": "OK"
1424 1478 },
... ... @@ -1467,6 +1521,7 @@ params嚗}
1467 1521 {
1468 1522 "fun": "startKeyPadMultipleQuestionsTest",
1469 1523 "baseId": 0,
  1524 + "baseSn":"2023031402",
1470 1525 "params": {
1471 1526 "examNo": 1,
1472 1527 "displayMode": 0,
... ... @@ -1495,6 +1550,7 @@ params嚗}
1495 1550 {
1496 1551 "fun": "startKeyPadMultipleQuestionsTest",
1497 1552 "baseId": 0,
  1553 + "baseSn":"2023031402",
1498 1554 "params": {
1499 1555 "examNo": 1,
1500 1556 "displayMode": 0,
... ... @@ -1527,6 +1583,7 @@ params嚗}
1527 1583 {
1528 1584 "fun": "startKeyPadMultipleQuestionsTest",
1529 1585 "baseId": 0,
  1586 + "baseSn":"2023031402",
1530 1587 "params": {
1531 1588 "examNo": 1,
1532 1589 "displayMode": 0,
... ... @@ -1563,6 +1620,7 @@ params嚗}
1563 1620 {
1564 1621 "fun": "startKeyPadMultipleQuestionsTest",
1565 1622 "baseId": 0,
  1623 + "baseSn":"2023031402",
1566 1624 "params": {
1567 1625 "examNo": 1,
1568 1626 "displayMode": 1,
... ... @@ -1590,6 +1648,7 @@ params嚗}
1590 1648 {
1591 1649 "fun": "startKeyPadMultipleQuestionsTest",
1592 1650 "baseId": 0,
  1651 + "baseSn":"2023031402",
1593 1652 "params": {
1594 1653 "examNo": 1,
1595 1654 "displayMode": 2,
... ... @@ -1623,6 +1682,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1623 1682 {
1624 1683 "fun": "keyPadMultipleQuestionsTest",
1625 1684 "baseId": 1,
  1685 + "baseSn":"2023031402",
1626 1686 "infos": {
1627 1687 "state": "OK"
1628 1688 },
... ... @@ -1659,6 +1719,7 @@ params嚗}
1659 1719 {
1660 1720 "fun": "startKeyPadMultipleQuestionsCourse",
1661 1721 "baseId": 0,
  1722 + "baseSn":"2023031402",
1662 1723 "params": {
1663 1724 "examNo": 1,
1664 1725 "displayMode": 0,
... ... @@ -1705,6 +1766,7 @@ params嚗}
1705 1766 {
1706 1767 "fun": "startKeyPadMultipleQuestionsCourse",
1707 1768 "baseId": 0,
  1769 + "baseSn":"2023031402",
1708 1770 "params": {
1709 1771 "examNo": 1,
1710 1772 "displayMode": 0,
... ... @@ -1737,6 +1799,7 @@ params嚗}
1737 1799 {
1738 1800 "fun": "startKeyPadMultipleQuestionsCourse",
1739 1801 "baseId": 0,
  1802 + "baseSn":"2023031402",
1740 1803 "params": {
1741 1804 "examNo": 1,
1742 1805 "displayMode": 1,
... ... @@ -1769,6 +1832,7 @@ params嚗}
1769 1832 {
1770 1833 "fun": "startKeyPadMultipleQuestionsCourse",
1771 1834 "baseId": 0,
  1835 + "baseSn":"2023031402",
1772 1836 "params": {
1773 1837 "examNo": 1,
1774 1838 "displayMode": 2,
... ... @@ -1807,6 +1871,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1807 1871 {
1808 1872 "fun": "keyPadMultipleQuestionsCourse",
1809 1873 "baseId": 1,
  1874 + "baseSn":"2023031402",
1810 1875 "infos": {
1811 1876 "state": "OK"
1812 1877 },
... ... @@ -1837,6 +1902,7 @@ params嚗}
1837 1902 {
1838 1903 "fun": "startKeyPadMultipleQuestionsSubjective",
1839 1904 "baseId": 0,
  1905 + "baseSn":"2023031402",
1840 1906 "params": {
1841 1907 "examNo": 1,
1842 1908 "questions": [{
... ... @@ -1872,6 +1938,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1872 1938 {
1873 1939 "fun": "KeyPadMultipleQuestionsSubjective",
1874 1940 "baseId": 1,
  1941 + "baseSn":"2023031402",
1875 1942 "infos": {
1876 1943 "state": "OK"
1877 1944 },
... ... @@ -1905,6 +1972,7 @@ infos: {}
1905 1972 {
1906 1973 "fun": "answerKeyPadMultipleQuestions",
1907 1974 "baseId": 1,
  1975 + "baseSn":"2023031402",
1908 1976 "infos": {
1909 1977 "time": "5.42",
1910 1978 "keySn": "1479824643",
... ... @@ -1929,8 +1997,8 @@ params:{} //暺恕蝛
1929 1997 ```json
1930 1998 {
1931 1999 "fun": "stopKeyPadMultipleQuestions",
1932   -
1933 2000 "baseId": 0,
  2001 + "baseSn":"2023031402",
1934 2002 "packetTag": "1"
1935 2003 }
1936 2004 ```
... ... @@ -1949,6 +2017,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1949 2017 {
1950 2018 "fun": "stopKeyPadMultipleQuestions",
1951 2019 "baseId": 1,
  2020 + "baseSn":"2023031402",
1952 2021 "infos": {
1953 2022 "state": "OK"
1954 2023 },
... ... @@ -1971,8 +2040,8 @@ params:{} //暺恕蝛
1971 2040 ```json
1972 2041 {
1973 2042 "fun": "pauseKeyPadMultipleQuestions",
1974   -
1975 2043 "baseId": 0,
  2044 + "baseSn":"2023031402",
1976 2045 "packetTag": "1"
1977 2046 }
1978 2047 ```
... ... @@ -1992,6 +2061,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1992 2061 {
1993 2062 "fun": "pauseKeyPadMultipleQuestions",
1994 2063 "baseId": 1,
  2064 + "baseSn":"2023031402",
1995 2065 "infos": {
1996 2066 "state": "OK"
1997 2067 },
... ... @@ -2031,6 +2101,7 @@ params嚗}
2031 2101 {
2032 2102 "fun": "continueKeyPadMultipleQuestionsTest",
2033 2103 "baseId": 0,
  2104 + "baseSn":"2023031402",
2034 2105 "params": {
2035 2106 "examNo": 1,
2036 2107 "displayMode": 0,
... ... @@ -2058,6 +2129,7 @@ params嚗}
2058 2129 {
2059 2130 "fun": "continueKeyPadMultipleQuestionsTest",
2060 2131 "baseId": 0,
  2132 + "baseSn":"2023031402",
2061 2133 "params": {
2062 2134 "examNo": 1,
2063 2135 "displayMode": 0,
... ... @@ -2089,6 +2161,7 @@ params嚗}
2089 2161 {
2090 2162 "fun": "continueKeyPadMultipleQuestionsTest",
2091 2163 "baseId": 0,
  2164 + "baseSn":"2023031402",
2092 2165 "params": {
2093 2166 "examNo": 1,
2094 2167 "displayMode": 0,
... ... @@ -2124,6 +2197,7 @@ params嚗}
2124 2197 {
2125 2198 "fun": "continueKeyPadMultipleQuestionsTest",
2126 2199 "baseId": 0,
  2200 + "baseSn":"2023031402",
2127 2201 "params": {
2128 2202 "examNo": 1,
2129 2203 "displayMode": 1,
... ... @@ -2151,6 +2225,7 @@ params嚗}
2151 2225 {
2152 2226 "fun": "continueKeyPadMultipleQuestionsTest",
2153 2227 "baseId": 0,
  2228 + "baseSn":"2023031402",
2154 2229 "params": {
2155 2230 "examNo": 1,
2156 2231 "displayMode": 2,
... ... @@ -2184,6 +2259,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2184 2259 {
2185 2260 "fun": "keyPadMultipleQuestionsTest",
2186 2261 "baseId": 1,
  2262 + "baseSn":"2023031402",
2187 2263 "infos": {
2188 2264 "state": "OK"
2189 2265 },
... ... @@ -2220,6 +2296,7 @@ params嚗}
2220 2296 {
2221 2297 "fun": "continueKeyPadMultipleQuestionsCourse",
2222 2298 "baseId": 0,
  2299 + "baseSn":"2023031402",
2223 2300 "params": {
2224 2301 "examNo": 1,
2225 2302 "displayMode": 0,
... ... @@ -2268,6 +2345,7 @@ params嚗}
2268 2345 {
2269 2346 "fun": "continueKeyPadMultipleQuestionsCourse",
2270 2347 "baseId": 0,
  2348 + "baseSn":"2023031402",
2271 2349 "params": {
2272 2350 "examNo": 1,
2273 2351 "displayMode": 0,
... ... @@ -2300,6 +2378,7 @@ params嚗}
2300 2378 {
2301 2379 "fun": "continueKeyPadMultipleQuestionsCourse",
2302 2380 "baseId": 0,
  2381 + "baseSn":"2023031402",
2303 2382 "params": {
2304 2383 "examNo": 1,
2305 2384 "displayMode": 1,
... ... @@ -2332,6 +2411,7 @@ params嚗}
2332 2411 {
2333 2412 "fun": "continueKeyPadMultipleQuestionsCourse",
2334 2413 "baseId": 0,
  2414 + "baseSn":"2023031402",
2335 2415 "params": {
2336 2416 "examNo": 1,
2337 2417 "displayMode": 2,
... ... @@ -2370,6 +2450,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2370 2450 {
2371 2451 "fun": "keyPadMultipleQuestionsCourse",
2372 2452 "baseId": 1,
  2453 + "baseSn":"2023031402",
2373 2454 "infos": {
2374 2455 "state": "OK"
2375 2456 },
... ... @@ -2400,6 +2481,7 @@ params嚗}
2400 2481 {
2401 2482 "fun": "continueKeyPadMultipleQuestionsSubjective",
2402 2483 "baseId": 0,
  2484 + "baseSn":"2023031402",
2403 2485 "params": {
2404 2486 "examNo": 1,
2405 2487 "questions": [{
... ... @@ -2435,6 +2517,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2435 2517 {
2436 2518 "fun": "keyPadMultipleQuestionsSubjective",
2437 2519 "baseId": 1,
  2520 + "baseSn":"2023031402",
2438 2521 "infos": {
2439 2522 "state": "OK"
2440 2523 },
... ... @@ -2465,6 +2548,7 @@ params:{} //
2465 2548 {
2466 2549 "fun": "copyKeyPadMultipleQuestions",
2467 2550 "baseId": 1,
  2551 + "baseSn":"2023031402",
2468 2552 "params": {
2469 2553 "keySn": "0007831203",
2470 2554 "questions": [{
... ... @@ -2493,6 +2577,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2493 2577 {
2494 2578 "fun": "copyKeyPadMultipleQuestions",
2495 2579 "baseId": 1,
  2580 + "baseSn":"2023031402",
2496 2581 "infos": {
2497 2582 "state": "OK"
2498 2583 },
... ... @@ -2521,6 +2606,7 @@ params:{} //暺恕蝛
2521 2606 {
2522 2607 "fun": "okKeyPadMultipleQuestions",
2523 2608 "baseId": 0,
  2609 + "baseSn":"2023031402",
2524 2610 "params": [{
2525 2611 "id": "1",
2526 2612 "questionType": "1",
... ... @@ -2546,6 +2632,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2546 2632 {
2547 2633 "fun": "okKeyPadMultipleQuestions",
2548 2634 "baseId": 1,
  2635 + "baseSn":"2023031402",
2549 2636 "infos": {
2550 2637 "state": "OK"
2551 2638 },
... ... @@ -2583,6 +2670,7 @@ params嚗}
2583 2670 {
2584 2671 "fun": "startTextAnswer",
2585 2672 "baseId": 0,
  2673 + "baseSn":"2023031402",
2586 2674 "params": {
2587 2675 "optionsMode": "1",
2588 2676 "modifyMode": "1",
... ... @@ -2604,6 +2692,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;} //餈,蛹OK
2604 2692 {
2605 2693 "fun": "startTextAnswer",
2606 2694 "baseId": 1,
  2695 + "baseSn":"2023031402",
2607 2696 "infos": {
2608 2697 "state": "OK"
2609 2698 },
... ... @@ -2631,6 +2720,7 @@ infos: {}
2631 2720 {
2632 2721 "fun": "answerTextAnswer",
2633 2722 "baseId": 1,
  2723 + "baseSn":"2023031402",
2634 2724 "infos": {
2635 2725 "keySn": "1479824643",
2636 2726 "keyValue": "abcdef"
... ... @@ -2650,6 +2740,8 @@ params:{} //暺恕蝛
2650 2740 ```json
2651 2741 {
2652 2742 "fun": "stopTextAnswer",
  2743 + "baseId": 0,
  2744 + "baseSn":"2023031402",
2653 2745 "packetTag": "1"
2654 2746 }
2655 2747 ```
... ... @@ -2665,6 +2757,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2665 2757 {
2666 2758 "fun": "stopTextAnswer",
2667 2759 "baseId": 1,
  2760 + "baseSn":"2023031402",
2668 2761 "infos": {
2669 2762 "state": "OK"
2670 2763 },
... ... @@ -2694,6 +2787,7 @@ params嚗}
2694 2787 {
2695 2788 "fun": "startFreeQuestion",
2696 2789 "baseId": 0,
  2790 + "baseSn":"2023031402",
2697 2791 "params": {},
2698 2792 "packetTag": "1"
2699 2793 }
... ... @@ -2711,6 +2805,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;} //餈,蛹OK
2711 2805 {
2712 2806 "fun": "startFreeQuestion",
2713 2807 "baseId": 1,
  2808 + "baseSn":"2023031402",
2714 2809 "infos": {
2715 2810 "state": "OK"
2716 2811 },
... ... @@ -2741,6 +2836,7 @@ infos: {}
2741 2836 {
2742 2837 "fun": "answerChoices",
2743 2838 "baseId": 1,
  2839 + "baseSn":"2023031402",
2744 2840 "infos": {
2745 2841 "keySn": "1479824643",
2746 2842 "keyValue": "ABC"
... ... @@ -2765,6 +2861,7 @@ infos: {}
2765 2861 {
2766 2862 "fun": "answerTrueFalse",
2767 2863 "baseId": 1,
  2864 + "baseSn":"2023031402",
2768 2865 "infos": {
2769 2866 "keySn": "1479824643",
2770 2867 "keyValue": "1"
... ... @@ -2788,6 +2885,7 @@ infos: {}
2788 2885 {
2789 2886 "fun": "answerNumber",
2790 2887 "baseId": 1,
  2888 + "baseSn":"2023031402",
2791 2889 "infos": {
2792 2890 "keySn": "1479824643",
2793 2891 "keyValue": "99.99"
... ... @@ -2809,6 +2907,8 @@ params:{} //暺恕蝛
2809 2907 ```json
2810 2908 {
2811 2909 "fun": "stopFreeQuestion",
  2910 + "baseId": 0,
  2911 + "baseSn":"2023031402",
2812 2912 "packetTag": "1"
2813 2913 }
2814 2914 ```
... ... @@ -2824,6 +2924,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2824 2924 {
2825 2925 "fun": "stopFreeQuestion",
2826 2926 "baseId": 1,
  2927 + "baseSn":"2023031402",
2827 2928 "infos": {
2828 2929 "state": "OK"
2829 2930 },
... ... @@ -2865,6 +2966,7 @@ params:{}//
2865 2966 {
2866 2967 "fun": "writeNFCInfo",
2867 2968 "baseId": 1,
  2969 + "baseSn":"2023031402",
2868 2970 "params": {
2869 2971 "userName": "撘",
2870 2972 "matchCode": "22120007"
... ... @@ -2884,6 +2986,7 @@ infos:{&quot;value&quot;:&quot;OK&quot;}//餈,蛹OK
2884 2986 {
2885 2987 "fun": "writeNFCInfo",
2886 2988 "baseId": 1,
  2989 + "baseSn":"2023031402",
2887 2990 "infos": {
2888 2991 "value": "OK"
2889 2992 },
... ... @@ -2916,6 +3019,7 @@ infos:{}
2916 3019 {
2917 3020 "fun": "NFCInfo",
2918 3021 "baseId": 1,
  3022 + "baseSn":"2023031402",
2919 3023 "infos": {
2920 3024 "keySn": "1479824643",
2921 3025 "state": "4",
... ... @@ -2948,6 +3052,7 @@ params:{}//
2948 3052 {
2949 3053 "fun": "writeNFCEmpty",
2950 3054 "baseId": 1,
  3055 + "baseSn":"2023031402",
2951 3056 "params": {},
2952 3057 "packetTag": "1"
2953 3058 }
... ... @@ -2963,6 +3068,7 @@ infos:{&quot;value&quot;:&quot;OK&quot;}//餈,蛹OK
2963 3068 {
2964 3069 "fun": "writeNFCEmpty",
2965 3070 "baseId": 1,
  3071 + "baseSn":"2023031402",
2966 3072 "infos": {
2967 3073 "value": "OK"
2968 3074 },
... ... @@ -2998,6 +3104,7 @@ params嚗}//銝‵
2998 3104 {
2999 3105 "fun": "readBaseStationID",
3000 3106 "baseId": 2,
  3107 + "baseSn":"2023031402",
3001 3108 "packetTag": "1"
3002 3109 }
3003 3110 ```
... ... @@ -3016,6 +3123,7 @@ infos:{&quot;value&quot;:&quot;2&quot;}//餈蝡D
3016 3123 {
3017 3124 "fun": "baseStationID",
3018 3125 "baseId": 2,
  3126 + "baseSn":"2023031402",
3019 3127 "infos": {
3020 3128 "pathAdd": "12345",
3021 3129 "value": "2"
... ... @@ -3037,7 +3145,7 @@ infos:{&quot;value&quot;:&quot;2&quot;}//餈蝡D
3037 3145  
3038 3146  
3039 3147 fun: "readBaseStationChannel" //霂餃蝡
3040   -baseId: 0//0~32 (暺恕銝0銵函內霂餃蝡)
  3148 +baseId: 1//1~32 (敹◆蝡)
3041 3149 params嚗}//銝‵
3042 3150  
3043 3151  
... ... @@ -3046,7 +3154,8 @@ params嚗}//銝‵
3046 3154 ```json
3047 3155 {
3048 3156 "fun": "readBaseStationChannel",
3049   - "baseId": 0,
  3157 + "baseId": 1,
  3158 + "baseSn":"2023031402",
3050 3159 "packetTag": "1"
3051 3160 }
3052 3161 ```
... ... @@ -3070,6 +3179,7 @@ params嚗&quot;value&quot;:&quot;1&quot;}//1~12 嚗嚗
3070 3179 {
3071 3180 "fun": "writeBaseStationChannel",
3072 3181 "baseId": 1,
  3182 + "baseSn":"2023031402",
3073 3183 "params": {
3074 3184 "value": "3",
3075 3185 "values": ["3", "6", "9", "12"]
... ... @@ -3092,6 +3202,7 @@ infos:{&quot;value&quot;:&quot;3&quot;}//餈蝡
3092 3202 {
3093 3203 "fun": "baseStationChannel",
3094 3204 "baseId": 1,
  3205 + "baseSn":"2023031402",
3095 3206 "infos": {
3096 3207 "value": "3",
3097 3208 "values": ["3", "6", "9", "12"]
... ... @@ -3114,7 +3225,7 @@ infos:{&quot;value&quot;:&quot;3&quot;}//餈蝡
3114 3225  
3115 3226  
3116 3227 fun: "readKeyboardLoginMenu" //霂駁敶蝷
3117   -baseId: 0//0~32 (暺恕銝0銵函內霂餃蝡)
  3228 +baseId: 1//1~32 (敹◆蝡)
3118 3229 params嚗}//銝‵
3119 3230  
3120 3231  
... ... @@ -3123,7 +3234,8 @@ params嚗}//銝‵
3123 3234 ```json
3124 3235 {
3125 3236 "fun": "readKeyboardLoginMenu",
3126   - "baseId": 0,
  3237 + "baseId": 1,
  3238 + "baseSn":"2023031402",
3127 3239 "packetTag": "1"
3128 3240 }
3129 3241 ```
... ... @@ -3142,6 +3254,7 @@ params嚗&quot;value&quot;:&quot;1&quot;}//0~1 嚗0銝捂敶1捂敶
3142 3254 {
3143 3255 "fun": "writeKeyboardLoginMenu",
3144 3256 "baseId": 1,
  3257 + "baseSn":"2023031402",
3145 3258 "params": {
3146 3259 "value": "1"
3147 3260 },
... ... @@ -3164,6 +3277,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶蝷箏
3164 3277 {
3165 3278 "fun": "baseStationKeyboardLoginMenu",
3166 3279 "baseId": 1,
  3280 + "baseSn":"2023031402",
3167 3281 "infos": {
3168 3282 "value": "1"
3169 3283 },
... ... @@ -3187,7 +3301,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶蝷箏
3187 3301  
3188 3302  
3189 3303 fun: "readBaseStationModel" //霂餃蝡
3190   -baseId: 0//0~32 (暺恕銝0銵函內霂餃蝡)
  3304 +baseId: 1//1~32 (敹◆蝡)
3191 3305 params嚗}//銝‵
3192 3306  
3193 3307  
... ... @@ -3196,7 +3310,8 @@ params嚗}//銝‵
3196 3310 ```json
3197 3311 {
3198 3312 "fun": "readBaseStationModel",
3199   - "baseId": 0,
  3313 + "baseId": 1,
  3314 + "baseSn":"2023031402",
3200 3315 "packetTag": "1"
3201 3316 }
3202 3317 ```
... ... @@ -3216,6 +3331,7 @@ infos:{&quot;value&quot;:&quot;218&quot;}//餈蝡
3216 3331 {
3217 3332 "fun": "baseStationModel",
3218 3333 "baseId": 1,
  3334 + "baseSn":"2023031402",
3219 3335 "infos": {
3220 3336 "value": "218"
3221 3337 },
... ... @@ -3247,7 +3363,7 @@ infos:{&quot;value&quot;:&quot;218&quot;}//餈蝡
3247 3363  
3248 3364  
3249 3365 fun: "readBaseStationSVersion" //霂餃蝡蔓隞嗥
3250   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  3366 +baseId: 1//1~32 (敹◆蝡)
3251 3367 params嚗}//銝‵
3252 3368  
3253 3369  
... ... @@ -3256,7 +3372,8 @@ params嚗}//銝‵
3256 3372 ```json
3257 3373 {
3258 3374 "fun": "readBaseStationSVersion",
3259   - "baseId": 0,
  3375 + "baseId": 1,
  3376 + "baseSn":"2023031402",
3260 3377 "packetTag": "1"
3261 3378 }
3262 3379 ```
... ... @@ -3276,6 +3393,7 @@ infos:{&quot;value&quot;:&quot;V2.0.2&quot;}//餈蝡蔓隞嗥
3276 3393 {
3277 3394 "fun": "baseStationSVersion",
3278 3395 "baseId": 1,
  3396 + "baseSn":"2023031402",
3279 3397 "infos": {
3280 3398 "value": "V2.0.2"
3281 3399 },
... ... @@ -3298,7 +3416,7 @@ infos:{&quot;value&quot;:&quot;V2.0.2&quot;}//餈蝡蔓隞嗥
3298 3416  
3299 3417  
3300 3418 fun: "readBaseStationSN" //霂餃蝡
3301   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  3419 +baseId: 1//1~32 (敹◆蝡)
3302 3420 params嚗}//銝‵
3303 3421  
3304 3422  
... ... @@ -3307,7 +3425,8 @@ params嚗}//銝‵
3307 3425 ```json
3308 3426 {
3309 3427 "fun": "readBaseStationSN",
3310   - "baseId": 0,
  3428 + "baseId": 1,
  3429 + "baseSn":"2023031402",
3311 3430 "packetTag": "1"
3312 3431 }
3313 3432 ```
... ... @@ -3327,6 +3446,7 @@ infos:{&quot;value&quot;:&quot;FFFFFFFFFF&quot;}//餈蝡
3327 3446 {
3328 3447 "fun": "baseStationSN",
3329 3448 "baseId": 1,
  3449 + "baseSn":"2023031402",
3330 3450 "infos": {
3331 3451 "value": "FFFFFFFFFF"
3332 3452 },
... ... @@ -3349,7 +3469,7 @@ infos:{&quot;value&quot;:&quot;FFFFFFFFFF&quot;}//餈蝡
3349 3469  
3350 3470  
3351 3471 fun: "readBaseStationTitle" //霂餃蝡妍
3352   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  3472 +baseId: 1//1~32 (敹◆蝡)
3353 3473 params嚗}//銝‵
3354 3474  
3355 3475  
... ... @@ -3358,7 +3478,8 @@ params嚗}//銝‵
3358 3478 ```json
3359 3479 {
3360 3480 "fun": "readBaseStationTitle",
3361   - "baseId": 0,
  3481 + "baseId": 1,
  3482 + "baseSn":"2023031402",
3362 3483 "packetTag": "1"
3363 3484 }
3364 3485 ```
... ... @@ -3378,6 +3499,7 @@ params嚗&quot;value&quot;:&quot; A2021&quot;}//蝡妍嚗12摮
3378 3499 {
3379 3500 "fun": "writeBaseStationTitle",
3380 3501 "baseId": 1,
  3502 + "baseSn":"2023031402",
3381 3503 "params": {
3382 3504 "value": "A2021"
3383 3505 },
... ... @@ -3400,6 +3522,7 @@ infos:{&quot;value&quot;:&quot;A2021&quot;}//餈蝡妍
3400 3522 {
3401 3523 "fun": "baseStationTitle",
3402 3524 "baseId": 1,
  3525 + "baseSn":"2023031402",
3403 3526 "infos": {
3404 3527 "value": "A2021"
3405 3528 },
... ... @@ -3419,14 +3542,15 @@ infos:{&quot;value&quot;:&quot;A2021&quot;}//餈蝡妍
3419 3542
3420 3543  
3421 3544 fun: "readBaseStationPairMode" //霂餃蝡笆璅∪
3422   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  3545 +baseId: 1//1~32 (敹◆蝡)
3423 3546 params嚗}//銝‵
3424 3547  
3425 3548 誘靘
3426 3549 ```json
3427 3550 {
3428 3551 "fun": "readBaseStationPairMode",
3429   - "baseId": 0,
  3552 + "baseId": 1,
  3553 + "baseSn":"2023031402",
3430 3554 "packetTag": "1"
3431 3555 }
3432 3556 ```
... ... @@ -3438,7 +3562,7 @@ params嚗}//銝‵
3438 3562  
3439 3563 fun: "writeBaseStationPairMode" //蝡笆璅∪
3440 3564 baseId: 1//1~32 (敹◆蝡)
3441   -params嚗"value":"4"}//1~9
  3565 +params嚗"value":"1"}//
3442 3566  
3443 3567 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
3444 3568 | --- | --- | --- |
... ... @@ -3450,6 +3574,7 @@ params嚗&quot;value&quot;:&quot;4&quot;}//1~9
3450 3574 {
3451 3575 "fun": "writeBaseStationPairMode",
3452 3576 "baseId": 1,
  3577 + "baseSn":"2023031402",
3453 3578 "params": {
3454 3579 "value": "1"
3455 3580 },
... ... @@ -3459,15 +3584,16 @@ params嚗&quot;value&quot;:&quot;4&quot;}//1~9
3459 3584  
3460 3585
3461 3586
3462   -fun: "BaseStationPairMode"
  3587 +fun: "baseStationPairMode"
3463 3588 baseId: 1//蝡D
3464 3589 infos:{"value":"1"}//餈蝡笆璅∪
3465 3590  
3466 3591 誘靘
3467 3592 ```json
3468 3593 {
3469   - "fun": "BaseStationPairMode",
  3594 + "fun": "baseStationPairMode",
3470 3595 "baseId": 1,
  3596 + "baseSn":"2023031402",
3471 3597 "infos": {
3472 3598 "value": "1"
3473 3599 },
... ... @@ -3489,7 +3615,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡笆璅∪
3489 3615  
3490 3616  
3491 3617 fun: "readBaseStationMatchCode" //霂餃蝡笆
3492   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  3618 +baseId: 1//1~32 (敹◆蝡)
3493 3619 params嚗}//銝‵
3494 3620  
3495 3621  
... ... @@ -3498,7 +3624,8 @@ params嚗}//銝‵
3498 3624 ```json
3499 3625 {
3500 3626 "fun": "readBaseStationMatchCode",
3501   - "baseId": 0,
  3627 + "baseId": 1,
  3628 + "baseSn":"2023031402",
3502 3629 "packetTag": "1"
3503 3630 }
3504 3631 ```
... ... @@ -3518,6 +3645,7 @@ infos:{&quot;value&quot;:&quot;21072333&quot;}//餈蝡笆
3518 3645 {
3519 3646 "fun": "baseStationMatchCode",
3520 3647 "baseId": 1,
  3648 + "baseSn":"2023031402",
3521 3649 "infos": {
3522 3650 "value": "21072333"
3523 3651 },
... ... @@ -3550,6 +3678,7 @@ packetTag:&quot;0&quot;//倌
3550 3678 {
3551 3679 "fun": "baseStationChannelInterference",
3552 3680 "baseId": 1,
  3681 + "baseSn":"2023031402",
3553 3682 "infos": {
3554 3683 "value": "5"
3555 3684 },
... ... @@ -3572,7 +3701,7 @@ packetTag:&quot;0&quot;//倌
3572 3701  
3573 3702  
3574 3703 fun: "readBaseStationCapacity" //霂餃蝡捆
3575   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  3704 +baseId: 1//1~32 (敹◆蝡)
3576 3705 params嚗}//銝‵
3577 3706  
3578 3707  
... ... @@ -3581,7 +3710,8 @@ params嚗}//銝‵
3581 3710 ```json
3582 3711 {
3583 3712 "fun": "readBaseStationCapacity",
3584   - "baseId": 0,
  3713 + "baseId": 1,
  3714 + "baseSn":"2023031402",
3585 3715 "packetTag": "1"
3586 3716 }
3587 3717 ```
... ... @@ -3598,9 +3728,10 @@ infos:{&quot;keypadNumber&quot;:&quot;60&quot;,&quot;lock&quot;:&quot;1&quot;}//餈蝡捆
3598 3728 誘靘
3599 3729  
3600 3730 ```json
3601   -{
3602   - "baseId": 2,
  3731 +{
3603 3732 "fun": "baseStationCapacity",
  3733 + "baseId": 1,
  3734 + "baseSn":"2023031402",
3604 3735 "infos": {
3605 3736 "keypadNumber": "60",
3606 3737 "lock": "1"
... ... @@ -3632,6 +3763,7 @@ params嚗}
3632 3763 {
3633 3764 "fun": "startQuickMatch",
3634 3765 "baseId": 1,
  3766 + "baseSn":"2023031402",
3635 3767 "packetTag": "1"
3636 3768 }
3637 3769 ```
... ... @@ -3649,6 +3781,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
3649 3781 {
3650 3782 "fun": "startQuickMatch",
3651 3783 "baseId": 1,
  3784 + "baseSn":"2023031402",
3652 3785 "infos": {
3653 3786 "state": "OK"
3654 3787 },
... ... @@ -3670,6 +3803,7 @@ params:{} //暺恕蝛
3670 3803 {
3671 3804 "fun": "stopQuickMatch",
3672 3805 "baseId": 1,
  3806 + "baseSn":"2023031402",
3673 3807 "packetTag": "1"
3674 3808 }
3675 3809 ```
... ... @@ -3687,6 +3821,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
3687 3821 {
3688 3822 "fun": "stopQuickMatch",
3689 3823 "baseId": 1,
  3824 + "baseSn":"2023031402",
3690 3825 "infos": {
3691 3826 "state": "OK"
3692 3827 },
... ... @@ -3709,7 +3844,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
3709 3844  
3710 3845  
3711 3846 fun: "readKeyboardLoginPW" //霂駁敶
3712   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  3847 +baseId: 1//1~32 (敹◆蝡)
3713 3848 params嚗}//銝‵
3714 3849  
3715 3850  
... ... @@ -3718,7 +3853,8 @@ params嚗}//銝‵
3718 3853 ```json
3719 3854 {
3720 3855 "fun": "readKeyboardLoginPW",
3721   - "baseId": 0,
  3856 + "baseId": 1,
  3857 + "baseSn":"2023031402",
3722 3858 "packetTag": "1"
3723 3859 }
3724 3860 ```
... ... @@ -3737,6 +3873,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//0~9999 嚗0銝撖對
3737 3873 {
3738 3874 "fun": "writeKeyboardLoginPW",
3739 3875 "baseId": 1,
  3876 + "baseSn":"2023031402",
3740 3877 "params": {
3741 3878 "value": "0"
3742 3879 },
... ... @@ -3759,6 +3896,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶
3759 3896 {
3760 3897 "fun": "baseStationKeyboardLoginPW",
3761 3898 "baseId": 1,
  3899 + "baseSn":"2023031402",
3762 3900 "infos": {
3763 3901 "value": "0"
3764 3902 },
... ... @@ -3780,7 +3918,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶
3780 3918  
3781 3919  
3782 3920 fun: "readBaseStationNameHidden" //霂餃蝡妍
3783   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  3921 +baseId: 1//1~32 (敹◆蝡)
3784 3922 params嚗}//銝‵
3785 3923  
3786 3924  
... ... @@ -3789,7 +3927,8 @@ params嚗}//銝‵
3789 3927 ```json
3790 3928 {
3791 3929 "fun": "readBaseStationNameHidden",
3792   - "baseId": 0,
  3930 + "baseId": 1,
  3931 + "baseSn":"2023031402",
3793 3932 "packetTag": "1"
3794 3933 }
3795 3934 ```
... ... @@ -3812,6 +3951,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//0~1 嚗01銝
3812 3951 {
3813 3952 "fun": "writeBaseStationNameHidden",
3814 3953 "baseId": 1,
  3954 + "baseSn":"2023031402",
3815 3955 "params": {
3816 3956 "value": "0"
3817 3957 },
... ... @@ -3834,6 +3974,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡妍 嚗01銝
3834 3974 {
3835 3975 "fun": "baseStationNameHidden",
3836 3976 "baseId": 1,
  3977 + "baseSn":"2023031402",
3837 3978 "infos": {
3838 3979 "value": "0"
3839 3980 },
... ... @@ -3854,7 +3995,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡妍 嚗01銝
3854 3995  
3855 3996  
3856 3997 fun: "readBaseStationTcpIp" //霂餃蝡CP/IP
3857   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  3998 +baseId: 1//1~32 (敹◆蝡)
3858 3999 params嚗}//銝‵
3859 4000  
3860 4001  
... ... @@ -3863,7 +4004,8 @@ params嚗}//銝‵
3863 4004 ```json
3864 4005 {
3865 4006 "fun": "readBaseStationTcpIp",
3866   - "baseId": 0,
  4007 + "baseId": 1,
  4008 + "baseSn":"2023031402",
3867 4009 "packetTag": "1"
3868 4010 }
3869 4011 ```
... ... @@ -3883,6 +4025,7 @@ params嚗
3883 4025 {
3884 4026 "fun": "writeBaseStationTcpIp",
3885 4027 "baseId": 1,
  4028 + "baseSn":"2023031402",
3886 4029 "params": {
3887 4030 "mac": "FF:FF:FF:FF:FF:FF",
3888 4031 "ip": "192.168.10.10",
... ... @@ -3909,6 +4052,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡cpIp
3909 4052 {
3910 4053 "fun": "baseStationTcpIp",
3911 4054 "baseId": 1,
  4055 + "baseSn":"2023031402",
3912 4056 "infos": {
3913 4057 "ip": "192.168.10.10",
3914 4058 "mac": "FF:FF:FF:FF:FF:FF",
... ... @@ -3932,7 +4076,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡cpIp
3932 4076  
3933 4077  
3934 4078 fun: "readWhiteList" //霂餌”
3935   -baseId: 0//
  4079 +baseId: 1//1~32 (敹◆蝡)
3936 4080  
3937 4081  
3938 4082 誘靘
... ... @@ -3940,7 +4084,8 @@ baseId: 0//
3940 4084 ```json
3941 4085 {
3942 4086 "fun": "readWhiteList",
3943   - "baseId": 0,
  4087 + "baseId": 1,
  4088 + "baseSn":"2023031402",
3944 4089 "params": {},
3945 4090 "packetTag": "1"
3946 4091 }
... ... @@ -3949,7 +4094,7 @@ baseId: 0//
3949 4094 霂餉
3950 4095
3951 4096 fun: "whiteList"
3952   -baseId: 1//蝡D
  4097 +baseId: 1 //1~32 (敹◆蝡)
3953 4098 infos:{}//
3954 4099  
3955 4100 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -3963,6 +4108,7 @@ infos:{}//
3963 4108 {
3964 4109 "fun": "whiteList",
3965 4110 "baseId": 1,
  4111 + "baseSn":"2023031402",
3966 4112 "infos": [{
3967 4113 "keySn": "2111120140",
3968 4114 "state": "0"
... ... @@ -3982,6 +4128,8 @@ infos:{}//
3982 4128  
3983 4129  
3984 4130  
  4131 +<font color="#dd0000" size="5">瘜冽窈蝡笆璅∪芋撘</font><br />
  4132 +
3985 4133  
3986 4134  
3987 4135 fun: "writeWhiteList" //”
... ... @@ -3998,7 +4146,8 @@ keySnList嚗]//N蝏憭200N
3998 4146 ```json
3999 4147 {
4000 4148 "fun": "writeWhiteList",
4001   - "baseId": 2,
  4149 + "baseId": 1,
  4150 + "baseSn":"2023031402",
4002 4151 "keySnList": [{
4003 4152 "keySn": "2111120140"
4004 4153 },
... ... @@ -4018,7 +4167,7 @@ keySnList嚗]//N蝏憭200N
4018 4167
4019 4168  
4020 4169 fun: "whiteList"
4021   -baseId: 1//蝡D
  4170 +baseId: 1//1~32 (敹◆蝡)
4022 4171 infos:{}//
4023 4172  
4024 4173 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -4032,6 +4181,7 @@ infos:{}//
4032 4181 {
4033 4182 "fun": "whiteList",
4034 4183 "baseId": 1,
  4184 + "baseSn":"2023031402",
4035 4185 "infos": [{
4036 4186 "keySn": "2111120140",
4037 4187 "state": "OK"
... ... @@ -4075,6 +4225,7 @@ params:{} //蝏笆鞊∴憛
4075 4225 {
4076 4226 "fun": "lockKeypad",
4077 4227 "baseId": 1,
  4228 + "baseSn":"2023031402",
4078 4229 "keySnList": [{
4079 4230 "keySn": "2111120140"
4080 4231 },
... ... @@ -4095,6 +4246,7 @@ params:{} //蝏笆鞊∴憛
4095 4246 {
4096 4247 "fun": "lockKeypad",
4097 4248 "baseId": 1,
  4249 + "baseSn":"2023031402",
4098 4250 "infos": [{
4099 4251 "keySn": "1837454011",
4100 4252 "state": "OK"
... ... @@ -4117,7 +4269,7 @@ params:{} //蝏笆鞊∴憛
4117 4269 #### 蝡圾
4118 4270  
4119 4271 fun: "unlockKeypad" //閫
4120   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內蝡)
  4272 +baseId: 1//1~32 (敹◆蝡)
4121 4273 params:{} //蝏笆鞊∴憛
4122 4274  
4123 4275 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -4132,6 +4284,7 @@ params:{} //蝏笆鞊∴憛
4132 4284 {
4133 4285 "fun": "unlockKeypad",
4134 4286 "baseId": 1,
  4287 + "baseSn":"2023031402",
4135 4288 "keySnList": [{
4136 4289 "keySn": "2111120140"
4137 4290 },
... ... @@ -4152,6 +4305,7 @@ params:{} //蝏笆鞊∴憛
4152 4305 {
4153 4306 "fun": "unlockKeypad",
4154 4307 "baseId": 1,
  4308 + "baseSn":"2023031402",
4155 4309 "infos": [{
4156 4310 "keySn": "2111120140",
4157 4311 "state": "OK"
... ... @@ -4186,6 +4340,7 @@ keySnList:[ &quot;keySn&quot;:&quot;2111120140&quot;] //”銝銝箇征
4186 4340 {
4187 4341 "fun": "addWhiteList",
4188 4342 "baseId": 1,
  4343 + "baseSn":"2023031402",
4189 4344 "keySnList": [{
4190 4345 "keySn": "2111120140"
4191 4346 }],
... ... @@ -4207,6 +4362,7 @@ infos:{}//
4207 4362 {
4208 4363 "fun": "whiteList",
4209 4364 "baseId": 1,
  4365 + "baseSn":"2023031402",
4210 4366 "infos": {
4211 4367 "keySn": "1837454012",
4212 4368 "state": "OK"
... ... @@ -4233,7 +4389,8 @@ keySnList:[ &quot;keySn&quot;:&quot;2111120140&quot;] //”銝銝箇征
4233 4389 ```json
4234 4390 {
4235 4391 "fun": "delWhiteList",
4236   - "baseId": 0,
  4392 + "baseId": 1,
  4393 + "baseSn":"2023031402",
4237 4394 "keySnList": [{
4238 4395 "keySn": "2111120140"
4239 4396 }],
... ... @@ -4255,6 +4412,7 @@ infos:{}//
4255 4412 {
4256 4413 "fun": "delWhiteList",
4257 4414 "baseId": 1,
  4415 + "baseSn":"2023031402",
4258 4416 "packetTag": "1",
4259 4417 "infos": {
4260 4418 "keySn": "1837454012",
... ... @@ -4282,6 +4440,7 @@ params:{} //
4282 4440 {
4283 4441 "fun": "clearWhiteList",
4284 4442 "baseId": 1,
  4443 + "baseSn":"2023031402",
4285 4444 "packetTag": "1"
4286 4445 }
4287 4446 ```
... ... @@ -4298,6 +4457,7 @@ infos:{}//
4298 4457 {
4299 4458 "fun": "clearWhiteList",
4300 4459 "baseId": 1,
  4460 + "baseSn":"2023031402",
4301 4461 "packetTag": "1",
4302 4462 "infos": {
4303 4463 "state": "OK"
... ... @@ -4316,7 +4476,7 @@ infos:{}//
4316 4476
4317 4477  
4318 4478 fun: "readKeypadAutoPowerOffLevel" //霂駁蝑漣
4319   -baseId: 0//0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4479 +baseId: 1//1~32 (敹◆蝡)
4320 4480 params嚗"value":0}//
4321 4481  
4322 4482 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -4327,7 +4487,8 @@ params嚗&quot;value&quot;:0}//
4327 4487 ```json
4328 4488 {
4329 4489 "fun": "readKeypadAutoPowerOffLevel",
4330   - "baseId": 0,
  4490 + "baseId": 1,
  4491 + "baseSn":"2023031402",
4331 4492 "packetTag": "1"
4332 4493 }
4333 4494 ```
... ... @@ -4344,6 +4505,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//
4344 4505 {
4345 4506 "fun": "writeKeypadAutoPowerOffLevel",
4346 4507 "baseId": 1,
  4508 + "baseSn":"2023031402",
4347 4509 "params": {
4348 4510 "value": "0"
4349 4511 },
... ... @@ -4362,6 +4524,7 @@ infos:{&quot;value&quot;:&quot;0&quot;}//餈蝑漣
4362 4524 {
4363 4525 "fun": "keypadAutoPowerOffLevel",
4364 4526 "baseId": 1,
  4527 + "baseSn":"2023031402",
4365 4528 "infos": {
4366 4529 "value": "0"
4367 4530 },
... ... @@ -4378,14 +4541,15 @@ infos:{&quot;value&quot;:&quot;0&quot;}//餈蝑漣
4378 4541
4379 4542  
4380 4543 fun: "readBaseStationBaseConfig" //霂餃蝡aseConfig
4381   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4544 +baseId: 1//1~32 (敹◆蝡)
4382 4545 params嚗}//銝‵
4383 4546  
4384 4547 誘靘
4385 4548 ```json
4386 4549 {
4387 4550 "fun": "readBaseStationBaseConfig",
4388   - "baseId": 0,
  4551 + "baseId": 1,
  4552 + "baseSn":"2023031402",
4389 4553 "packetTag": "1"
4390 4554 }
4391 4555 ```
... ... @@ -4409,6 +4573,7 @@ params嚗}//
4409 4573 {
4410 4574 "fun": "writeBaseStationBaseConfig",
4411 4575 "baseId": 1,
  4576 + "baseSn":"2023031402",
4412 4577 "params": {
4413 4578 "bootVibraton": "1",
4414 4579 "voteVibraton": "1",
... ... @@ -4430,6 +4595,7 @@ infos:{ }//餈蝡
4430 4595 {
4431 4596 "fun": "baseStationBaseConfig",
4432 4597 "baseId": 1,
  4598 + "baseSn":"2023031402",
4433 4599 "infos": {
4434 4600 "bootVibraton": "1",
4435 4601 "voteVibraton": "1",
... ... @@ -4482,6 +4648,7 @@ params嚗} //
4482 4648 {
4483 4649 "fun": "writeKeypadDevice",
4484 4650 "baseId": 1,
  4651 + "baseSn":"2023031402",
4485 4652 "params": {
4486 4653 "ledTimes": "3",
4487 4654 "ledOnTime": "1",
... ... @@ -4511,7 +4678,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
4511 4678 ```json
4512 4679 {
4513 4680 "fun": "writeKeypadDevice",
4514   - "baseId": 0,
  4681 + "baseId": 1,
  4682 + "baseSn":"2023031402",
4515 4683 "infos": {
4516 4684 "keySn": "0000000000",
4517 4685 "state": "OK"
... ... @@ -4525,6 +4693,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
4525 4693 ```json
4526 4694 {
4527 4695 "fun": "writeKeypadDevice",
  4696 + "baseId": 1,
  4697 + "baseSn":"2023031402",
4528 4698 "keySnList": [{
4529 4699 "keySn": "0007899478"
4530 4700 }],
... ... @@ -4555,9 +4725,10 @@ infos:{}//蝏笆鞊,
4555 4725 誘靘
4556 4726  
4557 4727 ```json
4558   -{
4559   - "baseId": 3,
  4728 +{
4560 4729 "fun": "writeKeypadDevice",
  4730 + "baseId": 3,
  4731 + "baseSn":"2023031402",
4561 4732 "infos": {
4562 4733 "keySn": "0007899478",
4563 4734 "state": "OK"
... ... @@ -4577,7 +4748,7 @@ infos:{}//蝏笆鞊,
4577 4748
4578 4749  
4579 4750 fun: "readKeypadFeedbackMode" //霂駁芋撘
4580   -baseId: 0//0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4751 +baseId: 1//1~32 (敹◆蝡)
4581 4752 params嚗}//霂餃銝閬
4582 4753  
4583 4754 誘靘
... ... @@ -4585,7 +4756,8 @@ params嚗}//霂餃銝閬
4585 4756 ```json
4586 4757 {
4587 4758 "fun": "readKeypadFeedbackMode",
4588   - "baseId": 0,
  4759 + "baseId": 1,
  4760 + "baseSn":"2023031402",
4589 4761 "packetTag": "1"
4590 4762 }
4591 4763 ```
... ... @@ -4607,7 +4779,8 @@ params嚗&quot;mode&quot;:&quot;1&quot;, &quot;value&quot;:&quot;4&quot;}//
4607 4779 ```json
4608 4780 {
4609 4781 "fun": "writeKeypadFeedbackMode",
4610   - "baseId": 0,
  4782 + "baseId": 1,
  4783 + "baseSn":"2023031402",
4611 4784 "params": {
4612 4785 "mode": "1",
4613 4786 "value": "4"
... ... @@ -4633,6 +4806,7 @@ infos:{ &quot;mode&quot;:&quot;1&quot;, &quot;value&quot;:&quot;4&quot;}//餈芋撘
4633 4806 {
4634 4807 "fun": "keypadFeedbackMode",
4635 4808 "baseId": 1,
  4809 + "baseSn":"2023031402",
4636 4810 "infos": {
4637 4811 "mode": "1",
4638 4812 "value": "4"
... ... @@ -4661,8 +4835,9 @@ infos:{ &quot;keySn&quot;:&quot;2307269906&quot;, &quot;keyValue&quot;:&quot;A&quot;}//餈芋撘
4661 4835  
4662 4836 ```json
4663 4837 {
4664   - "baseId": 1,
4665 4838 "fun": "immediateFeedback",
  4839 + "baseId": 1,
  4840 + "baseSn":"2023031402",
4666 4841 "infos": {
4667 4842 "keySn": "2307269906",
4668 4843 "keyValue": "A"
... ... @@ -4696,6 +4871,7 @@ infos:{ &quot;keySn&quot;:&quot;1479824643&quot;}//餈芋撘
4696 4871 {
4697 4872 "fun": "keyboardOnlineOne",
4698 4873 "baseId": 1,
  4874 + "baseSn":"2023031402",
4699 4875 "infos": {
4700 4876 "keySn": "1479824643"
4701 4877 },
... ... @@ -4728,6 +4904,7 @@ infos:{ &quot;hModel&quot;: &quot;67&quot;,&quot;keySn&quot;:&quot;1479824643&quot;,&quot;keyValue&quot;:&quot;0&quot;,&quot;ver&quot;:&quot;1.0.0&quot;,&quot;volt&quot;:
4728 4904 {
4729 4905 "fun": "KeyboardHeartbeat",
4730 4906 "baseId": 1,
  4907 + "baseSn":"2023031402",
4731 4908 "infos": {
4732 4909 "hModel": "67",
4733 4910 "keySn": "1479824643",
... ... @@ -4760,6 +4937,7 @@ params嚗}//
4760 4937 {
4761 4938 "fun": "remoteKeyShutdown",
4762 4939 "baseId": 1,
  4940 + "baseSn":"2023031402",
4763 4941 "params": [{
4764 4942 "keySn": "1837454011"
4765 4943 }],
... ... @@ -4778,6 +4956,7 @@ infos:{&quot;keySn&quot;:&quot;1837454011&quot;,&quot;state&quot;:&quot;OK&quot;}//
4778 4956 {
4779 4957 "fun": "remoteKeyShutdown",
4780 4958 "baseId": 1,
  4959 + "baseSn":"2023031402",
4781 4960 "infos": {
4782 4961 "keySn": "1837454011",
4783 4962 "state": "OK"
... ... @@ -4793,60 +4972,6 @@ infos:{&quot;keySn&quot;:&quot;1837454011&quot;,&quot;state&quot;:&quot;OK&quot;}//
4793 4972 | B200-2.4G+S6 | ||
4794 4973 | B200-5.8G+T2 | ||
4795 4974  
4796   -####
4797   -
4798   -
4799   -
4800   -
4801   -fun: "writeKeyboardPauseSleep" //
4802   -params嚗"value"} //
4803   -
4804   -| **Json摮挾** | **摮挾銋** | **韏澆銋** |
4805   -| --- | --- | --- |
4806   -|baseId|蝡D|0-32<br> 0:蝡恕慝
4807   -|value|憸0 嚗10蝘恕潘
4808   -
4809   -
4810   -誘靘
4811   -
4812   -```json
4813   -{
4814   - "fun": "writeKeyboardPauseSleep",
4815   - "baseId": 0,
4816   - "params": {
4817   - "value": "0"
4818   - },
4819   - "packetTag": "1"
4820   -}
4821   -```
4822   -
4823   -餈
4824   -
4825   -嚗
4826   -fun: "writeKeyboardPauseSleep"
4827   -baseId: 1//蝡D
4828   -infos:{"value":"0"}//10蝘
4829   -
4830   -
4831   -誘靘
4832   -
4833   -```json
4834   -{
4835   - "fun": "writeKeyboardPauseSleep",
4836   - "baseId": 1,
4837   - "infos": {
4838   - "value": "0"
4839   - },
4840   - "packetTag": "1"
4841   -}
4842   -```
4843   -
4844   -挽憭秩
4845   -
4846   -| **蝡+** | **** | **憭釣** |
4847   -| --- | --- | --- |
4848   -| B100-2.4G+S6 | ||
4849   -| B200-2.4G+S6 | ||
4850 4975  
4851 4976 #### 瘨
4852 4977  
... ... @@ -4866,7 +4991,8 @@ params嚗} // 蝏笆鞊,撖寡情銝剔恕潔蛹蝛箏泵銝
4866 4991 ```json
4867 4992 {
4868 4993 "fun": "writeKeyMessage",
4869   - "baseId": 0,
  4994 + "baseId": 1,
  4995 + "baseSn":"2023031402",
4870 4996 "params": {
4871 4997 "txt": "瘨"
4872 4998 },
... ... @@ -4884,7 +5010,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
4884 5010 ```json
4885 5011 {
4886 5012 "fun": "writeKeyMessage",
4887   - "baseId": 0,
  5013 + "baseId": 1,
  5014 + "baseSn":"2023031402",
4888 5015 "infos": {
4889 5016 "keySn": "0000000000",
4890 5017 "state": "OK"
... ... @@ -4898,6 +5025,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
4898 5025 ```json
4899 5026 {
4900 5027 "fun": "writeKeyMessage",
  5028 + "baseId": 1,
  5029 + "baseSn":"2023031402",
4901 5030 "keySnList": [{
4902 5031 "keySn": "0007899478"
4903 5032 }],
... ... @@ -4917,9 +5046,10 @@ infos:{}//蝏笆鞊,
4917 5046 誘靘
4918 5047  
4919 5048 ```json
4920   -{
4921   - "baseId": 3,
  5049 +{
4922 5050 "fun": "writeKeyMessage",
  5051 + "baseId": 1,
  5052 + "baseSn":"2023031402",
4923 5053 "infos": {
4924 5054 "keySn": "0007899478",
4925 5055 "state": "OK"
... ... @@ -4957,6 +5087,7 @@ params:{}
4957 5087 {
4958 5088 "fun": "writeKeypadFreeTitle",
4959 5089 "baseId": 1,
  5090 + "baseSn":"2023031402",
4960 5091 "params": {
4961 5092 "title": "霂瑁恕霈"
4962 5093 },
... ... @@ -4980,7 +5111,8 @@ infos:{}//
4980 5111 ```json
4981 5112 {
4982 5113 "fun": "writeKeypadFreeTitle",
4983   - "baseId": 0,
  5114 + "baseId": 1,
  5115 + "baseSn":"2023031402",
4984 5116 "infos": {
4985 5117 "state": "OK"
4986 5118 },
... ... @@ -5002,7 +5134,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5002 5134  
5003 5135 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
5004 5136 | --- | --- | --- |
5005   -| keySn| n| 蝛箏蛹蝥輸隞蝏潭
  5137 +| keySn| n| 銝銝箇征|
5006 5138 | scoreMode| 璅∪1:皜<br>2:摮泵蝷(暺恕)<br>3:鈭蝷<br>4:敹蝷暨S6|
5007 5139 | scoreValue| 慝scoreMode == 1,甇文. <br>scoreMode == 2,8銝芸泵摨. <br>scoreMode == 3,0~6嚗2銝芸銵函內1銝芯憭3銝. <br> scoreMode == 4,0~6嚗2銝芸銵函內1銝芰敹憭3銝 [S6|
5008 5140 |tipText|內| 憭8銝芣16銝芸泵嚗,洵鈭蝷漏
... ... @@ -5015,6 +5147,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5015 5147 {
5016 5148 "fun": "writeKeypadCustomInfo",
5017 5149 "baseId": 1,
  5150 + "baseSn":"2023031402",
5018 5151 "params": [{
5019 5152 "keySn": "1479824643",
5020 5153 "scoreMode": "2",
... ... @@ -5044,7 +5177,8 @@ infos:{}//蝏笆鞊
5044 5177 ```json
5045 5178 {
5046 5179 "fun": "writeKeypadCustomInfo",
5047   - "baseId": 0,
  5180 + "baseId": 1,
  5181 + "baseSn":"2023031402",
5048 5182 "infos": [{
5049 5183 "keySn": "1479824643",
5050 5184 "state": "OK"
... ... @@ -5053,25 +5187,6 @@ infos:{}//蝏笆鞊
5053 5187 }
5054 5188 ```
5055 5189  
5056   -
5057   -
5058   -fun: "writeKeypadCustomInfo" //靽⊥
5059   -baseId:0 //誘蝡D
5060   -infos:{"state":"OK"}//餈,蛹OK
5061   -
5062   -
5063   -誘靘
5064   -
5065   -```json
5066   -{
5067   - "fun": "writeKeypadCustomInfo",
5068   - "baseId": 0,
5069   - "infos": {
5070   - "state": "OK"
5071   - },
5072   - "packetTag": "1"
5073   -}
5074   -```
5075 5190  
5076 5191 挽憭秩
5077 5192  
... ... @@ -5092,7 +5207,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5092 5207  
5093 5208 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
5094 5209 | --- | --- | --- |
5095   -|keySn|N|蝛箏蛹蝥輸隞蝏潭
  5210 +|keySn|N|銝銝箇征|
5096 5211 |userName|憪憭24銝芣48銝芸泵嚗,椰銝蝷漏
5097 5212  
5098 5213 誘靘
... ... @@ -5101,6 +5216,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5101 5216 {
5102 5217 "fun": "writeKeypadUserName",
5103 5218 "baseId": 1,
  5219 + "baseSn":"2023031402",
5104 5220 "params": [{
5105 5221 "keySn": "1479824643",
5106 5222 "userName": "撘"
... ... @@ -5127,7 +5243,8 @@ infos:{}//蝏笆鞊
5127 5243 ```json
5128 5244 {
5129 5245 "fun": "writeKeypadUserName",
5130   - "baseId": 0,
  5246 + "baseId": 1,
  5247 + "baseSn":"2023031402",
5131 5248 "infos": {
5132 5249 "keySn": "1479824643",
5133 5250 "state": "OK"
... ... @@ -5136,25 +5253,6 @@ infos:{}//蝏笆鞊
5136 5253 }
5137 5254 ```
5138 5255  
5139   -
5140   -
5141   -fun: "writeKeypadUserName" //靽⊥
5142   -baseId:0 //誘蝡D
5143   -infos:{"state":"OK"}//餈,蛹OK
5144   -
5145   -
5146   -誘靘
5147   -
5148   -```json
5149   -{
5150   - "fun": "writeKeypadUserName",
5151   - "baseId": 0,
5152   - "infos": {
5153   - "state": "OK"
5154   - },
5155   - "packetTag": "1"
5156   -}
5157   -```
5158 5256  
5159 5257 挽憭秩
5160 5258  
... ... @@ -5181,7 +5279,8 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5181 5279 ```json
5182 5280 {
5183 5281 "fun": "writeOneKeypadUserName",
5184   - "baseId": 0,
  5282 + "baseId": 1,
  5283 + "baseSn":"2023031402",
5185 5284 "params": [{
5186 5285 "keySn": "1479824643",
5187 5286 "value": "撘"
... ... @@ -5208,6 +5307,7 @@ infos:{}//蝏笆鞊
5208 5307 {
5209 5308 "fun": "oneKeypadUserName",
5210 5309 "baseId": 1,
  5310 + "baseSn":"2023031402",
5211 5311 "infos": {
5212 5312 "keySn": "1479824643",
5213 5313 "value": "撘"
... ... @@ -5246,6 +5346,7 @@ infos:{} //蝏笆鞊
5246 5346 {
5247 5347 "fun": "keypadOnLine",
5248 5348 "baseId": 0,
  5349 + "baseSn":"2023031402",
5249 5350 "infos": [{
5250 5351 "baseId": "1",
5251 5352 "keySn": "1837454011",
... ... @@ -5270,7 +5371,9 @@ infos:{} //蝏笆鞊
5270 5371  
5271 5372 ### 銝餃蝥蹂縑
5272 5373  
5273   -摨蝔閬嚗銝餃蝥輸縑
  5374 +摨蝔閬嚗銝餃蝡蝥輸縑
  5375 +
  5376 +<font color="#dd0000" size="5">瘜冽窈銝撘巨銝雿輻</font><br />
5274 5377  
5275 5378  
5276 5379 fun: "getKeypadOnLine" //蝥輻
... ... @@ -5285,6 +5388,7 @@ params:{
5285 5388 {
5286 5389 "fun": "getKeypadOnLine",
5287 5390 "baseId": 0,
  5391 + "baseSn":"2023031402",
5288 5392 "params": {
5289 5393 "times": 2
5290 5394 },
... ... @@ -5416,7 +5520,10 @@ infos:{ &quot;funId&quot;:&quot;F0001&quot;,&quot;code&quot;:&quot;10002&quot;}//
5416 5520 |20002|銝
5417 5521 |20003|蝡D銝箄嚗隞乩D嚗恕銝0|
5418 5522 |20004|秤|
  5523 +|20005|蝡
5419 5524 |30001|銝撖孵N|
  5525 +|30002|銝撖孵aseID|
  5526 +|30003|蝡N銝撖孵aseID|
5420 5527 |40001|漣銝芸蝡蝥糕
5421 5528 |50001|甇文敹◆蝡D|
5422 5529 |60001|甇文敹◆N|
... ... @@ -5447,7 +5554,7 @@ infos:{ &quot;funId&quot;:&quot;F0001&quot;,&quot;code&quot;:&quot;10002&quot;}//
5447 5554 |F0022|霂餃蝡挽憭F
5448 5555 |F0023|蝡挽憭F
5449 5556 |F0024|蝡挽憭笆璅∪蝡妍嚗摰
5450   -|F0025|
  5557 +|F0025|蝡挽憭漣隞閏
5451 5558 |F0026|霂餃蝡翰笆雿芋撘
5452 5559 |F0027|蝡翰笆雿芋撘
5453 5560 |F0028|霂駁敶蝷箏捂[S6]|
... ...
通讯协议-SDK应用部分[内部].md
... ... @@ -8,7 +8,7 @@ WSCmdApp悅霂湔
8 8  
9 9  
10 10 <div style="text-align: center;font-size: 30px;">
11   -Ver5.1.1
  11 +Ver5.1.5
12 12 </div>
13 13 <br>
14 14 <br>
... ... @@ -24,7 +24,7 @@ Ver5.1.1
24 24 <br>
25 25  
26 26 <div style="text-align: center;font-size: 30px;">
27   -鈭僑
  27 +鈭僑
28 28 </div>
29 29  
30 30 <br>
... ... @@ -44,6 +44,9 @@ Ver5.1.1
44 44 | ﹝ | | 雿 | 霂湔 |
45 45 |---|---|---|---|
46 46 |5.1.1| 2023撟1009|1.
  47 +|5.1.2| 2023撟1107|1. 憓笆璅∪挽蝵格|
  48 +|5.1.3| 2023撟1115|1. 霂剝憸|
  49 +|5.1.5| 2023撟1228|1. 憓son誘蝡d蝡N銝斤芋撘
47 50  
48 51 <br>
49 52  
... ... @@ -66,7 +69,17 @@ WSCmdApp蝔葉config.ini蔭辣銝剖霈曄蔭WebSocket垢嚗誑銝
66 69  
67 70 ![](img/image3.png)
68 71  
69   -銝膩蔭#撘憭渲蛹瘜券笆銝銝銝芷蔭餈秩葵蔭霂湔
  72 +config.ini 辣摮圾秩
  73 +role嚗 WSCmdApp敶ebSocket餈芋撘lient嚗恥蝡舀芋撘erver嚗蝡舀芋撘
  74 +ip: 閬挪ebSocketp嚗迨摰X蝡舀芋撘
  75 +port: WebSocket悖垢
  76 +heartBeatOnOf:敹歲摰嚗迨悅﹝銝剔歲誘雿輻
  77 +敶蔭銝0: WSCmdApp隡笆摨嚗敹歲璉瘚
  78 +敶蔭銝1: WSCmdApp隡笆摨嚗敹歲璉瘚
  79 +heartbeat: 敹歲 嚗10-60
  80 +敶eartBeatOnOff蔭銝1嚗僎銝ebSocket餈芋撘蛹摰X蝡舀嚗敹歲璉瘚瘝⊥敹歲誘嚗ebSocket摰X蝡臭嚗餈
  81 +language嚗WSCmdApp雿輻祗閮嚗0:蝞雿葉 1:
  82 +jsonBase嚗Json誘銝凋蝙蝡D餈蝡N嚗 0:蝡D蝡N1:蝡N蝡D
70 83  
71 84 # 霈曇恣
72 85  
... ... @@ -80,12 +93,15 @@ WSCmdApp蝔葉config.ini蔭辣銝剖霈曄蔭WebSocket垢嚗誑銝
80 93  
81 94 摨蝔SCmdApp銋Json縑嚗縑撘
82 95  
  96 +鈭aseIdaseSn蝙霂湔蝙隞亙config.ini 辣摮sonBase銝剖嚗0:蝡DbaseId潭嚗蝡N1:蝡NbaseSn潭嚗蝡DaseSn摮泵銝脫摮掩,隞乩銝芸蝡N
  97 +
83 98 銝蝔 -> WSCmdApp
84 99  
85 100 ```json
86 101 {
87 102 fun: "" // 摰
88 103 baseId: 1 // 蝡d,摮掩
  104 + baseSn:"2023031402" //蝡N嚗泵銝
89 105 params嚗 {} //撖寡情/蝏
90 106 packetTag: "" //倌摮泵銝
91 107 }
... ... @@ -93,7 +109,8 @@ WSCmdApp蝔葉config.ini蔭辣銝剖霈曄蔭WebSocket垢嚗誑銝
93 109  
94 110 fun 銝箏撖孵妍 憒"readBaseStationID" 霂餃蝡d,"startChoices" //撘憪憸, "stopChoices" //迫憸.
95 111  
96   -baseId嚗蝡D嚗蝡,0隞”蝡1隞”1蝡
  112 +baseId嚗蝡D嚗蝡,1~32嚗蝡笆摨aseId 隞仿eadConnectBase誘甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
  113 +baseSn嚗蝡N”嚗蝡甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
97 114 params嚗嚗撖嫣嚗隞交蝏挾
98 115 packerTag:餈葵撅挾嚗捆閬蝔恣摨誘packerTag雿蔭隡泵銝莎靘踹蝔葵霈啣
99 116  
... ... @@ -103,13 +120,15 @@ packerTag:餈葵撅挾嚗捆閬蝔恣摨
103 120 {
104 121 fun: "" //摰
105 122 baseId: 1 //蝡d,摮掩
  123 + baseSn:"2023031402" //蝡N
106 124 infos: {} //靽⊥撖寡情/蝏
107 125 packetTag: "" // 倌摮泵銝脯
108 126 }
109 127 ```
110 128  
111 129 fun嚗 撖孵妍,憒:"BaseStationID"霂餃蝡d, " answerChoices" //憸.
112   -baseId: 蝡D嚗蝡0畾誨銵冽蝡1隞”1蝡
  130 +baseId: 蝡D嚗蝡1~32嚗蝡笆摨aseId 隞仿eadConnectBase誘
  131 +baseSn: 蝡N嚗蝡
113 132 infos: WSCmdAppPP撅雿祕閫雿摰
114 133 packetTag:餈葵撅挾嚗捆閬蝔恣泵銝脯
115 134  
... ... @@ -121,22 +140,19 @@ X\~Y:潛
121 140 # 縑撘
122 141 鈭支<-->摨撘蝔WSCmdApp嚗SCmdApp銵
123 142  
124   -摨蝔瓷SCmdApp嚗閬歲嚗SCmdApp敹歲歲嚗鈭銝蝔蔭辣銝哨鈭歲璉嚗蝔歲嚗SCmdApp隡撘敶嚗撠嚗
  143 +摨蝔瓷SCmdApp嚗SCmdApp歲誘
  144 +
  145 +WSCmdApp蝡航◤霈曄蔭銝斡ebsocket 蝡舀芋撘嚗蝔SCmdApp歲蝖株恕銝SCmdApp
  146 +
  147 +WSCmdApp蝡航◤霈曄蔭銝斡ebsocket 摰X蝡舀芋撘嚗 WSCmdApp撠敹歲摰歲挽蝵桀捆餈
  148 +
  149 +
125 150  
126 151 # 蝻秩
127 152  
128 153 雿輻WSCmdApp蝻瘚
129 154 蔭嚗(蔭祕蔭辣config.ini)
130 155  
131   -1dk->role websocket
132   -芋撘lient:摰X蝡舀芋撘erver嚗蝡舀芋撘
133   -
134   -2dk-> ip 憒ebsocket憭恥蝡舀芋撘
135   -甇夕p銝箇ip嚗ebsocket憭蝡舀芋撘 甇夕p
136   -
137   -3dk-> port憒ebsocket憭恥蝡舀芋撘
138   -甇小ort銝箇port嚗ebsocket憭蝡舀芋撘
139   -甇小ort銝箸蝡皰ort
140 156
141 157  
142 158 1蝙websocket悖嚗P銝截P
... ... @@ -148,12 +164,15 @@ X\~Y:潛
148 164  
149 165 摨蝔SCmdApp銋Json縑嚗縑撘
150 166  
  167 +
  168 +
151 169 銝蝔 ->WSCmdApp
152 170  
153 171 ```json
154 172 {
155 173 fun: "" // 摰
156 174 baseId: 1 // 蝡d,摮掩
  175 + baseSn:"2023031402" //蝡N嚗泵銝
157 176 params嚗 {} //撖寡情/蝏
158 177 packetTag: "" //倌摮泵銝
159 178 }
... ... @@ -161,7 +180,9 @@ X\~Y:潛
161 180  
162 181 fun嚗蛹摰隞歹隞文
163 182  
164   -baseId嚗蝡D嚗摮掩雿蝡D嚗隞乩0砲Key潦葵蝡D嚗閬活銝砲隞歹銝蝡D餈
  183 +baseId嚗蝡D嚗摮掩1~32嚗蝡笆摨aseId 隞仿eadConnectBase誘葵蝡D嚗閬活銝砲隞歹銝蝡D餈甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
  184 +
  185 +baseSn嚗蝡N”嚗泵銝脫蝏隞乩銝芸蝡N甇文霂瑕onfig.ini 辣摮sonBase潮蝙]
165 186  
166 187 params嚗嚗隞乩蛹撖寡情蝏鈭撈隞支祕閫雿摰
167 188  
... ... @@ -174,6 +195,7 @@ packerTag:
174 195 {
175 196 fun: "" //摰
176 197 baseId: 1 //蝡d,摮掩
  198 + baseSn:"2023031402" //蝡N
177 199 infos: {} //靽⊥撖寡情/蝏
178 200 packetTag: "" // 倌摮泵銝莎鈭敶誘銝隞誘SCmdApp蝔憓摮扇SCmdApp蝔‵WSCmdApp倌
179 201 }
... ... @@ -181,6 +203,7 @@ packerTag:
181 203  
182 204 fun嚗膩.
183 205 baseId:膩.
  206 +baseSn嚗膩.
184 207 infos:WSCmdApp蝔雿祕閫雿摰
185 208 packetTag:倌摮泵銝莎蛹摨蝔蒂SCmdApp銝餃嚗銝蝏憓
186 209  
... ... @@ -233,15 +256,12 @@ packetTag:&quot;1&quot;//倌
233 256 霂餃蝥踹蝡
234 257  
235 258 fun: "readConnectBase" //餈蝡
236   -baseId:0 //蝡D
237   -params嚗} //銝箇征
238 259 packetTag:"1" //
239 260  
240 261 誘靘
241 262 ```json
242 263 {
243 264 "fun": "readConnectBase",
244   - "baseId": 0,
245 265 "packetTag": "1"
246 266 }
247 267 ```
... ... @@ -250,6 +270,7 @@ packetTag:&quot;1&quot; //
250 270  
251 271 fun: "connectBase" //餈蝡
252 272 baseId:1 //蝡D
  273 +baseSn:"2023031402" //蝡N
253 274 infos: {"state":"OK"} //OK餈
254 275 packetTag:"1" //acketTag
255 276  
... ... @@ -258,6 +279,7 @@ packetTag:&quot;1&quot; //acketTag
258 279 {
259 280 "fun": "connectBase",
260 281 "baseId": 1,
  282 + "baseSn":"2023031402",
261 283 "infos": {
262 284 "state": "OK"
263 285 },
... ... @@ -271,6 +293,7 @@ packetTag:&quot;1&quot; //acketTag
271 293  
272 294 fun: "connectBase" //餈蝡
273 295 baseId:1 //蝡D
  296 +baseSn:"2023031402" //蝡N
274 297 infos: {"state":"OK"} //OK餈
275 298 packetTag:"1" //acketTag
276 299  
... ... @@ -279,6 +302,7 @@ packetTag:&quot;1&quot; //acketTag
279 302 {
280 303 "fun": "connectBase",
281 304 "baseId": 1,
  305 + "baseSn":"2023031402",
282 306 "infos": {
283 307 "state": "OK"
284 308 },
... ... @@ -302,6 +326,7 @@ packetTag:&quot;1&quot;
302 326 {
303 327 "fun": "disconnectBase",
304 328 "baseId": 1,
  329 + "baseSn":"2023031402",
305 330 "packetTag": "1"
306 331 }
307 332 ```
... ... @@ -321,6 +346,7 @@ params:{} //砲
321 346 {
322 347 "fun": "resetBase",
323 348 "baseId": 1,
  349 + "baseSn":"2023031402",
324 350 "packetTag": "1"
325 351 }
326 352 ```
... ... @@ -393,6 +419,7 @@ infos:{}//蝏笆鞊
393 419 {
394 420 "fun": "startBindKeypad",
395 421 "baseId": 1,
  422 + "baseSn":"2023031402",
396 423 "infos": [{
397 424 "keySn": "1837454011",
398 425 "state": "OK"
... ... @@ -417,24 +444,11 @@ params:{} //銝箇征
417 444 {
418 445 "fun": "startBindKeypad",
419 446 "baseId": 1,
  447 + "baseSn":"2023031402",
420 448 "packetTag": "1"
421 449 }
422 450 ```
423 451  
424   -迫雿
425   -
426   -誘靘
427   -
428   -```json
429   -{
430   - "keySnList": [{
431   - "keySn": "1837454011"
432   - }, {
433   - "keySn": "1837454012"
434   - }]
435   -}
436   -```
437   -
438 452  
439 453  
440 454 fun: "stopXXKeypad" //迫XX雿(XX迫雿笆摨雿妍)
... ... @@ -447,6 +461,7 @@ infos:{}//蝏笆鞊
447 461 {
448 462 "fun": "stopBindKeypad",
449 463 "baseId": 1,
  464 + "baseSn":"2023031402",
450 465 "infos": [{
451 466 "keySn": "1837454011",
452 467 "state": "OK"
... ... @@ -468,6 +483,7 @@ params嚗} //銝箇征
468 483 {
469 484 "fun": "stopBindKeypad",
470 485 "baseId": 1,
  486 + "baseSn":"2023031402",
471 487 "packetTag": "1"
472 488 }
473 489 ```
... ... @@ -485,12 +501,11 @@ params嚗}
485 501  
486 502 |**Json摮挾**| **摮挾銋** | **韏澆銋**|
487 503 | --- | --- | --- |
488   -|bindMode| 蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕) |
489   -| lessMode | 憸 0:(暺恕潘
  504 +| bindMode | 蝑曉璅∪ 1:蝑曉 <br> 2:PIN倌(暺恕) |
490 505 | modifyMode | 靽格璅∪ | 0:銝靽格 <br>1:隞乩耨(暺恕)|
491   -| limitNumber | | 0:銝(暺恕) <br> 1: |
492   -| options | 憸 | 10:(暺恕潘
493   -| optionalN | 摮 | 1N14 (閬挽蝵) |
  506 +| lessMode | 憸 0:(暺恕潘
  507 +| options | 憸 | 10:(暺恕潘
  508 +| optionalN | | 1N14 |
494 509 | keyValue | | 0:OK蝑曉] <br>1:1 <br>2:2 <br> 3:3 <br> 4:4 <br> 5:5 <br> 6:6 <br> 7:7 <br> 8:8 <br> 9:9 <br> 10:0 <br> 11:銝 <br> 12:銝 <br> 13:OK <br> 14:ESC <br> 15: Menu |
495 510 | tipTitle | 內 | 摮泵銝莎摨行憭16銝芸
496 511  
... ... @@ -501,6 +516,7 @@ params嚗}
501 516 {
502 517 "fun": "startBind",
503 518 "baseId": 0,
  519 + "baseSn":"2023031402",
504 520 "params": {
505 521 "bindMode": "1",
506 522 "lessMode": "0",
... ... @@ -534,6 +550,7 @@ infos:{}
534 550 {
535 551 "fun": "answerBind",
536 552 "baseId": 1,
  553 + "baseSn":"2023031402",
537 554 "infos": {
538 555 "time": "2.42",
539 556 "keySn": "1479824643",
... ... @@ -556,6 +573,7 @@ params:{} //暺恕蝛
556 573 {
557 574 "fun": "stopBind",
558 575 "baseId": 0,
  576 + "baseSn":"2023031402",
559 577 "packetTag": "1"
560 578 }
561 579 ```
... ... @@ -613,6 +631,7 @@ params嚗}
613 631 {
614 632 "fun": "startChoices",
615 633 "baseId": 0,
  634 + "baseSn":"2023031402",
616 635 "params": {
617 636 "optionsMode": "1",
618 637 "secrecyMode": "0",
... ... @@ -637,6 +656,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
637 656 {
638 657 "fun": "startChoices",
639 658 "baseId": 1,
  659 + "baseSn":"2023031402",
640 660 "infos": {
641 661 "state": "OK"
642 662 },
... ... @@ -655,9 +675,10 @@ infos: {}
655 675  
656 676 |Json摮挾|摮挾銋韏澆銋
657 677 |---|---|---|
658   -| time|蝑|
  678 +|time|蝑|
659 679 |keySn|n||
660 680 |keyValue|慝漱慝
  681 +|keyBattery|瘙S6潘嚗<br>T2潘%嚗
661 682  
662 683  
663 684 誘靘
... ... @@ -665,6 +686,7 @@ infos: {}
665 686 {
666 687 "fun": "answerChoices",
667 688 "baseId": 1,
  689 + "baseSn":"2023031402",
668 690 "infos": {
669 691 "time": "2.42",
670 692 "keySn": "1479824643",
... ... @@ -686,6 +708,7 @@ params:{} //暺恕蝛
686 708 {
687 709 "fun": "stopChoices",
688 710 "baseId": 0,
  711 + "baseSn":"2023031402",
689 712 "packetTag": "1"
690 713 }
691 714 ```
... ... @@ -702,6 +725,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
702 725 {
703 726 "fun": "stopChoices",
704 727 "baseId": 1,
  728 + "baseSn":"2023031402",
705 729 "infos": {
706 730 "state": "OK"
707 731 },
... ... @@ -740,6 +764,7 @@ params嚗}
740 764 {
741 765 "fun": "startTrueFalse",
742 766 "baseId": 0,
  767 + "baseSn":"2023031402",
743 768 "params": {
744 769 "optionsMode": "1",
745 770 "secrecyMode": "0",
... ... @@ -761,6 +786,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
761 786 {
762 787 "fun": "startTrueFalse",
763 788 "baseId": 1,
  789 + "baseSn":"2023031402",
764 790 "infos": {
765 791 "state": "OK"
766 792 },
... ... @@ -789,6 +815,7 @@ infos: {}
789 815 {
790 816 "fun": "answerTrueFalse",
791 817 "baseId": 1,
  818 + "baseSn":"2023031402",
792 819 "infos": {
793 820 "time": "2.42",
794 821 "keySn": "1479824643",
... ... @@ -811,6 +838,7 @@ params:{} //暺恕蝛
811 838 {
812 839 "fun": "stopTrueFalse",
813 840 "baseId": 0,
  841 + "baseSn":"2023031402",
814 842 "packetTag": "1"
815 843 }
816 844 ```
... ... @@ -827,6 +855,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
827 855 {
828 856 "fun": "stopTrueFalse",
829 857 "baseId": 1,
  858 + "baseSn":"2023031402",
830 859 "infos": {
831 860 "state": "OK"
832 861 },
... ... @@ -867,6 +896,7 @@ params嚗}
867 896 {
868 897 "fun": "startMulQuestions",
869 898 "baseId": 0,
  899 + "baseSn":"2023031402",
870 900 "params": {
871 901 "questionType": "0",
872 902 "secrecyMode": "0",
... ... @@ -891,6 +921,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
891 921 {
892 922 "fun": "startMulQuestions",
893 923 "baseId": 1,
  924 + "baseSn":"2023031402",
894 925 "infos": {
895 926 "state": "OK"
896 927 },
... ... @@ -918,6 +949,7 @@ infos: {}
918 949 {
919 950 "fun": "answerMulQuestions",
920 951 "baseId": 1,
  952 + "baseSn":"2023031402",
921 953 "infos": {
922 954 "time": "2.42",
923 955 "keySn": "1479824643",
... ... @@ -940,6 +972,7 @@ params:{} //暺恕蝛
940 972 {
941 973 "fun": "stopMulQuestions",
942 974 "baseId": 0,
  975 + "baseSn":"2023031402",
943 976 "packetTag": "1"
944 977 }
945 978 ```
... ... @@ -956,6 +989,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;} //餈,蛹OK
956 989 {
957 990 "fun": "stopMulQuestions",
958 991 "baseId": 1,
  992 + "baseSn":"2023031402",
959 993 "infos": {
960 994 "state": "OK"
961 995 },
... ... @@ -987,6 +1021,7 @@ params嚗}
987 1021 |recordingTimeLimit|憸0|
988 1022 |recordingFormat|憸0(暺恕0)|
989 1023 |recordAudioFormat|憸撘0:mp3(暺恕)<br>1:摰瘚
  1024 +|buttonMode|撘0:(暺恕)<br>1:敶|
990 1025  
991 1026  
992 1027 誘靘
... ... @@ -995,12 +1030,14 @@ params嚗}
995 1030 {
996 1031 "fun": "startVoice",
997 1032 "baseId": 0,
  1033 + "baseSn":"2023031402",
998 1034 "params": {
999 1035 "recordingMode": "0",
1000 1036 "submitTimes": "0",
1001 1037 "recordingTimeLimit": "0",
1002 1038 "recordingFormat": "0",
1003   - "recordAudioFormat": "0"
  1039 + "recordAudioFormat": "0",
  1040 + "buttonMode": "0"
1004 1041 },
1005 1042 "packetTag": "1"
1006 1043 }
... ... @@ -1013,6 +1050,7 @@ params嚗}
1013 1050 |recordingTimeLimit|敶|0~180蝘<br>0嚗|
1014 1051 |recordingFormat|憸0(暺恕0)|
1015 1052 |recordAudioFormat|憸撘0:mp3(暺恕)<br>1:摰瘚
  1053 +|buttonMode|撘0:(暺恕)<br>1:敶|
1016 1054 |testMode|瘚0:(暺恕)<br>1:撘|
1017 1055  
1018 1056 瘚誘靘
... ... @@ -1021,12 +1059,14 @@ params嚗}
1021 1059 {
1022 1060 "fun": "startVoice",
1023 1061 "baseId": 0,
  1062 + "baseSn":"2023031402",
1024 1063 "params": {
1025 1064 "recordingMode": "0",
1026 1065 "submitTimes": "0",
1027 1066 "recordingTimeLimit": "60",
1028 1067 "recordingFormat": "0",
1029 1068 "recordAudioFormat": "0",
  1069 + "buttonMode": "0",
1030 1070 "testMode":"1"
1031 1071 },
1032 1072 "packetTag": "1"
... ... @@ -1045,6 +1085,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1045 1085 {
1046 1086 "fun": "startVoice",
1047 1087 "baseId": 1,
  1088 + "baseSn":"2023031402",
1048 1089 "infos": {
1049 1090 "state": "OK"
1050 1091 },
... ... @@ -1075,6 +1116,7 @@ infos: {}
1075 1116 {
1076 1117 "fun": "answerVoiceFile",
1077 1118 "baseId": 1,
  1119 + "baseSn":"2023031402",
1078 1120 "infos": {
1079 1121 "keySn": "1479749926",
1080 1122 "filePath": "D:\voice\3_1479749926_196_2023-08-21 16-09-02 530.Mp3"
... ... @@ -1110,6 +1152,7 @@ infos: {}
1110 1152 {
1111 1153 "fun": "answerVoiceStream",
1112 1154 "baseId": 1,
  1155 + "baseSn":"2023031402",
1113 1156 "infos": {
1114 1157 "keySn": "1479824643",
1115 1158 "voiceId": "1",
... ... @@ -1142,6 +1185,7 @@ params:{} //暺恕蝛綽
1142 1185 {
1143 1186 "fun": "stopVoice",
1144 1187 "baseId": 0,
  1188 + "baseSn":"2023031402",
1145 1189 "packetTag": "1"
1146 1190 }
1147 1191 ```
... ... @@ -1158,6 +1202,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1158 1202 {
1159 1203 "fun": "stopVoice",
1160 1204 "baseId": 1,
  1205 + "baseSn":"2023031402",
1161 1206 "infos": {
1162 1207 "state": "OK"
1163 1208 },
... ... @@ -1193,6 +1238,7 @@ infos:{} //
1193 1238 {
1194 1239 "fun": "voicePacketLossInfo",
1195 1240 "baseId": 1,
  1241 + "baseSn":"2023031402",
1196 1242 "infos": {
1197 1243 "keySn": "1837454011",
1198 1244 "voiceId": "1",
... ... @@ -1212,6 +1258,7 @@ infos:{} //
1212 1258 |B200-5.8G+T2|活敶180蝘
1213 1259  
1214 1260 ### 蝑
  1261 +
1215 1262 #### 撘憪
1216 1263  
1217 1264  
... ... @@ -1231,6 +1278,7 @@ params嚗}
1231 1278 {
1232 1279 "fun": "startRushAnswer",
1233 1280 "baseId": 0,
  1281 + "baseSn":"2023031402",
1234 1282 "params": {
1235 1283 "rushAnswerMode": "0",
1236 1284 "modifyMode": "1"
... ... @@ -1251,6 +1299,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1251 1299 {
1252 1300 "fun": "startRushAnswer",
1253 1301 "baseId": 1,
  1302 + "baseSn":"2023031402",
1254 1303 "infos": {
1255 1304 "state": "OK"
1256 1305 },
... ... @@ -1278,6 +1327,7 @@ infos: {}
1278 1327 {
1279 1328 "fun": "answerRushAnswer",
1280 1329 "baseId": 1,
  1330 + "baseSn":"2023031402",
1281 1331 "infos": {
1282 1332 "time": "1.42",
1283 1333 "keySn": "1479824643",
... ... @@ -1299,6 +1349,7 @@ params:{} //暺恕蝛
1299 1349 {
1300 1350 "fun": "stopRushAnswer",
1301 1351 "baseId": 0,
  1352 + "baseSn":"2023031402",
1302 1353 "packetTag": "1"
1303 1354 }
1304 1355 ```
... ... @@ -1315,6 +1366,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1315 1366 {
1316 1367 "fun": "stopRushAnswer",
1317 1368 "baseId": 1,
  1369 + "baseSn":"2023031402",
1318 1370 "infos": {
1319 1371 "state": "OK"
1320 1372 },
... ... @@ -1356,6 +1408,7 @@ params嚗}
1356 1408 {
1357 1409 "fun": "startNumber",
1358 1410 "baseId": 0,
  1411 + "baseSn":"2023031402",
1359 1412 "params": {
1360 1413 "secrecyMode": "0",
1361 1414 "modifyMode": "1",
... ... @@ -1380,6 +1433,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1380 1433 {
1381 1434 "fun": "startNumber",
1382 1435 "baseId": 1,
  1436 + "baseSn":"2023031402",
1383 1437 "infos": {
1384 1438 "state": "OK"
1385 1439 },
... ... @@ -1408,6 +1462,7 @@ infos: {}
1408 1462 {
1409 1463 "fun": "answerNumber",
1410 1464 "baseId": 1,
  1465 + "baseSn":"2023031402",
1411 1466 "infos": {
1412 1467 "time": "2.42",
1413 1468 "keySn": "1479824643",
... ... @@ -1430,6 +1485,7 @@ params:{} //暺恕蝛
1430 1485 {
1431 1486 "fun": "stopNumber",
1432 1487 "baseId": 0,
  1488 + "baseSn":"2023031402",
1433 1489 "packetTag": "1"
1434 1490 }
1435 1491 ```
... ... @@ -1446,6 +1502,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1446 1502 {
1447 1503 "fun": "stopNumber",
1448 1504 "baseId": 1,
  1505 + "baseSn":"2023031402",
1449 1506 "infos": {
1450 1507 "state": "OK"
1451 1508 },
... ... @@ -1484,6 +1541,7 @@ params嚗}
1484 1541 {
1485 1542 "fun": "startKeyPadTest",
1486 1543 "baseId": 0,
  1544 + "baseSn":"2023031402",
1487 1545 "params": {
1488 1546 "mode": "1",
1489 1547 "keyTime": "0",
... ... @@ -1517,6 +1575,7 @@ infos: {}
1517 1575 {
1518 1576 "fun": "answerKeyPadTest",
1519 1577 "baseId": 1,
  1578 + "baseSn":"2023031402",
1520 1579 "infos": {
1521 1580 "time": "2.42",
1522 1581 "keySn": "1479824643",
... ... @@ -1542,6 +1601,7 @@ params:{} //暺恕蝛
1542 1601 {
1543 1602 "fun": "stopKeyPadTest",
1544 1603 "baseId": 0,
  1604 + "baseSn":"2023031402",
1545 1605 "packetTag": "1"
1546 1606 }
1547 1607 ```
... ... @@ -1558,6 +1618,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1558 1618 {
1559 1619 "fun": "stopKeyPadTest",
1560 1620 "baseId": 1,
  1621 + "baseSn":"2023031402",
1561 1622 "infos": {
1562 1623 "state": "OK"
1563 1624 },
... ... @@ -1607,6 +1668,7 @@ params嚗}
1607 1668 {
1608 1669 "fun": "startKeyPadMultipleQuestionsTest",
1609 1670 "baseId": 0,
  1671 + "baseSn":"2023031402",
1610 1672 "params": {
1611 1673 "examNo": 1,
1612 1674 "displayMode": 0,
... ... @@ -1635,6 +1697,7 @@ params嚗}
1635 1697 {
1636 1698 "fun": "startKeyPadMultipleQuestionsTest",
1637 1699 "baseId": 0,
  1700 + "baseSn":"2023031402",
1638 1701 "params": {
1639 1702 "examNo": 1,
1640 1703 "displayMode": 0,
... ... @@ -1667,6 +1730,7 @@ params嚗}
1667 1730 {
1668 1731 "fun": "startKeyPadMultipleQuestionsTest",
1669 1732 "baseId": 0,
  1733 + "baseSn":"2023031402",
1670 1734 "params": {
1671 1735 "examNo": 1,
1672 1736 "displayMode": 0,
... ... @@ -1703,6 +1767,7 @@ params嚗}
1703 1767 {
1704 1768 "fun": "startKeyPadMultipleQuestionsTest",
1705 1769 "baseId": 0,
  1770 + "baseSn":"2023031402",
1706 1771 "params": {
1707 1772 "examNo": 1,
1708 1773 "displayMode": 1,
... ... @@ -1730,6 +1795,7 @@ params嚗}
1730 1795 {
1731 1796 "fun": "startKeyPadMultipleQuestionsTest",
1732 1797 "baseId": 0,
  1798 + "baseSn":"2023031402",
1733 1799 "params": {
1734 1800 "examNo": 1,
1735 1801 "displayMode": 2,
... ... @@ -1763,6 +1829,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1763 1829 {
1764 1830 "fun": "keyPadMultipleQuestionsTest",
1765 1831 "baseId": 1,
  1832 + "baseSn":"2023031402",
1766 1833 "infos": {
1767 1834 "state": "OK"
1768 1835 },
... ... @@ -1799,6 +1866,7 @@ params嚗}
1799 1866 {
1800 1867 "fun": "startKeyPadMultipleQuestionsCourse",
1801 1868 "baseId": 0,
  1869 + "baseSn":"2023031402",
1802 1870 "params": {
1803 1871 "examNo": 1,
1804 1872 "displayMode": 0,
... ... @@ -1845,6 +1913,7 @@ params嚗}
1845 1913 {
1846 1914 "fun": "startKeyPadMultipleQuestionsCourse",
1847 1915 "baseId": 0,
  1916 + "baseSn":"2023031402",
1848 1917 "params": {
1849 1918 "examNo": 1,
1850 1919 "displayMode": 0,
... ... @@ -1877,6 +1946,7 @@ params嚗}
1877 1946 {
1878 1947 "fun": "startKeyPadMultipleQuestionsCourse",
1879 1948 "baseId": 0,
  1949 + "baseSn":"2023031402",
1880 1950 "params": {
1881 1951 "examNo": 1,
1882 1952 "displayMode": 1,
... ... @@ -1909,6 +1979,7 @@ params嚗}
1909 1979 {
1910 1980 "fun": "startKeyPadMultipleQuestionsCourse",
1911 1981 "baseId": 0,
  1982 + "baseSn":"2023031402",
1912 1983 "params": {
1913 1984 "examNo": 1,
1914 1985 "displayMode": 2,
... ... @@ -1947,6 +2018,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
1947 2018 {
1948 2019 "fun": "keyPadMultipleQuestionsCourse",
1949 2020 "baseId": 1,
  2021 + "baseSn":"2023031402",
1950 2022 "infos": {
1951 2023 "state": "OK"
1952 2024 },
... ... @@ -1977,6 +2049,7 @@ params嚗}
1977 2049 {
1978 2050 "fun": "startKeyPadMultipleQuestionsSubjective",
1979 2051 "baseId": 0,
  2052 + "baseSn":"2023031402",
1980 2053 "params": {
1981 2054 "examNo": 1,
1982 2055 "questions": [{
... ... @@ -2012,6 +2085,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2012 2085 {
2013 2086 "fun": "KeyPadMultipleQuestionsSubjective",
2014 2087 "baseId": 1,
  2088 + "baseSn":"2023031402",
2015 2089 "infos": {
2016 2090 "state": "OK"
2017 2091 },
... ... @@ -2045,6 +2119,7 @@ infos: {}
2045 2119 {
2046 2120 "fun": "answerKeyPadMultipleQuestions",
2047 2121 "baseId": 1,
  2122 + "baseSn":"2023031402",
2048 2123 "infos": {
2049 2124 "time": "5.42",
2050 2125 "keySn": "1479824643",
... ... @@ -2069,8 +2144,8 @@ params:{} //暺恕蝛
2069 2144 ```json
2070 2145 {
2071 2146 "fun": "stopKeyPadMultipleQuestions",
2072   -
2073 2147 "baseId": 0,
  2148 + "baseSn":"2023031402",
2074 2149 "packetTag": "1"
2075 2150 }
2076 2151 ```
... ... @@ -2089,6 +2164,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2089 2164 {
2090 2165 "fun": "stopKeyPadMultipleQuestions",
2091 2166 "baseId": 1,
  2167 + "baseSn":"2023031402",
2092 2168 "infos": {
2093 2169 "state": "OK"
2094 2170 },
... ... @@ -2111,8 +2187,8 @@ params:{} //暺恕蝛
2111 2187 ```json
2112 2188 {
2113 2189 "fun": "pauseKeyPadMultipleQuestions",
2114   -
2115 2190 "baseId": 0,
  2191 + "baseSn":"2023031402",
2116 2192 "packetTag": "1"
2117 2193 }
2118 2194 ```
... ... @@ -2132,6 +2208,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2132 2208 {
2133 2209 "fun": "pauseKeyPadMultipleQuestions",
2134 2210 "baseId": 1,
  2211 + "baseSn":"2023031402",
2135 2212 "infos": {
2136 2213 "state": "OK"
2137 2214 },
... ... @@ -2171,6 +2248,7 @@ params嚗}
2171 2248 {
2172 2249 "fun": "continueKeyPadMultipleQuestionsTest",
2173 2250 "baseId": 0,
  2251 + "baseSn":"2023031402",
2174 2252 "params": {
2175 2253 "examNo": 1,
2176 2254 "displayMode": 0,
... ... @@ -2198,6 +2276,7 @@ params嚗}
2198 2276 {
2199 2277 "fun": "continueKeyPadMultipleQuestionsTest",
2200 2278 "baseId": 0,
  2279 + "baseSn":"2023031402",
2201 2280 "params": {
2202 2281 "examNo": 1,
2203 2282 "displayMode": 0,
... ... @@ -2229,6 +2308,7 @@ params嚗}
2229 2308 {
2230 2309 "fun": "continueKeyPadMultipleQuestionsTest",
2231 2310 "baseId": 0,
  2311 + "baseSn":"2023031402",
2232 2312 "params": {
2233 2313 "examNo": 1,
2234 2314 "displayMode": 0,
... ... @@ -2264,6 +2344,7 @@ params嚗}
2264 2344 {
2265 2345 "fun": "continueKeyPadMultipleQuestionsTest",
2266 2346 "baseId": 0,
  2347 + "baseSn":"2023031402",
2267 2348 "params": {
2268 2349 "examNo": 1,
2269 2350 "displayMode": 1,
... ... @@ -2291,6 +2372,7 @@ params嚗}
2291 2372 {
2292 2373 "fun": "continueKeyPadMultipleQuestionsTest",
2293 2374 "baseId": 0,
  2375 + "baseSn":"2023031402",
2294 2376 "params": {
2295 2377 "examNo": 1,
2296 2378 "displayMode": 2,
... ... @@ -2324,6 +2406,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2324 2406 {
2325 2407 "fun": "keyPadMultipleQuestionsTest",
2326 2408 "baseId": 1,
  2409 + "baseSn":"2023031402",
2327 2410 "infos": {
2328 2411 "state": "OK"
2329 2412 },
... ... @@ -2360,6 +2443,7 @@ params嚗}
2360 2443 {
2361 2444 "fun": "continueKeyPadMultipleQuestionsCourse",
2362 2445 "baseId": 0,
  2446 + "baseSn":"2023031402",
2363 2447 "params": {
2364 2448 "examNo": 1,
2365 2449 "displayMode": 0,
... ... @@ -2408,6 +2492,7 @@ params嚗}
2408 2492 {
2409 2493 "fun": "continueKeyPadMultipleQuestionsCourse",
2410 2494 "baseId": 0,
  2495 + "baseSn":"2023031402",
2411 2496 "params": {
2412 2497 "examNo": 1,
2413 2498 "displayMode": 0,
... ... @@ -2440,6 +2525,7 @@ params嚗}
2440 2525 {
2441 2526 "fun": "continueKeyPadMultipleQuestionsCourse",
2442 2527 "baseId": 0,
  2528 + "baseSn":"2023031402",
2443 2529 "params": {
2444 2530 "examNo": 1,
2445 2531 "displayMode": 1,
... ... @@ -2472,6 +2558,7 @@ params嚗}
2472 2558 {
2473 2559 "fun": "continueKeyPadMultipleQuestionsCourse",
2474 2560 "baseId": 0,
  2561 + "baseSn":"2023031402",
2475 2562 "params": {
2476 2563 "examNo": 1,
2477 2564 "displayMode": 2,
... ... @@ -2510,6 +2597,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2510 2597 {
2511 2598 "fun": "keyPadMultipleQuestionsCourse",
2512 2599 "baseId": 1,
  2600 + "baseSn":"2023031402",
2513 2601 "infos": {
2514 2602 "state": "OK"
2515 2603 },
... ... @@ -2540,6 +2628,7 @@ params嚗}
2540 2628 {
2541 2629 "fun": "continueKeyPadMultipleQuestionsSubjective",
2542 2630 "baseId": 0,
  2631 + "baseSn":"2023031402",
2543 2632 "params": {
2544 2633 "examNo": 1,
2545 2634 "questions": [{
... ... @@ -2575,6 +2664,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2575 2664 {
2576 2665 "fun": "keyPadMultipleQuestionsSubjective",
2577 2666 "baseId": 1,
  2667 + "baseSn":"2023031402",
2578 2668 "infos": {
2579 2669 "state": "OK"
2580 2670 },
... ... @@ -2605,6 +2695,7 @@ params:{} //
2605 2695 {
2606 2696 "fun": "copyKeyPadMultipleQuestions",
2607 2697 "baseId": 1,
  2698 + "baseSn":"2023031402",
2608 2699 "params": {
2609 2700 "keySn": "0007831203",
2610 2701 "questions": [{
... ... @@ -2633,6 +2724,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2633 2724 {
2634 2725 "fun": "copyKeyPadMultipleQuestions",
2635 2726 "baseId": 1,
  2727 + "baseSn":"2023031402",
2636 2728 "infos": {
2637 2729 "state": "OK"
2638 2730 },
... ... @@ -2661,6 +2753,7 @@ params:{} //暺恕蝛
2661 2753 {
2662 2754 "fun": "okKeyPadMultipleQuestions",
2663 2755 "baseId": 0,
  2756 + "baseSn":"2023031402",
2664 2757 "params": [{
2665 2758 "id": "1",
2666 2759 "questionType": "1",
... ... @@ -2686,6 +2779,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2686 2779 {
2687 2780 "fun": "okKeyPadMultipleQuestions",
2688 2781 "baseId": 1,
  2782 + "baseSn":"2023031402",
2689 2783 "infos": {
2690 2784 "state": "OK"
2691 2785 },
... ... @@ -2723,6 +2817,7 @@ params嚗}
2723 2817 {
2724 2818 "fun": "startTextAnswer",
2725 2819 "baseId": 0,
  2820 + "baseSn":"2023031402",
2726 2821 "params": {
2727 2822 "optionsMode": "1",
2728 2823 "modifyMode": "1",
... ... @@ -2744,6 +2839,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;} //餈,蛹OK
2744 2839 {
2745 2840 "fun": "startTextAnswer",
2746 2841 "baseId": 1,
  2842 + "baseSn":"2023031402",
2747 2843 "infos": {
2748 2844 "state": "OK"
2749 2845 },
... ... @@ -2771,6 +2867,7 @@ infos: {}
2771 2867 {
2772 2868 "fun": "answerTextAnswer",
2773 2869 "baseId": 1,
  2870 + "baseSn":"2023031402",
2774 2871 "infos": {
2775 2872 "keySn": "1479824643",
2776 2873 "keyValue": "abcdef"
... ... @@ -2790,6 +2887,8 @@ params:{} //暺恕蝛
2790 2887 ```json
2791 2888 {
2792 2889 "fun": "stopTextAnswer",
  2890 + "baseId": 0,
  2891 + "baseSn":"2023031402",
2793 2892 "packetTag": "1"
2794 2893 }
2795 2894 ```
... ... @@ -2805,6 +2904,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2805 2904 {
2806 2905 "fun": "stopTextAnswer",
2807 2906 "baseId": 1,
  2907 + "baseSn":"2023031402",
2808 2908 "infos": {
2809 2909 "state": "OK"
2810 2910 },
... ... @@ -2834,6 +2934,7 @@ params嚗}
2834 2934 {
2835 2935 "fun": "startFreeQuestion",
2836 2936 "baseId": 0,
  2937 + "baseSn":"2023031402",
2837 2938 "params": {},
2838 2939 "packetTag": "1"
2839 2940 }
... ... @@ -2851,6 +2952,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;} //餈,蛹OK
2851 2952 {
2852 2953 "fun": "startFreeQuestion",
2853 2954 "baseId": 1,
  2955 + "baseSn":"2023031402",
2854 2956 "infos": {
2855 2957 "state": "OK"
2856 2958 },
... ... @@ -2881,6 +2983,7 @@ infos: {}
2881 2983 {
2882 2984 "fun": "answerChoices",
2883 2985 "baseId": 1,
  2986 + "baseSn":"2023031402",
2884 2987 "infos": {
2885 2988 "keySn": "1479824643",
2886 2989 "keyValue": "ABC"
... ... @@ -2905,6 +3008,7 @@ infos: {}
2905 3008 {
2906 3009 "fun": "answerTrueFalse",
2907 3010 "baseId": 1,
  3011 + "baseSn":"2023031402",
2908 3012 "infos": {
2909 3013 "keySn": "1479824643",
2910 3014 "keyValue": "1"
... ... @@ -2928,6 +3032,7 @@ infos: {}
2928 3032 {
2929 3033 "fun": "answerNumber",
2930 3034 "baseId": 1,
  3035 + "baseSn":"2023031402",
2931 3036 "infos": {
2932 3037 "keySn": "1479824643",
2933 3038 "keyValue": "99.99"
... ... @@ -2949,6 +3054,8 @@ params:{} //暺恕蝛
2949 3054 ```json
2950 3055 {
2951 3056 "fun": "stopFreeQuestion",
  3057 + "baseId": 0,
  3058 + "baseSn":"2023031402",
2952 3059 "packetTag": "1"
2953 3060 }
2954 3061 ```
... ... @@ -2964,6 +3071,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2964 3071 {
2965 3072 "fun": "stopFreeQuestion",
2966 3073 "baseId": 1,
  3074 + "baseSn":"2023031402",
2967 3075 "infos": {
2968 3076 "state": "OK"
2969 3077 },
... ... @@ -2983,6 +3091,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
2983 3091 {
2984 3092 "fun": "startKeyPadCustomQuestions",
2985 3093 "baseId": 0,
  3094 + "baseSn":"2023031402",
2986 3095 "params": {
2987 3096 "titleTable": ["摮”1", "摮”2", "摮”3"],
2988 3097 "optionTable": [
... ... @@ -3048,8 +3157,9 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
3048 3157 ```
3049 3158  
3050 3159 ### 摰
  3160 +####
3051 3161  
3052   -#### 撘憪
  3162 +##### 撘憪
3053 3163  
3054 3164  
3055 3165  
... ... @@ -3128,6 +3238,7 @@ params嚗}
3128 3238 {
3129 3239 "fun": "startKeyPadCustomQuestions",
3130 3240 "baseId": 0,
  3241 + "baseSn":"2023031402",
3131 3242 "params": {
3132 3243 "titleTable": ["", "摮”"],
3133 3244 "optionTable": [
... ... @@ -3211,8 +3322,229 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
3211 3322  
3212 3323 ```json
3213 3324 {
  3325 + "fun": "startKeyPadCustomQuestions",
  3326 + "baseId": 1,
  3327 + "baseSn":"2023031402",
  3328 + "infos": {
  3329 + "state": "OK"
  3330 + },
  3331 + "packetTag": "59"
  3332 +}
  3333 +```
  3334 +
  3335 +##### 雿
  3336 +
  3337 +嚗
  3338 +
  3339 +fun: "answerKeyPadCustomQuestions" //摰
  3340 +baseId: "1"//誘蝡D
  3341 +infos: {}
  3342 +
  3343 +摮蝏
  3344 +| **Json摮挾** | **摮挾銋** | **韏澆銋** |
  3345 +| --- | --- | --- |
  3346 +|Time|蝑|
  3347 +|keySn|n||
  3348 +|Seq|憸||
  3349 +|keyValue|慝漱慝
  3350 +
  3351 +
  3352 +
  3353 +誘靘
  3354 +```json
  3355 +{
  3356 + "fun": "answerKeyPadCustomQuestions",
  3357 + "baseId": 1,
  3358 + "baseSn":"2023031402",
  3359 + "infos": {
  3360 + "time": "5.42",
  3361 + "keySn": "1479824643",
  3362 + "seq": "1",
  3363 + "keyValue": "12"
  3364 + },
  3365 + "packetTag": "1"
  3366 +}
  3367 +```
  3368 +
  3369 +
  3370 +##### 雿
  3371 +
  3372 +
  3373 +
  3374 +fun: "stopKeyPadCustomQuestions" //迫憭
  3375 +params:{} //暺恕蝛
  3376 +
  3377 +
  3378 +誘靘
  3379 +```json
  3380 +{
  3381 + "fun": "stopKeyPadCustomQuestions",
  3382 + "baseId": 0,
  3383 + "baseSn":"2023031402",
  3384 + "packetTag": "1"
  3385 +}
  3386 +```
  3387 +
  3388 +
  3389 +嚗
  3390 +fun: "stopKeyPadCustomQuestions" //迫
  3391 +baseId: "1"//蝡D
  3392 +infos:{"state":"OK"}//餈,蛹OK
  3393 +
  3394 +
  3395 +誘靘
  3396 +```json
  3397 +{
  3398 + "fun": "stopKeyPadCustomQuestions",
3214 3399 "baseId": 1,
  3400 + "baseSn":"2023031402",
  3401 + "infos": {
  3402 + "state": "OK"
  3403 + },
  3404 + "packetTag": "1"
  3405 +}
  3406 +```
  3407 +
  3408 +
  3409 +##### 挽憭秩
  3410 +| **蝡+** | **** | **憭釣** |
  3411 +| --- | --- | --- |
  3412 +| B200-2.4G+M6 | |閬
  3413 +
  3414 +
  3415 +#### 摮蜀憸
  3416 +
  3417 +##### 撘憪
  3418 +
  3419 +
  3420 +
  3421 +fun: "startKeyPadDigitalElections" //撘憪
  3422 +params嚗}
  3423 +
  3424 +| **Json摮挾** | **摮挾銋** | **韏澆銋** |
  3425 +| --- | --- | --- |
  3426 +|titleTable| 憸銵 |蝏摮泵銝淫|
  3427 +|optionTable| ★銵 |蝏<br>"憸 暺恕蝛"|
  3428 +|ruleTable| 閫” |蝏捆霂瑕挾閫|
  3429 +|permissionTable| 霈詨” |蝏
  3430 +|configTable| 蔭銵 |蝏
  3431 +
  3432 +
  3433 +
  3434 +閫挾閫
  3435 +
  3436 +閫掩2嚗
  3437 +
  3438 +| **Json摮挾** | **摮挾銋** | **韏澆銋** |
  3439 +| --- | --- | --- |
  3440 +|ruleType| 閫掩 |2 暺恕2|
  3441 +|mode|璅∪0:暺恕嚗嚗
  3442 +|modifyMode|靽格璅∪0:銝靽格<br> 1:靽格嚗恕|
  3443 +|secrecyMode|靽芋撘0:銝恕<br> 1:靽
  3444 +|lessMode|餈恍芋撘0:銝翰恕<br> 1:餈恍
  3445 +|repeat|芋撘0:銝嚗恕<br>1:葵★甈﹄
  3446 +|sort|0:靽憿箏<br>1:★恕|
  3447 +|max|憭批犖||
  3448 +|min|撠犖||
  3449 +|retain|靽摮蝏 000-999|
  3450 +|range|摮|蝏
  3451 +
  3452 +摮蝏
  3453 +| **Json摮挾** | **摮挾銋** | **韏澆銋** |
  3454 +| --- | --- | --- |
  3455 +|rangeStart|摮撘憪瘚桃撘泵銝琍
  3456 +|rangeEnd|摮蝏瘚桃撘泵銝琍
  3457 +
  3458 +
  3459 +霈詨”蝏”霂湔
  3460 +| **Json摮挾** | **摮挾銋** | **韏澆銋** |
  3461 +| --- | --- | --- |
  3462 +|permission| 霈詨 |0:暺恕]<br>1: 捂<br>2: 蝳迫|
  3463 +|KeySnList| ” |蝏<br>"1479824643"<br>"1479824644"<br>"1479824645"<br>"1479824646"|
  3464 +
  3465 +
  3466 +蔭銵函”霂湔
  3467 +| **Json摮挾** | **摮挾銋** | **韏澆銋** |
  3468 +| --- | --- | --- |
  3469 +|ruleType| 憸 |1-200|
  3470 +|titleID|憸銵沉D|1-200|
  3471 +|optionID|★銵沉D|1-200|
  3472 +|ruleID|閫”ID|1-200|
  3473 +|permissionID|霈詨”ID|1-200|
  3474 +
  3475 +
  3476 +誘靘
  3477 +```json
  3478 +{
  3479 + "fun": "startKeyPadDigitalElections",
  3480 + "baseId": 0,
  3481 + "baseSn":"2023031402",
  3482 + "params": {
  3483 + "titleTable": ["摮蜀1", "摮蜀2", "摮蜀3"],
  3484 + "optionTable": [
  3485 + ["1", "2", "3", "4"]
  3486 + ],
  3487 + "ruleTable": [{
  3488 + "ruleType": "2",
  3489 + "mode": "0",
  3490 + "modifyMode": "1",
  3491 + "secrecyMode": "0",
  3492 + "lessMode": "0",
  3493 + "repeat": "0",
  3494 + "sort": "1",
  3495 + "max": "4",
  3496 + "min": "1",
  3497 + "retain": ["777", "999"],
  3498 + "range": [{
  3499 + "rangeStart": "1",
  3500 + "rangeEnd": "999"
  3501 + }]
  3502 + }],
  3503 + "permissionTable": [{
  3504 + "permission": "0",
  3505 + "keySnList": []
  3506 + }],
  3507 + "configTable": [{
  3508 + "number": "1",
  3509 + "titleID": "1",
  3510 + "optionID": "1",
  3511 + "ruleID": "1",
  3512 + "permissionID": "0"
  3513 + },
  3514 +
  3515 + {
  3516 + "number": "2",
  3517 + "titleID": "2",
  3518 + "optionID": "1",
  3519 + "ruleID": "1",
  3520 + "permissionID": "0"
  3521 + },
  3522 + {
  3523 + "number": "3",
  3524 + "titleID": "3",
  3525 + "optionID": "1",
  3526 + "ruleID": "1",
  3527 + "permissionID": "0"
  3528 + }
  3529 + ]
  3530 + },
  3531 + "packetTag": "1"
  3532 +}
  3533 +```
  3534 +
  3535 +嚗
  3536 +
  3537 +fun: "startKeyPadCustomQuestions" //撘憪摰
  3538 +baseId: "1"//誘蝡D
  3539 +infos:{"state":"OK"}//餈,蛹OK
  3540 +
  3541 +誘靘
  3542 +
  3543 +```json
  3544 +{
3215 3545 "fun": "startKeyPadCustomQuestions",
  3546 + "baseId": 1,
  3547 + "baseSn":"2023031402",
3216 3548 "infos": {
3217 3549 "state": "OK"
3218 3550 },
... ... @@ -3220,7 +3552,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
3220 3552 }
3221 3553 ```
3222 3554  
3223   -####
  3555 +#####
3224 3556  
3225 3557
3226 3558  
... ... @@ -3243,6 +3575,7 @@ infos: {}
3243 3575 {
3244 3576 "fun": "answerKeyPadCustomQuestions",
3245 3577 "baseId": 1,
  3578 + "baseSn":"2023031402",
3246 3579 "infos": {
3247 3580 "time": "5.42",
3248 3581 "keySn": "1479824643",
... ... @@ -3254,7 +3587,7 @@ infos: {}
3254 3587 ```
3255 3588  
3256 3589  
3257   -####
  3590 +#####
3258 3591  
3259 3592  
3260 3593  
... ... @@ -3267,6 +3600,7 @@ params:{} //暺恕蝛
3267 3600 {
3268 3601 "fun": "stopKeyPadCustomQuestions",
3269 3602 "baseId": 0,
  3603 + "baseSn":"2023031402",
3270 3604 "packetTag": "1"
3271 3605 }
3272 3606 ```
... ... @@ -3283,6 +3617,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
3283 3617 {
3284 3618 "fun": "stopKeyPadCustomQuestions",
3285 3619 "baseId": 1,
  3620 + "baseSn":"2023031402",
3286 3621 "infos": {
3287 3622 "state": "OK"
3288 3623 },
... ... @@ -3327,6 +3662,7 @@ params:{}//
3327 3662 {
3328 3663 "fun": "writeNFCInfo",
3329 3664 "baseId": 1,
  3665 + "baseSn":"2023031402",
3330 3666 "params": {
3331 3667 "userName": "撘",
3332 3668 "matchCode": "22120007"
... ... @@ -3346,6 +3682,7 @@ infos:{&quot;value&quot;:&quot;OK&quot;}//餈,蛹OK
3346 3682 {
3347 3683 "fun": "writeNFCInfo",
3348 3684 "baseId": 1,
  3685 + "baseSn":"2023031402",
3349 3686 "infos": {
3350 3687 "value": "OK"
3351 3688 },
... ... @@ -3378,6 +3715,7 @@ infos:{}
3378 3715 {
3379 3716 "fun": "NFCInfo",
3380 3717 "baseId": 1,
  3718 + "baseSn":"2023031402",
3381 3719 "infos": {
3382 3720 "keySn": "1479824643",
3383 3721 "state": "4",
... ... @@ -3410,6 +3748,7 @@ params:{}//
3410 3748 {
3411 3749 "fun": "writeNFCEmpty",
3412 3750 "baseId": 1,
  3751 + "baseSn":"2023031402",
3413 3752 "params": {},
3414 3753 "packetTag": "1"
3415 3754 }
... ... @@ -3425,6 +3764,7 @@ infos:{&quot;value&quot;:&quot;OK&quot;}//餈,蛹OK
3425 3764 {
3426 3765 "fun": "writeNFCEmpty",
3427 3766 "baseId": 1,
  3767 + "baseSn":"2023031402",
3428 3768 "infos": {
3429 3769 "value": "OK"
3430 3770 },
... ... @@ -3460,10 +3800,32 @@ params嚗}//銝‵
3460 3800 {
3461 3801 "fun": "readBaseStationID",
3462 3802 "baseId": 2,
  3803 + "baseSn":"2023031402",
3463 3804 "packetTag": "1"
3464 3805 }
3465 3806 ```
3466 3807  
  3808 +
  3809 +
  3810 +fun: "writeBaseStationID" //蝡
  3811 +baseId: 0
  3812 +params嚗"path":pathAdd","value":"2"}//1~32 (蝡ID)
  3813 +
  3814 +誘靘
  3815 +```json
  3816 +{
  3817 + "fun": "writeBaseStationID",
  3818 + "baseId": 0,
  3819 + "params": {
  3820 + "pathAdd": "ptahAdd",
  3821 + "value": "2"
  3822 + },
  3823 + "packetTag": "1"
  3824 +}
  3825 +```
  3826 +
  3827 +
  3828 +
3467 3829
3468 3830
3469 3831 fun: "baseStationID"
... ... @@ -3478,6 +3840,7 @@ infos:{&quot;value&quot;:&quot;2&quot;}//餈蝡D
3478 3840 {
3479 3841 "fun": "baseStationID",
3480 3842 "baseId": 2,
  3843 + "baseSn":"2023031402",
3481 3844 "infos": {
3482 3845 "pathAdd": "12345",
3483 3846 "value": "2"
... ... @@ -3499,7 +3862,7 @@ infos:{&quot;value&quot;:&quot;2&quot;}//餈蝡D
3499 3862  
3500 3863  
3501 3864 fun: "readBaseStationChannel" //霂餃蝡
3502   -baseId: 0//0~32 (暺恕銝0銵函內霂餃蝡)
  3865 +baseId: 1//1~32 (敹◆蝡)
3503 3866 params嚗}//銝‵
3504 3867  
3505 3868  
... ... @@ -3508,7 +3871,8 @@ params嚗}//銝‵
3508 3871 ```json
3509 3872 {
3510 3873 "fun": "readBaseStationChannel",
3511   - "baseId": 0,
  3874 + "baseId": 1,
  3875 + "baseSn":"2023031402",
3512 3876 "packetTag": "1"
3513 3877 }
3514 3878 ```
... ... @@ -3532,6 +3896,7 @@ params嚗&quot;value&quot;:&quot;1&quot;}//1~12 嚗嚗
3532 3896 {
3533 3897 "fun": "writeBaseStationChannel",
3534 3898 "baseId": 1,
  3899 + "baseSn":"2023031402",
3535 3900 "params": {
3536 3901 "value": "3",
3537 3902 "values": ["3", "6", "9", "12"]
... ... @@ -3554,6 +3919,7 @@ infos:{&quot;value&quot;:&quot;3&quot;}//餈蝡
3554 3919 {
3555 3920 "fun": "baseStationChannel",
3556 3921 "baseId": 1,
  3922 + "baseSn":"2023031402",
3557 3923 "infos": {
3558 3924 "value": "3",
3559 3925 "values": ["3", "6", "9", "12"]
... ... @@ -3576,7 +3942,7 @@ infos:{&quot;value&quot;:&quot;3&quot;}//餈蝡
3576 3942  
3577 3943  
3578 3944 fun: "readKeyboardLoginMenu" //霂駁敶蝷
3579   -baseId: 0//0~32 (暺恕銝0銵函內霂餃蝡)
  3945 +baseId: 1//1~32 (敹◆蝡)
3580 3946 params嚗}//銝‵
3581 3947  
3582 3948  
... ... @@ -3585,7 +3951,8 @@ params嚗}//銝‵
3585 3951 ```json
3586 3952 {
3587 3953 "fun": "readKeyboardLoginMenu",
3588   - "baseId": 0,
  3954 + "baseId": 1,
  3955 + "baseSn":"2023031402",
3589 3956 "packetTag": "1"
3590 3957 }
3591 3958 ```
... ... @@ -3604,6 +3971,7 @@ params嚗&quot;value&quot;:&quot;1&quot;}//0~1 嚗0銝捂敶1捂敶
3604 3971 {
3605 3972 "fun": "writeKeyboardLoginMenu",
3606 3973 "baseId": 1,
  3974 + "baseSn":"2023031402",
3607 3975 "params": {
3608 3976 "value": "1"
3609 3977 },
... ... @@ -3626,6 +3994,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶蝷箏
3626 3994 {
3627 3995 "fun": "baseStationKeyboardLoginMenu",
3628 3996 "baseId": 1,
  3997 + "baseSn":"2023031402",
3629 3998 "infos": {
3630 3999 "value": "1"
3631 4000 },
... ... @@ -3649,7 +4018,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶蝷箏
3649 4018  
3650 4019  
3651 4020 fun: "readBaseStationModel" //霂餃蝡
3652   -baseId: 0//0~32 (暺恕銝0銵函內霂餃蝡)
  4021 +baseId: 1//1~32 (敹◆蝡)
3653 4022 params嚗}//銝‵
3654 4023  
3655 4024  
... ... @@ -3658,7 +4027,8 @@ params嚗}//銝‵
3658 4027 ```json
3659 4028 {
3660 4029 "fun": "readBaseStationModel",
3661   - "baseId": 0,
  4030 + "baseId": 1,
  4031 + "baseSn":"2023031402",
3662 4032 "packetTag": "1"
3663 4033 }
3664 4034 ```
... ... @@ -3678,6 +4048,7 @@ infos:{&quot;value&quot;:&quot;218&quot;}//餈蝡
3678 4048 {
3679 4049 "fun": "baseStationModel",
3680 4050 "baseId": 1,
  4051 + "baseSn":"2023031402",
3681 4052 "infos": {
3682 4053 "value": "218"
3683 4054 },
... ... @@ -3709,7 +4080,7 @@ infos:{&quot;value&quot;:&quot;218&quot;}//餈蝡
3709 4080  
3710 4081  
3711 4082 fun: "readBaseStationSVersion" //霂餃蝡蔓隞嗥
3712   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  4083 +baseId: 1//1~32 (敹◆蝡)
3713 4084 params嚗}//銝‵
3714 4085  
3715 4086  
... ... @@ -3718,7 +4089,8 @@ params嚗}//銝‵
3718 4089 ```json
3719 4090 {
3720 4091 "fun": "readBaseStationSVersion",
3721   - "baseId": 0,
  4092 + "baseId": 1,
  4093 + "baseSn":"2023031402",
3722 4094 "packetTag": "1"
3723 4095 }
3724 4096 ```
... ... @@ -3738,6 +4110,7 @@ infos:{&quot;value&quot;:&quot;V2.0.2&quot;}//餈蝡蔓隞嗥
3738 4110 {
3739 4111 "fun": "baseStationSVersion",
3740 4112 "baseId": 1,
  4113 + "baseSn":"2023031402",
3741 4114 "infos": {
3742 4115 "value": "V2.0.2"
3743 4116 },
... ... @@ -3760,7 +4133,7 @@ infos:{&quot;value&quot;:&quot;V2.0.2&quot;}//餈蝡蔓隞嗥
3760 4133  
3761 4134  
3762 4135 fun: "readBaseStationSN" //霂餃蝡
3763   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  4136 +baseId: 1//1~32 (敹◆蝡)
3764 4137 params嚗}//銝‵
3765 4138  
3766 4139  
... ... @@ -3769,7 +4142,8 @@ params嚗}//銝‵
3769 4142 ```json
3770 4143 {
3771 4144 "fun": "readBaseStationSN",
3772   - "baseId": 0,
  4145 + "baseId": 1,
  4146 + "baseSn":"2023031402",
3773 4147 "packetTag": "1"
3774 4148 }
3775 4149 ```
... ... @@ -3789,6 +4163,7 @@ infos:{&quot;value&quot;:&quot;FFFFFFFFFF&quot;}//餈蝡
3789 4163 {
3790 4164 "fun": "baseStationSN",
3791 4165 "baseId": 1,
  4166 + "baseSn":"2023031402",
3792 4167 "infos": {
3793 4168 "value": "FFFFFFFFFF"
3794 4169 },
... ... @@ -3811,7 +4186,7 @@ infos:{&quot;value&quot;:&quot;FFFFFFFFFF&quot;}//餈蝡
3811 4186  
3812 4187  
3813 4188 fun: "readBaseStationTitle" //霂餃蝡妍
3814   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  4189 +baseId: 1//1~32 (敹◆蝡)
3815 4190 params嚗}//銝‵
3816 4191  
3817 4192  
... ... @@ -3820,7 +4195,8 @@ params嚗}//銝‵
3820 4195 ```json
3821 4196 {
3822 4197 "fun": "readBaseStationTitle",
3823   - "baseId": 0,
  4198 + "baseId": 1,
  4199 + "baseSn":"2023031402",
3824 4200 "packetTag": "1"
3825 4201 }
3826 4202 ```
... ... @@ -3840,6 +4216,7 @@ params嚗&quot;value&quot;:&quot; A2021&quot;}//蝡妍嚗12摮
3840 4216 {
3841 4217 "fun": "writeBaseStationTitle",
3842 4218 "baseId": 1,
  4219 + "baseSn":"2023031402",
3843 4220 "params": {
3844 4221 "value": "A2021"
3845 4222 },
... ... @@ -3862,6 +4239,7 @@ infos:{&quot;value&quot;:&quot;A2021&quot;}//餈蝡妍
3862 4239 {
3863 4240 "fun": "baseStationTitle",
3864 4241 "baseId": 1,
  4242 + "baseSn":"2023031402",
3865 4243 "infos": {
3866 4244 "value": "A2021"
3867 4245 },
... ... @@ -3881,14 +4259,15 @@ infos:{&quot;value&quot;:&quot;A2021&quot;}//餈蝡妍
3881 4259
3882 4260  
3883 4261 fun: "readPairMode" //霂餃蝡笆璅∪
3884   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4262 +baseId: 1//1~32 (敹◆蝡)
3885 4263 params嚗}//銝‵
3886 4264  
3887 4265 誘靘
3888 4266 ```json
3889 4267 {
3890 4268 "fun": "readPairMode",
3891   - "baseId": 0,
  4269 + "baseId": 1,
  4270 + "baseSn":"2023031402",
3892 4271 "packetTag": "1"
3893 4272 }
3894 4273 ```
... ... @@ -3922,6 +4301,7 @@ params嚗&quot;value&quot;:&quot;4&quot;}//1~9
3922 4301 {
3923 4302 "fun": "writePairMode",
3924 4303 "baseId": 1,
  4304 + "baseSn":"2023031402",
3925 4305 "params": {
3926 4306 "value": "4"
3927 4307 },
... ... @@ -3940,6 +4320,7 @@ infos:{&quot;value&quot;:&quot;4&quot;}//餈蝡笆璅∪
3940 4320 {
3941 4321 "fun": "pairMode",
3942 4322 "baseId": 1,
  4323 + "baseSn":"2023031402",
3943 4324 "infos": {
3944 4325 "value": "4"
3945 4326 },
... ... @@ -3973,14 +4354,15 @@ infos:{&quot;value&quot;:&quot;4&quot;}//餈蝡笆璅∪
3973 4354
3974 4355  
3975 4356 fun: "readBaseStationPairMode" //霂餃蝡笆璅∪
3976   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4357 +baseId: 1//1~32 (敹◆蝡)
3977 4358 params嚗}//銝‵
3978 4359  
3979 4360 誘靘
3980 4361 ```json
3981 4362 {
3982 4363 "fun": "readBaseStationPairMode",
3983   - "baseId": 0,
  4364 + "baseId": 1,
  4365 + "baseSn":"2023031402",
3984 4366 "packetTag": "1"
3985 4367 }
3986 4368 ```
... ... @@ -3992,7 +4374,7 @@ params嚗}//銝‵
3992 4374  
3993 4375 fun: "writeBaseStationPairMode" //蝡笆璅∪
3994 4376 baseId: 1//1~32 (敹◆蝡)
3995   -params嚗"value":"4"}//1~9
  4377 +params嚗"value":"1"}//
3996 4378  
3997 4379 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
3998 4380 | --- | --- | --- |
... ... @@ -4004,6 +4386,7 @@ params嚗&quot;value&quot;:&quot;4&quot;}//1~9
4004 4386 {
4005 4387 "fun": "writeBaseStationPairMode",
4006 4388 "baseId": 1,
  4389 + "baseSn":"2023031402",
4007 4390 "params": {
4008 4391 "value": "1"
4009 4392 },
... ... @@ -4013,15 +4396,16 @@ params嚗&quot;value&quot;:&quot;4&quot;}//1~9
4013 4396  
4014 4397
4015 4398
4016   -fun: "BaseStationPairMode"
  4399 +fun: "baseStationPairMode"
4017 4400 baseId: 1//蝡D
4018 4401 infos:{"value":"1"}//餈蝡笆璅∪
4019 4402  
4020 4403 誘靘
4021 4404 ```json
4022 4405 {
4023   - "fun": "BaseStationPairMode",
  4406 + "fun": "baseStationPairMode",
4024 4407 "baseId": 1,
  4408 + "baseSn":"2023031402",
4025 4409 "infos": {
4026 4410 "value": "1"
4027 4411 },
... ... @@ -4043,7 +4427,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡笆璅∪
4043 4427  
4044 4428  
4045 4429 fun: "readBaseStationMatchCode" //霂餃蝡笆
4046   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  4430 +baseId: 1//1~32 (敹◆蝡)
4047 4431 params嚗}//銝‵
4048 4432  
4049 4433  
... ... @@ -4052,7 +4436,8 @@ params嚗}//銝‵
4052 4436 ```json
4053 4437 {
4054 4438 "fun": "readBaseStationMatchCode",
4055   - "baseId": 0,
  4439 + "baseId": 1,
  4440 + "baseSn":"2023031402",
4056 4441 "packetTag": "1"
4057 4442 }
4058 4443 ```
... ... @@ -4072,6 +4457,7 @@ infos:{&quot;value&quot;:&quot;21072333&quot;}//餈蝡笆
4072 4457 {
4073 4458 "fun": "baseStationMatchCode",
4074 4459 "baseId": 1,
  4460 + "baseSn":"2023031402",
4075 4461 "infos": {
4076 4462 "value": "21072333"
4077 4463 },
... ... @@ -4104,6 +4490,7 @@ packetTag:&quot;0&quot;//倌
4104 4490 {
4105 4491 "fun": "baseStationChannelInterference",
4106 4492 "baseId": 1,
  4493 + "baseSn":"2023031402",
4107 4494 "infos": {
4108 4495 "value": "5"
4109 4496 },
... ... @@ -4126,7 +4513,7 @@ packetTag:&quot;0&quot;//倌
4126 4513  
4127 4514  
4128 4515 fun: "readBaseStationCapacity" //霂餃蝡捆
4129   -baseId: 0 //0~32 (暺恕銝0銵函內霂餃蝡)
  4516 +baseId: 1//1~32 (敹◆蝡)
4130 4517 params嚗}//銝‵
4131 4518  
4132 4519  
... ... @@ -4135,7 +4522,8 @@ params嚗}//銝‵
4135 4522 ```json
4136 4523 {
4137 4524 "fun": "readBaseStationCapacity",
4138   - "baseId": 0,
  4525 + "baseId": 1,
  4526 + "baseSn":"2023031402",
4139 4527 "packetTag": "1"
4140 4528 }
4141 4529 ```
... ... @@ -4152,9 +4540,10 @@ infos:{&quot;keypadNumber&quot;:&quot;60&quot;,&quot;lock&quot;:&quot;1&quot;}//餈蝡捆
4152 4540 誘靘
4153 4541  
4154 4542 ```json
4155   -{
4156   - "baseId": 2,
  4543 +{
4157 4544 "fun": "baseStationCapacity",
  4545 + "baseId": 1,
  4546 + "baseSn":"2023031402",
4158 4547 "infos": {
4159 4548 "keypadNumber": "60",
4160 4549 "lock": "1"
... ... @@ -4186,6 +4575,7 @@ params嚗}
4186 4575 {
4187 4576 "fun": "startQuickMatch",
4188 4577 "baseId": 1,
  4578 + "baseSn":"2023031402",
4189 4579 "packetTag": "1"
4190 4580 }
4191 4581 ```
... ... @@ -4203,6 +4593,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
4203 4593 {
4204 4594 "fun": "startQuickMatch",
4205 4595 "baseId": 1,
  4596 + "baseSn":"2023031402",
4206 4597 "infos": {
4207 4598 "state": "OK"
4208 4599 },
... ... @@ -4224,6 +4615,7 @@ params:{} //暺恕蝛
4224 4615 {
4225 4616 "fun": "stopQuickMatch",
4226 4617 "baseId": 1,
  4618 + "baseSn":"2023031402",
4227 4619 "packetTag": "1"
4228 4620 }
4229 4621 ```
... ... @@ -4241,6 +4633,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
4241 4633 {
4242 4634 "fun": "stopQuickMatch",
4243 4635 "baseId": 1,
  4636 + "baseSn":"2023031402",
4244 4637 "infos": {
4245 4638 "state": "OK"
4246 4639 },
... ... @@ -4263,7 +4656,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
4263 4656  
4264 4657  
4265 4658 fun: "readKeyboardLoginPW" //霂駁敶
4266   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4659 +baseId: 1//1~32 (敹◆蝡)
4267 4660 params嚗}//銝‵
4268 4661  
4269 4662  
... ... @@ -4272,7 +4665,8 @@ params嚗}//銝‵
4272 4665 ```json
4273 4666 {
4274 4667 "fun": "readKeyboardLoginPW",
4275   - "baseId": 0,
  4668 + "baseId": 1,
  4669 + "baseSn":"2023031402",
4276 4670 "packetTag": "1"
4277 4671 }
4278 4672 ```
... ... @@ -4291,6 +4685,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//0~9999 嚗0銝撖對
4291 4685 {
4292 4686 "fun": "writeKeyboardLoginPW",
4293 4687 "baseId": 1,
  4688 + "baseSn":"2023031402",
4294 4689 "params": {
4295 4690 "value": "0"
4296 4691 },
... ... @@ -4313,6 +4708,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶
4313 4708 {
4314 4709 "fun": "baseStationKeyboardLoginPW",
4315 4710 "baseId": 1,
  4711 + "baseSn":"2023031402",
4316 4712 "infos": {
4317 4713 "value": "0"
4318 4714 },
... ... @@ -4334,7 +4730,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈敶
4334 4730  
4335 4731  
4336 4732 fun: "readBaseStationNameHidden" //霂餃蝡妍
4337   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4733 +baseId: 1//1~32 (敹◆蝡)
4338 4734 params嚗}//銝‵
4339 4735  
4340 4736  
... ... @@ -4343,7 +4739,8 @@ params嚗}//銝‵
4343 4739 ```json
4344 4740 {
4345 4741 "fun": "readBaseStationNameHidden",
4346   - "baseId": 0,
  4742 + "baseId": 1,
  4743 + "baseSn":"2023031402",
4347 4744 "packetTag": "1"
4348 4745 }
4349 4746 ```
... ... @@ -4366,6 +4763,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//0~1 嚗01銝
4366 4763 {
4367 4764 "fun": "writeBaseStationNameHidden",
4368 4765 "baseId": 1,
  4766 + "baseSn":"2023031402",
4369 4767 "params": {
4370 4768 "value": "0"
4371 4769 },
... ... @@ -4388,6 +4786,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡妍 嚗01銝
4388 4786 {
4389 4787 "fun": "baseStationNameHidden",
4390 4788 "baseId": 1,
  4789 + "baseSn":"2023031402",
4391 4790 "infos": {
4392 4791 "value": "0"
4393 4792 },
... ... @@ -4408,7 +4807,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡妍 嚗01銝
4408 4807  
4409 4808  
4410 4809 fun: "readBaseStationTcpIp" //霂餃蝡CP/IP
4411   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  4810 +baseId: 1//1~32 (敹◆蝡)
4412 4811 params嚗}//銝‵
4413 4812  
4414 4813  
... ... @@ -4417,7 +4816,8 @@ params嚗}//銝‵
4417 4816 ```json
4418 4817 {
4419 4818 "fun": "readBaseStationTcpIp",
4420   - "baseId": 0,
  4819 + "baseId": 1,
  4820 + "baseSn":"2023031402",
4421 4821 "packetTag": "1"
4422 4822 }
4423 4823 ```
... ... @@ -4437,6 +4837,7 @@ params嚗
4437 4837 {
4438 4838 "fun": "writeBaseStationTcpIp",
4439 4839 "baseId": 1,
  4840 + "baseSn":"2023031402",
4440 4841 "params": {
4441 4842 "mac": "FF:FF:FF:FF:FF:FF",
4442 4843 "ip": "192.168.10.10",
... ... @@ -4463,6 +4864,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡cpIp
4463 4864 {
4464 4865 "fun": "baseStationTcpIp",
4465 4866 "baseId": 1,
  4867 + "baseSn":"2023031402",
4466 4868 "infos": {
4467 4869 "ip": "192.168.10.10",
4468 4870 "mac": "FF:FF:FF:FF:FF:FF",
... ... @@ -4486,7 +4888,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡cpIp
4486 4888  
4487 4889  
4488 4890 fun: "readWhiteList" //霂餌”
4489   -baseId: 0//
  4891 +baseId: 1//1~32 (敹◆蝡)
4490 4892  
4491 4893  
4492 4894 誘靘
... ... @@ -4494,7 +4896,8 @@ baseId: 0//
4494 4896 ```json
4495 4897 {
4496 4898 "fun": "readWhiteList",
4497   - "baseId": 0,
  4899 + "baseId": 1,
  4900 + "baseSn":"2023031402",
4498 4901 "params": {},
4499 4902 "packetTag": "1"
4500 4903 }
... ... @@ -4503,7 +4906,7 @@ baseId: 0//
4503 4906 霂餉
4504 4907
4505 4908 fun: "whiteList"
4506   -baseId: 1//蝡D
  4909 +baseId: 1 //1~32 (敹◆蝡)
4507 4910 infos:{}//
4508 4911  
4509 4912 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -4517,6 +4920,7 @@ infos:{}//
4517 4920 {
4518 4921 "fun": "whiteList",
4519 4922 "baseId": 1,
  4923 + "baseSn":"2023031402",
4520 4924 "infos": [{
4521 4925 "keySn": "2111120140",
4522 4926 "state": "0"
... ... @@ -4536,6 +4940,8 @@ infos:{}//
4536 4940  
4537 4941  
4538 4942  
  4943 +<font color="#dd0000" size="5">瘜冽窈蝡笆璅∪芋撘</font><br />
  4944 +
4539 4945  
4540 4946  
4541 4947 fun: "writeWhiteList" //”
... ... @@ -4552,7 +4958,8 @@ keySnList嚗]//N蝏憭200N
4552 4958 ```json
4553 4959 {
4554 4960 "fun": "writeWhiteList",
4555   - "baseId": 2,
  4961 + "baseId": 1,
  4962 + "baseSn":"2023031402",
4556 4963 "keySnList": [{
4557 4964 "keySn": "2111120140"
4558 4965 },
... ... @@ -4572,7 +4979,7 @@ keySnList嚗]//N蝏憭200N
4572 4979
4573 4980  
4574 4981 fun: "whiteList"
4575   -baseId: 1//蝡D
  4982 +baseId: 1//1~32 (敹◆蝡)
4576 4983 infos:{}//
4577 4984  
4578 4985 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -4586,6 +4993,7 @@ infos:{}//
4586 4993 {
4587 4994 "fun": "whiteList",
4588 4995 "baseId": 1,
  4996 + "baseSn":"2023031402",
4589 4997 "infos": [{
4590 4998 "keySn": "2111120140",
4591 4999 "state": "OK"
... ... @@ -4629,6 +5037,7 @@ params:{} //蝏笆鞊∴憛
4629 5037 {
4630 5038 "fun": "lockKeypad",
4631 5039 "baseId": 1,
  5040 + "baseSn":"2023031402",
4632 5041 "keySnList": [{
4633 5042 "keySn": "2111120140"
4634 5043 },
... ... @@ -4649,6 +5058,7 @@ params:{} //蝏笆鞊∴憛
4649 5058 {
4650 5059 "fun": "lockKeypad",
4651 5060 "baseId": 1,
  5061 + "baseSn":"2023031402",
4652 5062 "infos": [{
4653 5063 "keySn": "1837454011",
4654 5064 "state": "OK"
... ... @@ -4671,7 +5081,7 @@ params:{} //蝏笆鞊∴憛
4671 5081 #### 蝡圾
4672 5082  
4673 5083 fun: "unlockKeypad" //閫
4674   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內蝡)
  5084 +baseId: 1//1~32 (敹◆蝡)
4675 5085 params:{} //蝏笆鞊∴憛
4676 5086  
4677 5087 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -4686,6 +5096,7 @@ params:{} //蝏笆鞊∴憛
4686 5096 {
4687 5097 "fun": "unlockKeypad",
4688 5098 "baseId": 1,
  5099 + "baseSn":"2023031402",
4689 5100 "keySnList": [{
4690 5101 "keySn": "2111120140"
4691 5102 },
... ... @@ -4706,6 +5117,7 @@ params:{} //蝏笆鞊∴憛
4706 5117 {
4707 5118 "fun": "unlockKeypad",
4708 5119 "baseId": 1,
  5120 + "baseSn":"2023031402",
4709 5121 "infos": [{
4710 5122 "keySn": "2111120140",
4711 5123 "state": "OK"
... ... @@ -4740,6 +5152,7 @@ keySnList:[ &quot;keySn&quot;:&quot;2111120140&quot;] //”銝銝箇征
4740 5152 {
4741 5153 "fun": "addWhiteList",
4742 5154 "baseId": 1,
  5155 + "baseSn":"2023031402",
4743 5156 "keySnList": [{
4744 5157 "keySn": "2111120140"
4745 5158 }],
... ... @@ -4761,6 +5174,7 @@ infos:{}//
4761 5174 {
4762 5175 "fun": "whiteList",
4763 5176 "baseId": 1,
  5177 + "baseSn":"2023031402",
4764 5178 "infos": {
4765 5179 "keySn": "1837454012",
4766 5180 "state": "OK"
... ... @@ -4787,7 +5201,8 @@ keySnList:[ &quot;keySn&quot;:&quot;2111120140&quot;] //”銝銝箇征
4787 5201 ```json
4788 5202 {
4789 5203 "fun": "delWhiteList",
4790   - "baseId": 0,
  5204 + "baseId": 1,
  5205 + "baseSn":"2023031402",
4791 5206 "keySnList": [{
4792 5207 "keySn": "2111120140"
4793 5208 }],
... ... @@ -4809,6 +5224,7 @@ infos:{}//
4809 5224 {
4810 5225 "fun": "delWhiteList",
4811 5226 "baseId": 1,
  5227 + "baseSn":"2023031402",
4812 5228 "packetTag": "1",
4813 5229 "infos": {
4814 5230 "keySn": "1837454012",
... ... @@ -4836,6 +5252,7 @@ params:{} //
4836 5252 {
4837 5253 "fun": "clearWhiteList",
4838 5254 "baseId": 1,
  5255 + "baseSn":"2023031402",
4839 5256 "packetTag": "1"
4840 5257 }
4841 5258 ```
... ... @@ -4852,6 +5269,7 @@ infos:{}//
4852 5269 {
4853 5270 "fun": "clearWhiteList",
4854 5271 "baseId": 1,
  5272 + "baseSn":"2023031402",
4855 5273 "packetTag": "1",
4856 5274 "infos": {
4857 5275 "state": "OK"
... ... @@ -4870,7 +5288,7 @@ infos:{}//
4870 5288
4871 5289  
4872 5290 fun: "readKeypadAutoPowerOffLevel" //霂駁蝑漣
4873   -baseId: 0//0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  5291 +baseId: 1//1~32 (敹◆蝡)
4874 5292 params嚗"value":0}//
4875 5293  
4876 5294 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -4881,7 +5299,8 @@ params嚗&quot;value&quot;:0}//
4881 5299 ```json
4882 5300 {
4883 5301 "fun": "readKeypadAutoPowerOffLevel",
4884   - "baseId": 0,
  5302 + "baseId": 1,
  5303 + "baseSn":"2023031402",
4885 5304 "packetTag": "1"
4886 5305 }
4887 5306 ```
... ... @@ -4898,6 +5317,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//
4898 5317 {
4899 5318 "fun": "writeKeypadAutoPowerOffLevel",
4900 5319 "baseId": 1,
  5320 + "baseSn":"2023031402",
4901 5321 "params": {
4902 5322 "value": "0"
4903 5323 },
... ... @@ -4916,6 +5336,7 @@ infos:{&quot;value&quot;:&quot;0&quot;}//餈蝑漣
4916 5336 {
4917 5337 "fun": "keypadAutoPowerOffLevel",
4918 5338 "baseId": 1,
  5339 + "baseSn":"2023031402",
4919 5340 "infos": {
4920 5341 "value": "0"
4921 5342 },
... ... @@ -4932,14 +5353,15 @@ infos:{&quot;value&quot;:&quot;0&quot;}//餈蝑漣
4932 5353
4933 5354  
4934 5355 fun: "readBaseStationBaseConfig" //霂餃蝡aseConfig
4935   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  5356 +baseId: 1//1~32 (敹◆蝡)
4936 5357 params嚗}//銝‵
4937 5358  
4938 5359 誘靘
4939 5360 ```json
4940 5361 {
4941 5362 "fun": "readBaseStationBaseConfig",
4942   - "baseId": 0,
  5363 + "baseId": 1,
  5364 + "baseSn":"2023031402",
4943 5365 "packetTag": "1"
4944 5366 }
4945 5367 ```
... ... @@ -4963,6 +5385,7 @@ params嚗}//
4963 5385 {
4964 5386 "fun": "writeBaseStationBaseConfig",
4965 5387 "baseId": 1,
  5388 + "baseSn":"2023031402",
4966 5389 "params": {
4967 5390 "bootVibraton": "1",
4968 5391 "voteVibraton": "1",
... ... @@ -4984,6 +5407,7 @@ infos:{ }//餈蝡
4984 5407 {
4985 5408 "fun": "baseStationBaseConfig",
4986 5409 "baseId": 1,
  5410 + "baseSn":"2023031402",
4987 5411 "infos": {
4988 5412 "bootVibraton": "1",
4989 5413 "voteVibraton": "1",
... ... @@ -5002,14 +5426,15 @@ infos:{ }//餈蝡
5002 5426
5003 5427  
5004 5428 fun: "readBaseStationAES" //霂餃蝡ES
5005   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  5429 +baseId: 1//1~32 (敹◆蝡)
5006 5430 params嚗}//銝‵
5007 5431  
5008 5432 誘靘
5009 5433 ```json
5010 5434 {
5011 5435 "fun":"readBaseStationAES",
5012   - "baseId":0,
  5436 + "baseId":1,
  5437 + "baseSn":"2023031402",
5013 5438 "packetTag":"1"
5014 5439 }
5015 5440 ```
... ... @@ -5030,6 +5455,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//
5030 5455 {
5031 5456 "fun":"writeBaseStationAES",
5032 5457 "baseId":1,
  5458 + "baseSn":"2023031402",
5033 5459 "packetTag":"1"
5034 5460 }
5035 5461 ```
... ... @@ -5045,6 +5471,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡ES
5045 5471 {
5046 5472 "fun": "baseStationAES",
5047 5473 "baseId": 1,
  5474 + "baseSn":"2023031402",
5048 5475 "infos": {
5049 5476 "value": "0"
5050 5477 },
... ... @@ -5055,7 +5482,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡ES
5055 5482  
5056 5483  
5057 5484 fun: "copyBaseStationAES" //蝡ES
5058   -baseId: 0
  5485 +baseId: 1//1~32 (敹◆蝡)
5059 5486 params嚗}//
5060 5487  
5061 5488 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -5069,6 +5496,7 @@ params嚗}//
5069 5496 {
5070 5497 "fun": "copyBaseStationAES",
5071 5498 "baseId": 0,
  5499 + "baseSn":"2023031402",
5072 5500 "params": {
5073 5501 "destBaseID": "2",
5074 5502 "sourceBaseID": "1"
... ... @@ -5088,6 +5516,7 @@ infos:{&quot;value&quot;:&quot;OK&quot;}//餈
5088 5516 {
5089 5517 "fun": "baseStationAES",
5090 5518 "baseId": 1,
  5519 + "baseSn":"2023031402",
5091 5520 "infos": {
5092 5521 "value": "OK"
5093 5522 },
... ... @@ -5140,6 +5569,7 @@ params嚗} //
5140 5569 {
5141 5570 "fun": "writeKeypadDevice",
5142 5571 "baseId": 1,
  5572 + "baseSn":"2023031402",
5143 5573 "params": {
5144 5574 "ledTimes": "3",
5145 5575 "ledOnTime": "1",
... ... @@ -5169,7 +5599,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
5169 5599 ```json
5170 5600 {
5171 5601 "fun": "writeKeypadDevice",
5172   - "baseId": 0,
  5602 + "baseId": 1,
  5603 + "baseSn":"2023031402",
5173 5604 "infos": {
5174 5605 "keySn": "0000000000",
5175 5606 "state": "OK"
... ... @@ -5183,6 +5614,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
5183 5614 ```json
5184 5615 {
5185 5616 "fun": "writeKeypadDevice",
  5617 + "baseId": 1,
  5618 + "baseSn":"2023031402",
5186 5619 "keySnList": [{
5187 5620 "keySn": "0007899478"
5188 5621 }],
... ... @@ -5213,9 +5646,10 @@ infos:{}//蝏笆鞊,
5213 5646 誘靘
5214 5647  
5215 5648 ```json
5216   -{
5217   - "baseId": 3,
  5649 +{
5218 5650 "fun": "writeKeypadDevice",
  5651 + "baseId": 3,
  5652 + "baseSn":"2023031402",
5219 5653 "infos": {
5220 5654 "keySn": "0007899478",
5221 5655 "state": "OK"
... ... @@ -5235,7 +5669,7 @@ infos:{}//蝏笆鞊,
5235 5669
5236 5670  
5237 5671 fun: "readKeypadFeedbackMode" //霂駁芋撘
5238   -baseId: 0//0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  5672 +baseId: 1//1~32 (敹◆蝡)
5239 5673 params嚗}//霂餃銝閬
5240 5674  
5241 5675 誘靘
... ... @@ -5243,7 +5677,8 @@ params嚗}//霂餃銝閬
5243 5677 ```json
5244 5678 {
5245 5679 "fun": "readKeypadFeedbackMode",
5246   - "baseId": 0,
  5680 + "baseId": 1,
  5681 + "baseSn":"2023031402",
5247 5682 "packetTag": "1"
5248 5683 }
5249 5684 ```
... ... @@ -5265,7 +5700,8 @@ params嚗&quot;mode&quot;:&quot;1&quot;, &quot;value&quot;:&quot;4&quot;}//
5265 5700 ```json
5266 5701 {
5267 5702 "fun": "writeKeypadFeedbackMode",
5268   - "baseId": 0,
  5703 + "baseId": 1,
  5704 + "baseSn":"2023031402",
5269 5705 "params": {
5270 5706 "mode": "1",
5271 5707 "value": "4"
... ... @@ -5291,6 +5727,7 @@ infos:{ &quot;mode&quot;:&quot;1&quot;, &quot;value&quot;:&quot;4&quot;}//餈芋撘
5291 5727 {
5292 5728 "fun": "keypadFeedbackMode",
5293 5729 "baseId": 1,
  5730 + "baseSn":"2023031402",
5294 5731 "infos": {
5295 5732 "mode": "1",
5296 5733 "value": "4"
... ... @@ -5319,8 +5756,9 @@ infos:{ &quot;keySn&quot;:&quot;2307269906&quot;, &quot;keyValue&quot;:&quot;A&quot;}//餈芋撘
5319 5756  
5320 5757 ```json
5321 5758 {
5322   - "baseId": 1,
5323 5759 "fun": "immediateFeedback",
  5760 + "baseId": 1,
  5761 + "baseSn":"2023031402",
5324 5762 "infos": {
5325 5763 "keySn": "2307269906",
5326 5764 "keyValue": "A"
... ... @@ -5354,6 +5792,7 @@ infos:{ &quot;keySn&quot;:&quot;1479824643&quot;}//餈芋撘
5354 5792 {
5355 5793 "fun": "keyboardOnlineOne",
5356 5794 "baseId": 1,
  5795 + "baseSn":"2023031402",
5357 5796 "infos": {
5358 5797 "keySn": "1479824643"
5359 5798 },
... ... @@ -5386,6 +5825,7 @@ infos:{ &quot;hModel&quot;: &quot;67&quot;,&quot;keySn&quot;:&quot;1479824643&quot;,&quot;keyValue&quot;:&quot;0&quot;,&quot;ver&quot;:&quot;1.0.0&quot;,&quot;volt&quot;:
5386 5825 {
5387 5826 "fun": "KeyboardHeartbeat",
5388 5827 "baseId": 1,
  5828 + "baseSn":"2023031402",
5389 5829 "infos": {
5390 5830 "hModel": "67",
5391 5831 "keySn": "1479824643",
... ... @@ -5418,6 +5858,7 @@ params嚗}//
5418 5858 {
5419 5859 "fun": "remoteKeyShutdown",
5420 5860 "baseId": 1,
  5861 + "baseSn":"2023031402",
5421 5862 "params": [{
5422 5863 "keySn": "1837454011"
5423 5864 }],
... ... @@ -5436,6 +5877,7 @@ infos:{&quot;keySn&quot;:&quot;1837454011&quot;,&quot;state&quot;:&quot;OK&quot;}//
5436 5877 {
5437 5878 "fun": "remoteKeyShutdown",
5438 5879 "baseId": 1,
  5880 + "baseSn":"2023031402",
5439 5881 "infos": {
5440 5882 "keySn": "1837454011",
5441 5883 "state": "OK"
... ... @@ -5451,7 +5893,7 @@ infos:{&quot;keySn&quot;:&quot;1837454011&quot;,&quot;state&quot;:&quot;OK&quot;}//
5451 5893 | B200-2.4G+S6 | ||
5452 5894 | B200-5.8G+T2 | ||
5453 5895  
5454   -####
  5896 +#### 雿輻]
5455 5897  
5456 5898  
5457 5899  
... ... @@ -5461,7 +5903,7 @@ params嚗&quot;value&quot;} //
5461 5903  
5462 5904 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
5463 5905 | --- | --- | --- |
5464   -|baseId|蝡D|0-32<br> 0:蝡恕慝
  5906 +|baseId|蝡D|1-32|
5465 5907 |value|憸0 嚗10蝘恕潘
5466 5908  
5467 5909  
... ... @@ -5470,7 +5912,8 @@ params嚗&quot;value&quot;} //
5470 5912 ```json
5471 5913 {
5472 5914 "fun": "writeKeyboardPauseSleep",
5473   - "baseId": 0,
  5915 + "baseId": 1,
  5916 + "baseSn":"2023031402",
5474 5917 "params": {
5475 5918 "value": "0"
5476 5919 },
... ... @@ -5492,6 +5935,7 @@ infos:{&quot;value&quot;:&quot;0&quot;}//10蝘
5492 5935 {
5493 5936 "fun": "writeKeyboardPauseSleep",
5494 5937 "baseId": 1,
  5938 + "baseSn":"2023031402",
5495 5939 "infos": {
5496 5940 "value": "0"
5497 5941 },
... ... @@ -5524,7 +5968,8 @@ params嚗} // 蝏笆鞊,撖寡情銝剔恕潔蛹蝛箏泵銝
5524 5968 ```json
5525 5969 {
5526 5970 "fun": "writeKeyMessage",
5527   - "baseId": 0,
  5971 + "baseId": 1,
  5972 + "baseSn":"2023031402",
5528 5973 "params": {
5529 5974 "txt": "瘨"
5530 5975 },
... ... @@ -5542,7 +5987,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
5542 5987 ```json
5543 5988 {
5544 5989 "fun": "writeKeyMessage",
5545   - "baseId": 0,
  5990 + "baseId": 1,
  5991 + "baseSn":"2023031402",
5546 5992 "infos": {
5547 5993 "keySn": "0000000000",
5548 5994 "state": "OK"
... ... @@ -5556,6 +6002,8 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
5556 6002 ```json
5557 6003 {
5558 6004 "fun": "writeKeyMessage",
  6005 + "baseId": 1,
  6006 + "baseSn":"2023031402",
5559 6007 "keySnList": [{
5560 6008 "keySn": "0007899478"
5561 6009 }],
... ... @@ -5575,9 +6023,10 @@ infos:{}//蝏笆鞊,
5575 6023 誘靘
5576 6024  
5577 6025 ```json
5578   -{
5579   - "baseId": 3,
  6026 +{
5580 6027 "fun": "writeKeyMessage",
  6028 + "baseId": 1,
  6029 + "baseSn":"2023031402",
5581 6030 "infos": {
5582 6031 "keySn": "0007899478",
5583 6032 "state": "OK"
... ... @@ -5598,14 +6047,15 @@ infos:{}//蝏笆鞊,
5598 6047
5599 6048  
5600 6049 fun: "readBaseStationLanguage" //霂餃蝡祗閮
5601   -baseId: 0// 0~32 (誘銝aseID嚗恕銝0銵函內霂餃蝡)
  6050 +baseId: 1//1~32 (敹◆蝡)
5602 6051 params嚗}//銝‵
5603 6052  
5604 6053 誘靘
5605 6054 ```json
5606 6055 {
5607   - "fun": "readBaseStationLanguage",
5608   - "baseId": 0,
  6056 + "fun": "readBaseStationLanguage",
  6057 + "baseId": 1,
  6058 + "baseSn":"2023031402",
5609 6059 "packetTag": "1"
5610 6060 }
5611 6061 ```
... ... @@ -5629,6 +6079,7 @@ params嚗&quot;value&quot;:&quot;0&quot;}//
5629 6079 {
5630 6080 "fun": "writeBaseStationLanguage",
5631 6081 "baseId": 1,
  6082 + "baseSn":"2023031402",
5632 6083 "params": {
5633 6084 "value": "0"
5634 6085 },
... ... @@ -5653,6 +6104,7 @@ infos:{&quot;value&quot;:&quot;1&quot;}//餈蝡祗閮
5653 6104 {
5654 6105 "fun": "baseStationLanguage",
5655 6106 "baseId": 1,
  6107 + "baseSn":"2023031402",
5656 6108 "infos": {
5657 6109 "value": "0"
5658 6110 },
... ... @@ -5682,6 +6134,8 @@ params嚗} // 蝏笆鞊,撖寡情銝剔恕潔蛹蝛箏泵銝
5682 6134 ```json
5683 6135 {
5684 6136 "fun": "writeKeyFSN",
  6137 + "baseId": 3,
  6138 + "baseSn":"2023031402",
5685 6139 "params": {
5686 6140 "keySnList": [{
5687 6141 "keySnOld": "0007899478",
... ... @@ -5706,9 +6160,10 @@ infos:{}//蝏笆鞊,
5706 6160 誘靘
5707 6161  
5708 6162 ```json
5709   -{
5710   - "baseId": 3,
  6163 +{
5711 6164 "fun": "writeKeyFSN",
  6165 + "baseId": 3,
  6166 + "baseSn":"2023031402",
5712 6167 "infos": {
5713 6168 "keySn": "0007899478",
5714 6169 "state": "OK"
... ... @@ -5744,6 +6199,7 @@ params:{}
5744 6199 {
5745 6200 "fun": "writeKeypadFreeTitle",
5746 6201 "baseId": 1,
  6202 + "baseSn":"2023031402",
5747 6203 "params": {
5748 6204 "title": "霂瑁恕霈"
5749 6205 },
... ... @@ -5767,7 +6223,8 @@ infos:{}//
5767 6223 ```json
5768 6224 {
5769 6225 "fun": "writeKeypadFreeTitle",
5770   - "baseId": 0,
  6226 + "baseId": 1,
  6227 + "baseSn":"2023031402",
5771 6228 "infos": {
5772 6229 "state": "OK"
5773 6230 },
... ... @@ -5789,7 +6246,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5789 6246  
5790 6247 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
5791 6248 | --- | --- | --- |
5792   -| keySn| n| 蝛箏蛹蝥輸隞蝏潭
  6249 +| keySn| n| 銝銝箇征|
5793 6250 | scoreMode| 璅∪1:皜<br>2:摮泵蝷(暺恕)<br>3:鈭蝷<br>4:敹蝷暨S6|
5794 6251 | scoreValue| 慝scoreMode == 1,甇文. <br>scoreMode == 2,8銝芸泵摨. <br>scoreMode == 3,0~6嚗2銝芸銵函內1銝芯憭3銝. <br> scoreMode == 4,0~6嚗2銝芸銵函內1銝芰敹憭3銝 [S6|
5795 6252 |tipText|內| 憭8銝芣16銝芸泵嚗,洵鈭蝷漏
... ... @@ -5802,6 +6259,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5802 6259 {
5803 6260 "fun": "writeKeypadCustomInfo",
5804 6261 "baseId": 1,
  6262 + "baseSn":"2023031402",
5805 6263 "params": [{
5806 6264 "keySn": "1479824643",
5807 6265 "scoreMode": "2",
... ... @@ -5831,7 +6289,8 @@ infos:{}//蝏笆鞊
5831 6289 ```json
5832 6290 {
5833 6291 "fun": "writeKeypadCustomInfo",
5834   - "baseId": 0,
  6292 + "baseId": 1,
  6293 + "baseSn":"2023031402",
5835 6294 "infos": [{
5836 6295 "keySn": "1479824643",
5837 6296 "state": "OK"
... ... @@ -5840,25 +6299,6 @@ infos:{}//蝏笆鞊
5840 6299 }
5841 6300 ```
5842 6301  
5843   -
5844   -
5845   -fun: "writeKeypadCustomInfo" //靽⊥
5846   -baseId:0 //誘蝡D
5847   -infos:{"state":"OK"}//餈,蛹OK
5848   -
5849   -
5850   -誘靘
5851   -
5852   -```json
5853   -{
5854   - "fun": "writeKeypadCustomInfo",
5855   - "baseId": 0,
5856   - "infos": {
5857   - "state": "OK"
5858   - },
5859   - "packetTag": "1"
5860   -}
5861   -```
5862 6302  
5863 6303 挽憭秩
5864 6304  
... ... @@ -5879,7 +6319,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5879 6319  
5880 6320 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
5881 6321 | --- | --- | --- |
5882   -|keySn|N|蝛箏蛹蝥輸隞蝏潭
  6322 +|keySn|N|銝銝箇征|
5883 6323 |userName|憪憭24銝芣48銝芸泵嚗,椰銝蝷漏
5884 6324  
5885 6325 誘靘
... ... @@ -5888,6 +6328,7 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5888 6328 {
5889 6329 "fun": "writeKeypadUserName",
5890 6330 "baseId": 1,
  6331 + "baseSn":"2023031402",
5891 6332 "params": [{
5892 6333 "keySn": "1479824643",
5893 6334 "userName": "撘"
... ... @@ -5914,7 +6355,8 @@ infos:{}//蝏笆鞊
5914 6355 ```json
5915 6356 {
5916 6357 "fun": "writeKeypadUserName",
5917   - "baseId": 0,
  6358 + "baseId": 1,
  6359 + "baseSn":"2023031402",
5918 6360 "infos": {
5919 6361 "keySn": "1479824643",
5920 6362 "state": "OK"
... ... @@ -5923,25 +6365,6 @@ infos:{}//蝏笆鞊
5923 6365 }
5924 6366 ```
5925 6367  
5926   -
5927   -
5928   -fun: "writeKeypadUserName" //靽⊥
5929   -baseId:0 //誘蝡D
5930   -infos:{"state":"OK"}//餈,蛹OK
5931   -
5932   -
5933   -誘靘
5934   -
5935   -```json
5936   -{
5937   - "fun": "writeKeypadUserName",
5938   - "baseId": 0,
5939   - "infos": {
5940   - "state": "OK"
5941   - },
5942   - "packetTag": "1"
5943   -}
5944   -```
5945 6368  
5946 6369 挽憭秩
5947 6370  
... ... @@ -5968,7 +6391,8 @@ params嚗}//蝏笆鞊,摮挾銝‵活潦
5968 6391 ```json
5969 6392 {
5970 6393 "fun": "writeOneKeypadUserName",
5971   - "baseId": 0,
  6394 + "baseId": 1,
  6395 + "baseSn":"2023031402",
5972 6396 "params": [{
5973 6397 "keySn": "1479824643",
5974 6398 "value": "撘"
... ... @@ -5995,6 +6419,7 @@ infos:{}//蝏笆鞊
5995 6419 {
5996 6420 "fun": "oneKeypadUserName",
5997 6421 "baseId": 1,
  6422 + "baseSn":"2023031402",
5998 6423 "infos": {
5999 6424 "keySn": "1479824643",
6000 6425 "value": "撘"
... ... @@ -6028,7 +6453,8 @@ params嚗}
6028 6453 ```json
6029 6454 {
6030 6455 "fun": "writeKeypadFunPromptPreset",
6031   - "baseId": 0,
  6456 + "baseId": 1,
  6457 + "baseSn":"2023031402",
6032 6458 "params": {
6033 6459 "mode": "0",
6034 6460 "type": "3",
... ... @@ -6044,7 +6470,7 @@ params嚗}
6044 6470  
6045 6471  
6046 6472 fun: "writeKeypadFunPromptPreset" //靽⊥
6047   -baseId:0 //誘蝡D
  6473 +baseId: 1//1~32 (敹◆蝡)
6048 6474 infos:{"state":"OK"}//餈,蛹OK
6049 6475  
6050 6476 | **Json摮挾** | **摮挾銋** | **韏澆銋** |
... ... @@ -6058,6 +6484,7 @@ infos:{&quot;state&quot;:&quot;OK&quot;}//餈,蛹OK
6058 6484 {
6059 6485 "fun": "writeKeypadFunPromptPreset",
6060 6486 "baseId": 1,
  6487 + "baseSn":"2023031402",
6061 6488 "infos": {
6062 6489 "state": "OK"
6063 6490 },
... ... @@ -6096,6 +6523,7 @@ infos:{} //蝏笆鞊
6096 6523 {
6097 6524 "fun": "keypadOnLine",
6098 6525 "baseId": 0,
  6526 + "baseSn":"2023031402",
6099 6527 "infos": [{
6100 6528 "baseId": "1",
6101 6529 "keySn": "1837454011",
... ... @@ -6120,7 +6548,9 @@ infos:{} //蝏笆鞊
6120 6548  
6121 6549 ### 銝餃蝥蹂縑
6122 6550  
6123   -摨蝔閬嚗銝餃蝥輸縑
  6551 +摨蝔閬嚗銝餃蝡蝥輸縑
  6552 +
  6553 +<font color="#dd0000" size="5">瘜冽窈銝撘巨銝雿輻</font><br />
6124 6554  
6125 6555  
6126 6556 fun: "getKeypadOnLine" //蝥輻
... ... @@ -6135,6 +6565,7 @@ params:{
6135 6565 {
6136 6566 "fun": "getKeypadOnLine",
6137 6567 "baseId": 0,
  6568 + "baseSn":"2023031402",
6138 6569 "params": {
6139 6570 "times": 2
6140 6571 },
... ... @@ -6266,7 +6697,10 @@ infos:{ &quot;funId&quot;:&quot;F0001&quot;,&quot;code&quot;:&quot;10002&quot;}//
6266 6697 |20002|銝
6267 6698 |20003|蝡D銝箄嚗隞乩D嚗恕銝0|
6268 6699 |20004|秤|
  6700 +|20005|蝡
6269 6701 |30001|銝撖孵N|
  6702 +|30002|銝撖孵aseID|
  6703 +|30003|蝡N銝撖孵aseID|
6270 6704 |40001|漣銝芸蝡蝥糕
6271 6705 |50001|甇文敹◆蝡D|
6272 6706 |60001|甇文敹◆N|
... ... @@ -6297,7 +6731,7 @@ infos:{ &quot;funId&quot;:&quot;F0001&quot;,&quot;code&quot;:&quot;10002&quot;}//
6297 6731 |F0022|霂餃蝡挽憭F
6298 6732 |F0023|蝡挽憭F
6299 6733 |F0024|蝡挽憭笆璅∪蝡妍嚗摰
6300   -|F0025|
  6734 +|F0025|蝡挽憭漣隞閏
6301 6735 |F0026|霂餃蝡翰笆雿芋撘
6302 6736 |F0027|蝡翰笆雿芋撘
6303 6737 |F0028|霂駁敶蝷箏捂[S6]|
... ...
通讯协议-教育新版-基站部分.md
... ... @@ -1996,16 +1996,16 @@ S5,电脑通知基站退出下载,基站通知所有(包括失败的)键
1996 1996 | 6 | ~~NC~~ | (DOWNTYPE) 原指令漏了 |
1997 1997 | 7 | DCMD | 模式 1进入下载; 0退出下载; |
1998 1998 ||| (以下数据在下载键盘固件时候有效) |
1999   -| 8 | HVER | 键盘硬件版本 |
2000   -| 9-11 | SVER | 键盘软件版本,3字节,10进制数字<br>一定要和固件内部版本号相同,便于上位机软件好对比版本,知道键盘升级成功 |
2001   -| 12-13 | CRC-16 | 固件校验字 |
2002   -| 14-17 | FILELEN | 固件文件大小,4字节,高位在前 |
2003   -| 18 | <font color="#FF0000">HVER2</font> | 键盘硬件版本 |
2004   -| 19-21 | <font color="#FF0000">SVER2</font> | 键盘软件版本,3字节,10进制数字<br>一定要和固件内部版本号相同,便于上位机软件好对比版本,知道键盘升级成功 |
2005   -| 22-23 | <font color="#FF0000">CRC2-16</font> | 固件校验字 |
2006   -| 24-27 | <font color="#FF0000">FILELEN2</font> | 固件文件大小,4字节,高位在前 |
2007   -| 28 | <font color="#FF0000">BR1</font>| BR1 硬件分支号 |
2008   -| 29 | <font color="#FF0000">BR2</font> | BR2 硬件分支号 |
  1999 +| 8 | a_HVER | 键盘硬件版本 |
  2000 +| 9-11 | a_SVER | 键盘软件版本,3字节,10进制数字<br>一定要和固件内部版本号相同,便于上位机软件好对比版本,知道键盘升级成功 |
  2001 +| 12-13 | a_CRC-16 | 固件校验字 |
  2002 +| 14-17 | a_FILELEN | 固件文件大小,4字节,高位在前 |
  2003 +| 18 | <font color="#FF0000">a_BR</font>| BR1 硬件分支号 |
  2004 +| 19 | <font color="#FF0000">b_HVER</font> | 键盘硬件版本 |
  2005 +| 20-22 | <font color="#FF0000">b_SVER</font> | 键盘软件版本,3字节,10进制数字<br>一定要和固件内部版本号相同,便于上位机软件好对比版本,知道键盘升级成功 |
  2006 +| 23-24 | <font color="#FF0000">b_CRC-16</font> | 固件校验字 |
  2007 +| 25-28 | <font color="#FF0000">b_FILELEN</font> | 固件文件大小,4字节,高位在前 |
  2008 +| 29 | <font color="#FF0000">b_BR</font> | BR2 硬件分支号 |
2009 2009  
2010 2010  
2011 2011  
... ... @@ -2672,10 +2672,9 @@ step3:sdk询问 数据是否接收正确;基站回复,如果不正确 sdk重
2672 2672 | 3 | CMDTYPE | 基站管理命令类型41 sdk下载多包 |
2673 2673 | 4 | type | 1 要下载的数据信息 |
2674 2674 | 5 | DATA-type | 1:基站固件升级 <br>2:键盘固件升级; <br>3:快速下发; <br>4:广播 |
2675   -| 6-9 | DATA_total| 数据总字节数 |
2676   -| 10-11 | DATA crc | 数据crc |
2677   -| 12-13 | byte per PACK | 每包数据最大字节长度:64 |
2678   -| 14-15 | PACK-max | 总包数 |
  2675 +| 6-9 | DATA_total| 数据总字节数 高位在前 |
  2676 +| 10-11 | DATA crc | 数据crc 高位在前|
  2677 +| 12-13 | byte per PACK |高位在前 每包数据最大字节长度:64... |
2679 2678 | other | default | |
2680 2679 基站应答:
2681 2680 | **字节** | **标识符** | **描述** |
... ... @@ -2685,9 +2684,9 @@ step3:sdk询问 数据是否接收正确;基站回复,如果不正确 sdk重
2685 2684 | 3 | CMDTYPE | 基站管理命令类型41 sdk下载多包 |
2686 2685 | 4 | type | 1 要下载的数据信息 |
2687 2686 | 5 | DATA-type | 1:基站固件升级 <br>2:键盘固件升级; <br>3:快速下发; <br>4:广播 |
2688   -| 6-9 | DATA_total| 数据总字节数 |
2689   -| 10-11 | DATA crc | 数据crc |
2690   -| 12-13 | byte per PACK | 每包数据最大字节长度:64 |
  2687 +| 6-9 | DATA_total| 数据总字节数 高位在前|
  2688 +| 10-11 | DATA crc | 数据crc 高位在前|
  2689 +| 12-13 | byte per PACK |高位在前 每包数据最大字节长度:64 |
2691 2690 | other | default | |
2692 2691  
2693 2692 ### 5.9.2 sdk连续发送N包纯数据包,基站无需回复
... ... @@ -2700,9 +2699,9 @@ step3:sdk询问 数据是否接收正确;基站回复,如果不正确 sdk重
2700 2699 | 3 | CMDTYPE | 基站管理命令类型41 sdk下载多包 |
2701 2700 | 4 | type | 2 询问基站 |
2702 2701 | 5 | DATA-type | 1:基站固件升级 <br>2:键盘固件升级; <br>3:快速下发; <br>4:广播 |
2703   -| 6-9 | DATA_total| 数据总字节数 |
2704   -| 10-11 | DATA crc | 数据crc |
2705   -| 12-13 | byte per PACK | 每包数据最大字节长度:64 |
  2702 +| 6-9 | DATA_total| 数据总字节数 高位在前|
  2703 +| 10-11 | DATA crc | 数据crc 高位在前|
  2704 +| 12-13 | byte per PACK |高位在前 每包数据最大字节长度:64 |
2706 2705 | other | default | |
2707 2706 基站应答:
2708 2707 | **字节** | **标识符** | **描述** |
... ... @@ -2712,9 +2711,9 @@ step3:sdk询问 数据是否接收正确;基站回复,如果不正确 sdk重
2712 2711 | 3 | CMDTYPE | 基站管理命令类型41 sdk下载多包 |
2713 2712 | 4 | type | 2 询问基站 |
2714 2713 | 5 | DATA-type | 1:基站固件升级 <br>2:键盘固件升级; <br>3:快速下发; <br>4:广播 |
2715   -| 6-9 | DATA_total| 数据总字节数 |
2716   -| 10-11 | DATA crc | 数据crc |
2717   -| 12-13 | byte per PACK | 每包数据最大字节长度:64 |
  2714 +| 6-9 | DATA_total| 数据总字节数 高位在前|
  2715 +| 10-11 | DATA crc | 数据crc 高位在前|
  2716 +| 12-13 | byte per PACK |高位在前 每包数据最大字节长度:64 |
2718 2717 | 14 | result | 1-正确;0-错误 |
2719 2718 | other | default | |
2720 2719  
... ...
通讯协议-教育新版-表决器部分.md
... ... @@ -96,7 +96,7 @@
96 96 | 10 | REPMODE | 嚗芋撘<br>1- 銝<br>2- 蝛粹<br>3- 蝑<br>4-
97 97 | 11 | REPTIME | 0.5s |
98 98 | 12 | KEYREP | 雿4雿芋撘<br>0- 銝<br>1- 蝷<br>2- 摮芋撘蒂蝑漣妍蝷綽憭5蝑漣<br>3- 摮芋撘蒂蝑漣妍蝷<br>4-芋撘捆<br><br>擃4雿漣蝐餃嚗璅∪23<br>0-摰漣1<br>1-摰漣2<br>2-摰1嚗憭5蝑漣嚗閬蝸
99   -| 13 | KEYMAX | 憭扳<br>靘4嚗銋BCD |
  99 +| 13 | KEYMAX | 憭扳<br>靘4嚗銋BCD 嚗EYMAX 嚗 20 EYMAX-20嚗蛹憿箏倌憸銝 |
100 100 | 14 | ATTRIB_EX1 | Bit0-1 霂剛 ~~00銝剜 01~<br> 00 暺恕嚗挽蝵 01銝剜 02 |
101 101 | ..24 |||
102 102 <br>
... ... @@ -118,7 +118,7 @@
118 118 | 5 | MODE | =1嚗倌璅∪ |
119 119 | 6 | MODE1 | 1 蝑曉璅∪鈭鈭箸嚗蝑曉鈭<br>2 User-ID倌倌嚗摮<br> ~~3 蝑曉撣吁N靽⊥~~ <br>3ID蝑曉嚗蒂 ~~~~ 潦<br>嚗234蝏銝摻ID蝑曉嚗蒂UID潘 |
120 120 | 7 | MODE2 | 0 銝捂靽格嚗活<br>1 捂靽格嚗甈⊥ |
121   -| 8 | KEYC | >0蝑蝑曉 |
  121 +| 8 | KEYC | >0蝑蝑曉 1-9靘活銝箸1-910011UP12Down13ok14Esc15Menu|
122 122 | 9-24 | | 潭瓷 |
123 123  
124 124 ### 2.2.4 銵典璅∪
... ... @@ -492,8 +492,8 @@ SDK迫瘚僎銝
492 492 | 11 | OK_STATUS | 0 甇虜瘚<br>1 撘箏瘚 敶餈K漱敶蝏祗嚗蝙敹歲漱 |
493 493 | 12-13 | VOLUME | 霂剝韐券<br>2摮靽∪撟漲潔之鈭k |
494 494 | 14-15 | NOISE | 霂剝韐券<br>2摮靽∪摨銝k |
495   -| 12-24 | | 潭瓷 |
496   -
  495 +| 16 | Buttonmode | 撘 0 暺恕 1 敶 |
  496 +| 17-24 | | 潭瓷 |
497 497 ### 2.2.16
498 498  
499 499 | **摮** | **泵** | **膩** |
... ... @@ -666,7 +666,8 @@ T2鈭巨靽⊥隞64摮隞亥摰N
666 666 | 2 | MSGTYPE | 靽⊥蝐餃摰圾撘<br>1 蝡縑 |
667 667 | 3-6 | SN | 閬誘N嚗4摮 |
668 668 | 7 | FREQ | 蝡蜓憸嚗歲蝡蜓憸隞<br>嚗笆隞仍MD4撌梢笆 |
669   -| 8-28 || 蝛 |
  669 +| 8-20 |Name| 蝡妍 |
  670 +| 21-28 || 蝛 |
670 671  
671 672 ## 2.4 撟踵靽⊥靽⊥
672 673  
... ... @@ -2695,6 +2696,17 @@ ACK撘
2695 2696 | 1 | LEN | 摮泵銝脤摨佗EN=0嚗 |
2696 2697 | 1 | NULL | 憸 |
2697 2698  
  2699 +
  2700 +#### 5.5.2.20 憸挽
  2701 +
  2702 +撖孵蝷 8182憭83摮84 85憸-撖寥郎嚗86 憸-摮霂
  2703 +
  2704 +| **摮** | **泵** | **膩** |
  2705 +| --- | --- | --- |
  2706 +| 1 | CMD | 蝐餃 81-86嚗笆摨 87銝箸81-86憸挽慝
  2707 +| 1 | LEN | 摮泵銝脤摨佗EN=0嚗 |
  2708 +| 16 | TEXT | 憭16摮16摮 |
  2709 +
2698 2710 # 蝸憭掩
2699 2711  
2700 2712 ## 6.1 璁膩
... ... @@ -2936,6 +2948,17 @@ BIN/GDB &amp;emsp;&amp;emsp;銵函內銝 銝CU 蝐餃 BIN辣霂蝚
2936 2948 | <font color="#0000dd">N</font> | U8 悅 憸 |
2937 2949 | XX.XX.XX | SW 隞嗥 |
2938 2950  
  2951 +***
  2952 +==漣颱挽霈∪==
  2953 +![漣餅(img/漣餅.png)
  2954 +***
  2955 +![撟踵畾琶(img/撟踵畾.png)
  2956 +***
  2957 +![畾琶(img/畾.png)
  2958 +***
  2959 +![霂a畾琶(img/霂a畾.png)
  2960 +***
  2961 +
2939 2962 ### 6.5.2 撟踵撘憪/蝏
2940 2963  
2941 2964 | **摮** | **泵** | **膩** |
... ...