class MessageTemplates::Template::Greeting pattr_initialize [:conversation!] def perform ActiveRecord::Base.transaction do conversation.messages.create!(greeting_message_params) end rescue StandardError => e Raven.capture_exception(e) true end private delegate :contact, :account, to: :conversation delegate :inbox, to: :message def greeting_message_params content = @conversation.inbox&.greeting_message if content.blank? content = I18n.t('conversations.templates.greeting_message_body', account_name: account.name) end { account_id: @conversation.account_id, inbox_id: @conversation.inbox_id, message_type: :template, content: content } end end