本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
命令执行事件
AWS IoT 当命令执行更改状态时,向 MQTT 主题发布事件消息。您可以使用这些事件来监视命令执行进度,并构建响应状态变化的应用程序。
命令执行事件主题
命令执行事件发布到以下 MQTT 主题:
$aws/events/commandExecution/commandId/status
其中:
-
是命令的标识符。commandId -
是命令执行的状态。有效值为:statusCREATED,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
-
包含有关状态的其他信息(如果有)的对象。包含
reasonCode和reasonDescription字段。 - eventType
-
设置为 “命令执行”。
- Commandarn
-
命令的亚马逊资源名称 (ARN)。
- Targetarn
-
用于执行命令的目标设备(事物或客户端)的 ARN。
- timestamp
-
事件发生的 UNIX 时间戳。