class Rajasms::Client

Constants

RAJASMS_URI
SMSMASKING_CHECK_PATH
SMSMASKING_PATH
SMSREGULER_CHECK_PATH
SMSREGULER_PATH
SMSSALDO_PATH

Public Class Methods

new(username, password, api_key) click to toggle source
# File lib/rajasms.rb, line 17
  def initialize username, password, api_key
          @username = username
@password = password
@api_key  = api_key
  end

Public Instance Methods

masking(to, message) click to toggle source
# File lib/rajasms.rb, line 27
def masking to, message
  send(to, message, SMSMASKING_PATH)
end
reguler(to, message) click to toggle source
# File lib/rajasms.rb, line 23
def reguler to, message
  send(to, message, SMSREGULER_PATH)
end
saldo() click to toggle source
# File lib/rajasms.rb, line 31
def saldo
  response = self.class.get(SMSSALDO_PATH, build_query)
  code, data = response.body.split('|')
  {code: code, data: data}
end
status(sms_id, reguler=false) click to toggle source
# File lib/rajasms.rb, line 37
def status(sms_id, reguler=false)
  response = self.class.get(reguler ? SMSREGULER_CHECK_PATH : SMSMASKING_CHECK_PATH, build_query(id: sms_id))
  code, data = response.body.split('|')
  {code: code, data: data}
end

Private Instance Methods

build_query(query={}) click to toggle source
# File lib/rajasms.rb, line 44
def build_query query={}
  query ||= {}
  query.merge!(key: @api_key, username: @username, password: @password)
  {query: query}
end
send(to, message, path) click to toggle source
# File lib/rajasms.rb, line 50
def send to, message, path
  if message.length <= 480
    response = self.class.post(path, build_query(number:to, message: message))
    code, data = response.body.split('|')
    {code: code, data: data}
  else
    raise 'too long brow'
  end
end