通讯协议-SDK_DLL部分[内部].md 32.1 KB




SunVote Dll协议接口说明
Ver5.1.1







长沙中天电子设计开发有限公司


二〇二三年十月





文件控制:

文件名:SunVote Dll接口说明

起草人:陈定敏

最新版本作者: 陈定敏

| 文档版本 | 日期 | 作者 | 版本说明 | |---|---|---|---| |5.1.1| 2023年10月09日|陈定敏|1. 初始版|


[TOC]

系统概述

设计目的

通讯接口设计概要

通信方式

数据交互采取发送应答的方式。应用程序发送数据到WSCmdApp,WSCmdApp收到后执行完成后回复。

应用程序没有数据发送给WSCmdApp时,需要发送心跳,WSCmdApp收到心跳后会回复心跳,用于判断与应用程序的连接状态。(配置文件中,如果启用了心跳检查,应用程序如果未按要求发送心跳,WSCmdApp会断开当前连接,重新尝试连接)

编程流程说明

回调函数部分

基站事件的回调

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
int mode 回调反馈数据模式
const char* sInfo 回调反馈数据 根据模式解析数据

回调接口代码:

typedef void(*HDParamCallBack)(int iBaseID, int mode, const char* sInfo);// 基站事件回调

设置回调代码:

extern"C" __declspec(dllexport) void SetHDParamCallBack(HDParamCallBack cb);    //设置基站事件回调

投票事件回调

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
int mode 回调反馈数据模式
const char* sInfo 回调反馈数据 根据模式解析数据

回调接口代码:

typedef void(*VoteEventCallBack)(int iBaseID, int mode, const char* sInfo);// 投票事件回调

设置回调代码:

extern"C" __declspec(dllexport) void SetVoteEventCallBack(VoteEventCallBack cb);    //设置投票事件回调

键盘事件回调

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
unsigned long long keySn 键盘SN
float Time 反馈时间
int mode 回调反馈数据模式
int RxMode 预留
const char* sInfo 回调反馈数据 根据模式解析数据

回调接口代码:

typedef void(*KeyEventCallBack)(int iBaseID, unsigned long long keySn, float Time, int mode, int RxMode, const char* sInfo);// 键盘事件回调

设置回调代码:

extern"C" __declspec(dllexport) void SetKeyEventCallBack(KeyEventCallBack cb);  //设置键盘事件回调回调

语音事件回调

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
unsigned long long keySn 键盘SN
float Time 反馈时间
int mode 回调反馈数据模式
USHORT voiceId 语音按键ID
USHORT dataIndex 语音数据包ID
const char* data 回调反馈数据 根据模式解析数据
USHORT dataIndex 语音数据包ID
int len 语音数据长度
int sampleRate
int bitsPerSample
int channel
int recFlag

回调接口代码:

typedef void(*VoiceStreamEventCallBack)(int iBaseID, ULONG keySn, int mode, USHORT voiceId, USHORT dataIndex, const char* data, int len, int sampleRate, int bitsPerSample, int channel, int recFlag);//

设置回调代码:

extern"C" __declspec(dllexport) void SetVoiceStreamEventCallBack(VoiceStreamEventCallBack); //设置语音数据回调函数

基站参数部分

复位基站

函数名称:resetBase 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32

接口代码:

extern"C" __declspec(dllexport) bool resetBase(UCHAR iBaseID);

获取SDK Ver

函数名称:GetSDKVer 返回参数:字符串

接口代码:

extern"C" __declspec(dllexport) char* GetSDKVer();

退出线程释放资源

函数名称:SetThread_Exit

接口代码:

extern"C" __declspec(dllexport) void SetThread_Exit(void);  //退出线程释放资源

投票业务部分

设置空闲模式功能[广播]

函数名称:EndFreeEvent 功能:设置空闲模式功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为空闲模式

接口代码:

extern"C" __declspec(dllexport) bool EndFreeEvent(void);        //空闲模式功能

