Skip to content

产品配置 相关接口

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 功能。

函数原型

c
void Ql_iotInit(void)

参数说明

无。

返回值

无。

备注

  • 2.3.3及以上版本支持

Ql_iotConfigSetEventCB

该函数用于设置设备与平台交互事件回调函数(须在连接平台前进行设置)。

函数原型

c
void Ql_iotConfigSetEventCB(void (*eventCb)(quint32_t event, qint32_t errcode, const void *v
alue, quint32_t valLen))

参数说明

  • 入参回调函数
    • void *  eventCb:设备与平台交互事件回调函数。
      • 函数原型
        c
        typedef void (*eventCB)(quint32_t event, qint32_t errcode, const void *value, quint32_t valLen);
      • 输入参数

返回值

无。

备注

  • 2.3.3及以上版本支持

调用示例

c
Ql_iotConfigSetEventCB(Ql_iotEventCB);

Ql_iotConfigSetConnmode

该函数用于配置设备连接至平台的连接模式。可在QuecThing功能启动前和运行中进行配置。

函数原型

c
void Ql_iotConfigSetConnmode(QIot_connMode_e mode)

参数说明

  • 输入参数
    • QIot_connMode_e   mode:连接模式。详情请参考QIot_connMode_e

返回值

无。

备注

  • 2.3.3及以上版本支持

调用示例

c
Ql_iotConfigSetConnmode(1);

Ql_iotConfigGetConnmode

该函数用于获取当前设备与平台之间的连接模式。

函数原型

c
QIot_connMode_e Ql_iotConfigGetConnmode(void)

参数说明

无。

返回值

连接模式。详情请参考连接模式详情

备注

  • 2.3.3及以上版本支持

调用示例

c
QIot_connMode_e ConnMode = Ql_iotConfigGetConnmode();

 

Ql_iotGetWorkState

该函数用于查询当前设备与平台之间的连接状态。

函数原型

c
QIot_state_e Ql_iotGetWorkState(void)

参数说明

无。

返回值

连接状态。详情请参考连接状态详情

备注

  • 2.3.3及以上版本支持

调用示例

c
QIot_state_e status = Ql_iotGetWorkState();

Ql_iotConfigSetProductinfo

该函数用于配置产品信息。产品信息包括 ProductKey 和 ProductSecret,均为在平台创建产品时生成。

函数原型

c
qbool Ql_iotConfigSetProductinfo(const char *pk, const char *ps)

参数说明

  • 输入参数
    • const char *pk:在平台创建产品时生成的 ProductKey。
    • const char *ps:在平台创建产品时生成的 ProductSecret。

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.3.3及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigSetProductinfo("pxxxxS", "VnhyxxxxxxxxSTFh");

Ql_iotConfigGetProductinfo

该函数用于查询产品信息。

函数原型

c
qbool Ql_iotConfigGetProductinfo(char **pk, char **ps, char **ver)

参数说明

  • 输出参数
    • char **pk:在平台创建产品时生成的 ProductKey。
    • char **ps:在平台创建产品时生成的 ProductSecret。
    • char **ver:设备认证协议版本号。

返回值

无。

备注

  • 2.3.3及以上版本支持

调用示例

c
char *pk, *ps, *ver;
qbool ret = Ql_iotConfigGetProductinfo(&pk, &ps, &ver);

Ql_iotConfigSetServer

该函数用于配置服务器信息。

函数原型

c
qbool Ql_iotConfigSetServer(QIot_protocolType_t type, const char *server_url)

参数说明

  • 输入参数
    • QIot_protocolType_ttype:协议类型。详情请参考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及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigSetServer(1,"xxx");

Ql_iotConfigGetServer

该函数用于查询服务器信息。

函数原型

c
void Ql_iotConfigGetServer(QIot_protocolType_t *type, char **server_url)

参数说明

  • 输出参数
    • QIot_protocolType_t *type: 协议类型。详情请参考QIot_protocolType_t
    • char **          server_url: 服务器地址。

返回值

无。

备注

  • 2.3.3及以上版本支持

调用示例

c
QIot_protocolType_t type;
char *url;
Ql_iotConfigGetServer(&type, &url);

Ql_iotConfigSetLifetime

该函数用于配置设备生命周期。

函数原型

c
qbool Ql_iotConfigSetLifetime(quint32_t lifetime)

参数说明

  • 输入参数
    • quint32_tlifetime:设备生命周期。单位:秒。可选参数,不配置时使用默认值(范围:1~65535;默认值:120)

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.3.3及以上版本支持,接口不检查输入值的合法性

调用示例

c
qbool ret = Ql_iotConfigSetLifetime(120);

Ql_iotConfigGetLifetime

该函数用于查询设备生命周期。

函数原型

c
quint32_t Ql_iotConfigGetLifetime(void)

参数说明

无。

返回值

设备生命周期,单位:秒。

备注

  • 2.3.3及以上版本支持

调用示例

c
quint32_t lifetime = Ql_iotConfigGetLifetime();

Ql_iotConfigSetPdpContextId

该函数用于配置设备连接平台使用的 PDP 上下文 ID。

函数原型

c
qbool Ql_iotConfigSetPdpContextId(quint8_t contextID)

参数说明

  • 输入参数
    • quint32_tcontextID:PDP上下文ID。可选参数。不配置时使用默认值1。

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.3.3及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigSetPdpContextId(1);

Ql_iotConfigGetPdpContextId

该函数用于获取设备连接平台使用的 PDP 上下文 ID。

函数原型

c
quint8_t Ql_iotConfigGetPdpContextId(void)

参数说明

无。

返回值

设备连接平台使用的 PDP 上下文 ID。

备注

  • 2.3.3及以上版本支持

调用示例

c
quint8_t contextid = Ql_iotConfigGetPdpContextId();

