improved webSocket service