如何使用 AWS CLI 工具将自定义字段添加到 OTA 作业文档

问题描述 投票:0回答:0

我们正在开发一种嵌入式设备(使用 FreeRTOS),它将从 AWS 接收 OTA 更新。

我们想在用于启动 OTA 更新的 IoT 作业文档中添加一些自定义字段。

我一直在使用 AWS CLI 工具来创建 OTA 作业。这是我所拥有的:

aws iot create-ota-update
  --profile dev
  --ota-update-id my-test-ota-update
  --description "OTA update generated for testing"
  --targets arn:aws:iot:xxxxxxx
  --protocols MQTT
  --target-selection SNAPSHOT
  --aws-job-executions-rollout-config "maximumPerMinute=10"
  --aws-job-timeout-config "inProgressTimeoutInMinutes=60"
  --files [file info json]
  --role-arn arn:aws:iam::xxxxxxxxxxx

[file info json] 是表示已经创建的固件文件流的压缩 JSON,看起来像这样。请注意,“streamId”将是我已经创建的文件流的 ID:

{
    "fileName": "myfile",
    "fileType": 0,
    "fileLocation": {
        "stream": {
            "streamId": "xxxxxxxxxx",
            "fileId": 0
        }
    }
}

当我使用此命令时,设备会收到如下所示的物联网作业:

{
  "clientToken": "xxxxxxx",
  "timestamp": 1679881909,
  "execution": {
    "jobId": "xxxxxxxxxxx",
    "status": "QUEUED",
    "queuedAt": 1679881895,
    "lastUpdatedAt": 1679881895,
    "versionNumber": 1,
    "executionNumber": 1,
    "jobDocument": {
      "afr_ota": {
        "protocols": [
          "MQTT"
        ],
        "streamname": "xxxxxxxxxxxxxx",
        "files": [
          {
            "filepath": "myfile",
            "filesize": 1249280,
            "fileid": 0,
            "fileType": 0
          }
        ]
      }
    }
  }
}

我想要的是在“afr_ota”对象内向文档添加一个字段。

根据命令参考,有一个“--additional-parameters”的选项。我尝试使用这个 - 例如

--additional-parameters KeyName1=string,KeyName2=string

但工作文档中没有添加任何内容。

是否可以使用 AWS CLI 工具向作业文档添加字段?

amazon-web-services command-line-interface iot aws-iot ota
© www.soinside.com 2019 - 2024. All rights reserved.