带参数进入空闲模式

函数名称:ExitEvent 功能:退出当前模式功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为空闲模式,并在回调 函数中说明是什么模式切换到空闲模式

参数名称 参数说明 范围 备注
int mode_ID 用户提供的当前需要的模式 websocket情况下使用

接口代码:

extern"C" __declspec(dllexport) bool ExitEvent(int mode_ID);        //带参数进入空闲模式功能

签到功能[广播]

函数名称:Start_Sign_in_Event 功能:签到功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为签到功能模式

参数名称 参数说明 范围 备注
int Moed1 签到模式 1:指定键签到
2:PIN码签到(默认值)
int Moed2 修改模式 0:不可修改
1:可以修改(默认值)
int Moed3 迫选模式 0:(默认值)
int Moed4 选项数目 10:(默认值)
int Moed5 可选项数 1≤N≤14 (指定位数才需要设置)
int KeyValue 指定按键键值 0:未指定[OK键签到]
1:1
2:2
3:3
4:4
5:5
6:6
7:7
8:8
9:9
10:0
11:上键
12:下键
13:OK
14:ESC
15: Menu

接口代码:

extern"C" __declspec(dllexport) bool Start_Sign_in_Event(
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0, 
    int Moed4 = 0, 
    int Moed5 = 0, 
    int KeyValue=0);    //开始签到功能

签到功能[指定键盘SN]

函数名称:Start_Sign_in_Event_SN 功能:签到功能[指定键盘SN] 说明:把SDK管理的指定在线键盘设置为签到功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN
int Moed1 签到模式 1:指定键签到
2:PIN码签到(默认值)
int Moed2 修改模式 0:不可修改
1:可以修改(默认值)
int Moed3 迫选模式 0:(默认值)
int Moed4 选项数目 10:(默认值)
int Moed5 可选项数 1≤N≤14 (指定位数才需要设置)
int KeyValue 指定按键键值 0:未指定[OK键签到]
1:1
2:2
3:3
4:4
5:5
6:6
7:7
8:8
9:9
10:0
11:上键
12:下键
13:OK
14:ESC
15: Menu
UCHAR Txt_Len 提示标题长度 1~16字节
const char* Txt 提示标题 字符串

接口代码:

extern"C" __declspec(dllexport) bool Start_Sign_in_Event_SN(
    UCHAR iBaseID, 
    ULONG KeySN, 
    int Moed1, 
    int Moed2, 
    int Moed3, 
    int Moed4, 
    int Moed5, 
    int KeyValue, 
    UCHAR Txt_Len, 
    const char* Txt);   //开始签到功能

数字题功能[广播]

函数名称:Start_Number_Event 功能:数字题功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为数字功能模式

参数名称 参数说明 范围 备注
secrecyMode 保密模式 0:不保密(默认值)
1:保密
modifyMode 修改模式 0:不可修改
1:可以修改(默认值)
aswOption 按键模式 0:无规则 (S6最多16位,T2最多14位)
1:预留
2:预留
3:带小数位上下限(T2不支持)
digits 小数位数 0:没有小数点
1:一位小数点
2:二位小数点
numMin 下限 aswOption=3
digits=0 范围:0~65535
digits=1 范围:0~6553
digits=2 范围:0~655
numMax 上限 aswOption=3
digits=0 范围:0~65535
digits=1 范围:0~6553
digits=2 范围:0~655

接口代码:

extern"C" __declspec(dllexport) bool Start_Number_Event(
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0, 
    int digits = 0, 
    USHORT numMax = 0, 
    USHORT numMin = 0); //

数字题功能[指定键盘SN]

