20260915:临时81心跳包当注册包用

This commit is contained in:
George 2026-09-15 09:10:56 +08:00
parent d6377494b4
commit 6963136775
2 changed files with 9 additions and 2 deletions

View File

@ -47,7 +47,7 @@ public class ModbusRtu extends Message {
protected int start; protected int start;
@Column(length = 1, version = {0x80, 0x81}, desc = "标识位,实例设备是0x80") @Column(length = 1, version = {0x80, 0x81}, desc = "标识位,实例设备是0x80")
protected int mId; protected int mId;
@Column(length = 6, version = 0x80, desc = "MAC地址,6个字节") @Column(length = 6, version = {0x80, 0x81}, desc = "MAC地址,6个字节")
protected String mac; protected String mac;
@Column(length = 1, version = {0x80, 0x81}, desc = "结尾,如:7E") @Column(length = 1, version = {0x80, 0x81}, desc = "结尾,如:7E")
protected int end; protected int end;

View File

@ -39,7 +39,14 @@ public class ModbusEndPoint {
@PakMapping(types = 心跳包) @PakMapping(types = 心跳包)
public void heartbeat(DeviceReport message, Session session) { public void heartbeat(DeviceReport message, Session session) {
//心跳包处理:确保设备注册并更新在线状态
if (!session.isRegistered()) {
session.register(message);
//记录设备信息
DeviceMsg deviceMsg = new DeviceMsg();
deviceMsg.setClientId(message.getClientId());
session.setAttribute(SessionKey.DeviceMsg, deviceMsg);
}
} }
} }