Link Kit C-SDK  4.1.0
aiot_devinfo_api.h
浏览该文件的文档.
1 
22 #ifndef __AIOT_DEVINFO_API_H__
23 #define __AIOT_DEVINFO_API_H__
24 
25 #if defined(__cplusplus)
26 extern "C" {
27 #endif
28 
29 #include <stdint.h>
30 
34 #define STATE_DEVINFO_BASE (-0x1200)
35 
39 #define STATE_DEVINFO_MISSING_MQTT_HANDLE (-0x1201)
40 
44 typedef enum {
48 
49 typedef struct {
53  uint32_t msg_id;
57  uint32_t code;
61  char *data;
65  uint32_t data_len;
69  char *message;
73  uint32_t message_len;
75 
76 
77 typedef struct {
81  uint32_t msg_id;
85  uint32_t code;
89  char *data;
93  uint32_t data_len;
97  char *message;
101  uint32_t message_len;
103 
104 
108 typedef struct {
109  char *product_key;
110  char *device_name;
114  aiot_devinfo_recv_type_t type;
115  union {
120 
125  } data;
127 
137 typedef void (* aiot_devinfo_recv_handler_t)(void *handle, const aiot_devinfo_recv_t *packet, void *userdata);
138 
142 typedef enum {
156 
160 typedef struct {
164  aiot_devinfo_event_type_t type;
166 
176 typedef void (*aiot_devinfo_event_handler_t)(void *handle, const aiot_devinfo_event_t *event, void *userdata);
177 
185 typedef enum {
199 
203 typedef struct {
204  char *params;
206 
207 typedef struct {
211  char *product_key;
215  char *device_name;
219  aiot_devinfo_msg_type_t type;
220  union {
246  } data;
248 
264 typedef enum {
269 
278 
287 
294 
309 
318 void *aiot_devinfo_init(void);
319 
332 int32_t aiot_devinfo_setopt(void *handle, aiot_devinfo_option_t option, void *data);
333 
344 int32_t aiot_devinfo_deinit(void **handle);
345 
356 int32_t aiot_devinfo_send(void *handle, aiot_devinfo_msg_t *msg);
357 
358 #if defined(__cplusplus)
359 }
360 #endif
361 
362 #endif /* __AIOT_DEVINFO_API_H__ */
363 
收到的应答中字段不合法
Definition: aiot_devinfo_api.h:150
int32_t aiot_devinfo_setopt(void *handle, aiot_devinfo_option_t option, void *data)
配置devinfo会话
Definition: aiot_devinfo_api.c:320
Definition: aiot_devinfo_api.h:207
void(* aiot_devinfo_recv_handler_t)(void *handle, const aiot_devinfo_recv_t *packet, void *userdata)
devinfo模块收到从网络上来的报文时, 通知用户所调用的数据回调函数
Definition: aiot_devinfo_api.h:137
uint32_t code
设备端错误码, 200-请求成功, 更多错误码码查看设备端错误码
Definition: aiot_devinfo_api.h:85
aiot_devinfo_recv_generic_reply_t generic_reply
从云端收到的更新或删除设备标签的应答
Definition: aiot_devinfo_api.h:119
aiot_devinfo_recv_type_t type
报文内容所对应的报文类型, 更多信息请参考aiot_devinfo_recv_type_t
Definition: aiot_devinfo_api.h:114
aiot_devinfo_option_t
aiot_devinfo_setopt 接口的option参数可选值.
Definition: aiot_devinfo_api.h:264
Definition: aiot_devinfo_api.h:77
aiot_devinfo_recv_get_reply_t get_reply
从云端收到的查询设备标签的应答
Definition: aiot_devinfo_api.h:124
int32_t aiot_devinfo_deinit(void **handle)
结束devinfo会话, 销毁实例并回收资源
Definition: aiot_devinfo_api.c:381
删除设备标签
Definition: aiot_devinfo_api.h:193
收到的应答中设备信息不合法, 无法获取product key和device name
Definition: aiot_devinfo_api.h:146
更新设备标签
Definition: aiot_devinfo_api.h:189
收到的应答中字段格式错误
Definition: aiot_devinfo_api.h:154
void(* aiot_devinfo_event_handler_t)(void *handle, const aiot_devinfo_event_t *event, void *userdata)
devinfo模块内部发生值得用户关注的状态变化时, 通知用户所调用的事件回调函数
Definition: aiot_devinfo_api.h:176
char * params
Definition: aiot_devinfo_api.h:204
更新或删除设备标签的params内容
Definition: aiot_devinfo_api.h:203
aiot_devinfo_event_type_t type
事件内容所对应的事件类型, 更多信息请参考aiot_devinfo_event_type_t
Definition: aiot_devinfo_api.h:164
char * message
指向状态消息字符串的指针, 当设备端上报请求成功时对应的应答消息为"success", 若请求失败则应答消息中包含...
Definition: aiot_devinfo_api.h:97
char * data
指向云端应答数据的指针
Definition: aiot_devinfo_api.h:61
用户需要SDK暂存的上下文, 数据类型为(void *)
Definition: aiot_devinfo_api.h:293
devinfo模块收到从网络上来的报文时, 通知用户的报文内容
Definition: aiot_devinfo_api.h:108
char * product_key
Definition: aiot_devinfo_api.h:109
aiot_devinfo_event_type_t
devinfo模块内部发生值得用户关注的状态变化时, 通知用户的事件类型
Definition: aiot_devinfo_api.h:142
void * aiot_devinfo_init(void)
创建devinfo会话实例, 并以默认值配置会话参数
Definition: aiot_devinfo_api.c:263
char * message
指向状态消息字符串的指针, 当设备端上报请求成功时对应的应答消息为"success", 若请求失败则应答消息中包含...
Definition: aiot_devinfo_api.h:69
uint32_t data_len
云端应答数据的长度
Definition: aiot_devinfo_api.h:65
char * device_name
设备的device name
Definition: aiot_devinfo_api.h:215
char * product_key
设备的product key
Definition: aiot_devinfo_api.h:211
Definition: aiot_devinfo_api.h:46
Definition: aiot_devinfo_api.h:307
销毁devinfo实例时, 等待其他api执行完毕的时间
Definition: aiot_devinfo_api.h:306
uint32_t code
设备端错误码, 200-请求成功, 更多错误码码查看设备端错误码
Definition: aiot_devinfo_api.h:57
int32_t aiot_devinfo_send(void *handle, aiot_devinfo_msg_t *msg)
向devinfo服务器发送devinfo消息请求
Definition: aiot_devinfo_api.c:424
Definition: aiot_devinfo_api.h:49
设置回调, 它在SDK发生内部状态变更时被调用, 告知用户
Definition: aiot_devinfo_api.h:286
查询设备标签
Definition: aiot_devinfo_api.h:197
aiot_devinfo_msg_data_t update
更新设备标签, 格式:"[{\"attrKey":"xxx","attrValue":"yyy"}]"
Definition: aiot_devinfo_api.h:228
aiot_devinfo_msg_type_t type
消息类型, 更多信息请参考aiot_devinfo_msg_type_t
Definition: aiot_devinfo_api.h:219
devinfo会话 需要的MQTT句柄, 需要先建立MQTT连接, 再设置MQTT句柄
Definition: aiot_devinfo_api.h:268
uint32_t msg_id
消息标识符, uint64_t类型的整数
Definition: aiot_devinfo_api.h:81
设置回调, 它在SDK收到网络报文的时候被调用, 告知用户
Definition: aiot_devinfo_api.h:277
uint32_t message_len
消息字符串的长度
Definition: aiot_devinfo_api.h:73
uint32_t message_len
消息字符串的长度
Definition: aiot_devinfo_api.h:101
aiot_devinfo_msg_type_t
aiot_devinfo_msg_t 中的发送消息类型
Definition: aiot_devinfo_api.h:185
Definition: aiot_devinfo_api.h:45
aiot_devinfo_recv_type_t
devinfo模块收到从网络上来的报文时, 通知用户的报文类型
Definition: aiot_devinfo_api.h:44
devinfo模块内部发生值得用户关注的状态变化时, 通知用户的事件内容
Definition: aiot_devinfo_api.h:160
char * data
指向云端应答数据的指针
Definition: aiot_devinfo_api.h:89
uint32_t msg_id
消息标识符, uint64_t类型的整数
Definition: aiot_devinfo_api.h:53
char * device_name
Definition: aiot_devinfo_api.h:110
uint32_t data_len
云端应答数据的长度
Definition: aiot_devinfo_api.h:93