WebSocket server handler