implement b/s interaction based on socket.io.