函数名称:Start_Number_Event_SN 功能:数字题功能[指定键盘SN] 说明:把SDK管理的指定在线键盘设置为数字题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN
secrecyMode 保密模式 0:不保密(默认值)
1:保密
modifyMode 修改模式 0:不可修改
1:可以修改(默认值)
aswOption 按键模式 0:无规则 (S6最多16位,T2最多14位)
1:预留
2:预留
3:带小数位上下限(T2不支持)
digits 小数位数 0:没有小数点
1:一位小数点
2:二位小数点
numMin 下限 aswOption=3
digits=0 范围:0~65535
digits=1 范围:0~6553
digits=2 范围:0~655
numMax 上限 aswOption=3
digits=0 范围:0~65535
digits=1 范围:0~6553
digits=2 范围:0~655
UCHAR Txt_Len 提示标题长度 1~16字节
Txt 提示标题 字符串,长度最多不超过16个字节

接口代码:

extern"C" __declspec(dllexport) bool Start_Number_Event_SN(
    UCHAR iBaseID, 
    ULONG KeySN, 
    int Moed1, 
    int Moed2, 
    int Moed3, 
    int digits, 
    USHORT numMax, 
    USHORT numMin, 
    UCHAR Txt_Len, 
    const char* Txt);   //

判断题功能[广播]

函数名称:Start_TrueFalse_Event 功能:判断题功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为判断题功能模式

参数名称 参数说明 范围 备注
optionsMode 选项类别 1:True/False 对/错 2:Yes/No 是/否 3:√/×
secrecyMode 保密模式 0:不保密(默认值) 1:保密
modifyMode 修改模式 0:不可修改1:可以修改(默认值)

接口代码:

extern"C" __declspec(dllexport) bool Start_TrueFalse_Event(
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0);

判断题功能[指定键盘SN]

函数名称:Start_TrueFalse_Event_SN 功能:判断题功能[指定键盘SN] 说明:把SDK管理的指定在线键盘设置为判断题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN
optionsMode 选项类别 1:True/False 对/错 2:Yes/No 是/否 3:√/×
secrecyMode 保密模式 0:不保密(默认值) 1:保密
modifyMode 修改模式 0:不可修改1:可以修改(默认值)
UCHAR Txt_Len 提示标题长度 1~16字节
Txt 提示标题 字符串,长度最多不超过16个字节

接口代码:

extern"C" __declspec(dllexport) bool T2_Start_TrueFalse_Event(
    UCHAR iBaseID, 
    ULONG KeySN, 
    int Moed1, 
    int Moed2, 
    int Moed3, 
    UCHAR Txt_Len, 
    const char* Txt);   //

选择题功能[广播]

函数名称:Start_TrueFalse_Event 功能:选择题功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为选择题功能模式

参数名称 参数说明 范围 备注
optionsMode 选项类别 1:显示字母(默认值) 2:显示数字
secrecyMode 保密模式 0:不保密(默认值)1:保密
modifyMode 修改模式 0:不可修改 1:可以修改(默认值)
lessMode 迫选模式 0:可缺选(默认值) 1:不可缺选2:允许重复输入3:允许重复输入且不可缺选
options 选项数目 1≤M≤10(默认值4)
optionalN 可选项数 1≤N≤M(默认值1)

接口代码:

extern"C" __declspec(dllexport) bool Start_Choice_Event(
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0, 
    int Moed4 = 0, 
    int Moed5 = 0, 
    int Moed6 = 0);

选择题功能[指定键盘SN]

函数名称:Start_Choice_Event_SN 功能:选择题功能[指定键盘SN] 说明:把SDK管理的指定在线键盘设置为选择题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN
optionsMode 选项类别 1:显示字母(默认值) 2:显示数字
secrecyMode 保密模式 0:不保密(默认值)1:保密
modifyMode 修改模式 0:不可修改 1:可以修改(默认值)
lessMode 迫选模式 0:可缺选(默认值) 1:不可缺选2:允许重复输入3:允许重复输入且不可缺选
options 选项数目 1≤M≤10(默认值4)
optionalN 可选项数 1≤N≤M(默认值1)
UCHAR Txt_Len 提示标题长度 1~16字节
Txt 提示标题 字符串,长度最多不超过16个字节

