class AtomparkSmsApi::Gateway
Attributes
conn[R]
method[R]
params[R]
Public Class Methods
new(method, params)
click to toggle source
# File lib/atompark-sms-api/gateway.rb, line 8 def initialize(method, params) @method = method @params = params.merge(action: method, key: AtomparkSmsApi.config.pubkey, version: '3.0') @params.merge!(test: true) if AtomparkSmsApi.config.test @conn = Faraday.new(url: AtomparkSmsApi.config.base_url) end
perform(*args)
click to toggle source
# File lib/atompark-sms-api/gateway.rb, line 4 def self.perform(*args) fail "Don't call me that way" end
Public Instance Methods
perform()
click to toggle source
# File lib/atompark-sms-api/gateway.rb, line 16 def perform AtomparkSmsApi::Response.new(perform!) end
Private Instance Methods
checksum()
click to toggle source
# File lib/atompark-sms-api/gateway.rb, line 31 def checksum @_checksum ||= Digest::MD5.hexdigest(params.sort.map{ |v| v[1] }.join('') + AtomparkSmsApi.config.pvtkey) end
perform!()
click to toggle source
# File lib/atompark-sms-api/gateway.rb, line 24 def perform! conn.post do |req| req.url(method.to_s) req.params = params.merge(sum: checksum) end.body end