package hu.szit; import io.socket.client.IO; import io.socket.client.Socket; import io.socket.emitter.Emitter; public class Client { private Socket socket; public Client(String serverUrl) { try { socket = IO.socket(serverUrl); socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { @Override public void call(Object... args) { System.out.println("Connected to server"); } }).on(Socket.EVENT_DISCONNECT, new Emitter.Listener() { @Override public void call(Object... args) { System.out.println("Disconnected from server"); } }).on("chat message", new Emitter.Listener() { @Override public void call(Object... args) { String msg = (String) args[0]; System.out.println("Received message: " + msg); } }).on(Socket.EVENT_CONNECT_ERROR, new Emitter.Listener() { @Override public void call(Object... args) { System.out.println("Connection error"); System.out.println(args[0]); } }); socket.connect(); } catch (Exception e) { e.printStackTrace(); } } public void sendMessage(String message) { if (socket != null && socket.connected()) { socket.emit("chat message", message); } else { System.out.println("Socket is not connected. Unable to send message."); } } }