接口代码:

extern"C" __declspec(dllexport) bool Start_Choice_Event_SN(
    UCHAR iBaseID, 
    ULONG KeySN, 
    int Moed1, 
    int Moed2, 
    int Moed3, 
    int Moed4, 
    int Moed5, 
    int Moed6, 
    UCHAR Txt_Len, 
    const char* Txt);

语音题功能[广播]

函数名称:Start_Voice_Event 功能:语音题功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为语音题功能模式

参数名称 参数说明 范围 备注
recordingMode 录音模式 0:按键录音(默认值)
submitTimes 提交次数 0 (0:不限制, 默认值0)
recordingTimeLimit 预留 0
recordingFormat 预留 0(默认值0)
recordAudioFormat 音频格式 0:mp3(默认值)
1:实时流

接口代码:

extern"C" __declspec(dllexport) bool Start_Voice_Event(
    int Moed1, 
    int Time, 
    int Num, 
    int Alert, 
    int OutMode);

语音题功能[指定键盘SN]

函数名称:Start_Voice_Event_SN 功能:语音题功能[指定键盘SN] 说明:把SDK管理的指定在线键盘设置为语音题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN
recordingMode 录音模式 0:按键录音(默认值)
submitTimes 提交次数 0 (0:不限制, 默认值0)
recordingTimeLimit 预留 0
recordingFormat 预留 0(默认值0)
recordAudioFormat 音频格式 0:mp3(默认值)
1:实时流
UCHAR Txt_Len 提示标题长度 1~16字节
Txt 提示标题 字符串,长度最多不超过16个字节

接口代码:

extern"C" __declspec(dllexport) bool Start_Voice_Event_SN(
    UCHAR iBaseID, 
    ULONG KeySN, 
    int Moed1, 
    int Time, 
    int Num, 
    int Alert, 
    int OutMode, 
    UCHAR Txt_Len, 
    const char* Txt);//

自由题功能

函数名称:Start_Free_Question_Event 功能:自由题功能 说明:把SDK管理的所有基站的在线键盘设置为自由题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN

接口代码:

extern"C" __declspec(dllexport) bool Start_Free_Question_Event(
    UCHAR iBaseID, 
    ULONG KeySN);

抢答题功能

函数名称:Start_Rush_Answer_Event 功能:抢答题功能 说明:把SDK管理的所有基站的在线键盘设置为抢答题功能模式

参数名称 参数说明 范围 备注
rushAnswerMode 抢答模式 0:普通抢答(默认值)
Moed2 预留 0:(默认值)
modifyMode 修改模式 0:不可修改
1:可以修改(默认值)

接口代码:

extern"C" __declspec(dllexport) bool Start_Rush_Answer_Event(
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0); //抢答

抢答题功能[指定键盘SN]

函数名称:Start_Rush_Answer_Event_SN 功能:抢答题功能[指定键盘SN] 说明:把SDK管理的指定在线键盘设置为抢答题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN
rushAnswerMode 抢答模式 0:普通抢答(默认值)
Moed2 预留 0:(默认值)
modifyMode 修改模式 0:不可修改
1:可以修改(默认值)
UCHAR Txt_Len 提示标题长度 1~16字节
Txt 提示标题 字符串,长度最多不超过16个字节

接口代码:

extern"C" __declspec(dllexport) bool Start_Rush_Answer_Event_SN(
    UCHAR iBaseID, 
    ULONG KeySN, 
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0); //抢答模式

填空题功能

函数名称:Start_Rush_Answer_Event 功能:填空题功能 说明:把SDK管理的所有基站的在线键盘设置为填空题功能模式

参数名称 参数说明 范围 备注
optionsMode 填空类型 1:任意输入(默认值)
modifyMode 预留 1: (默认值)
secrecyMode 预留 0: (默认值)

接口代码:

