confirmation checking and timeout now handled in message handler