Added ping/pong functionality to CHAT websockets.

This commit is contained in:
CalDescent 2023-03-17 13:11:01 +00:00
parent edae7fd844
commit 5386db8a3f
2 changed files with 8 additions and 6 deletions

View File

@ -4,6 +4,7 @@ import java.io.IOException;
import java.io.StringWriter; import java.io.StringWriter;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.Session;
@ -65,7 +66,9 @@ public class ActiveChatsWebSocket extends ApiWebSocket {
@OnWebSocketMessage @OnWebSocketMessage
public void onWebSocketMessage(Session session, String message) { 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<String> previousOutput) { private void onNotify(Session session, ChatTransactionData chatTransactionData, String ourAddress, AtomicReference<String> previousOutput) {

View File

@ -2,10 +2,7 @@ package org.qortal.api.websocket;
import java.io.IOException; import java.io.IOException;
import java.io.StringWriter; import java.io.StringWriter;
import java.util.Arrays; import java.util.*;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import org.eclipse.jetty.websocket.api.Session; import org.eclipse.jetty.websocket.api.Session;
import org.eclipse.jetty.websocket.api.WebSocketException; import org.eclipse.jetty.websocket.api.WebSocketException;
@ -112,7 +109,9 @@ public class ChatMessagesWebSocket extends ApiWebSocket {
@OnWebSocketMessage @OnWebSocketMessage
public void onWebSocketMessage(Session session, String message) { 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) { private void onNotify(Session session, ChatTransactionData chatTransactionData, int txGroupId) {