extern"C" __declspec(dllexport) bool Start_TextAnswer_Event(
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0);

填空题功能[指定键盘SN]

函数名称:Start_Rush_Answer_Event_SN 功能:填空题功能[指定键盘SN] 说明:把SDK管理的指定在线键盘设置为填空题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 指定键盘SN
optionsMode 填空类型 1:任意输入(默认值)
modifyMode 预留 1: (默认值)
secrecyMode 预留 0: (默认值)

接口代码:

extern"C" __declspec(dllexport) bool Start_TextAnswer_Event_SN(
    UCHAR iBaseID, 
    ULONG KeySN, 
    int Moed1 = 1, 
    int Moed2 = 0, 
    int Moed3 = 0); //抢答模式

模拟测试功能[广播]

函数名称:MockTest_Event 功能:模拟测试功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为自由题功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
int Moed1 模式
UCHAR KeyTime 按键开启时间
UCHAR GapTime 按键间隔时间

接口代码:

extern"C" __declspec(dllexport) bool MockTest_Event(
    UCHAR iBaseID, 
    int Moed1 = 1, 
    UCHAR KeyTime = 1,
    UCHAR GapTime = 1); //模拟测试[1 报告状态]

异步测验功能[广播]

函数名称:TestMode_Event 功能:异步测验功能[广播] 说明:把SDK管理的所有基站的在线键盘设置为异步测验功能模式

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
int Moed 模式
USHORT TestNum

接口代码:

extern"C" __declspec(dllexport) bool TestMode_Event(
    UCHAR iBaseID, 
    int Moed, 
    USHORT TestNum);

键盘设置

键盘自定义姓名

设置键盘自定义姓名

函数名称:SetKeyNameTxt_C100B_S6 功能:设置键盘自定义姓名,C100B+S6键盘自定义姓名 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN
UCHAR Cont 操作类型 0:不操作
1:清除
2:写入
UCHAR Name_Len 姓名字符串长度
const char* Name 姓名字符串

接口代码:

extern"C" __declspec(dllexport) bool SetKeyNameTxt(
    UCHAR iBaseID, 
    ULONG KeySN, 
    UCHAR Cont, 
    UCHAR Name_Len, 
    const char *Name);

键盘自定义姓名[C100B+S6]

设置C100B+S6键盘自定义姓名

函数名称:SetKeyNameTxt_C100B_S6 功能:设置键盘自定义姓名,C100B+S6键盘自定义姓名 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN
UCHAR Name_Len 姓名字符串长度
const char* Name 姓名字符串

接口代码:

extern"C" __declspec(dllexport) bool SetKeyNameTxt_C100B_S6(
    UCHAR iBaseID, 
    ULONG KeySN, 
    UCHAR Name_Len, 
    const char* Name);

获取C100B+S6键盘自定义姓名

函数名称:GetKeyNameTxt_C100B_S6 功能:获取键盘自定义姓名,C100B+S6键盘自定义姓名 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN

接口代码:

extern"C" __declspec(dllexport) bool GetKeyNameTxt_C100B_S6(
    UCHAR iBaseID, 
    ULONG KeySN);

设置键盘评分[积分]

函数名称:SetKeyScore 功能:设置键盘评分[积分] 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN
UCHAR Cont 操作类型 0:不操作
1:清除
2:字符串模式
3:五角星模式
4:爱心[S6有效]
5:写测验题分数[S6有效]
UCHAR Score_Len 积分字符串长度
char* Score 积分字符串

接口代码:

extern"C" __declspec(dllexport) bool SetKeyScore(
    UCHAR iBaseID, 
    ULONG KeySN, 
    UCHAR Cont, 
    UCHAR Score_Len, 
    char* Score);

键盘自定义标题字符串[第二行]

函数名称:SetKeyTitleTxt2 功能:设置键盘自定义标题字符串[第二行] 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN
UCHAR Cont 操作类型 0:不操作
1:清除
2:写入
UCHAR Mode 操作类型 0:空闲模式[仅T2有效]
1:工作模式
UCHAR Txt_Len 字符串长度
const char* Txt 字符串

