產生OTA升級包檔案的URL後,調用該介面建立裝置的OTA升級包。
使用說明
在調用此介面建立升級包前,已調用GenerateOTAUploadURL產生升級包上傳資訊,並已調用OSS PostObject介面上傳了升級包檔案。
使用限制
單個執行個體下最多可有500個升級包。
QPS限制
單個阿里雲帳號調用該介面的每秒請求數(QPS)最大限制為10。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
請求參數
| 名稱 | 類型 | 是否必選 | 樣本值 | 描述 |
| Action | String | 是 | CreateOTAFirmware | 系統規定參數。取值:CreateOTAFirmware。 |
| DestVersion | String | 是 | 2.0.0 | 當前OTA升級包的版本號碼,僅支援英文字母、數字、半形句號(.)、短劃線(-)和底線(_)。長度限制為1~64個字元。 |
| FirmwareName | String | 是 | Firmware2 | OTA升級包名稱,需在阿里雲帳號下唯一,建立後不可修改。支援中文、英文字母、日文、數字、短劃線(-)、底線(_)和半形圓括弧(()),必須以中文、英文、日文或數字開頭,長度限制為1~40個字元。 |
| IotInstanceId | String | 否 | iot-cn-0pp1n8t**** | 執行個體ID。您可在物聯網平台控制台的執行個體概覽頁面,查看當前執行個體的ID。 重要
|
| FirmwareUrl | String | 否 | https://iotx-ota.oss-cn-shanghai.aliyuncs.com/ota/bcd6142594d0183a16d825ad8225****/A6B3400B70CA4D6D872160D1A91A****.bin | OTA升級包檔案的URL,即升級包檔案在Object Storage Service上的儲存地址。您可調用GenerateOTAUploadURL產生升級包檔案的URL。 重要 僅當OTA升級包中添加一個檔案時,才可傳入此參數,且必須傳入。 |
| FirmwareSign | String | 否 | 93230c3bde425a9d7984a594ac55**** | OTA升級包檔案的簽名值。使用SignMethod值(SHA256或MD5)對升級包檔案內容加簽計算得出的值。 重要 僅當OTA升級包中添加一個檔案時,才可傳入此參數。若不傳入,則採用Object Storage Service中升級包檔案的MD5值作為升級包簽名值。 |
| SignMethod | String | 否 | MD5 | OTA升級包簽名方法。取值:
|
| FirmwareSize | Integer | 否 | 900 | OTA升級包檔案的大小,單位:位元組。 重要 僅當OTA升級包中添加一個檔案時,才可傳入此參數。若不傳入,則採用Object Storage Service中升級包檔案的大小。 |
| ProductKey | String | 否 | a1uctKe**** | OTA升級包所屬產品的ProductKey。 |
| FirmwareDesc | String | 否 | OTA function updated | OTA升級包描述。長度不可超過100個字元。一個中文漢字算一個字元。 |
| Type | Integer | 否 | 0 | OTA升級包類型。可選:
不傳入此參數,則預設值為0。 |
| SrcVersion | String | 否 | 1.0.0 | 待升級OTA模組版本號碼,即待升級裝置的當前OTA模組版本號碼。 可以調用QueryDeviceDetail,查看裝置OTA模組版本號碼(FirmwareVersion)。 說明
|
| ModuleName | String | 否 | WifiConfigModify | OTA模組名稱。OTA模組是同產品下裝置的不同可升級模組。 說明
|
| NeedToVerify | Boolean | 否 | true | 是否需要在建立批量升級任務前通過升級包驗證。
|
| Udi | String | 否 | {"ota_notice":"升級底層網路攝影機驅動,解決視頻映像模糊的問題。"} | 推送給裝置的自訂資訊。不限制常值內容格式,長度不超過4096個字元。 添加該升級包完成,並建立升級任務後,物聯網平台向裝置推送升級通知時,會將該自訂資訊下發給裝置。 |
| MultiFiles.N.Name | String | 否 | Firmware1 | OTA升級包檔案名稱,長度限制為1~32個字元。支援最多添加20個檔案名稱,且多個升級包檔案的名稱不能重複。 重要 OTA升級包中添加多個升級包檔案時,必須傳入此參數。 |
| MultiFiles.N.Size | Integer | 否 | 200 | OTA升級包檔案的大小,單位:位元組。 說明 OTA升級包中添加多個升級包檔案時,可傳入此參數。若不傳入,則採用Object Storage Service中升級包檔案的大小。 |
| MultiFiles.N.Url | String | 否 | https://iotx-ota.oss-cn-shanghai.aliyuncs.com/ota/bcd6142594d0183a16d825ad8225****/A6B3400B70CA4D6D872160D1A91A****.bin | OTA升級包檔案的URL,即升級包檔案在Object Storage Service上的儲存地址。您可調用GenerateOTAUploadURL為每個升級包檔案組建檔案URL。 重要 OTA升級包中添加多個升級包檔案時,必須傳入此參數。 |
| MultiFiles.N.SignValue | String | 否 | 93230c3bde425a9d7984a594ac45**** | OTA升級包檔案的簽名值。使用SignMethod對升級包檔案內容加簽計算得出的值。 說明 OTA升級包中添加多個升級包檔案時,可傳入此參數。若不傳入,則採用Object Storage Service中升級包檔案的MD5值作為升級包簽名值。 |
| MultiFiles.N.FileMd5 | String | 否 | 93230c3bde425a9d7984a594ac56*** | OTA升級包檔案的MD5值。 說明 OTA升級包中添加多個升級包檔案時,可傳入此參數。若不傳入,則採用Object Storage Service中升級包檔案的MD5值。 |
調用API時,除了本文介紹的該API的特有請求參數,還需傳入公用請求參數。公用請求參數說明,請參見公用參數文檔。
返回資料
| 名稱 | 類型 | 樣本值 | 描述 |
| Code | String | iot.system.SystemException | 調用失敗時,返回的錯誤碼。更多資訊,請參見錯誤碼。 |
| Data | Struct | 調用成功時,返回的升級包資訊。更多資訊,請參見Data下參數描述。 |
|
| FirmwareId | String | s8SSHiKjpBfrM3BSN0z803**** | OTA升級包ID,物聯網平台為升級包頒發的唯一識別碼。 |
| UtcCreate | String | 2019-11-04T06:21:54.607Z | OTA升級包的建立時間,UTC格式。 |
| ErrorMessage | String | 系統異常 | 調用失敗時,返回的出錯資訊。 |
| RequestId | String | 291438BA-6E10-4C4C-B761-243B9A0D324F | 阿里雲為該請求產生的唯一識別碼。 |
| Success | Boolean | true | 是否調用成功。
|
樣本
請求樣本
https://iot.cn-shanghai.aliyuncs.com/?Action=CreateOTAFirmware
&ProductKey=a1uctKe****
&FirmwareName=Firmware2
&DestVersion=2.0.0
&FirmwareUrl=https%3A%2F%2iotx-ota.oss-cn-shanghai.aliyuncs.com%2Fota%2F****%2F****.bin
&SignMethod=MD5
&FirmwareSign=93230c3bde425a9d7984a594ac55****
&FirmwareSize=900
&FirmwareDesc=OTA function updated
&Type=0
&ModuleName=WifiConfigModify
&<公用請求參數>
正常返回樣本
XML格式
<CreateOTAFirmwareResponse>
<Data>
<FirmwareId>s8SSHiKjpBfrM3BSN0z803****</FirmwareId>
<UtcCreate>2019-11-04T06:21:54.607Z</UtcCreate>
</Data>
<RequestId>E4BD5A12-7C1D-4712-A7D5-B2432331165E</RequestId>
<Success>true</Success>
</CreateOTAFirmwareResponse>
JSON格式
{
"Data": {
"FirmwareId": "s8SSHiKjpBfrM3BSN0z803****",
"UtcCreate": "2019-11-04T06:21:54.607Z"
},
"RequestId": "291438BA-6E10-4C4C-B761-243B9A0D324F",
"Success": true
}
錯誤碼
訪問錯誤中心查看更多錯誤碼。