socket.io fixes