接口代码:

extern"C" __declspec(dllexport) bool SetKeyTitleTxt2(
    UCHAR iBaseID, 
    ULONG KeySN, 
    UCHAR Cont, 
    UCHAR Mode, 
    UCHAR Txt_Len, 
    const char* Txt);

键盘自定义标题字符串[第三行]

函数名称:SetKeyTitleTxt3 功能:设置键盘自定义标题字符串[第三行] 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN
UCHAR Cont 操作类型 0:不操作
1:清除
2:写入
UCHAR Txt_Len 字符串长度
const char* Txt 字符串

接口代码:

extern"C" __declspec(dllexport) bool SetKeyTitleTxt3(
    UCHAR iBaseID, 
    ULONG KeySN, 
    UCHAR Cont, 
    UCHAR Txt_Len, 
    const char* Txt);

键盘自定义评分[积分]和标题字符串[第二行]

函数名称:SetKeyScreTxt2 功能:设置键盘自定义评分[积分]和标题字符串[第二行] 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN
UCHAR Score_Type 操作类型 0:不操作
1:清除
2:字符串模式
3:五角星模式
4:爱心[S6有效]
5:写测验题分数[S6有效]
UCHAR Score_Len 字符串长度
char* Score 字符串
UCHAR Txt_Cont 操作类型 0:不操作
1:清除
2:写入
UCHAR Txt_Len 字符串长度
const char* Txt 字符串

接口代码:

extern"C" __declspec(dllexport) bool SetKeyScreTxt2(
    UCHAR iBaseID, 
    ULONG KeySN, 
    UCHAR Score_Type, 
    UCHAR Score_Len, 
    char* Score, 
    UCHAR Txt_Cont, 
    UCHAR Txt_Len, 
    const char* Txt);

键盘自定义短信

函数名称:SetKeyMessage 功能:设置键盘自定义短信 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
ULONG KeySN 键盘SN
const char* Txt 字符串

接口代码:

extern"C" __declspec(dllexport) bool SetKeyMessage(
    UCHAR iBaseID, 
    ULONG KeySN, 
    const char* Txt);

键盘暂停休眠时间

设置键盘暂停休眠时间 函数名称:Key_Pause_Sleep 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
UCHAR Time 休眠时间 0:10秒[默认]

接口代码:

extern"C" __declspec(dllexport) bool Key_Pause_Sleep(UCHAR iBaseID, UCHAR Time);// 

键盘关机设置

获取键盘关机时间等级 函数名称:GetKeyboardAutoPowerOffLevel 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32

接口代码:

extern"C" __declspec(dllexport) bool GetKeyboardAutoPowerOffLevel(UCHAR iBaseID);

设置键盘关机时间等级 函数名称:SetKeyboardAutoPowerOffLevel 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
UCHAR Level 关机时间等级 0:30秒
1:2分钟
2:15分钟
3:45分钟
255:不自动关机

接口代码:

extern"C" __declspec(dllexport) bool SetKeyboardAutoPowerOffLevel(UCHAR iBaseID, UCHAR Level);

键盘外设操作[仅T2有效]

