From c9ead9d4d34cdbb24a0bd4c1c9ffa193c53fac20 Mon Sep 17 00:00:00 2001 From: wangyuan Date: Tue, 19 Mar 2019 20:08:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E7=AB=AF=E8=8E=B7=E5=8F=96=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=99=A8=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/util/CBean2Proto.java | 1 + .../src/main/java/com/ljsd/jieling/util/MessageUtil.java | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index b693b467b..864b62d17 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -28,6 +28,7 @@ public class CBean2Proto { .setCurMapId((maxMapId == 0 && mapId == 0) ? 100 : mapId) .setEnergy(playerManager.getEnergy()) .setLastUpdateEnergyTime(playerManager.getLastUpdateEnergyTime()) + .setServerTime((int)(System.currentTimeMillis()/1000)) .build(); return player; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java index 1d79ecb44..11cab8157 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java @@ -10,6 +10,8 @@ import com.ljsd.jieling.protocols.MessageTypeProto; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.nio.ByteBuffer; + public class MessageUtil { private static final Logger LOGGER = LoggerFactory.getLogger(MessageUtil.class); @@ -21,6 +23,7 @@ public class MessageUtil { } else { backMessage = generatedMessage.toByteArray(); } + int length = PackageConstant.UID_FIELD_LEN + PackageConstant.TOKEN_LEN + PackageConstant.MSG_ID_FIELD_LEN + PackageConstant.INDEX_FIELD_LEN + PackageConstant.RESULT_LEN + backMessage.length; @@ -61,8 +64,9 @@ public class MessageUtil { } public static void sendHeartBeat(ISession session) { + int now = (int)(System.currentTimeMillis()/1000); int length = PackageConstant.UID_FIELD_LEN + PackageConstant.TOKEN_LEN - + PackageConstant.MSG_ID_FIELD_LEN ; + + PackageConstant.MSG_ID_FIELD_LEN + 4 ; byte[] bytes = new byte[length]; int pos = 0; Tea.intToByte(bytes, pos, session.getUid()); @@ -70,6 +74,8 @@ public class MessageUtil { Tea.intToByte(bytes, pos, session.getToken()); pos += PackageConstant.TOKEN_LEN; Tea.intToByte(bytes, pos, MessageTypeProto.MessageType.HEART_BEAT_RESPONSE_VALUE); + pos +=4; + Tea.intToByte(bytes, pos, now); byte[] byteBuf = Tea.encrypt2(bytes, Tea.KEY); session.writeAndFlush(byteBuf); }