全部產品
Search
文件中心

IoT Platform:CreateOTAFirmware

更新時間:Feb 13, 2025

產生OTA升級包檔案的URL後,調用該介面建立裝置的OTA升級包。

使用說明

在調用此介面建立升級包前,已調用GenerateOTAUploadURL產生升級包上傳資訊,並已調用OSS PostObject介面上傳了升級包檔案。

使用限制

單個執行個體下最多可有500個升級包。

QPS限制

單個阿里雲帳號調用該介面的每秒請求數(QPS)最大限制為10。

說明 單個阿里雲帳號下的所有RAM使用者共用該阿里雲帳號的配額。

調試

您可以在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

重要
  • 若有ID值,必須傳入該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值(SHA256MD5)對升級包檔案內容加簽計算得出的值。

重要 僅當OTA升級包中添加一個檔案時,才可傳入此參數。若不傳入,則採用Object Storage Service中升級包檔案的MD5值作為升級包簽名值。
SignMethod String MD5

OTA升級包簽名方法。取值:

  • MD5(預設):MD5簽名。
  • SHA256:SHA256簽名。
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:整包升級包,您上傳的升級包檔案包含完整的升級包,將推送整包升級包給裝置進行升級。
  • 1:差分升級包,您上傳的升級包檔案僅包含新版本升級包與之前版本的差異部分,僅推送差異部分給裝置進行升級。

不傳入此參數,則預設值為0

SrcVersion String 1.0.0

待升級OTA模組版本號碼,即待升級裝置的當前OTA模組版本號碼。

可以調用QueryDeviceDetail,查看裝置OTA模組版本號碼(FirmwareVersion)。

說明
  • Type1(差分升級包)時,必須傳入該參數,且取值不能與當前升級包版本(DestVersion)相同。
  • Type0(整包升級包)時,可不傳入該參數。
ModuleName String WifiConfigModify

OTA模組名稱。OTA模組是同產品下裝置的不同可升級模組。

說明
  • 不傳入該參數,則使用default模組,表示整個裝置的韌體。
  • 可調用CreateOTAModule建立自訂OTA模組,調用ListOTAModuleByProduct查詢產品下已建立的OTA模組。
NeedToVerify Boolean true

是否需要在建立批量升級任務前通過升級包驗證。

  • true(預設):需要
  • false:不需要
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

是否調用成功。

  • true:調用成功,表示OTA升級包建立成功。
  • false:調用失敗,表示OTA升級包建立失敗。

樣本

請求樣本

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
}

錯誤碼

訪問錯誤中心查看更多錯誤碼。