class SmsSafe::Interceptors::Twilio

Interceptor class for Twilio Ruby Gem. Maps Hash params into SmsSafe::Message and back.

Public Instance Methods

convert_message(message) click to toggle source

Converts a hash of params (Twilio’s call is just a hash to Client.messages) into Message @param [Hash] message that is being sent by Twilio gem @return [Message] the message converted into our own Message class

# File lib/sms_safe/interceptors/twilio.rb, line 15
def convert_message(message)
  SmsSafe::Message.new(from: message[:from], to: message[:to], text: message[:body], original_message: message)
end
redirect(message) click to toggle source

Returns a modified version of the original message with new recipient and text,

to give back to the texter gem to send.

@param [Message] message that is being sent, unmodified @return [Hash] modified message to send

# File lib/sms_safe/interceptors/twilio.rb, line 24
def redirect(message)
  original_message = message.original_message
  original_message[:to] = redirect_phone_number(message)
  original_message[:body] = redirect_text(message)
  original_message
end