class Smshelper::Api::Traitel
Public Class Methods
new(*args)
click to toggle source
headers 'Accept' => 'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8', 'Accept-Language' => 'en-us,en;q=0.5', 'Accept-Encoding' => 'gzip, deflate', 'DNT' => '1', 'Connection' => 'keep-alive'
Calls superclass method
Smshelper::Api::Base::new
# File lib/smshelper/api/traitel.rb, line 6 def initialize(*args) config = args.shift add_query_options! :user => config.traitel[:uname], :pass => config.traitel[:passwd] # "\"#{config.traitel[:passwd]}\"" super end
Public Instance Methods
get_balance()
click to toggle source
# File lib/smshelper/api/traitel.rb, line 31 def get_balance {'AUD' => (get 'selfserve.pl', :extra_query => {:mode => :balance}).split(' ').last.strip} end
get_callback_response(args = {})
click to toggle source
# File lib/smshelper/api/traitel.rb, line 39 def get_callback_response(args = {}) DeliveryReport.new( :message_id => args['tt_id'], :timestamp => Time.now, :delivered => ((args['code'] == '0') ? true : false), :original_params => args ) end
get_status(message_id)
click to toggle source
# File lib/smshelper/api/traitel.rb, line 35 def get_status(message_id) raise NotImplementedError, "Sms status checks unsupported by #{self.class.name}" end
send_message(message)
click to toggle source
# File lib/smshelper/api/traitel.rb, line 12 def send_message(message) if message.utf_8 message.to_hex_be q = {:unicode => 'true'} else q = {} end options = { :to => message.recipient, :message => message.text, :replyto => message.sender, :output => :verbose, :concatenate => true } options.merge!(@extra_options) unless @extra_options.nil? resp = (get 'smsgateway.pl', :extra_query => options.merge(q)) process_response_code(resp) ? (@sent_message_ids << resp.split(',')[2]; resp.split(',')[2]) : (raise ErrorDuringSend "Could not deliver") end
Private Instance Methods
process_response_code(code)
click to toggle source
# File lib/smshelper/api/traitel.rb, line 49 def process_response_code(code) code =~ /accepted/ ? true : false end