Refactored MessageRecorder