Add socket.io logic