class Smshelper::Api::Smstrade
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
Smshelper::Api::Base::new
# File lib/smshelper/api/smstrade.rb, line 6 def initialize(*args) config = args.shift add_query_options! :key => config.smstrade[:api_key] super end
Public Instance Methods
get_balance()
click to toggle source
# File lib/smshelper/api/smstrade.rb, line 30 def get_balance resp = (post 'credits') {'EUR' => resp.parsed_response} end
get_callback_response(args = {})
click to toggle source
# File lib/smshelper/api/smstrade.rb, line 39 def get_callback_response(args = {}) DeliveryReport.new( :message_id => args['message_id'], :timestamp => Time.now, :delivered => ((args['status'] == 'DELIVERED') ? true : false), :original_params => args ) end
get_status(message_id)
click to toggle source
# File lib/smshelper/api/smstrade.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/smstrade.rb, line 12 def send_message(message) if message.utf_8 message.to_hex_be q = {:messagetype => 'unicode', :concat => '1', :message_id => '1'} else q = {:concat => '1', :message_id => '1'} end options = { :to => message.recipient, :message => message.text, :from => message.sender} options = options.merge(@extra_options) unless @extra_options.nil? resp = (post '', :extra_query => options.merge(q)).split(/\n/) process_response_code(resp.first) ? (@sent_message_ids << resp.last; resp.last) : (raise ErrorDuringSend, @response_code.smstrade(resp.first)) end
Private Instance Methods
process_response_code(code)
click to toggle source
# File lib/smshelper/api/smstrade.rb, line 49 def process_response_code(code) (code == '100') ? true : false end