查询指定批量任务信息
典型场景
第三方应用通过“创建批量任务”接口创建了设备的批量操作任务后,可调用此接口查询该批量任务的信息,包括任务的当前状态、子任务完成情况等。
接口功能
支持第三方应用通过任务ID查询单个批量任务的信息。
接口描述
1 |
public function queryOneTask($taskId, $select, $appId, $accessToken)
|
接口所属类
BatchProcess
参数说明
参数 |
必选/可选 |
位置 |
描述 |
---|---|---|---|
$taskId |
必选 |
path |
批量任务ID,创建批量任务后获得。 |
$select |
必选 |
query |
指定可选的返回值,可取值:“tag”。不指定时可填写null。 |
$appId |
必选 |
query |
如果是本应用的任务,此参数值可以填写null,否则填写授权应用的appId。 |
$accessToken |
必选 |
header |
填写鉴权接口获取的accessToken。 |
返回值
QueryOneTaskOutDTO
参数 |
描述 |
---|---|
$taskId |
批量任务ID。 |
$taskName |
批量任务名称。 |
$appId |
批量任务所归属的appId。 |
$operator |
下发该批量任务的操作员。 |
$taskFrom |
批量任务的来源。
|
$taskType |
批量任务的类型,取值范围:“DeviceReg/DeviceCmd”。 |
$status |
批量任务的状态,取值范围:“Pending/Running/Complete/Timeout”。 |
$startTime |
批量任务的创建时间。 |
$timeout |
批量任务的超时时间,单位秒。 |
$progress |
批量任务的进度,单位:千分比,范围:0-1000,向下取整。 |
$totalCnt |
任务的详情总数。 |
$successCnt |
成功的任务详情数。 |
$failCnt |
失败的任务详情数 |
$timeoutCnt |
超时的任务详情数。 |
$expiredCnt |
未执行的失效任务详情数。 |
$completeCnt |
完成的任务详情数,完成的任务详情数=成功的任务详情数+失败的任务详情数+超时的任务详情数。 |
$successRate |
任务成功率,单位:千分比,范围:0-1000,向下取整。 |
$param |
不同任务类型的具体参数,具体参见DeviceCmd结构。 |
$tags |
批量任务的标签列表,具体参见TagDTO2结构体。 |
参数 |
描述 |
---|---|
type |
批量命令类型,取值范围: DeviceList/DeviceType/DeviceArea/GroupList/Broadcast/GroupIdList。 |
deviceList |
设备ID列表,type为DeviceList时返回值。 |
deviceType |
设备类型,type为DeviceType时返回值,其值应当与profile中定义的一致。 |
manufacturerId |
厂商ID,type为DeviceType时返回值,其值应当与profile中定义的一致。 |
model |
设备型号,type为DeviceType时返回值,其值应当与profile中定义的一致。 |
deviceLocation |
设备位置,type为DeviceArea时返回值。 |
groupList |
群组名称列表,type为GroupList时返回值。 |
command |
命令信息。具体参见CommandDTO。 |
callbackUrl |
命令执行结果的推送地址。 |
maxRetransmit |
命令下发最大重传次数,取值范围:0-3。 |
groupTag |
群组标签。 |
参数 |
描述 |
---|---|
serviceId |
命令对应的服务ID,要与profile中定义的serviceId保持一致。 |
method |
服务下具体的命令名称,要与profile中定义的命令名保持一致。 |
paras |
命令参数,jsonString格式,里面是一个个健值对,每个健都是profile中命令的参数名(paraName),具体格式需要应用和设备约定。 |
参数 |
描述 |
---|---|
$tagName |
标签名称。 |
$tagValue |
标签值。 |
错误码
Http状态码 |
错误码 |
错误描述 |
说明 |
---|---|---|---|
400 |
100019 |
Illegal request. |
非法请求。 处理建议:请检查接口请求中的必须参数是否为空。 |
400 |
100022 |
The input is invalid |
输入参数无效。 处理建议:请检查接口调用请求中携带参数的合法性。 |
403 |
100203 |
The application is not existed. |
应用不存在。 处理建议:
|
403 |
100217 |
The application hasn't been authorized |
应用未被授权。 处理建议:若非应用授权场景,请确认请求参数中的appId为空。 |
403 |
1010009 |
app throttle exceed. |
应用调用接口过于频繁,超过流控值(默认值是100次/60s)。 处理建议:联系物联网平台维护人员调大流控阈值或者控制接口的调用频率。 |
403 |
1010005 |
App_key or access_token is invalid. |
错误的token信息。 处理建议:请检查接口请求中所携带的accessToken是否有误。 |
404 |
105005 |
The batchTask is not existed. |
批量任务不存在。 处理建议:请检查接口请求中的taskId是否有误。 |
500 |
100203 |
The application is not existed. |
应用不存在。 处理建议:
|