add socket.io mode