更新时间:2023-04-13 GMT+08:00
分享

查询指定任务的子任务详情

接口说明

在创建了设备软件升级任务或固件升级任务后,任务中涉及的每个设备的升级是一个子任务(即升级任务中涉及多少个设备,就有多少个子任务)。应用服务器可调用此接口查询某个升级任务中各个子任务的详细信息,以查看子任务的具体执行情况。

URI

请求方法

GET

URI

/iodm/northbound/v1.5.0/operations/{operationId}/subOperations

传输协议

HTTPS

请求参数

参数

必选/可选

类型

位置

描述

app_key

必选

String

header

访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。

Authorization

必选

String

header

访问物联网平台的认证信息,值为“Bearer {accessToken}”,其中{accessToken}为调用鉴权接口返回的accessToken。

operationId

必选

String

path

操作任务ID,在创建操作任务后由物联网平台返回获得。

subOperationStatus

可选

String

query

子任务状态,不指定,则查询该任务下所有子任务执行详情。

  • wait:等待
  • processing:正在执行
  • fail:失败
  • success:成功
  • stop:停止

pageNo

可选

Integer(>=0)

query

分页查询参数,查询结果分页显示时指定要查看的页信息,默认值0,查询第一页,取值范围为大于等于0的整数。

pageSize

可选

Integer[1,100]

query

分页查询参数,查询结果分页显示时每页显示的记录数,默认值为10,取值范围为1-100的整数。

响应参数

Status Code: 200 OK

参数

类型

描述

data

List<SubOperationInfo>

子任务列表信息。

pageNo

Integer(>=0)

查询结果的页码。

pageSize

Integer[1,100]

查询结果每页的记录数量。

totalCount

Integer(>=0)

查询结果的记录总数。

SubOperationInfo:

参数

类型

描述

subOperationId

String

子任务ID。

createTime

String

子任务创建的UTC时间,时间格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

若需要显示本地时区时间,您需要自己进行时间转换。

startTime

String

子任务启动的UTC时间,时间格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

若需要显示本地时区时间,您需要自己进行时间转换。

stopTime

String

子任务停止的UTC时间,时间格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

若需要显示本地时区时间,您需要自己进行时间转换。

operateType

String

操作类型。

  • firmware_upgrade
  • software_upgrade

deviceId

String

操作设备的设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。

status

String

子任务状态。

  • wait:等待
  • processing:正在执行
  • fail:失败
  • success:成功
  • stop:停止

detailInfo

String

任务状态的详细描述,对于失败场景下为失败原因。

extendPara

Map<String, String>

任务扩展信息,视不同类型的操作不同。

请求示例

GET https://{host}:{port}/iodm/northbound/v1.5.0/operations/{operationId}/subOperations?subOperationStatus={subOperationStatus}&pageNo={pageNo}&pageSize={pageSize}
Content-Type: application/json
app_key: ******
Authorization: Bearer ******

正常响应示例

Status Code: 200 OK
Content-Type: application/json

{
  "totalCount": 1,
  "pageNo": 0,
  "pageSize": 1,
  "date": [
    {
      "subOperationId": "**********",
      "createTime": "20151212T121212Z",
      "startTime": "20151212T121212Z",
      "stopTime": null,
      "operateType": "software_upgrade",
      "deviceId": "**********",
      "status": "FAIL",
      "detailInfo": "The task failed to start, unable to find protocol service based on device information",
      "extendInfo": {
        "upgradeTime": null,
        "sourceVersion": null,
        "curVersion": "V1.1.10",
        "downloadTime": null,
        "targetVersion": null
      }
    }
  ]
}

错误码

Http状态码

错误码

错误描述

说明

400

120015

Bad request error.

请求错误。

处理建议:请检查接口请求中fileId的格式是否正确。

400

123029

pageNo or pageSize beyond the limit.

pageNo或pageSize超出上限。

处理建议:修改pageNo或pageSize为合法取值。

403

1010009

app throttle exceed.

应用调用接口过于频繁,超过流控值(默认值是100次/60s)。

处理建议:联系物联网平台维护人员调大流控阈值或者控制接口的调用频率。

403

1010005

Invalid access token or appId.

错误的token信息。

处理建议:请检查接口请求中所携带的accessToken是否有误。

404

123009

The requested task does not exist.

查询的任务不存在。

处理建议:请检查接口请求中的operationId内容是否正确。

相关文档