class ActionMessage::Adapters::Twilio

Public Class Methods

new(params={}) click to toggle source
Calls superclass method ActionMessage::Adapters::Base::new
# File lib/action_message/adapters/twilio.rb, line 6
def initialize(params={})
  raise ArgumentError, 'account_sid is a mandatory setting for sending messages through Twilio' unless params[:account_sid].present?
  raise ArgumentError, 'auth_token is a mandatory setting for sending messages through Twilio' unless params[:auth_token].present?

  @account_sid = params[:account_sid]
  @auth_token = params[:auth_token]

  super(params)
end

Public Instance Methods

client() click to toggle source
# File lib/action_message/adapters/twilio.rb, line 16
def client
  @client ||= ::Twilio::REST::Client.new(@account_sid, @auth_token)
end
send_message(body, params={}) click to toggle source
# File lib/action_message/adapters/twilio.rb, line 20
def send_message(body, params={})
  super(body, params)

  sms = {
    to: params[:to],
    from: @from,
    body: body
  }
  
  sms.merge!(media_url: params[:media_url]) if params[:media_url].present?

  client.api.account.messages.create(sms)
end