Link Kit C-SDK  4.0.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 {
47 
48 typedef struct {
52  uint32_t msg_id;
56  uint32_t code;
60  char *data;
64  uint32_t data_len;
68  char *message;
72  uint32_t message_len;
74 
78 typedef struct {
79  char *product_key;
80  char *device_name;
84  aiot_devinfo_recv_type_t type;
85  union {
90  } data;
92 
102 typedef void (* aiot_devinfo_recv_handler_t)(void *handle, const aiot_devinfo_recv_t *packet, void *userdata);
103 
107 typedef enum {
121 
125 typedef struct {
129  aiot_devinfo_event_type_t type;
131 
141 typedef void (*aiot_devinfo_event_handler_t)(void *handle, const aiot_devinfo_event_t *event, void *userdata);
142 
150 typedef enum {
160 
164 typedef struct {
165  char *params;
167 
168 typedef struct {
172  char *product_key;
176  char *device_name;
180  aiot_devinfo_msg_type_t type;
181  union {
198  } data;
200 
216 typedef enum {
221 
230 
239 
246 
261 
270 void *aiot_devinfo_init(void);
271 
284 int32_t aiot_devinfo_setopt(void *handle, aiot_devinfo_option_t option, void *data);
285 
296 int32_t aiot_devinfo_deinit(void **handle);
297 
308 int32_t aiot_devinfo_send(void *handle, aiot_devinfo_msg_t *msg);
309 
310 #if defined(__cplusplus)
311 }
312 #endif
313 
314 #endif /* __AIOT_DEVINFO_API_H__ */
315 
收到的应答中字段不合法
Definition: aiot_devinfo_api.h:115
int32_t aiot_devinfo_setopt(void *handle, aiot_devinfo_option_t option, void *data)
配置devinfo会话
Definition: aiot_devinfo_api.c:278
Definition: aiot_devinfo_api.h:168
void(* aiot_devinfo_recv_handler_t)(void *handle, const aiot_devinfo_recv_t *packet, void *userdata)
devinfo模块收到从网络上来的报文时, 通知用户所调用的数据回调函数
Definition: aiot_devinfo_api.h:102
aiot_devinfo_recv_generic_reply_t generic_reply
从云端收到的更新或删除设备标签的应答
Definition: aiot_devinfo_api.h:89
aiot_devinfo_recv_type_t type
报文内容所对应的报文类型, 更多信息请参考aiot_devinfo_recv_type_t
Definition: aiot_devinfo_api.h:84
aiot_devinfo_option_t
aiot_devinfo_setopt 接口的option参数可选值.
Definition: aiot_devinfo_api.h:216
int32_t aiot_devinfo_deinit(void **handle)
结束devinfo会话, 销毁实例并回收资源
Definition: aiot_devinfo_api.c:336
删除设备标签
Definition: aiot_devinfo_api.h:158
收到的应答中设备信息不合法, 无法获取product key和device name
Definition: aiot_devinfo_api.h:111
更新设备标签
Definition: aiot_devinfo_api.h:154
收到的应答中字段格式错误
Definition: aiot_devinfo_api.h:119
void(* aiot_devinfo_event_handler_t)(void *handle, const aiot_devinfo_event_t *event, void *userdata)
devinfo模块内部发生值得用户关注的状态变化时, 通知用户所调用的事件回调函数
Definition: aiot_devinfo_api.h:141
char * params
Definition: aiot_devinfo_api.h:165
更新或删除设备标签的params内容
Definition: aiot_devinfo_api.h:164
aiot_devinfo_event_type_t type
事件内容所对应的事件类型, 更多信息请参考aiot_devinfo_event_type_t
Definition: aiot_devinfo_api.h:129
char * data
指向云端应答数据的指针
Definition: aiot_devinfo_api.h:60
用户需要SDK暂存的上下文, 数据类型为(void *)
Definition: aiot_devinfo_api.h:245
devinfo模块收到从网络上来的报文时, 通知用户的报文内容
Definition: aiot_devinfo_api.h:78
char * product_key
Definition: aiot_devinfo_api.h:79
aiot_devinfo_event_type_t
devinfo模块内部发生值得用户关注的状态变化时, 通知用户的事件类型
Definition: aiot_devinfo_api.h:107
void * aiot_devinfo_init(void)
创建devinfo会话实例, 并以默认值配置会话参数
Definition: aiot_devinfo_api.c:245
char * message
指向状态消息字符串的指针, 当设备端上报请求成功时对应的应答消息为"success", 若请求失败则应答消息中包含...
Definition: aiot_devinfo_api.h:68
uint32_t data_len
云端应答数据的长度
Definition: aiot_devinfo_api.h:64
char * device_name
设备的device name
Definition: aiot_devinfo_api.h:176
char * product_key
设备的product key
Definition: aiot_devinfo_api.h:172
Definition: aiot_devinfo_api.h:259
销毁devinfo实例时, 等待其他api执行完毕的时间
Definition: aiot_devinfo_api.h:258
uint32_t code
设备端错误码, 200-请求成功, 更多错误码码查看设备端错误码
Definition: aiot_devinfo_api.h:56
int32_t aiot_devinfo_send(void *handle, aiot_devinfo_msg_t *msg)
向devinfo服务器发送devinfo消息请求
Definition: aiot_devinfo_api.c:379
Definition: aiot_devinfo_api.h:48
设置回调, 它在SDK发生内部状态变更时被调用, 告知用户
Definition: aiot_devinfo_api.h:238
aiot_devinfo_msg_data_t update
更新设备标签, 格式:"[{\"attrKey":"xxx","attrValue":"yyy"}]"
Definition: aiot_devinfo_api.h:189
aiot_devinfo_msg_type_t type
消息类型, 更多信息请参考aiot_devinfo_msg_type_t
Definition: aiot_devinfo_api.h:180
devinfo会话 需要的MQTT句柄, 需要先建立MQTT连接, 再设置MQTT句柄
Definition: aiot_devinfo_api.h:220
设置回调, 它在SDK收到网络报文的时候被调用, 告知用户
Definition: aiot_devinfo_api.h:229
uint32_t message_len
消息字符串的长度
Definition: aiot_devinfo_api.h:72
aiot_devinfo_msg_type_t
aiot_devinfo_msg_t 中的发送消息类型
Definition: aiot_devinfo_api.h:150
Definition: aiot_devinfo_api.h:45
aiot_devinfo_recv_type_t
devinfo模块收到从网络上来的报文时, 通知用户的报文类型
Definition: aiot_devinfo_api.h:44
devinfo模块内部发生值得用户关注的状态变化时, 通知用户的事件内容
Definition: aiot_devinfo_api.h:125
uint32_t msg_id
消息标识符, uint64_t类型的整数, 与属性上报或事件上报的消息标示符一致
Definition: aiot_devinfo_api.h:52
char * device_name
Definition: aiot_devinfo_api.h:80