From c7abef9630980f4f9d2d78e29dbf71135245e8aa Mon Sep 17 00:00:00 2001 From: Alex Date: Tue, 15 Mar 2022 15:16:35 +0100 Subject: [PATCH] reply to ack msg that we recevied the connection/closed information about the clients --- .../listener/SocketClientMessageListener.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/main/java/net/krakatoa/proxy/listener/SocketClientMessageListener.java b/src/main/java/net/krakatoa/proxy/listener/SocketClientMessageListener.java index 8fe2d7c..e65cefb 100644 --- a/src/main/java/net/krakatoa/proxy/listener/SocketClientMessageListener.java +++ b/src/main/java/net/krakatoa/proxy/listener/SocketClientMessageListener.java @@ -144,17 +144,11 @@ public class SocketClientMessageListener implements KraSocketClientEventInterfac break; } case 53874: { // test message - ack - KraSocketClientProtocolMessage kraSocketClientProtocolMessage = new KraSocketClientProtocolMessage( - KraSocketClientProtocolStatus.REPLY.getStatus(), - kraProtocolMessage.getCmdID(), KraSocketClientProtocolDest.BACKEND.getStatus(), - kraProtocolMessage.getUuid(), - (short) 53874, "", null); - - ProxySystem.getInstance().getKraSocketClient().getSocketClient() - .SendMessage(kraSocketClientProtocolMessage); - - ProxySystem.getInstance().getKraSocketClientProtocol() - .removeMessageFromSendQueue(kraProtocolMessage.getCmdID()); + ProxySystem.getInstance().getKraSocketClientProtocol().replyThatWeReceivedAckMessage( + ProxySystem.getInstance().getKraSocketClient().getSocketClient(), + ProxySystem.getInstance().getKraSocketClientProtocol(), kraProtocolMessage.getCmdID(), + KraSocketClientProtocolDest.BACKEND.getStatus(), kraProtocolMessage.getUuid(), + kraProtocolMessage.getCmdNumber()); System.out.println( "cmdNumber 53874 answered back to uuid:" + kraProtocolMessage.getUuid() @@ -167,6 +161,14 @@ public class SocketClientMessageListener implements KraSocketClientEventInterfac case 64247: // mobile connection closed case 22348: { // voice connection closed ProxyServer.getInstance().getScheduler().runAsync(ProxySystem.getInstance(), () -> { + // ack msg -> Reply to backend that we received the message + ProxySystem.getInstance().getKraSocketClientProtocol() + .replyThatWeReceivedAckMessage( + ProxySystem.getInstance().getKraSocketClient().getSocketClient(), + ProxySystem.getInstance() + .getKraSocketClientProtocol(), kraProtocolMessage.getCmdID(), + KraSocketClientProtocolDest.BACKEND.getStatus(), kraProtocolMessage.getUuid(), + kraProtocolMessage.getCmdNumber()); ProxiedPlayer proxiedPlayer = ProxySystem.getInstance().getProxy() .getPlayer(kraProtocolMessage.getUuid());