device.service.invoke(调用一次动作)
device.service.invoke:调用一次动作
功能详情
调用一个动作。没有持久状态,调一次执行一次,不幂等。超时不代表未执行。填完整 serviceId。动作走本接口,不走 device.property.set。
云台移动填 ptz.aim.relative。入参见 云台。
请求地址
POST https://openapi-[DataCenter].easy4ip.com/openapi/v2/device.service.invoke
最小权限
管理员操作自己绑定的设备不需要权限。操作被分享设备需要该动作所属能力的权限,例如云台动作需要云台权限。子用户绑定不需要。子账号需要该动作所属能力的权限码,例如云台动作为 Ptz。
传入参数说明
| 参数名 | 参数类型 | 是否必填 | 默认值 | 合法值 | 参数说明 |
|---|---|---|---|---|---|
token | String | 是 | 管理员、子用户或子账号 accessToken | ||
deviceId | String | 是 | 设备序列号 | ||
productId | String | 否 | 可省略。传了且与该设备实际型号不一致 → DV2009 | ||
channelId | String | 条件 | 通道号,IPC 常见 "0"。不要传 -1 | 通道级动作必填,设备级不要传 | |
serviceId | String | 是 | 整段 serviceId,如 ptz.aim.relative | 一次只调一个服务 | |
inputData | Object | 条件 | device.capability.list(或该 serviceId 能力页)返回的 inputData 项中的 field | 当上述 inputData 数组非空时必填;无入参传 {}。速度类字段常为字符串,例如 "0.5",不要传数字 |
样例输入
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"system": {
"ver": "1.0",
"appId": "lcdxxxxxxxxx",
"sign": "xjhCQBoJ9hRDsCjyDcHjtDNzRZ3ZJezcawsfWeiaoxU=",
"time": 1706511734,
"nonce": "f5a1ae2d-c09c-4d39-a744-83a5c2c653c2"
},
"params": {
"token": "<yourAccessToken>",
"deviceId": "TESTIPC000012345",
"channelId": "0",
"serviceId": "ptz.aim.relative",
"inputData": {
"horizontal": "0.5",
"vertical": "0",
"zoom": "0",
"duration": 1000
}
}
}
返回 data 字段说明
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
outputData | Object | 返回。无出参为 {}。有出参时字段见能力目录该项,例如 ptz.cruise.get |
样例输出
无出参时(如 ptz.aim.relative):
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"result": {
"code": "0",
"msg": "Operation is successful",
"data": {
"outputData": {}
}
}
}
有出参时(ptz.cruise.get,inputData 传 {}):
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"result": {
"code": "0",
"msg": "Operation is successful",
"data": {
"outputData": {
"cruiseModel": "1",
"collection": [
{
"name": "门口",
"stayTime": "15"
}
],
"cruises": [
{
"beginTime": "08:00:00",
"endTime": "18:00:00",
"period": "1111100"
}
]
}
}
}
}
错误码
本接口可能返回下列码。
| 错误码 | 错误码说明 | 下一步 |
|---|---|---|
SN1001 | 签名校验异常 | 按 HTTP 开发规范 核对 sign |
TK1002 | token 无效或过期 | 重新获取 accessToken |
OP1002 | 缺少必填参数 | 补必填字段 |
OP1003 | 参数不合法 | 按本页参数表核对 |
OP1009 | 权限不足 | 核对 token 与设备绑定/分享权限 |
OP1013 | 接口总次数超限 | 降低调用频率 |
OP1014 | 接口日限额超限 | 见 接口调用限额 |
DV1007 | 设备离线 | 等设备上线 |
更多见 错误码 · OP/SN/TK。
| 错误码 | 错误码说明 | 下一步 |
|---|---|---|
DV2003 | 设备未声明该能力 | 以 device.capability.list 为准 |
DV2007 | channelId 与 scope 不符 | 通道级必传,设备级不传 |
DV2008 | 同请求混用设备级与通道级 | 拆分请求 |
DV2009 | productId 与型号不一致 | 省略或改为实际型号 |
DV2011 | 无能力权限 | 见 权限码 |
更多见 能力错误码。
