device.message.list(查询告警历史)
device.message.list:查询告警历史
功能详情
按设备、时间查询能力事件历史。返回的是查询结果:data.count、data.nextAlarmId、data.messages。messages[] 里每条与 接收告警 的上报报文相同,并多一个仅本接口才有的 feedback。msgType 等于 eventId。
实时推送的历史 alarm / deviceStatus 使用字符串 msgType 与 did/cid,见 接收设备消息 与 事件消息类型定义,与本接口查询的能力事件历史不同。
beginTime / endTime 为设备本地时间 yyyyMMdd'T'HHmmss(引号只表示字母 T 是字面量),例如 20201022T000000。不要传 Unix 秒,也不要和校时接口的 UTC 混用。无 eventIds、无调用方 count 入参;每批条数由平台决定。
平台字段(token、thumbUrl、picUrlArray、labelType、智见相关)不在能力项的 outputData 里。
请求地址
POST https://openapi-[DataCenter].easy4ip.com/openapi/v2/device.message.list
最小权限
管理员操作自己绑定的设备不需要权限。操作被分享设备需要报警消息权限。子用户绑定不需要。子账号按条校验事件所属能力的 share/sub 权限码(见 权限码),不能仅用 Alarm 一名概览(如 system 类事件常需 Config)。只返回有权事件,不因此整单 DV2011。设备须已绑定。HTTP 版见 查询告警历史。
传入参数说明
| 参数名 | 参数类型 | 是否必填 | 默认值 | 合法值 | 参数说明 |
|---|---|---|---|---|---|
token | String | 是 | 管理员、子用户或子账号 accessToken | ||
deviceId | String | 是 | 设备序列号 | ||
productId | String | 否 | 可省略。传了且与该设备实际型号不一致 → DV2009 | ||
channelId | String | 否 | 通道号,IPC 常见 "0"。不要传 -1 | 不传只查设备级;传只查该通道 | |
beginTime | String | 是 | 设备本地 yyyyMMddTHHmmss | 起始时间,例如 20201022T000000 | |
endTime | String | 是 | 设备本地 yyyyMMddTHHmmss | 结束时间,例如 20201022T235959 | |
nextAlarmId | String | 否 | 首页可不传 | "-1" 或上一批返回值 | 首页 "-1" 或不传;后续传上一批的 nextAlarmId |
样例输入
{
"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",
"beginTime": "20201022T000000",
"endTime": "20201022T235959",
"nextAlarmId": "-1"
}
}
返回 data 字段说明
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
count | Int | 本批条数 |
nextAlarmId | String | 下一批起点。没有更多时不返回 |
messages | Array | 本批上报报文。字段与 接收告警 相同,另见下表 |
messages[] 每条是上报报文;仅本接口多 feedback
| 参数名 | 参数类型 | 参数说明 |
|---|---|---|
msgType | String | 等于 eventId,如 detection.motion.detected |
deviceId | String | 设备序列号 |
productId | String | 型号 |
channelId | String | 通道级事件返回;设备级不返回 |
outputData | Object | 该事件的字段。没有则为 {} |
time | Int | 上报时间,Unix 秒 |
localTime | String | 设备本地 yyyyMMddTHHmmss |
alarmId | String | 告警 id,用于 detail / delete / 翻页 |
token | String | 联动云录像时出现 |
thumbUrl | String | 缩略图。有图才返回 |
picUrlArray | Array | 告警图。有时效,尽快转存 |
labelType | String | 消息类型标签 |
aiCopyWriting | String | 开通智见云存储或 AI 智见套餐时才有 |
securityRiskLevel | Int | 开通智见才有;与 接收告警 推送一致(1~10)。经 Mix 后偶现为等级文案 string |
aiTag | Array | 开通智见才有;与 g04 推送一致。经 Mix 后偶现为单标签 string |
feedback | Object | 仅历史查询。type:String(1 人形、2 人脸、3 大模型);result:Array<String>(如 ["1"] 准确 / ["0"] 不准确) |
属性上报(推送通道,固定 msgType 为 device.property.report)的 properties key 为 propertyId。
样例输出
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"result": {
"code": "0",
"msg": "Operation is successful",
"data": {
"count": 1,
"nextAlarmId": "116257862023505xxxx",
"messages": [
{
"msgType": "detection.motion.detected",
"deviceId": "TESTIPC000012345",
"productId": "56WGTET2",
"channelId": "0",
"outputData": {
"extendContext": {
"handleBit": 1
}
},
"time": 1673406989,
"localTime": "20230111T111629",
"alarmId": "116257862023505xxxx",
"token": "f2dc8c09eeae4b5bad6abf522c93d825",
"thumbUrl": "https://example.imou.com/pic/thumb.jpg",
"picUrlArray": ["https://example.imou.com/pic/alarm1.jpg"],
"labelType": "humanAlarm",
"feedback": {
"type": "1",
"result": ["1"]
}
}
]
}
}
}
错误码
本接口可能返回下列码。
无权事件按条过滤,不因此整单失败。
include 未找到:06.dv20-message.md
