产品配置 相关接口
API 列表
函数 | 说明 |
---|---|
Ql_iotInit() | 初始化配置并启动 QuecThing 功能 |
Ql_iotConfigSetEventCB() | 设置设备与平台交互事件回调处理函数 |
Ql_iotConfigSetConnmode() | 配置设备与平台之间的连接模式 |
Ql_iotConfigGetConnmode() | 获取当前设备与平台之间的连接模式 |
Ql_iotGetWorkState() | 查询当前设备与平台之间的连接状态 |
Ql_iotConfigSetPdpContextId() | 配置设备连接平台使用的 PDP 上下文 ID |
Ql_iotConfigGetPdpContextId() | 获取设备连接平台使用的 PDP 上下文 ID |
Ql_iotConfigSetServer() | 配置服务器信息 |
Ql_iotConfigGetServer() | 查询服务器信息 |
Ql_iotConfigSetLifetime() | 配置设备生命周期 |
Ql_iotConfigGetLifetime() | 获取设备生命周期 |
Ql_iotConfigSetProductinfo() | 配置产品信息 |
Ql_iotConfigGetProductinfo() | 查询产品信息 |
Ql_iotConfigSetMcuVersion() | 配置 MCU 编号及其对应的版本号 |
Ql_iotConfigGetMcuVersion() | 获取 MCU 编号及其对应的版本号 |
Ql_iotConfigSetSessionFlag() | 关闭或开启设备与平台之间的连接加密模式 |
Ql_iotConfigGetSessionFlag() | 查询设备与平台之间的连接加密模式是否开启 |
Ql_iotConfigSetAppVersion() | 设置设备软件版本用户标识 |
Ql_iotConfigGetSoftVersion() | 获取设备软件版本用户标识 |
Ql_iotConfigSetDkDs() | 设置自定义设备标识和设备密钥 |
Ql_iotConfigGetDkDs() | 获取自定义设备标识和设备密钥 |
API 详情
Ql_iotInit
该函数用于初始化配置并启动 QuecThing 功能。
函数原型
void Ql_iotInit(void)
参数说明
无。
返回值
无。
备注
- 2.3.3及以上版本支持
Ql_iotConfigSetEventCB
该函数用于设置设备与平台交互事件回调函数(须在连接平台前进行设置)。
函数原型
void Ql_iotConfigSetEventCB(void (*eventCb)(quint32_t event, qint32_t errcode, const void *v
alue, quint32_t valLen))
参数说明
- 入参回调函数
返回值
无。
备注
- 2.3.3及以上版本支持
调用示例
Ql_iotConfigSetEventCB(Ql_iotEventCB);
Ql_iotConfigSetConnmode
该函数用于配置设备连接至平台的连接模式。可在QuecThing功能启动前和运行中进行配置。
函数原型
void Ql_iotConfigSetConnmode(QIot_connMode_e mode)
参数说明
- 输入参数
- QIot_connMode_e
mode
:连接模式。详情请参考QIot_connMode_e。
- QIot_connMode_e
返回值
无。
备注
- 2.3.3及以上版本支持
调用示例
Ql_iotConfigSetConnmode(1);
Ql_iotConfigGetConnmode
该函数用于获取当前设备与平台之间的连接模式。
函数原型
QIot_connMode_e Ql_iotConfigGetConnmode(void)
参数说明
无。
返回值
连接模式。详情请参考连接模式详情。
备注
- 2.3.3及以上版本支持
调用示例
QIot_connMode_e ConnMode = Ql_iotConfigGetConnmode();
Ql_iotGetWorkState
该函数用于查询当前设备与平台之间的连接状态。
函数原型
QIot_state_e Ql_iotGetWorkState(void)
参数说明
无。
返回值
连接状态。详情请参考连接状态详情。
备注
- 2.3.3及以上版本支持
调用示例
QIot_state_e status = Ql_iotGetWorkState();
Ql_iotConfigSetProductinfo
该函数用于配置产品信息。产品信息包括 ProductKey 和 ProductSecret,均为在平台创建产品时生成。
函数原型
qbool Ql_iotConfigSetProductinfo(const char *pk, const char *ps)
参数说明
- 输入参数
- const char *
pk
:在平台创建产品时生成的 ProductKey。 - const char *
ps
:在平台创建产品时生成的 ProductSecret。
- const char *
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.3.3及以上版本支持
调用示例
qbool ret = Ql_iotConfigSetProductinfo("pxxxxS", "VnhyxxxxxxxxSTFh");
Ql_iotConfigGetProductinfo
该函数用于查询产品信息。
函数原型
qbool Ql_iotConfigGetProductinfo(char **pk, char **ps, char **ver)
参数说明
- 输出参数
- char **
pk
:在平台创建产品时生成的 ProductKey。 - char **
ps
:在平台创建产品时生成的 ProductSecret。 - char **
ver
:设备认证协议版本号。
- char **
返回值
无。
备注
- 2.3.3及以上版本支持
调用示例
char *pk, *ps, *ver;
qbool ret = Ql_iotConfigGetProductinfo(&pk, &ps, &ver);
Ql_iotConfigSetServer
该函数用于配置服务器信息。
函数原型
qbool Ql_iotConfigSetServer(QIot_protocolType_t type, const char *server_url)
参数说明
- 输入参数
QIot_protocolType_t
type
:协议类型。详情请参考QIot_protocolType_t。const char *
server_url
:服务器地址(平台域名和端口)。可选参数,不配置时使用默认值。- 默认值:"mqtt://iot-south.quectelcn.com:1883"
地区 域名 中国地区非加密 mqtt://iot-south.quectelcn.com:1883 中国地区加密 mqtts://iot-south.quectelcn.com:8883 欧洲地区非加密 mqtt://iot-south.acceleronix.io:1883 欧洲地区加密 mqtts://iot-south.acceleronix.io:8883
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.3.3及以上版本支持
调用示例
qbool ret = Ql_iotConfigSetServer(1,"xxx");
Ql_iotConfigGetServer
该函数用于查询服务器信息。
函数原型
void Ql_iotConfigGetServer(QIot_protocolType_t *type, char **server_url)
参数说明
- 输出参数
- QIot_protocolType_t *
type
: 协议类型。详情请参考QIot_protocolType_t。 - char **
server_url
: 服务器地址。
- QIot_protocolType_t *
返回值
无。
备注
- 2.3.3及以上版本支持
调用示例
QIot_protocolType_t type;
char *url;
Ql_iotConfigGetServer(&type, &url);
Ql_iotConfigSetLifetime
该函数用于配置设备生命周期。
函数原型
qbool Ql_iotConfigSetLifetime(quint32_t lifetime)
参数说明
- 输入参数
- quint32_t
lifetime
:设备生命周期。单位:秒。可选参数,不配置时使用默认值(范围:1~65535;默认值:120)
- quint32_t
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.3.3及以上版本支持,接口不检查输入值的合法性
调用示例
qbool ret = Ql_iotConfigSetLifetime(120);
Ql_iotConfigGetLifetime
该函数用于查询设备生命周期。
函数原型
quint32_t Ql_iotConfigGetLifetime(void)
参数说明
无。
返回值
设备生命周期,单位:秒。
备注
- 2.3.3及以上版本支持
调用示例
quint32_t lifetime = Ql_iotConfigGetLifetime();
Ql_iotConfigSetPdpContextId
该函数用于配置设备连接平台使用的 PDP 上下文 ID。
函数原型
qbool Ql_iotConfigSetPdpContextId(quint8_t contextID)
参数说明
- 输入参数
- quint32_t
contextID
:PDP上下文ID。可选参数。不配置时使用默认值1。
- quint32_t
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.3.3及以上版本支持
调用示例
qbool ret = Ql_iotConfigSetPdpContextId(1);
Ql_iotConfigGetPdpContextId
该函数用于获取设备连接平台使用的 PDP 上下文 ID。
函数原型
quint8_t Ql_iotConfigGetPdpContextId(void)
参数说明
无。
返回值
设备连接平台使用的 PDP 上下文 ID。
备注
- 2.3.3及以上版本支持
调用示例
quint8_t contextid = Ql_iotConfigGetPdpContextId();
Ql_iotConfigSetSessionFlag
该函数用于关闭或开启设备与平台之间的连接加密模式。
函数原型
qbool Ql_iotConfigSetSessionFlag(qbool flag)
参数说明
- 输入参数
- qbool
flag
:连接加密开启标识。可选参数,不配置时使用默认值。FALSE
:关闭TRUE
:开启
- qbool
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.7.2及以上版本支持
调用示例
qbool ret = Ql_iotConfigSetSessionFlag(1);
Ql_iotConfigGetSessionFlag
该函数用于查询设备与平台之间的连接加密模式是否开启。
函数原型
qbool Ql_iotConfigGetSessionFlag(void)
参数说明
无。
返回值
True
: 加密模式已开启False
: 加密模式已关闭
备注
- 2.7.2及以上版本支持
调用示例
qbool ret = Ql_iotConfigGetSessionFlag();
Ql_iotConfigSetAppVersion
该函数用于设置设备软件版本用户标识。
函数原型
qbool Ql_iotConfigSetAppVersion(const char *appVer)
参数说明
- 输入参数
- const char *
appVer
:设备软件版本用户标识。
- const char *
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.8.1及以上版本支持
调用示例
qbool ret = Ql_iotConfigSetAppVersion("app");
Ql_iotConfigGetSoftVersion
该函数用于获取设备软件版本用户标识。
函数原型
char *Ql_iotConfigGetSoftVersion(void)
参数说明
无。
返回值
设备当前软件版本用户标识。
备注
- 2.3.3及以上版本支持
调用示例
char *ver = Ql_iotConfigGetSoftVersion();
Ql_iotConfigSetMcuVersion
该函数用于配置 MCU 编号及其对应的版本号。需要外挂 MCU 来配置。
函数原型
qbool Ql_iotConfigSetMcuVersion(const char *compno, const char *version)
参数说明
- 输入参数
- const char *
compno
:MCU编号。最大长度32字节。 - const char *
version
:MCU编号对应的版本,最大长度64字节。
- const char *
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.3.3及以上版本支持
调用示例
qbool ret = Ql_iotConfigSetMcuVersion("MCU","1_0_0");
Ql_iotConfigGetMcuVersion
该函数用于获取 MCU 编号及其对应的版本号。
函数原型
quint32_t Ql_iotConfigGetMcuVersion(const char *compno, char **version)
参数说明
输入参数
- const char *
compno
:MCU编号。设置为NULL时获取所有配置的MCU版本信息。
- const char *
输出参数
- char **
version
:MCU编号对应的版本。最大长度64字节。
- char **
返回值
MCU编号对应版本号的字符串长度。
备注
- 2.3.3及以上版本支持
调用示例
char *arg[]
char *oldVer = NULL;
quint32_t ret = Ql_iotConfigGetMcuVersion(arg[0], &oldVer);
Ql_iotConfigSetDkDs
该函数用于设置自定义设备标识和设备密钥。
函数原型
qbool Ql_iotConfigSetDkDs(const char *dk, const char *ds)
参数说明
- 输入参数
- const char *
dk
:用户自定义的设备的唯一标识。蜂窝移动模块默认值为IMEI号,Wi-Fi等无线模块默认值为MAC 地址。最大字节长度为16字节。若设置为空,删除自定义的dk与ds,并使用默认配置,此时需重新在平台进行认证。 - const char *
ds
:设备认证后获取的密钥。固定长度为32字节。仅当设置dk为非空且非默认值时,允许设置设备 密钥。
- const char *
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.8.1及以上版本支持
调用示例
qbool ret = Ql_iotConfigSetDkDs("B07xxxxxx2A3","VnhyXXXXXXSTFh");
Ql_iotConfigGetDkDs
该函数用于获取自定义的设备标识和设备密钥。仅支持查询通过 Ql_iotConfigSetDkDs()自定义的设备 标识。
函数原型
qbool Ql_iotConfigGetDkDs(char **dk, char **ds)
参数说明
- 输出参数
- char **
dk
:自定义的设备标识。 - char **
ds
:自定义的设备密钥。
- char **
返回值
True
: 函数执行成功。False
:函数执行失败。
备注
- 2.8.1及以上版本支持
类型解析
QIot_state_e(设备与平台之间的连接状态)
枚举定义
ctypedef enum { QIOT_STATE_UNINITIALIZE = 0, QIOT_STATE_INITIALIZED, QIOT_STATE_AUTHENTICATING, QIOT_STATE_AUTHENTICATED, QIOT_STATE_AUTHENTICATE_FAILED, QIOT_STATE_CONNECTING, QIOT_STATE_CONNECTED, QIOT_STATE_CONNECT_FAIL, QIOT_STATE_SUBSCRIBED, QIOT_STATE_SUBSCRIBE_FAIL, QIOT_STATE_DISCONNECTING, QIOT_STATE_DISCONNECTED, QIOT_STATE_DISCONNECT_FAIL } QIot_state_e;
成员
数值 成员 描述 0 QIOT_STATE_UNINITIALIZE 未初始化 1 QIOT_STATE_INITIALIZED 已初始化 2 QIOT_STATE_AUTHENTICATING 正在认证 3 QIOT_STATE_AUTHENTICATED 认证成功 4 QIOT_STATE_AUTHENTICATE_FAILED 认证失败 5 QIOT_STATE_CONNECTING 正在注册 6 QIOT_STATE_CONNECTED 注册成功,等待订阅 7 QIOT_STATE_CONNECT_FAIL 注册失败 8 QIOT_STATE_SUBSCRIBED 已订阅,数据可发送 9 QIOT_STATE_SUBSCRIBE_FAIL 订阅失败 10 QIOT_STATE_DISCONNECTING 正在注销 11 QIOT_STATE_DISCONNECTED 注销成功 12 QIOT_STATE_DISCONNECT_FAIL 注销失败
QIot_connMode_e(连接模式)
枚举定义
ctypedef enum { QIOT_CONNMODE_IDLE, /* 不连接 IOT */ QIOT_CONNMODE_REQ, /* 手动发起连接 IOT */ } QIot_connMode_e;
成员说明
参数 描述 QIOT_CONNMODE_IDLE 不连接移远平台 QIOT_CONNMODE_REQ 手动发起连接移远平台
QIot_protocolType_t(协议类型)
枚举定义ctypedef enum { QIOT_PPROTOCOL_COAP = 0, QIOT_PPROTOCOL_MQTT = 1, } QIot_protocolType_t;
成员说明
参数 描述 QIOT_PPROTOCOL_MQTT MQTT协议