设置键盘外设操作[仅T2有效] 函数名称:SetKeyPeripheral 参数说明:写键盘外设,由led灯、蜂鸣器、马达组合

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
keySn 键盘SN 空字符串,为所有在线键盘
ledTimes Led灯闪烁次数 0~255 (0是马上灭,255是长亮)
ledOnTime Led灯每次开时间 0~255 (单位0.1s)
ledOffTime Led灯每次关时间 0~255 (单位0.1s,为0就是连续亮)
ledColorR Led灯灯颜色,红值 0~255(现只支持0灭和1亮,,>1也认为是1)
ledColorG Led灯灯颜色,绿值 0~255(现只支持0灭和1亮,,>1也认为是1)
ledColorB Led灯灯颜色,蓝值 0~255(现只支持0灭和1亮,,>1也认为是1)
beepTimes 蜂鸣器响次数 0~255 (0是马上响,255是长响)
beepOnTime 蜂鸣器每次开时间 0~255 (单位0.1s)
beepOffTime 蜂鸣器每次关时间 0~255 (单位0.1s,为0就是连续响)
motorTimes 马达震动次数 0~255
motorOnTime 马达每次开时间 0~255 (单位0.1s)
motorOffTime 马达每次关时间 0~255 (单位0.1s,为0就是连续振动)

接口代码:

extern"C" __declspec(dllexport) bool SetKeyPeripheral(
    UCHAR iBaseID, 
    ULONG KeySN,
    UCHAR LED_CTRL, 
    UCHAR LED_TIMES, 
    UCHAR LED_TON, 
    UCHAR LED_TOFF, 
    UCHAR R, 
    UCHAR G, 
    UCHAR B,
    UCHAR BEEP_CTRL, 
    UCHAR BEEP_TIMES, 
    UCHAR BEEP_TON, 
    UCHAR BEEP_TOFF,
    UCHAR MOTO_CTRL, 
    UCHAR MOTO_TIMES, 
    UCHAR MOTO_TON, 
    UCHAR MOTO_TOFF);

键盘遥控关机

遥控关机 函数名称:SetKeyRemoteShutdown 参数说明:键盘遥控关机

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
keySn 键盘SN 空字符串,为所有在线键盘

接口代码:

extern"C" __declspec(dllexport) bool SetKeyRemoteShutdown(
    UCHAR iBaseID, 
    ULONG KeySN);

键盘ID遥控关机生产模式

键盘ID遥控关机生产模式 函数名称:SetKeyRemoteShutdown_Pro 参数说明:键盘遥控关机

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
UCHAR Mode 模式 0~255;0:正常关机 255:一直遥控开机
USHORT KeyIdMin 开始编号 1~9999;指定键盘编号范围时候的开始值
USHORT KeyIdMax 结束编号 1~9999;指定键盘编号范围时候的结束值

接口代码:

extern"C" __declspec(dllexport) bool SetKeyRemoteShutdown_Pro(
    UCHAR iBaseID, 
    UCHAR Mode, 
    USHORT KeyIdMin, 
    USHORT KeyIdMax);

键盘恢复出厂设置

设置键盘恢复出厂设置 函数名称:SetKeyFactory 参数说明:

参数名称 参数说明 范围 备注
UCHAR iBaseID 基站ID 0~32
keySn 键盘SN 空字符串,为所有在线键盘

接口代码:

extern"C" __declspec(dllexport) bool SetKeyFactory(
    UCHAR iBaseID, 
    ULONG KeySN);

异常处理

WSCmdApp收到数据异常

WSCmdApp收到异常数据,会不做处理,并返回以下错误信息描述。

接收: fun: "error" //功能错误 baseId: //无该值 infos:{ "funId":"F0001","code":"10002"}//

指令样例:

