From 5386db8a3fffc2dd1f7b1cd7d63b35c5380eea68 Mon Sep 17 00:00:00 2001 From: CalDescent Date: Fri, 17 Mar 2023 13:11:01 +0000 Subject: [PATCH] Added ping/pong functionality to CHAT websockets. --- .../org/qortal/api/websocket/ActiveChatsWebSocket.java | 5 ++++- .../org/qortal/api/websocket/ChatMessagesWebSocket.java | 9 ++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/qortal/api/websocket/ActiveChatsWebSocket.java b/src/main/java/org/qortal/api/websocket/ActiveChatsWebSocket.java index d683f519..960ac8c1 100644 --- a/src/main/java/org/qortal/api/websocket/ActiveChatsWebSocket.java +++ b/src/main/java/org/qortal/api/websocket/ActiveChatsWebSocket.java @@ -4,6 +4,7 @@ import java.io.IOException; import java.io.StringWriter; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.concurrent.atomic.AtomicReference; import org.eclipse.jetty.websocket.api.Session; @@ -65,7 +66,9 @@ public class ActiveChatsWebSocket extends ApiWebSocket { @OnWebSocketMessage public void onWebSocketMessage(Session session, String message) { - /* ignored */ + if (Objects.equals(message, "ping")) { + session.getRemote().sendStringByFuture("pong"); + } } private void onNotify(Session session, ChatTransactionData chatTransactionData, String ourAddress, AtomicReference previousOutput) { diff --git a/src/main/java/org/qortal/api/websocket/ChatMessagesWebSocket.java b/src/main/java/org/qortal/api/websocket/ChatMessagesWebSocket.java index aeb1b10b..01df36f0 100644 --- a/src/main/java/org/qortal/api/websocket/ChatMessagesWebSocket.java +++ b/src/main/java/org/qortal/api/websocket/ChatMessagesWebSocket.java @@ -2,10 +2,7 @@ package org.qortal.api.websocket; import java.io.IOException; import java.io.StringWriter; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.Map; +import java.util.*; import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.WebSocketException; @@ -112,7 +109,9 @@ public class ChatMessagesWebSocket extends ApiWebSocket { @OnWebSocketMessage public void onWebSocketMessage(Session session, String message) { - /* ignored */ + if (Objects.equals(message, "ping")) { + session.getRemote().sendStringByFuture("pong"); + } } private void onNotify(Session session, ChatTransactionData chatTransactionData, int txGroupId) {