Ql_iotConfigSetSessionFlag

该函数用于关闭或开启设备与平台之间的连接加密模式。

函数原型

c
qbool Ql_iotConfigSetSessionFlag(qbool flag)

参数说明

  • 输入参数
    • qboolflag:连接加密开启标识。可选参数,不配置时使用默认值。
      • FALSE:关闭
      • TRUE:开启

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.7.2及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigSetSessionFlag(1);

Ql_iotConfigGetSessionFlag

该函数用于查询设备与平台之间的连接加密模式是否开启。

函数原型

c
qbool Ql_iotConfigGetSessionFlag(void)

参数说明

无。

返回值

  • True:   加密模式已开启
  • False: 加密模式已关闭

备注

  • 2.7.2及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigGetSessionFlag();

Ql_iotConfigSetAppVersion

该函数用于设置设备软件版本用户标识。

函数原型

c
qbool Ql_iotConfigSetAppVersion(const char *appVer)

参数说明

  • 输入参数
    • const char *appVer:设备软件版本用户标识。

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.8.1及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigSetAppVersion("app");

Ql_iotConfigGetSoftVersion

该函数用于获取设备软件版本用户标识。

函数原型

c
char *Ql_iotConfigGetSoftVersion(void)

参数说明

无。

返回值

设备当前软件版本用户标识。

备注

  • 2.3.3及以上版本支持

调用示例

c
char *ver = Ql_iotConfigGetSoftVersion();

Ql_iotConfigSetMcuVersion

该函数用于配置 MCU 编号及其对应的版本号。需要外挂 MCU 来配置。

函数原型

c
qbool Ql_iotConfigSetMcuVersion(const char *compno, const char *version)

参数说明

  • 输入参数
    • const char *compno:MCU编号。最大长度32字节。
    • const char *version:MCU编号对应的版本,最大长度64字节。

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.3.3及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigSetMcuVersion("MCU","1_0_0");

Ql_iotConfigGetMcuVersion

该函数用于获取 MCU 编号及其对应的版本号。

函数原型

c
quint32_t Ql_iotConfigGetMcuVersion(const char *compno, char **version)

参数说明

  • 输入参数

    • const char *compno:MCU编号。设置为NULL时获取所有配置的MCU版本信息。
  • 输出参数

    • char **      version:MCU编号对应的版本。最大长度64字节。

返回值

MCU编号对应版本号的字符串长度。

备注

  • 2.3.3及以上版本支持

调用示例

c
char *arg[]
char *oldVer = NULL;
quint32_t ret = Ql_iotConfigGetMcuVersion(arg[0], &oldVer);

Ql_iotConfigSetDkDs

该函数用于设置自定义设备标识和设备密钥。

函数原型

c
qbool Ql_iotConfigSetDkDs(const char *dk, const char *ds)

参数说明

  • 输入参数
    • const char *dk:用户自定义的设备的唯一标识。蜂窝移动模块默认值为IMEI号,Wi-Fi等无线模块默认值为MAC 地址。最大字节长度为16字节。若设置为空,删除自定义的dk与ds,并使用默认配置,此时需重新在平台进行认证。
    • const char *ds:设备认证后获取的密钥。固定长度为32字节。仅当设置dk为非空且非默认值时,允许设置设备 密钥。

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.8.1及以上版本支持

调用示例

c
qbool ret = Ql_iotConfigSetDkDs("B07xxxxxx2A3","VnhyXXXXXXSTFh");

Ql_iotConfigGetDkDs

该函数用于获取自定义的设备标识和设备密钥。仅支持查询通过 Ql_iotConfigSetDkDs()自定义的设备 标识。

函数原型

c
qbool Ql_iotConfigGetDkDs(char **dk, char **ds)

参数说明

  • 输出参数
    • char **dk:自定义的设备标识。
    • char **ds:自定义的设备密钥。

返回值

  • True:  函数执行成功。
  • False:函数执行失败。

备注

  • 2.8.1及以上版本支持

类型解析

  • QIot_state_e(设备与平台之间的连接状态)

    枚举定义

    c
    typedef 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;

    成员

    数值成员描述
    0QIOT_STATE_UNINITIALIZE未初始化
    1QIOT_STATE_INITIALIZED已初始化
    2QIOT_STATE_AUTHENTICATING正在认证
    3QIOT_STATE_AUTHENTICATED认证成功
    4QIOT_STATE_AUTHENTICATE_FAILED认证失败
    5QIOT_STATE_CONNECTING正在注册
    6QIOT_STATE_CONNECTED注册成功,等待订阅
    7QIOT_STATE_CONNECT_FAIL注册失败
    8QIOT_STATE_SUBSCRIBED已订阅,数据可发送
    9QIOT_STATE_SUBSCRIBE_FAIL订阅失败
    10QIOT_STATE_DISCONNECTING正在注销
    11QIOT_STATE_DISCONNECTED注销成功
    12QIOT_STATE_DISCONNECT_FAIL注销失败

  • QIot_connMode_e(连接模式)

    枚举定义

    c
    typedef enum { 
      QIOT_CONNMODE_IDLE, /* 不连接 IOT */ 
      QIOT_CONNMODE_REQ, /* 手动发起连接 IOT */ 
    } QIot_connMode_e;

    成员说明

    参数描述
    QIOT_CONNMODE_IDLE不连接移远平台
    QIOT_CONNMODE_REQ手动发起连接移远平台

  • QIot_protocolType_t(协议类型)
    枚举定义

    c
    typedef enum
    {
      QIOT_PPROTOCOL_COAP = 0,
      QIOT_PPROTOCOL_MQTT = 1,
    } QIot_protocolType_t;

    成员说明

    参数描述
    QIOT_PPROTOCOL_MQTTMQTT协议