AWS IoT
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

影子文档语法

在使用 RESTful APIMQTT 发布/订阅消息的 UPDATE、GET 和 DELETE 操作中,Device Shadow 服务使用以下文档。有关更多信息,请参阅 Device Shadow 服务文档

请求状态文档

请求状态文档具有以下格式:

{ "state": { "desired": { "attribute1": integer2, "attribute2": "string2", ... "attributeN": boolean2 }, "reported": { "attribute1": integer1, "attribute2": "string1", ... "attributeN": boolean1 } } "clientToken": "token", "version": version }
  • state – 更新仅影响指定字段。

  • clientToken – 如果使用,您可以验证请求和响应是否包含相同的客户端令牌。

  • version - 如果使用,仅当指定的版本与 Device Shadow 服务拥有的最新版本相符时,该服务才会处理更新。

响应状态文档

响应状态文档具有以下格式:

{ "state": { "desired": { "attribute1": integer2, "attribute2": "string2", ... "attributeN": boolean2 }, "reported": { "attribute1": integer1, "attribute2": "string1", ... "attributeN": boolean1 }, "delta": { "attribute3": integerX, "attribute5": "stringY" } }, "metadata": { "desired": { "attribute1": { "timestamp": timestamp }, "attribute2": { "timestamp": timestamp }, ... "attributeN": { "timestamp": timestamp } }, "reported": { "attribute1": { "timestamp": timestamp }, "attribute2": { "timestamp": timestamp }, ... "attributeN": { "timestamp": timestamp } } }, "timestamp": timestamp, "clientToken": "token", "version": version }
  • state

    • reported – 仅当事物报告了 reported 部分的任何数据时存在,且仅包含请求状态文档中的字段。

    • desired – 仅当事物报告了 desired 部分的任何数据时存在,且仅包含请求状态文档中的字段。

  • metadata – 包含 desiredreported 部分中每个属性的时间戳,因此,您可以确定状态的更新时间。

  • timestamp – AWS IoT 生成响应时的 Epoch 日期和时间。

  • clientToken — 仅当客户端令牌用于向 /update 主题发布有效 JSON 时存在。

  • version – AWS IoT 中共享的设备影子文档的当前版本。它将在文档先前版本号的基础上增加一个数。

错误响应文档

错误响应文档具有以下格式:

{ "code": error-code, "message": "error-message", "timestamp": timestamp, "clientToken": "token" }
  • code – 用于表明错误类型的 HTTP 响应代码。

  • message – 用于提供额外信息的文本消息。

  • timestamp – AWS IoT 生成响应时的日期和时间。

  • clientToken — 仅当客户端令牌用于向 /update 主题发布有效 JSON 时存在。

有关更多信息,请参阅 影子错误消息