add the read_message method