rainbow954 7 лет назад
Родитель
Сommit
b29241c360

+ 10 - 3
src/main/java/com/tidecloud/dataacceptance/common/JT808ProtocolUtils.java

@@ -54,7 +54,8 @@ public class JT808ProtocolUtils {
 			for (int i = 0; i < start; i++) {
 				baos.write(bs[i]);
 			}
-			for (int i = start; i < end - 1; i++) {
+			int i = start;
+			for (; i < end - 1; i++) {
 				if (bs[i] == 0x7d && bs[i + 1] == 0x01) {
 					baos.write(0x7d);
 					i++;
@@ -65,8 +66,11 @@ public class JT808ProtocolUtils {
 					baos.write(bs[i]);
 				}
 			}
-			for (int i = end - 1; i < bs.length; i++) {
-				baos.write(bs[i]);
+			
+			if (i == (end - 1)) {
+				for (; i < bs.length; i++) {
+					baos.write(bs[i]);
+				}
 			}
 			return baos.toByteArray();
 		} catch (Exception e) {
@@ -111,6 +115,9 @@ public class JT808ProtocolUtils {
 				if (bs[i] == 0x7e) {
 					baos.write(0x7d);
 					baos.write(0x02);
+				}else if (bs[i] == 0x7d) {
+					baos.write(0x7d);
+					baos.write(0x01);
 				} else {
 					baos.write(bs[i]);
 				}

+ 1 - 1
src/main/java/com/tidecloud/dataacceptance/service/AcceptanceInboundHandlerAdapter.java

@@ -228,7 +228,7 @@ public  class AcceptanceInboundHandlerAdapter extends ChannelInboundHandlerAdapt
 		final String sessionId = ctx.channel().id().asLongText();
 		Session session = sessionManager.findBySessionId(sessionId);
 		this.sessionManager.removeBySessionId(sessionId);
-		logger.debug("client disconnect server session is : [{}]", StringUtil.convert2String(session));
+		logger.info("client disconnect server session is : [{}]", StringUtil.convert2String(session));
 	}
 
 	protected void deleteLinkFromRedis(String deviceId) {