需求:设备会定时向服务端发送心跳包,当连续三个心跳时间(当前设为15秒)没有收到设备发送的心跳包,认为该设备脱网,需更新本地联网状态,并更新至前端页面。
当重新收到心跳包,认为该设备重新联网,更新本地联网状态。
udp_server.on('message', (msg, rinfo) => {
//当有收到任意UDP数据后,发送此心跳包到设备
let heartbeat = [0xA5, 0xA5, 0xA5, 0xA5, 0xA5, 0x63, 0x04, 0x00, 0x00, 0x67]
let arrayBuffer = new Uint8Array(heartbeat);
udp_server.send(arrayBuffer, 0, arrayBuffer.length, rinfo.port, rinfo.address);
}