class SMSBao::Request
Attributes
params[RW]
uri[RW]
Public Class Methods
new(action, recipients = nil, content = nil)
click to toggle source
# File lib/sms_bao.rb, line 27 def initialize(action, recipients = nil, content = nil) @params = { u: SMSBao.username, p: SMSBao.md5_password } @params[:m] = Array(recipients).join(',') if recipients @params[:c] = "#{SMSBao.signature} #{content}" if content @uri = URI(BASE_GATEWAY % action) @uri.query = URI.encode_www_form(params) end
Public Instance Methods
perform!()
click to toggle source
# File lib/sms_bao.rb, line 36 def perform! timeout = SMSBao.timeout response = Net::HTTP.start(uri.host, uri.port, open_timeout: timeout, read_timeout: timeout) do |http| http.get(uri.request_uri) end code, error_msg = response.body.split("\n") code == '0' ? error_msg : raise(RequestException.new(code)) end