device.heartbeat.${DEVICE_SERIAL} - 设备心跳数据alarm.${PROJECT_ID} - 项目下所有告警数据model.recovery.${PROJECT_ID} - 模型恢复数据,给前端使用device.status.${PROJECT_ID} - 设备状态| 字段 | 类型 | 含义 |
|---|---|---|
| type | String | 消息类型:具体查看后面的消息类型值 |
| message | String | 消息含义说明 |
| topic | String | 消息对应的topic |
| timestamp | long | 时间戳 |
| data | object | 具体的 消息内容 |
// 连接相关
CONNECTION_ESTABLISHED("连接建立"),
CONNECTION_CLOSED("连接关闭"),
// 订阅相关
SUBSCRIBE("订阅"),
UNSUBSCRIBE("取消订阅"),
SUBSCRIBE_SUCCESS("订阅成功"),
UNSUBSCRIBE_SUCCESS("取消订阅成功"),
// 心跳相关
PING("心跳请求"),
PONG("心跳响应"),
// 数据推送
DEVICE_HEARTBEAT("设备心跳数据"),
DEVICE_STATUS("设备状态"),
ALARM_DATA("告警数据"),
MODEL_RECOVERY("模型状态恢复");
{
"type": "DEVICE_HEARTBEAT",
"message": "设备心跳数据",
"topic": "device.heartbeat.IVG1MVMDAXXX00000005",
"timestamp": 1757233743068,
"data": {
"deviceSerial": "IVG1MVMDAXXX00000005",
"measureLiveRecords": [
{
"measureId": 626,
"measureName":"C1-L2-02"
"x": 0,
"y": 0
},
{
"measureId": 628,
"measureName":"C1-L2-03"
"x": 0,
"y": 0
}
],
"timestamp": 1757233743067
}
}{
"type": "DEVICE_STATUS",
"message": "设备状态数据",
"topic": "device.status.1930911930152390658",
"timestamp": 1757233743068,
"data": {
"deviceSerial": "IVG1MVMDAXXX00000005",
"deviceId": "1213123123124211",
"onlineStatus":"ONLINE" //设备在线或离线状态ONLINE|OFFLINE
}
}{
"type": "ALARM_DATA",
"message": "告警数据",
"topic": "alarm.1930911930152390658",
"timestamp": 1757233743068,
"data": {
"projectId":"1930911930152390658",
"alarmId":"1958466752548806657",
"alarmLevel":"ERROR",
"alarmCategory":"TARGET_RECOGNITION",
"alarmType":"EXTERNAL_INTRUSION",
"alarmContent":"人员闯入已结束,总持续时间:1秒",
"objectId":null,
"deviceId":"193091193015239012",
"measureId":null,
"extension":null //当特别告警比如倾斜沉降,需要显示2个监测点ID的时候,将最大位移ID(maxMeasureId)和最小位移ID(minMeasureId)放这里。
}
}{
"type": "MODEL_RECOVERY",
"message": "模型状态恢复",
"topic": "model.recovery.1930911930152390658",
"timestamp": 1757233743068,
"data": {
"projectId":"1930911930152390658",
"objectId":null,
"deviceId":"193091193015239012",
"measureIds":null, //用List<Integer>类型返回一个或多个measureId。在阈值超限情况下,可能同时存在objectId和measureIds的状态恢复。
"alarmStatus":"NORMAL" //返回模型的当前状态 NORMAL|WARNING|ERROR。
}
}