产品动态
$shadow/operation/${productId}/${deviceName}**:用于发布(上行)消息,可实现对设备影子数据的 get/update 操作。$shadow/operation/result/${productId}/${deviceName}**:用于订阅(下行)消息,影子服务端通过此 Topic 发送应答和推送消息。
$shadow/operation/${productId}/${deviceName} 主题发布 get 消息。SDK 会提供 API 发送 get 消息,get 消息使用特定的 JSON 字符串格式:{"type": "get","clientToken": "clientToken"}
$shadow/operation/ABC1234567/AirConditioner 发送 get 消息,获取最新的设备参数。$shadow/operation/result/${productId}/${deviceName} 主题发布消息进行响应,通过 JSON 数据返回设备影子所有数据内容,SDK 会通过相应的回调函数通知业务层。$shadow/operation/result/ABC1234567/AirConditioner 发送下列数据来响应空调设备的 get 请求。示例代码如下:{"type": "get","result": 0,"timestamp": 1514967088,"clientToken": "clientToken","payload": {"state": {"reported": {"temperature": 27},"desired": {"temperature": 25},"delta": {"temperature": 25}},"metadata": {"reported": {"temperature": {"timestamp": 1514967066}},"desired": {"temperature": {"timestamp": 1514967076}},"delta": {"temperature": {"timestamp": 1514967076}}},"version": 1,"timestamp": 1514967076}}
$shadow/operation/${productId}/${deviceName} 主题发送 update 消息,告知设备影子服务端其当前状态。SDK 提供相应的 API 发送 update 消息,业务层只需指定 reported 字段的内容。消息内容使用特定的 JSON 字符串格式。$shadow/operation/ABC1234567/AirConditioner 发送 update 消息以报告设备当前的设备状态。示例代码如下:{"type": "update","state": {"reported": {"temperature": 27}},"version": 1,"clientToken": "clientToken"}
{"type": "update","result": 0,"timestamp": 1514967066,"clientToken": "clientToken","payload": {"state": {"reported": {"temperature": 27}},"metadata": {"reported": {"temperature": {"timestamp": 1514967066}}},"version": 2,"timestamp": 1514967066}}
$shadow/operation/result/ABC1234567/AirConditioner 发送以下消息进行回应。{"type": "update","result": 5005,"timestamp": 1514967066,"clientToken": "clientToken","payload": {"state": {"reported": {"temperature": 27,"mode": "cool"}},"metadata": {"reported": {"temperature": {"timestamp": 1514967066},"mode": {"timestamp": 1514967050}}},"version": 2,"timestamp": 1514967066}}
{"type": "update","state": {"desired": {"temperature": 25}},"version": 2,"clientToken": "clientToken"}
{"type": "update","result": 0,"timestamp": 1514967076,"clientToken": "clientToken","payload": {"state": {"desired": {"temperature": 25}},"metadata": {"desired": {"temperature": {"timestamp": 1514967076}}},"version": 3,"timestamp": 1514967076}}
$shadow/operation/result/ABC1234567/AirConditioner 发送 delta 消息。{"type": "delta","timestamp": 1514967076,"payload": {"state": {"temperature": 25},"metadata": {"temperature": {"timestamp": 1514967076}},"version": 3,"timestamp": 1514967076}}
$shadow/operation/${productId}/${deviceName} 主题发送消息。$shadow/operation/ABC1234567/AirConditioner 发送消息:{"type": "update","state": {"desired": null},"version": 3,"clientToken": "clientToken"}
$shadow/operation/result/${productId}/${deviceName} 发送应答消息。"desired":null 消息后,通过向 $shadow/operation/result/ABC1234567/AirConditioner 发送更新设备影子文档成功的消息。{"type": "update","result": 0,"timestamp": 1514967086,"clientToken": "clientToken","payload": {"state": {"reported": {"temperature": 25},"desired": null},"metadata": {"reported": {"temperature": {"timestamp": 1514967086}},"desired": {"temperature": {"timestamp": 1514967086}}},"version": 4,"timestamp": 1514967086}}
文档反馈