Appearance
设备影子JSON详解
设备影子数据通过Topic进行流转,主要包括设备上报状态到设备影子、应用程序更改设备状态、设备离线再上线后主动获取设备影子信息。本文介绍设备影子Topic及其数据格式。
设备影子JSON文档示例
javascript
{
"state": {
"desired": "RED",
"dt": 1469564576,
"reported": "GREEN",
"rt": 1469564576
},
"metadata": {
"reported": 23.6,
"rt": 1469564576,
"desired": 333,
"dt": 1469564576
},
"reqid": "0020fdf71f0d491da12ba3cd38b205be",
"t": 1469564492,
"v": 1
}
设备获取影子
设备可主动发送获取设备影子的请求命令到平台,平台反馈设备影子给设备。
请求topic定义
请求topic:tlink/${productKey}/${deviceName}/shadow/get
数据流向:设备发布消息,平台监听消息
请求数据体格式
请求数据格式
javascript
{
"reqid": "0020fdf71f0d491da12ba3cd38b205be",
"v": "1",
"t": 1630054074378,
"method": "tlink.${productKey}.${deviceName}.shadow.get",
"data": {}
}
请求参数说明
参数名称 | 类型 | 是否必选 | 描述 |
---|---|---|---|
reqid | String | 是 | 消息ID号。全局唯一,用于系统消息追踪 |
v | String | 是 | 协议版本号,目前协议版本号唯一取值为1 |
t | Long | 是 | 消息发送时间戳 |
method | String | 否 | TCP连接时必传 |
data | Object | 是 | 请求参数,请求的数据。不需要则为空。 |
响应topic定义
响应的topic说明:tlink/${productKey}/${deviceName}/shadow/get_reply
数据流向:平发布消息,设备监听消息
响应数据体格式
javascript
{
"reqid": "0020fdf71f0d491da12ba3cd38b205be",
"method": "tlink.${productKey}.${deviceName}.shadow.get_reply",
"code": 200,
"data": {
"Power": {
"desired": "on",
"dt": 1469564576,
"reported": "on",
"rt": 1469564576
},
"WF": {
"reported": 23.6,
"rt": 1469564576,
"desired": 333,
"dt": 1469564576
}
}
}
响应参数说明
参数名称 | 类型 | 是否必选 | 描述 |
---|---|---|---|
reqid | String | 是 | 消息ID号。和请求的对应 |
method | String | 否 | TCP连接时必传 |
code | Integer | 是 | 结果状态码。成功为200,其他为失败 |
data | Object | 是 | 请求成功时,返回的数据。 |
Power | Object | 是 | 属性名 |
desired | String | 是 | 期望值 |
dt | Long | 是 | 期望值设置时间戳 |
reported | String | 是 | 实际上报值 |
rt | Long | 是 | 实际上报值时间戳 |