コード例 #1
0
        private WebSocketHandle GetHandle(string address)
        {
            WebSocketHandle handle = null;

            m_handles.TryGetValue(address, out handle);
            return(handle);
        }
コード例 #2
0
        // -- Nando
        private async Task WebSocketPipe(HttpContext context, WebSocket ws)
        {
            var handle = new WebSocketHandle(ws);
            WebSocketReceiveResult result = await ws.ReceiveAsync(new ArraySegment <byte>(handle.buffer), CancellationToken.None);

            while (!result.CloseStatus.HasValue)
            {
                // -- Nando - Build String Buffered
                await handle.ParseMessageReceived(result);

                result = await ws.ReceiveAsync(new ArraySegment <byte>(handle.buffer), CancellationToken.None);
            }

            await ws.CloseAsync(result.CloseStatus.Value, result.CloseStatusDescription, CancellationToken.None);
        }
コード例 #3
0
        public void AddListener(string address
                                , Action onOpen
                                , Action <ushort, string, bool> onClose
                                , Action <Opcode, byte[]> onReceive
                                , Action <string> onError)
        {
            WebSocketHandle handle = new WebSocketHandle();

            handle.onOpen    = onOpen;
            handle.onClose   = onClose;
            handle.onReceive = onReceive;
            handle.onError   = onError;

            if (!m_handles.ContainsKey(address))
            {
                m_handles.Add(address, null);
            }
            m_handles[address] = handle;
        }
コード例 #4
0
            void Send(WebMessageData message)
            {
                var buffer = WebSocketHandle.PacketResponseData(message);

                SendDataToServer(buffer);
            }
コード例 #5
0
 /// <summary>
 /// 初始化新实例
 /// </summary>
 /// <param name="webSocketClient"></param>
 public WebClientSession(WebSocketClient webSocketClient)
 {
     _webSocketClient = webSocketClient;
     _handle          = new WebSocketHandle(this);
 }