V2.5 Get Command Jobs¶
查询 Command Job 详情。
请求格式¶
GET https://{apigw-address}/connect-service/v2.5/commands?action=getJob
请求参数(URI)¶
名称 | 位置(Path/Query) | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|---|
orgId | Query | 必需 | String | 资产所属的组织 ID。如何获取 orgId 信息>> |
jobId | Query | 必需 | String | 需要获取详情的 Command job 的 ID。 |
响应参数¶
名称 | 数据类型 | 描述 |
---|---|---|
code | number | 更新成功或失败的指示码。 |
msg | String | 成功时返回 OK ;其他值则为失败。 |
requestId | String | 每次请求获取的 ID,用于唯一标识一次 API 请求。 |
data | 结构体 | 参见 CommandInfo 结构体。 |
CommandInfo 结构体 ¶
名称 | 数据类型 | 描述 |
---|---|---|
orgId | String | 组织 ID。 |
jobId | String | Command Job ID。 |
name | StringI18n | Job 名称。 |
targetScope | 结构体 | 参见 TargetScope 结构体。 |
schedulePolicy | 结构体 | 参见 SchedulePolicy 结构体。 |
timeoutPolicy | 结构体 | 参见 TimeoutPolicy 结构体。 |
retryPolicy | 结构体 | 参见 RetryPolicy 结构体。 |
status | String | Command Job 的状态。 |
desc | String | Job描述,最大长度 100。 |
commandInfo | 结构体 | 参见 commandInfo 结构体。 |
createTimestamp | Number | 创建时间戳。 |
TargetScope 结构体 ¶
名称 | 数据类型 | 描述 |
---|---|---|
targetType | String | 可选择 device_list 、product_key |
targetDevices | 结构体 | targetDevices结构体含:
|
SchedulePolicy 结构体 ¶
名称 | 数据类型 | 描述 |
---|---|---|
scheduleType | String | 可选择 DISPOSABLE ,目前仅一次性触发任务。 |
disposableSchedulePolicy | 结构体 | 结构体含 triggerTs :Number,触发时间戳。 |
TimeoutPolicy 结构体 ¶
名称 | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|
inProgressTimeoutInSeconds | 可选 | Integer | 范围 1 ~ 900(默认为 30) |
ttlTimeoutInSeconds | 可选 | Integer | 范围 0 ~ 172800(默认为 0) |
RetryPolicy 结构体 ¶
名称 | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|
enableRetry | 可选 | Boolean |
|
retryIntervalInSeconds | enableRetry 为 true 时必填 |
Number | 失败后自动重试间隔时间(秒)。仅在 enableRetry 时生效。范围 0 ~ 86400(默认为 300)。 |
retryCount | enableRetry 为 true 时必填 |
Number | 最大自动重试次数。仅在 enableRetry 时生效,范围:1 ~ 10(默认为 3)。 |
CommandInfo 结构体 ¶
名称 | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|
commandType | 可选 | String | 可选择 SERVICE_INVOKE 、MEASUREPOINT_SET |
setMeasurepointInfo | 可选 | 结构体 | 结构体含
|
serviceInvokeInfo | 可选 | 结构体 | 结构体含
|
示例¶
请求示例¶
url: https://{apigw-address}/connect-service/v2.5/commands?action=getJob&jobId=jobId&orgId=yourOrgId
method: GET
返回示例¶
{
"code": 0,
"msg": "OK",
"requestId": "3029e3d8-a297-41cf-9fce-00ce39dfbfef",
"data": {
"orgId": "yourOrgId",
"jobId": "jobId",
"name": {
"defaultValue": "commandJobName",
"i18nValue": {
"en_US": "name",
"zh_CN": "中文名"
}
},
"targetScope": {
"targetType": "DEVICE_LIST",
"targetDevices": [{
"assetId": null,
"productKey": "productKey",
"deviceKey": "deviceKey"
}]
},
"schedulePolicy": {
"scheduleType": "DISPOSABLE",
"disposableSchedulePolicy": {
"triggerTs": 1718952446317
}
},
"timeoutPolicy": {
"inProgressTimeoutInSeconds": 30,
"ttlTimeoutInSeconds": 20
},
"retryPolicy": {
"enableRetry": true,
"retryIntervalInSeconds": 300,
"retryCount": 3
},
"desc": "commandJobDescription",
"status": "ENABLED",
"commandInfo": {
"commandType": "SERVICE_INVOKE",
"serviceInvokeInfo": {
"serviceId": "serviceId",
"inputData": {
"input": 22
}
},
"measurepointSetInfo": null
},
"createTimestamp": 1718952422050
}
}