Beispiel #1
0
        private void createWebSocket(string uri)
        {
            socket = new WebSocket(uri);
            if (Trace)
            {
                socket.Log.Level = LogLevel.Debug;
            }

            socket.OnClose += (sender, evt) =>
            {
                // Release socket handle
                socket = null;
                Logger.TraceIf(Trace, String.Format("Socket Closed. Code={0}, Reason={1}", evt.Code, evt.Reason));
                OnClose.Emit(this, new WebSocketCloseEventArgs(evt.Code, evt.Reason));
            };
            socket.OnMessage += (sender, evt) =>
            {
                if (evt.IsPing)
                {
                    Logger.TraceIf(Trace, "SocketReceive: WebSocket ping.");
                    return;
                }

                if (evt.IsText)
                {
                    Logger.TraceIf(Trace, "SocketReceive: Invalid content (text/plain).");
                    return;
                }

                OnMessage.Emit(this, new WebSocketMessageEventArgs(evt.RawData));
            };
            socket.OnError += (sender, evt) =>
            {
                if (OnError != null)
                {
                    OnError.Emit(sender, new WebSocketErrorEventArgs(evt.Exception));
                }
            };
            socket.OnOpen += (sender, evt) =>
            {
                if (OnOpen != null)
                {
                    OnOpen.Emit(sender, evt);
                }
            };
        }
Beispiel #2
0
        private void open()
        {
            try
            {
                startReceiving();

                lock (_forEvent)
                {
                    try
                    {
                        OnOpen.Emit(this, EventArgs.Empty);
                    }
                    catch (Exception ex)
                    {
                        processException(ex, "An exception has occurred while OnOpen.");
                    }
                }
            }
            catch (Exception ex)
            {
                processException(ex, "An exception has occurred while opening.");
            }
        }
Beispiel #3
0
 private void onOpen()
 {
     _readyState = WsState.OPEN;
     startMessageLoop();
     OnOpen.Emit(this, EventArgs.Empty);
 }
 private void onOpen()
 {
     _readyState = WsState.OPEN;
     startReceiving();
     OnOpen.Emit(this, EventArgs.Empty);
 }