- 最新动态
- 产品介绍
- 价格说明
- 快速入门
- 开发指南
- 用户指南
- 最佳实践
- API参考
-
SDK参考
- SDK介绍(联通用户专用)
- 应用侧JAVA SDK API参考(联通用户专用)
- 应用侧Python SDK API参考(联通用户专用)
- 设备侧Agent Lite API参考(C)(联通用户专用)
- 设备侧Agent Lite API参考(Android)(联通用户专用)
- 设备侧Agent Lite API参考(Java)(联通用户专用)
-
常见问题
- 热门问题(联通用户专用)
-
方案咨询(联通用户专用)
- 开发中心、设备接入和设备管理的差异是什么?
- IAM子用户或子项目是否可以开通物联网平台服务?
- 物联网平台支持在华为云的哪些区域开通?
- 如何成为华为IoT生态合作伙伴?
- 物联网平台支持哪些接入方式和协议?
- 华为是否提供模组/硬件终端/应用软件等?
- 设备接入模拟器HubSimulator是否能在设备管理使用?
- 设备接入服务如何获取设备数据?
- 物联网平台的应用和设备可以无限创建吗?
- 物联网平台支持批量注册设备吗?
- 物联网平台对应用和设备有消息流控吗?
- 开发中心单个应用允许接入设备数是多少?
- 数据在物联网平台的保存时间是多久?
- 物联网平台支持的DTLS加密算法有哪些?
- 物联网平台支持二进制大小端模式切换吗?
- 什么是NB-IoT?
- 物联网平台支持的硬件架构和使用的相关组件有哪些?
-
设备集成(联通用户专用)
- 如何获取设备和应用对接地址?
- 如何下载LiteOS IDE/IoT Studio?
- 物联网平台允许一个IMEI号注册多个设备吗?
- 如何设置设备名称?
- IoT设备如何激活?
- 物联网平台如何切换设备的在线/离线状态?
- 通过网关接入的子设备,平台如何识别是哪一个设备?
- deviceId、nodeId和IMEI有什么对应关系?
- Agent Lite和Agent Tiny有什么区别?
- 使用Agent Lite接入的网关设备gwbindinfo.json文件丢失如何处理?
- 运行Agent Lite Java Demo报UnsatisfiedLinkError错误怎么处理?
- 设备如何发送文件至物联网平台?
- 开发中心模拟设备如何上报负数?
- 开发中心支持哪几种省电模式?
- 开发中心支持数据转发吗?
- 开发中心没有设备分组和批量添加设备,怎么办?
- 如何检测NB网络信号?
- NB模组附着网络失败如何处理?
- NB模组绑定设备失败怎么办?
- NB模组无法正常上报数据怎么办?
- NB设备上报数据为字符串时如何转换为二进制编码?
- NB设备接入时,出现513错误?
- 为什么执行AT+CUFN=1会返回error?
- 平台向NB-IoT设备缓存下发命令,为什么设备一直收到同一条控制命令?
- AT+CGDCONT=1, CTNB是什么?
- NB-IoT设备如何选择PSM、DRX、eDRX模式?
- 应用集成(联通用户专用)
-
订阅推送(联通用户专用)
- 调用订阅接口时,回调地址如何获取?
- 应用服务器如何收到命令状态变化的通知?
- 如何获取证书?
- 回调地址可以使用域名吗?
- 订阅后消息推送失败,例如提示503如何处理?
- 应用服务器收到数据,但是平台显示推送失败?
- 应用服务器只有内网地址,能否订阅成功?
- 调用订阅接口时,提示回调地址不合法?
- 物联网平台只支持HTTPS的回调地址吗?
- 回调地址可以修改吗?
- 推送证书失效怎么处理?
- 调用删除单个订阅接口时,subscriptionId如何获取?
- 设备数据变化通知和批量设备数据变化通知的区别是什么?
- 应用服务器如何获取物联网平台推送消息时使用的地址?
- 物联网平台订阅推送是否具有重推机制?
- 为什么设备上报一条数据后应用服务器会收到多条推送?
- 在同一个应用下,平台可以将不同设备上报的数据,推送到两个服务器吗?
- NB-IoT设备已订阅消息确认和命令响应通知,为何应用服务器收不到推送消息?
- 数据上报(联通用户专用)
- 命令下发(联通用户专用)
- 产品模型/Profile(联通用户专用)
- 编解码插件(联通用户专用)
- 软/固件升级(联通用户专用)
- 文档下载
- 通用参考
链接复制成功!
创建软件升级任务
接口说明
若需要对设备进行软件版本升级,应用服务器可调用此接口为多个设备创建软件升级任务,升级前请确保目标版本包已上传到物联网平台。
注意事项
仅支持对使用LWM2M协议接入的设备进行软件升级。
URI
请求方法 |
POST |
---|---|
URI |
/iodm/northbound/v1.5.0/operations/softwareUpgrade |
传输协议 |
HTTPS |
请求参数
参数 |
必选/可选 |
类型 |
位置 |
描述 |
---|---|---|---|---|
app_key |
必选 |
String |
header |
访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。 |
Authorization |
必选 |
String |
header |
访问物联网平台的认证信息,值为“Bearer {accessToken}”,其中{accessToken}为调用鉴权接口返回的accessToken。 |
fileId |
必选 |
String |
body |
要升级的目标版本包ID。 |
targets |
必选 |
body |
要进行升级的目标。 |
|
policy |
可选 |
body |
升级任务的执行策略。 |
参数 |
必选/可选 |
类型 |
位置 |
描述 |
---|---|---|---|---|
deviceGroups |
可选 |
List<String> |
body |
设备组名称列表,最多支持256个设备组。 与指定设备列表方式二选一。 |
deviceType |
可选 |
String(256) |
body |
设备类型。 指定设备组时,此字段必选。 |
model |
可选 |
String(256) |
body |
设备型号。 指定设备组时,此字段必选。 |
manufacturerName |
可选 |
String(256) |
body |
设备厂商名称。 指定设备组时,此字段必选。 |
devices |
可选 |
List<String> |
body |
设备ID列表,最多支持256个设备。 与指定设备组方式二选一。 |
参数 |
必选/可选 |
类型 |
位置 |
描述 |
---|---|---|---|---|
executeType |
必选 |
String |
body |
执行类型,默认值为now。
|
startTime |
可选 |
String |
body |
任务执行时间,executeType为custom时必选,需要填写UTC时间,格式:yyyyMMdd'T'HHmmss'Z',如 20151212T121212Z。 您需要根据本地所在时区自己进行时间转换。 |
endTime |
可选 |
String |
body |
任务停止时间,executeType为custom时必选,需要填写UTC时间,格式:yyyyMMdd'T'HHmmss'Z',如 20151212T121212Z。 您需要根据本地所在时区自己进行时间转换。 |
retryType |
可选 |
Boolean |
body |
执行失败是否进行重试,默认不重试。
|
retryTimes |
可选 |
Integer[1,5] |
body |
重试次数, 取值范围1-5,retryType为true时必选。 |
响应参数
Status Code: 200ok
参数 |
类型 |
描述 |
---|---|---|
operationId |
String |
操作任务ID。 |
请求示例
POST https://{host}:{port}/iodm/northbound/v1.5.0/operations/softwareUpgrade Content-Type: application/json app_key: ****** Authorization: Bearer ****** { "fileId": "**********", "targets": { "devices": [ "*****" ] } }
正常响应示例
Status Code: 200 OK Content-Type: application/json { "operationId": "**********" }
错误码
Http状态码 |
错误码 |
错误描述 |
说明 |
---|---|---|---|
400 |
120015 |
Bad request error. |
请求错误。 处理建议:请检查请求参数的是否有误。 |
400 |
123016 |
The parameter is error, targetversion not match with device. |
参数不正确,目标版本与指定设备不匹配。 处理建议:请检查接口请求中deviceType、manufacturerName、model,与参数fileId指定的目标版本包信息是否一致。 |
400 |
123019 |
manufacturerName is null. |
厂商名称内容为空。 处理建议:请检查接口请求中的manufacturerName是否为空。 |
400 |
123020 |
deviceType is null |
设备类型内容为空。 处理建议:请检查接口请求中的deviceType是否为空。 |
400 |
123021 |
model is null. |
设备型号内容为空。 处理建议:请检查接口请求中的model是否为空。 |
400 |
123022 |
deviceGroups and devices cannot be null together |
deviceGroups和devices不能同时为空。 处理建议:deviceGroups与devices必须要选择一个进行赋值。 |
400 |
123023 |
deviceGroups and devices cannot be exist together |
deviceGroups和devices不能同时存在。 处理建议:deviceGroups与devices只能选择一个进行赋值。 |
400 |
123024 |
The number of deviceGroups or devices reached upper limit |
deviceGroups或devices内容数量达到上限。 处理建议:请检查deviceGroups或devices的内容,数量不能超过256个。 |
400 |
123025 |
executeType is error or can not to be null. |
executeType有误或不能为空。 处理建议:请检查接口请求中的executeType是否为空或者是否有误。 |
400 |
123026 |
startTime or endTime is null or error. |
startTime或endTime为空或有误。 处理建议:请检查接口请求中的startTime和endTime是否为空或者格式有误。 |
400 |
123028 |
retryTimes is null or beyond the limit. |
retryTimes为空或超出上限。 处理建议:请检查接口请求中的retryTimes是否为空,或者不能小于1或者大于5。 |
400 |
123032 |
startTime can not be later than the endTime. |
startTime的时间不能比endTime晚。 处理建议:请检查接口请求中的startTime是否晚于endTime。 |
400 |
123033 |
startTime can not be earlier than the now. |
startTime的时间不能比当前时间早。 处理建议:请检查接口请求中的startTime是否早于当前时间。 |
400 |
123034 |
endtime must be greater than 5 minutes. |
endtime要比startTime大5分钟。 处理建议:请检查接口请求中的startTime和endTime间隔时间必须大于5分钟。 |
403 |
1010009 |
app throttle exceed. |
应用调用接口过于频繁,超过流控值(默认值是100次/60s)。 处理建议:联系物联网平台维护人员调大流控阈值或者控制接口的调用频率。 |
403 |
1010005 |
Invalid access token or appId. |
错误的token信息。 处理建议:请检查接口请求中所携带的accessToken是否有误。 |
404 |
123002 |
Device or package file not found. |
设备或包不存在 处理建议:请检查接口请求中的fileId是否正确。 |