Link Kit C-SDK  5.0.0
结构体 | 类型定义 | 枚举 | 函数
aiot_shadow_api.h 文件参考

设备影子模块头文件, 提供更新, 删除, 获取设备影子的能力 更多...

#include <stdint.h>

浏览源代码.

结构体

struct  aiot_shadow_recv_generic_reply_t
 设备调用 aiot_device_shadow_update, aiot_device_shadow_clean_desiredaiot_device_shadow_delete_reported 发送消息后, 云端返回的应答消息 更多...
 
struct  aiot_shadow_recv_control_t
 如果设备在线, 用户应用调用云端APIUpdateDeviceShadow后云端下推的消息 更多...
 
struct  aiot_shadow_recv_get_reply_t
 设备调用 aiot_device_shadow_get 发送消息后, 云端返回的设备影子数据 更多...
 
struct  aiot_shadow_recv_t
 shadow模块收到从网络上来的报文时, 通知用户的报文内容 更多...
 

类型定义

typedef void(* aiot_shadow_recv_callback_t) (void *device, const aiot_shadow_recv_t *recv, void *userdata)
 shadow模块收到从网络上来的报文时, 通知用户所调用的数据回调函数 更多...
 

枚举

enum  aiot_shadow_recv_type_t { AIOT_SHADOWRECV_GENERIC_REPLY, AIOT_SHADOWRECV_CONTROL, AIOT_SHADOWRECV_GET_REPLY }
 shadow模块收到从网络上来的报文时, 通知用户的报文类型 更多...
 

函数

int32_t aiot_device_shadow_set_callback (void *device, aiot_shadow_recv_callback_t callback, void *userdata)
 设置设备影子消息回调函数 更多...
 
int32_t aiot_device_shadow_update (void *device, char *reported, int64_t version)
 更新设备影子中的reported数据 更多...
 
int32_t aiot_device_shadow_clean_desired (void *device, int64_t version)
 清除设备影子中的desired数据 更多...
 
int32_t aiot_device_shadow_get (void *device)
 获取设备影子 更多...
 
int32_t aiot_device_shadow_delete_reported (void *device, char *reported, int64_t version)
 用于删除设备影子中的reported数据 更多...
 

详细描述

设备影子模块头文件, 提供更新, 删除, 获取设备影子的能力

日期
2022-01-20

类型定义说明

typedef void(* aiot_shadow_recv_callback_t) (void *device, const aiot_shadow_recv_t *recv, void *userdata)

shadow模块收到从网络上来的报文时, 通知用户所调用的数据回调函数

参数
[in]handleshadow会话句柄
[in]recvshadow接受消息结构体, 存放收到的shadow报文内容
[in]userdata指向用户上下文数据的指针, 这个指针由用户通过调用aiot_device_shadow_set_callback 配置userdata
返回
void

枚举类型说明

shadow模块收到从网络上来的报文时, 通知用户的报文类型

枚举值
AIOT_SHADOWRECV_GENERIC_REPLY 

设备发送 aiot_device_shadow_update, aiot_device_shadow_clean_desiredaiot_device_shadow_delete_reported 发送消息后, 云端返回的应答消息,
消息数据结构体参考 aiot_shadow_recv_generic_reply_t

AIOT_SHADOWRECV_CONTROL 

设备在线时, 云端自动下发的影子内容, 消息数据结构体参考 aiot_shadow_recv_control_t

AIOT_SHADOWRECV_GET_REPLY 

主动获取设备影子内容云端返回的影子内容, 消息数据结构体参考 aiot_shadow_recv_get_reply_t

函数说明

int32_t aiot_device_shadow_set_callback ( void *  device,
aiot_shadow_recv_callback_t  callback,
void *  userdata 
)

设置设备影子消息回调函数

参数
[in]device设备句柄
[in]callback消息回调
[in]userdata执行回调消息的上下文
返回
int32_t
返回值
STATE_SUCCESS参数配置成功
STATE_USER_INPUT_NULL_POINTER入参为空
其它参考aiot_state_api.h
int32_t aiot_device_shadow_update ( void *  device,
char *  reported,
int64_t  version 
)

更新设备影子中的reported数据

参数
[in]device设备句柄
[in]reported设备影子reported object字符串, 必须为以结束符'\0'结尾的字符串, 如"{\"LightSwitch": 1}"
[in]version设备影子的目标版本, 必须大于设备影子的当前版本, 若设置为-1将清空设备影子数据, 并将设备影子版本更新为0
返回
int32_t
返回值
STATE_SUCCESS参数配置成功
STATE_USER_INPUT_NULL_POINTER入参为空
其它参考aiot_state_api.h
int32_t aiot_device_shadow_clean_desired ( void *  device,
int64_t  version 
)

清除设备影子中的desired数据

参数
[in]device设备句柄
[in]version设备影子的目标版本, 必须大于设备影子的当前版本
返回
int32_t
返回值
STATE_SUCCESS参数配置成功
STATE_USER_INPUT_NULL_POINTER入参为空
其它参考aiot_state_api.h
int32_t aiot_device_shadow_get ( void *  device)

获取设备影子

参数
[in]device设备句柄
返回
int32_t
返回值
STATE_SUCCESS参数配置成功
STATE_USER_INPUT_NULL_POINTER入参为空
其它参考aiot_state_api.h
int32_t aiot_device_shadow_delete_reported ( void *  device,
char *  reported,
int64_t  version 
)

用于删除设备影子中的reported数据

参数
[in]device设备句柄
[in]reported用户将要删除的reported数据, 必须为以结束符'\0'结尾的字符串.
若要删除全部reported数据, 则应填写"\"null""字符串 \n 若要删除部分reported数据, 则将对应的值定义为null, 如只清除LightSwitch的值应填写"{"LightSwitch":"null"}"
[in]version设备影子的目标版本, 必须大于设备影子的当前版本, 若设置为-1将清空设备影子数据, 并将设备影子版本更新为0
返回
int32_t
返回值
STATE_SUCCESS参数配置成功
STATE_USER_INPUT_NULL_POINTER入参为空
其它参考aiot_state_api.h