Link Kit C-SDK  4.1.0
aiot_dynregmq_api.h
浏览该文件的文档.
1 
8 #ifndef __AIOT_DYNREGMQ_API_H__
9 #define __AIOT_DYNREGMQ_API_H__
10 
11 #if defined(__cplusplus)
12 extern "C" {
13 #endif
14 
15 #include <stdint.h>
16 
20 #define STATE_DYNREGMQ_BASE (-0x0500)
21 
25 #define STATE_DYNREGMQ_DEINIT_TIMEOUT (-0x0501)
26 
30 #define STATE_DYNREGMQ_NEED_SEND_REQUEST (-0x0502)
31 
35 #define STATE_DYNREGMQ_AUTH_TIMEOUT (-0x0503)
36 
52 typedef enum {
65 
86 
99 
108 
117 
126 
135 
144 
153 
164 
173 
186 
203 
213 
216 
217 
221 typedef enum {
226 
232 
236 typedef struct {
240  aiot_dynregmq_recv_type_t type;
241  union {
245  struct {
247  } deviceinfo_wl;
248 
252  struct {
253  char *clientid;
254  char *username;
255  char *password;
256  } deviceinfo_nwl;
257  } data;
259 
269 typedef void (* aiot_dynregmq_recv_handler_t)(void *handle,
270  const aiot_dynregmq_recv_t *packet, void *userdata);
271 
272 
281 void *aiot_dynregmq_init(void);
282 
295 int32_t aiot_dynregmq_setopt(void *handle, aiot_dynregmq_option_t option, void *data);
296 
307 int32_t aiot_dynregmq_deinit(void **handle);
308 
318 int32_t aiot_dynregmq_send_request(void *handle);
319 
329 int32_t aiot_dynregmq_recv(void *handle);
330 
331 #if defined(__cplusplus)
332 }
333 #endif
334 
335 #endif /* __AIOT_DYNREGMQMQ_API_H__ */
336 
int32_t aiot_dynregmq_setopt(void *handle, aiot_dynregmq_option_t option, void *data)
配置dynregmq会话
Definition: aiot_dynregmq_api.c:152
销毁dynregmq实例时, 等待其他api执行完毕的时间
Definition: aiot_dynregmq_api.h:185
设置回调, 它在SDK收到网络报文的时候被调用, 告知用户
Definition: aiot_dynregmq_api.h:152
设备的productKey, 可从阿里云物联网平台控制台获取
Definition: aiot_dynregmq_api.h:107
char * username
Definition: aiot_dynregmq_api.h:254
char * clientid
Definition: aiot_dynregmq_api.h:253
dynregmq会话发送消息时可消费的最长时间间隔
Definition: aiot_dynregmq_api.h:134
mqtt动态注册 服务器的域名地址或者ip地址
Definition: aiot_dynregmq_api.h:85
dynregmq模块收到从网络上来的报文时, 通知用户的报文内容
Definition: aiot_dynregmq_api.h:236
aiot_dynregmq_recv_type_t type
报文内容所对应的报文类型, 更多信息请参考aiot_dynregmq_recv_type_t
Definition: aiot_dynregmq_api.h:240
设备的deviceName, 可从阿里云物联网平台控制台获取
Definition: aiot_dynregmq_api.h:125
用户需要SDK暂存的上下文
Definition: aiot_dynregmq_api.h:163
char * password
Definition: aiot_dynregmq_api.h:255
设备的productSecret, 可从阿里云物联网平台控制台获取
Definition: aiot_dynregmq_api.h:116
char * device_secret
Definition: aiot_dynregmq_api.h:246
void(* aiot_dynregmq_recv_handler_t)(void *handle, const aiot_dynregmq_recv_t *packet, void *userdata)
dynregmq模块收到从网络上来的报文时, 通知用户所调用的数据回调函数
Definition: aiot_dynregmq_api.h:269
int32_t aiot_dynregmq_recv(void *handle)
从网络上收取dynregmq消息
Definition: aiot_dynregmq_api.c:496
mqtt动态注册 服务器的端口号
Definition: aiot_dynregmq_api.h:98
aiot_dynregmq_recv_type_t
dynregmq模块收到从网络上来的报文时, 通知用户的报文类型
Definition: aiot_dynregmq_api.h:221
dynregmq模块接收消息的超时时间
Definition: aiot_dynregmq_api.h:172
dynregmq会话接收消息时可消费的最长时间间隔
Definition: aiot_dynregmq_api.h:143
aiot_dynregmq_option_t
aiot_dynregmq_setopt 接口的option参数可选值.
Definition: aiot_dynregmq_api.h:52
void * aiot_dynregmq_init(void)
创建dynregmq会话实例, 并以默认值配置会话参数
Definition: aiot_dynregmq_api.c:124
免白名单模式下服务器返回的设备信息
Definition: aiot_dynregmq_api.h:230
Definition: aiot_dynregmq_api.h:214
int32_t aiot_dynregmq_send_request(void *handle)
向dynregmq服务器发送dynregmq消息请求
Definition: aiot_dynregmq_api.c:361
用户购买的物联网平台实例ID. 当用户使用自购实例, 且使用免白名单方式时, 必须设置实例ID ...
Definition: aiot_dynregmq_api.h:212
是否使用免白名单功能
Definition: aiot_dynregmq_api.h:202
白名单模式下服务器返回的设备信息
Definition: aiot_dynregmq_api.h:225
int32_t aiot_dynregmq_deinit(void **handle)
结束dynregmq会话, 销毁实例并回收资源
Definition: aiot_dynregmq_api.c:252
mqtt动态注册 服务器建联时, 网络使用的安全凭据, 动态注册必需使用TLS方式建连
Definition: aiot_dynregmq_api.h:64