示例#1
0
        private void configure()
        {
            _ws.OnOpen += (sender, e) =>
            {
            };

            _ws.OnMessage += (sender, e) =>
            {
                switch (e.Type)
                {
                case Opcode.Text:
                    /*var msg =*/ parseTextMessage(e.Data);
//                        _msgQ.Enqueue(msg);
                    break;

                case Opcode.Binary:
                    break;

                default:
                    break;
                }
            };

            _ws.OnError += (sender, e) =>
            {
//                enNfMessage("[GoFree] error", "WS: Error: " + e.Message, "notification-message-im");
            };

            _ws.OnClose += (sender, e) =>
            {
/*
 *              enNfMessage
 *              (
 *                  "[GoFree] disconnect",
 *                  String.Format("WS: Close({0}:{1}): {2}", (ushort)e.Code, e.Code, e.Reason),
 *                  "notification-message-im"
 *              );
 */
            };

            _notifyMsgState = new ThreadState();
            _notifyMsg      = (state) =>
            {
                while (_notifyMsgState.Enabled /*|| _msgQ.Count > 0*/)
                {
                    Thread.Sleep(500);

/*
 *                  if (_msgQ.Count > 0)
 *                  {
 *                      QueueMessage msg = (QueueMessage)_msgQ.Dequeue();
 *                      Console.WriteLine("{0}", msg.Summary);
 *                  }
 */
                }

                _notifyMsgState.Notification.Set();
            };

            _sendHeartbeat = (state) =>
            {
//                var msg = createTextMessage("heartbeat", String.Empty);
//                _ws.Send(msg);
            };
        }
示例#2
0
        private void configure()
        {
            _ws.OnOpen += (sender, e) =>
            {
            };

            _ws.OnMessage += (sender, e) =>
            {
                switch (e.Type)
                {
                    case Opcode.Text:
                        /*var msg =*/ parseTextMessage(e.Data);
            //                        _msgQ.Enqueue(msg);
                        break;
                    case Opcode.Binary:
                        break;
                    default:
                        break;
                }
            };

            _ws.OnError += (sender, e) =>
            {
            //                enNfMessage("[GoFree] error", "WS: Error: " + e.Message, "notification-message-im");
            };

            _ws.OnClose += (sender, e) =>
            {
            /*
                enNfMessage
                (
                    "[GoFree] disconnect",
                    String.Format("WS: Close({0}:{1}): {2}", (ushort)e.Code, e.Code, e.Reason),
                    "notification-message-im"
                );
            */
            };

            _notifyMsgState = new ThreadState();
            _notifyMsg = (state) =>
            {
                while (_notifyMsgState.Enabled /*|| _msgQ.Count > 0*/)
                {
                    Thread.Sleep(500);
            /*
                    if (_msgQ.Count > 0)
                    {
                        QueueMessage msg = (QueueMessage)_msgQ.Dequeue();
                        Console.WriteLine("{0}", msg.Summary);
                    }
            */
                }

                _notifyMsgState.Notification.Set();
            };

            _sendHeartbeat = (state) =>
            {
            //                var msg = createTextMessage("heartbeat", String.Empty);
            //                _ws.Send(msg);
            };
        }