{
    "fun": "error",
    "infos": {
        "funId": "F0001",
        "code": "10002"
    },
    "packetTag": "1"
}
code 含义
10001 不能正确解析的JSON数据
10002 解析JSON错误
20001 基站未连接
20002 功能不支持
20003 基站ID为负数,应用可以不传ID,默认为0
20004 参数错误
30001 找不到对应的SN
40001 升级功能只能支持一个基站在线
50001 此功能必须指定基站ID
60001 此功能必须指定键盘SN
funId 含义
F0001 基站未连接
F0002 读基站信道
F0003 写基站信道
F0004 读取基站baseId 、信道、RF功率等级
F0005 写基站baseId
F0006 读基站名称
F0007 写基站名称
F0008 读键盘关机时间等级
F0009 写键盘关机时间等级
F0010 读基站配对码
F0011 写基站配对码
F0012 读基站序列号
F0013 写基站序列号
F0014 读取基站的型号、硬件版本、软件版本、设备SN号
F0015 写基站硬件版本
F0016 读基站类型
F0017 写基站类型
F0018 读基站键盘容量和Lock
F0019 写基站键盘容量和Lock
F0020 读手动获取返回在线信息
F0021 写手动获取返回在线信息
F0022 读基站设备RF功率
F0023 写基站设备RF功率
F0024 基站设备配对模式或基站名称(自定义)
F0025 预留
F0026 读基站快速配对低功率模式
F0027 写基站快速配对低功率模式
F0028 读键盘登录菜单显示允许[S6适用]
F0029 写键盘登录菜单显示允许[S6适用]
F0030 读键盘登录密码[S6适用]
F0031 写键盘登录密码[S6适用]
F0032 读基站名称隐藏开关
F0033 写基站名称隐藏开关
F0034 读基站和键盘之间的心跳开关
F0035 写基站和键盘之间的心跳开关
F0036 读基站语言
F0037 写基站语言
F0038 读基站CRC
F0039 写基站CRC
F0040 写广播投票标题
F0041 核对投票开启密码
F0042 读基站获取投票开启密码
F0043 写基站获取投票开启密码
F0044 读基站用户自定义字符串
F0045 写基站用户自定义字符串
F0046 读基站UID
F0047 写基站UID
F0048 读键盘反馈模式参数
F0049 写键盘反馈模式参数
F0050 读基站当前是开启升级状态
F0051 写基站当前是开启升级状态
F0052 手动停止键盘升级状态
F0053 写键盘当前是开启升级状态
F0054 写踢出单只键盘
F0055 写清掉所有键盘
F0056 写锁定键盘
F0057 写解锁键盘
F0058 写T2键盘第二行文本【空闲模式】
F0059 读考勤基站时钟设置
F0060 写考勤基站时钟设置
F0061 读考勤键盘每秒发送考勤信号次数
F0062 写考勤键盘每秒发送考勤信号次数
F0063 读考勤键盘发送考勤信号功率
F0064 写考勤键盘发送考勤信号功率
F0065 写修改键盘配对码
F0066 写键盘功能提示预设字符串反馈
F0067 写空闲模式
F0068 单选多选带计时模式
F0069 判断题带计时模式
F0070 抢答题带计时模式
F0071 数字题带计时模式
F0072 绑定带计时模式
F0073 基站快速配对
F0074 读基站特征数据
F0075 遥控关机
F0076 读键盘在线SN
F0077 写基站复位
F0078 写键盘外设指令
F0079 写键盘配对码
F0080 写锁定键盘,解锁键盘
F0081 填空题模式
F0082 读NFC信息 姓名
F0083 写NFC信息 姓名
F0084 写NFC配对码
F0085 NFC清除指令
F0086 多题题型开始
F0087 多题题型暂停
F0088 多题题型继续上一次
F0089 多题题型正确答案下发
F0090 多题题型已答题结果转移
F0091 写白名单
F0092 读白名单
F0093 写基站黑名单
F0094 读基站黑名单
F0095 C100B+S6[旧款]写键盘姓名
F0096 C100B+S6[旧款]读键盘姓名
F0097 键盘暂停休眠操作
F0098 异步测试模式
F0099 Tcp参数读
F0100 Tcp参数写
F0101 自定义题型参数
F0102 写S6短信
F0103 写S6键盘FSN
F0104 自由题模式
F0105 基站AES
F0106 基站AES 克隆
F0107 基础参数配置
F0108 删除指定白名单SN
F0109 追加指定SN 到白名单
F0110 语音题模式
F0111 多题快答模式
F0112 快速配对模式
F0113 键盘测试模式
F0114 写入积分和第二行文本
F0115 写入键盘姓名
F0116 键盘关机时间等级