hooked socket.io