Class: SmsService::Service::Textmarketer

Inherits:
Base
  • Object
show all
Defined in:
lib/sms_service/services/textmarketer.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#basic_auth?, #call_api, #convert_keys_to_s, #headers, #query_url

Constructor Details

#initialize(parameters) ⇒ Textmarketer

Returns a new instance of Textmarketer.



6
7
8
# File 'lib/sms_service/services/textmarketer.rb', line 6

def initialize parameters
  @params=parameters
end

Class Method Details

.api_urlObject



15
16
17
# File 'lib/sms_service/services/textmarketer.rb', line 15

def self.api_url
  "http://www.textmarketer.biz/gateway/"
end

.nameObject



10
11
12
# File 'lib/sms_service/services/textmarketer.rb', line 10

def self.name
  "Textmarketer"
end

Instance Method Details

#http_request(uri, headers = {}) ⇒ Object



25
26
27
# File 'lib/sms_service/services/textmarketer.rb', line 25

def http_request uri,headers={}
  Net::HTTP::Get.new(uri,headers)  
end

#send(message) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/sms_service/services/textmarketer.rb', line 29

def send message
 results=[]
 messages=(Message.new message).extract
  messages.each do |sms|
    append_query={:number=>sms.to,:message=>URI.escape(sms.text),:option=>"xml"}
    params=@params.merge! append_query
    uri_with_query_string=sms_url append_query
    xml=call_api uri_with_query_string 
    #xml = '<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE response SYSTEM "http://www.textmarketer.biz/dtd/api_response.dtd"><response status="success" id="257470055" ><credits>188</credits><credits_used>1</credits_used></response>'
    response = SmsService::Result::Textmarketer.fetch_response xml
    results << response  
  end
  results
end

#sms_url(params) ⇒ Object



19
20
21
22
23
# File 'lib/sms_service/services/textmarketer.rb', line 19

def sms_url params
  query=@params.merge! params
  query=@params.map {|k,v| "#{k}=#{v}"}.join('&')
  self.class.api_url+"?"+query
end