|
Link Kit C-SDK
4.0.0
|
Bootstrap模块头文件, 可用于获取阿里云物联网平台的连接信息 更多...
#include <stdint.h>
类 | |
| struct | aiot_bootstrap_recv_t |
| bootstrap接收到的数据 更多... | |
| struct | aiot_bootstrap_event_t |
| bootstrap内部事件 更多... | |
宏定义 | |
| #define | STATE_BOOTSTRAP_BASE (-0x0700) |
| -0x0700~-0x07FF表达SDK在 bootstrap 模块内的状态码 更多... | |
| #define | STATE_BOOTSTRAP_DEINIT_TIMEOUT (-0x0701) |
| 执行aiot_bootstrap_deinit 时, 等待其他API执行结束的超过设定的超时时间, MQTT实例销毁失败 更多... | |
| #define | STATE_BOOTSTRAP_NEED_SEND_REQUEST (-0x0702) |
| 需要首先执行aiot_bootstrap_send_request 发送bootstrap请求 更多... | |
| #define | STATE_BOOTSTRAP_INVALID_STATUS_CODE (-0x0703) |
| bootstrap 服务端返回了错误的http status code 更多... | |
| #define | STATE_BOOTSTRAP_INVALID_CONNECTION_INFO (-0x0704) |
| 收到非法的bootstrap连接信息 更多... | |
类型定义 | |
| typedef void(* | aiot_bootstrap_recv_handler_t) (void *handle, const aiot_bootstrap_recv_t *packet, void *userdata) |
| bootstrap数据接收回调函数原型 更多... | |
| typedef void(* | aiot_bootstrap_event_handler_t) (void *handle, const aiot_bootstrap_event_t *event, void *userdata) |
| bootstrap事件回调函数 更多... | |
函数 | |
| void * | aiot_bootstrap_init (void) |
| 初始化bootstrap实例并设置默认参数 更多... | |
| int32_t | aiot_bootstrap_setopt (void *handle, aiot_bootstrap_option_t option, void *data) |
| 设置bootstrap参数 更多... | |
| int32_t | aiot_bootstrap_deinit (void **handle) |
| 释放bootstrap实例句柄的资源 更多... | |
| int32_t | aiot_bootstrap_send_request (void *handle) |
| 向bootstrap服务器发送请求 更多... | |
| int32_t | aiot_bootstrap_recv (void *handle) |
| 从bootstrap服务器接收应答 更多... | |
Bootstrap模块头文件, 可用于获取阿里云物联网平台的连接信息
| #define STATE_BOOTSTRAP_BASE (-0x0700) |
-0x0700~-0x07FF表达SDK在 bootstrap 模块内的状态码
| #define STATE_BOOTSTRAP_DEINIT_TIMEOUT (-0x0701) |
执行aiot_bootstrap_deinit 时, 等待其他API执行结束的超过设定的超时时间, MQTT实例销毁失败
| #define STATE_BOOTSTRAP_NEED_SEND_REQUEST (-0x0702) |
需要首先执行aiot_bootstrap_send_request 发送bootstrap请求
| #define STATE_BOOTSTRAP_INVALID_STATUS_CODE (-0x0703) |
bootstrap 服务端返回了错误的http status code
| #define STATE_BOOTSTRAP_INVALID_CONNECTION_INFO (-0x0704) |
收到非法的bootstrap连接信息
| typedef void(* aiot_bootstrap_recv_handler_t) (void *handle, const aiot_bootstrap_recv_t *packet, void *userdata) |
bootstrap数据接收回调函数原型
| [in] | handle | bootstrap实例句柄 |
| [in] | packet | bootstrap数据结构体, 存放收到的bootstrap信息 |
| [in] | userdata | 用户上下文 |
| typedef void(* aiot_bootstrap_event_handler_t) (void *handle, const aiot_bootstrap_event_t *event, void *userdata) |
bootstrap事件回调函数
当NTP内部事件被触发时, 调用此函数
bootstrap报文类型
传入 aiot_bootstrap_recv_handler_t 的MQTT报文类型
| 枚举值 | |
|---|---|
| AIOT_BOOTSTRAPRECV_STATUS_CODE |
bootstrap 服务器返回的http status code |
| AIOT_BOOTSTRAPRECV_CONNECTION_INFO |
物联网平台连接信息, 包含域名和端口号 |
| AIOT_BOOTSTRAPRECV_NOTIFY |
bootstrap通知信息 |
| 枚举值 | |||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AIOT_BOOTSTRAPOPT_MQTT_HANDLE |
bootstrap会话需要的MQTT句柄, 需要先建立MQTT连接, 再设置MQTT句柄 数据类型: (void *) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_NETWORK_CRED |
bootstrap 服务器建联时, 网络使用的安全凭据 该配置项用于为底层网络配置aiot_sysdep_network_cred_t 安全凭据数据 应当把 aiot_sysdep_network_cred_t 中option配置为AIOT_SYSDEP_NETWORK_CRED_SVRCERT_CA , 以tls方式建联 数据类型: (aiot_sysdep_network_cred_t *) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_HOST |
bootstrap 服务器的域名地址或者ip地址 阿里云物联网平台 bootstrap 服务器域名地址列表:
数据类型: (char *) 默认值: iot-auth-global.aliyuncs.com | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_PORT |
bootstrap 服务器的端口号 连接阿里云物联网平台 bootstrap 服务器时: 必须使用tls方式建联, 端口号设置为443 数据类型: (uint16_t *) 默认值: 443 | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_PRODUCT_KEY |
设备的product key, 可从阿里云物联网平台控制台获取 数据类型: (char *) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_DEVICE_NAME |
设备的device name, 可从阿里云物联网平台控制台获取 数据类型: (char *) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_REGIONID |
配置设备所在的regionId
数据类型: (char *) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_SEND_TIMEOUT_MS |
bootstrap会话发送消息时可消费的最长时间间隔 数据类型: (uint32_t *) 默认值: (5 * 1000) ms | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_RECV_TIMEOUT_MS |
bootstrap会话接收消息时可消费的最长时间间隔 数据类型: (uint32_t *) 默认值: (5 * 1000) ms | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_RECV_HANDLER |
从 bootstrap 服务器收取的数据从此回调函数进行通知 数据类型: (aiot_bootstrap_recv_handler_t) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_EVENT_HANDLER |
bootstrap内部发生的事件会从此回调函数进行通知 数据类型: ( aiot_bootstrap_event_handler_t ) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_USERDATA |
用户需要SDK暂存的上下文 该上下文会在 AIOT_BOOTSTRAPOPT_RECV_HANDLER 注册的回调函数中传回给用户 数据类型: (void *) | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_TIMEOUT_MS |
等待bootstrap应答的超时时间 数据类型: (uint32_t *) 默认值: (5 * 1000) ms | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_DEINIT_TIMEOUT_MS |
销毁Bootstrap实例时, 等待其他api执行完毕的时间 当调用aiot_bootstrap_deinit 销毁MQTT实例时, 若继续调用其他aiot_bootstrap_xxx API, API会返回STATE_USER_INPUT_EXEC_DISABLED 错误 此时, 用户应该停止调用其他aiot_bootstrap_xxx API 数据类型: (uint32_t *) 默认值: (2 * 1000) ms | ||||||||||||||||||||||||||||||||||||||||||||||||
| AIOT_BOOTSTRAPOPT_MAX | |||||||||||||||||||||||||||||||||||||||||||||||||
| void* aiot_bootstrap_init | ( | void | ) |
初始化bootstrap实例并设置默认参数
| 非NULL | bootstrap实例句柄 |
| NULL | 初始化失败, 一般是内存分配失败导致 |

