replaced socket.io with ws