package com.ard.work.component.netty.command.register; import com.ard.work.component.netty.command.BaseCmd; import io.netty.buffer.ByteBuf; import lombok.Data; import lombok.NoArgsConstructor; /** * 心跳回复命令 * * @author 刘苏义 * @date 2024/10/22 16:36 */ @Data @NoArgsConstructor public class HeartbeatReplyCmd extends BaseCmd { private long timestamp; // 时间戳 public HeartbeatReplyCmd(long timestamp) { setDataHeader((short) 0x6A77); // 设置帧头 setCmdCode((byte) 0x02); // 设置指令编号 setDataLength((short) (13)); // 数据长度 (指令编号 + 时间戳) this.timestamp = timestamp; } public void encode(ByteBuf out) { out.writeShort(getDataHeader()); // 写入数据头 out.writeShort(getDataLength()); // 写入数据长度 out.writeByte(getCmdCode()); // 写入命令码 out.writeLong(timestamp); // 写入时间戳 } }