public void Connect(string url) { if (string.IsNullOrEmpty(url)) { throw new NoURLException(); } if (socket != null && socket.ReadyState != WebSocketState.Closed && socket.ReadyState != WebSocketState.Closing) { //throw new SocketRunningException(client); // Assume force-reconenct socket?.Close(CloseStatusCode.Abnormal); } client.DestroyHeartbeat(); socket = new WebSocket($"{url}/?v=6&encoding=json"); if (listner == null) { listner = new SocketListner(client, this); } socket.OnOpen += listner.SocketOpened; socket.OnClose += listner.SocketClosed; socket.OnError += listner.SocketErrored; socket.OnMessage += listner.SocketMessage; socket.ConnectAsync(); }
public void Connect(string url) { if (string.IsNullOrEmpty(url)) { throw new NoURLException(); } if (socket != null) { // Assume force-reconnect Disconnect(false); } client.DestroyHeartbeat(); socket = new WebSocket($"{url}/?v=6&encoding=json"); if (listner == null) { listner = new SocketListner(client, this); } socket.OnOpen += listner.SocketOpened; socket.OnClose += listner.SocketClosed; socket.OnError += listner.SocketErrored; socket.OnMessage += listner.SocketMessage; socket.ConnectAsync(); }
public void Connect(string url) { if (string.IsNullOrEmpty(url)) { throw new NoURLException(); } if (socket != null && socket.ReadyState != WebSocketState.Closed) { throw new SocketRunningException(client); } socket = new WebSocket($"{url}/?v=6&encoding=json"); listner = new SocketListner(client, this); socket.OnOpen += listner.SocketOpened; socket.OnClose += listner.SocketClosed; socket.OnError += listner.SocketErrored; socket.OnMessage += listner.SocketMessage; socket.ConnectAsync(); }
public void Dispose() { listner = null; socket = null; }