| int32_t aiot_bootstrap_setopt | ( | void * | handle, |
| aiot_bootstrap_option_t | option, | ||
| void * | data | ||
| ) |
设置bootstrap参数
| [in] | handle | bootstrap句柄 |
| [in] | option | 配置选项, 更多信息请参考aiot_bootstrap_option_t |
| [in] | data | 配置选项数据, 更多信息请参考aiot_bootstrap_option_t |
| <STATE_SUCCESS | 参数设置失败 |
| >=STATE_SUCCESS | 参数设置成功 |

| int32_t aiot_bootstrap_deinit | ( | void ** | handle | ) |
释放bootstrap实例句柄的资源
| [in] | handle | 指向bootstrap实例句柄的指针 |
| <STATE_SUCCESS | 执行失败 |
| >=STATE_SUCCESS | 执行成功 |

| int32_t aiot_bootstrap_send_request | ( | void * | handle | ) |
向bootstrap服务器发送请求
| handle | bootstrap句柄 |
| <STATE_SUCCESS | 请求发送失败 |
| >=STATE_SUCCESS | 请求发送成功 |

| int32_t aiot_bootstrap_recv | ( | void * | handle | ) |
从bootstrap服务器接收应答
| handle | bootstrap句柄 |
| <STATE_SUCCESS | 数据接收失败 |
| >=STATE_SUCCESS | 数据接收成功 |

1.8.11