public void Initialize(HttpRequest request, WebSocketDescriptor descriptor, WebSocketContext context) { request.ReadLock = true; Context = context; Socket = context.WebSocket; Descriptor = descriptor; }
public async void HandleRequest(WebSocketDescriptor descriptor, HttpRequest request) { try { request.ReadLock = true; WebSocketContext wsC = await request.Context.AcceptWebSocketAsync(null); WebSocketClient client = new T(); client.Initialize(request, descriptor, wsC); Clients.Add(client); client.Start(); if (ClientConnected != null) { try { ClientConnected((T)client); } catch { } } } catch (Exception ex) { descriptor.Server.Log("WebSocketClientContainer:HandleRequest", "Failed to accept Websocket context:" + ex.Message); } }
public WebSocketClientContainer <T> AddWebSocket <T>(string url, bool requiresToken = false, int level = 0) where T : WebSocketClient, new() { WebSocketDescriptor descriptor = new WebSocketDescriptor(Server, new WebSocketClientContainer <T>()) { RequiresToken = requiresToken, TokenLevel = level }; WebSockets.Add(url.ToLower(), descriptor); return((WebSocketClientContainer <T>)descriptor.Container); }
public void AddWebSocket(string url, WebSocketDescriptor descriptor) { AllowWebSocketProtocol = true; Routing.AddWebSocket(url, descriptor); }
public void AddWebSocket(string url, WebSocketDescriptor descriptor) { WebSockets.Add(url.ToLower(), descriptor); }