--- description: OTA --- # \[未上线]OTA ## 下发OTA命令 * **Topic:** * 用户自定义MQTT: `v1/wudun/${PRODUCT_KEY}/${DEVICE}/``ota/upgrade``/command` * 平台默认MQTT: `v1/user/${TENANT}/${DEVICE}/``ota/upgrade``/command` * **权限:**订阅 * **Payload主结构**
参数类型是否必填描述范围样例
midUUIDtrue消息ID-3e681859-6917-4b9a-9afd-3f162cd185bd
typestrtrue消息类型ota_upgradeota_upgrade
datadatatrue消息内容-Payload - data
sub_device_uidstrtrue一级设备UID,仅二级替一级设备上报时需要该字段-jHODSda39
device_uidstrtrue设备UID-iYRkfVpi77
timestampinttrue消息时间戳(单位:毫秒)(0, ∞)1696837112000
* **Payload - data** | 参数 | 类型 | 是否必填 | 描述 | 样例 | | ------------- | ------ | ---- | ---- | -------------------------------------------------------- | | source | string | 是 | 更新目标 | ems\_II | | download\_url | string | 是 | 下载链接 | [http://example.com/ems\_II](http://example.com/ems\_II) | | md5\_code | string | 是 | MD5码 |

50a2811e047dd49ace3801685eedb732

| * **Payload示例** {% code lineNumbers="true" %} ```json { "trace_id": "577f5df0-65d6-432d-8aac-06hjkgfg2", "mid": "ee2e8f09-b280-4e4d-bcb9-1529b703cfed", "type": "ota_upgrade", "device_uid": "test", "timestamp": 1697789021000, "data":{ "source": "ems_II", "download_url": "http://example.com/ems_II", "md5_code": "50a2811e047dd49ace3801685eedb732", } } ``` {% endcode %} ### 同步OTA结果响应 * **说明:** 这里结果会有两阶段,发送两次响应,不同阶段对应的状态不同 * 第一阶段 第一阶段是准备阶段,在下载好确认文件无误后状态是 **2-文件已准备**。 状态有:**1-禁止更新 2-更新已准备3-更新准备失败** * 第二阶段 第二阶段是最后结果,如果更新成功后状态是 **4-更新成功**。 状态有:**4-更新成功 5-回滚成功 6-回滚失败** * **Topic:** * 用户自定义MQTT:`v1/wudun/${PRODUCT_KEY}/${DEVICE}/``ota/upgrade``/result` * 平台默认MQTT: `v1/user/${TENANT}/${DEVICE}/``ota/upgrade``/result` * **权限:**订阅 * **Payload主结构**
参数类型是否必填描述范围样例
midUUIDtrue消息ID-3e681859-6917-4b9a-9afd-3f162cd185bd
typestrtrue消息类型ota_upgradeota_upgrade
datadatatrue消息内容-Payload - data
sub_device_uidstrtrue一级设备UID,仅二级替一级设备上报时需要该字段-jHODSda39
device_uidstrtrue设备UID-iYRkfVpi77
timestampinttrue消息时间戳(单位:毫秒)(0, ∞)1696837112000
* **Payload - data** | 参数 | 类型 | 是否必填 | 描述 | 样例 | | ------------------- | ------ | ---- | -------------------------------------------------------------------------------------------- | ------------ | | source | string | 否 | 来源 | ems\_II | | version | string | 否 | 当前版本 | v1.0.0 | | target\_commit\_sha | string | 否 | 目标提交SHA | 6f7g8h9i0j1k | | target\_version | string | 否 | 目标版本 | v1.1.0 | | final\_commit\_sha | string | 否 | 最终提交SHA | 6f7g8h9i0j1k | | final\_version | string | 否 | 最终版本 | v1.1.0 | | status | int | 否 |

更新状态

1-禁止更新

2-更新已准备

3-更新准备失败

4-更新成功

5-回滚成功

6-回滚失败

| 4 | * **Payload示例** {% code lineNumbers="true" %} ```json { "trace_id": "577f5df0-65d6-432d-8aac-011789wfg2", "mid": "389d9ac9-c660-4459-b9d5-f43160183552", "type": "ota_upgrade", "device_uid": "test", "timestamp": 1725615497191, "data": { "source": "ems_II", "target_commit_sha": "6a2bbabde8d42abc6f8fef7b31f60c5e69045245", "target_version": "0.9.1", "final_commit_sha": "6a2bbabde8d42abc6f8fef7b31f60c5e69045245", "final_version": "0.9.1", "status": 4 } } ``` {% endcode %}