async Task WebSocketEcho(OwinWebSocket socket)
        {
            byte[] buffer = new byte[1024];
            OwinWebSocketReceiveMessage received = await socket.ReceiveAsync(new ArraySegment<byte>(buffer), socket.CallCancelled);

            while (socket.ClientCloseStatus == 0)
            {
                // Echo
                await socket.SendAsync(new ArraySegment<byte>(buffer, 0, received.Count), received.MessageType, received.EndOfMessage, socket.CallCancelled);

                received = await socket.ReceiveAsync(new ArraySegment<byte>(buffer), socket.CallCancelled);
            }

            await socket.CloseAsync(socket.ClientCloseStatus, socket.ClientCloseDescription, socket.CallCancelled);
        }
 public bool Equals(OwinWebSocket other)
 {
     return(Equals(_dictionary, other._dictionary));
 }