命令执行事件 - AWS IoT Core

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

命令执行事件

AWS IoT 当命令执行更改状态时,向 MQTT 主题发布事件消息。您可以使用这些事件来监视命令执行进度,并构建响应状态变化的应用程序。

命令执行事件主题

命令执行事件发布到以下 MQTT 主题:

$aws/events/commandExecution/commandId/status

其中:

  • commandId是命令的标识符。

  • status是命令执行的状态。有效值为: CREATED, IN_PROGRESS, SUCCEEDED, FAILED, REJECTED, TIMED_OUT

要接收所有命令和所有状态的通知,请使用通配符订阅以下主题:

$aws/events/commandExecution/+/#
命令执行事件消息

当命令执行状态发生变化时,会向相应的 MQTT 主题 AWS IoT 发布一条事件消息。消息包含以下示例负载:

{ "executionId": "2bd65c51-4cfd-49e4-9310-d5cbfdbc8554", "status": "FAILED", "statusReason": { "reasonCode": "DEVICE_TOO_BUSY", "reasonDescription": "" }, "eventType": "COMMAND_EXECUTION", "commandArn": "arn:aws:iot:us-east-1:123456789012:command/0b9d9ddf-e873-43a9-8e2c-9fe004a90086", "targetArn": "arn:aws:iot:us-east-1:123456789012:thing/5006c3fc-de96-4def-8427-7eee36c6f2bd", "timestamp": 1717708862107 }

负载包含以下属性:

执行编号

命令执行的唯一标识符(字符串)。

状态

命令执行的状态。有效值为: CREATED, IN_PROGRESS, SUCCEEDED, FAILED, REJECTED, TIMED_OUT

statusReason

包含有关状态的其他信息(如果有)的对象。包含reasonCodereasonDescription字段。

eventType

设置为 “命令执行”。

Commandarn

命令的亚马逊资源名称 (ARN)。

Targetarn

用于执行命令的目标设备(事物或客户端)的 ARN。

timestamp

事件发生的 UNIX 时间戳。