Module: SMSFu

Defined in:
lib/sms_fu.rb

Overview

WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Defined Under Namespace

Classes: SMSFuException

Constant Summary collapse

RAILS_CONFIG_ROOT =
defined?(RAILS_ROOT) ? "#{RAILS_ROOT}/config" : "#{File.dirname(__FILE__)}/../templates"
@@from_address =
@config['config']['from_address']

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.carriersObject



38
39
40
# File 'lib/sms_fu.rb', line 38

def self.carriers
  @@carriers.dup
end

.included(base) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/sms_fu.rb', line 25

def self.included(base)
  base.class_eval do
    def self.has_sms_fu
      include SMSFu
    end
  end
end

Instance Method Details

#deliver_sms(number, carrier, message, options = {}) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/sms_fu.rb', line 42

def deliver_sms(number,carrier,message,options={})
  raise SMSFuException.new("Cannot deliver an empty message to #{format_number(number)}") if message.nil? or message.empty?

  options[:limit] ||= message.length
  options[:from]  ||= @@from_address
  message = message[0..options[:limit]-1]
  sms_email = determine_sms_email(format_number(number),carrier)

  SmsNotifier.deliver_sms_message(sms_email,message,options[:from])
rescue SMSFuException => exception
  raise exception
end

#get_sms_address(number, carrier) ⇒ Object



55
56
57
58
# File 'lib/sms_fu.rb', line 55

def get_sms_address(number,carrier)
  number = format_number(number)
  determine_sms_email(number,carrier)
end