class CircuitRails::DeliveryMethod
Constants
- DEFAULTS
Attributes
settings[RW]
Public Class Methods
new(values)
click to toggle source
# File lib/circuit_rails/delivery_method.rb, line 17 def initialize(values) self.settings = DEFAULTS.merge(values) end
Public Instance Methods
client()
click to toggle source
# File lib/circuit_rails/delivery_method.rb, line 21 def client @client ||= CircuitClient::Client.new do |c| c.host = settings[:host] c.client_id = settings[:client_id] c.client_secret = settings[:client_secret] c.auth_scope = settings[:auth_scope] end end
deliver!(mail)
click to toggle source
# File lib/circuit_rails/delivery_method.rb, line 30 def deliver!(mail) conv = mail.conversation || settings[:default_conversation] raise MissingParameter, 'a conversation or default_conversation is required for circuit delivery!' if conv.nil? body = mail.multipart? ? mail.text_part.body.decoded : mail.body.decoded options = {} options[:subject] = mail.subject unless mail.subject.nil? client.create_message(conv, body, **options) end