class MobilySMS

Attributes

auth[RW]
date_send[R]
delete_key[RW]
domain_name[RW]
msg[RW]
msg_id[RW]
request_handler[RW]
sender[RW]
time_send[R]

Public Class Methods

can_send?() click to toggle source
# File lib/mobily/mobily_sms.rb, line 35
def self.can_send?

  # send status api method wrapper, doesn't need authentication
  request_handler = MobilyApiJsonRequestHandler.new
  request_handler.set_api_method('sendStatus')
  begin
    response = request_handler.handle
  rescue MobilyApiError
    false
  else
    response.get('result') == '1'
  end
end
new(auth, numbers=[], sender='', msg='', delete_key=nil, msg_id=nil, domain_name=nil, application_type='70') click to toggle source
# File lib/mobily/mobily_sms.rb, line 11
def initialize(auth, numbers=[], sender='', msg='', delete_key=nil, msg_id=nil,
               domain_name=nil, application_type='70')
  @auth = auth
  @numbers = numbers
  @sender = sender
  @msg = msg
  @date_send = 0
  @time_send = 0
  @delete_key = delete_key
  @msg_id = msg_id
  @domain_name = domain_name
  @application_type = application_type
  @api_method_name = 'msgSend'
  @request_handler = MobilyApiJsonRequestHandler.new(@auth)
end

Public Instance Methods

add_number(number) click to toggle source
# File lib/mobily/mobily_sms.rb, line 27
def add_number(number)
  @numbers << number
end
delete() click to toggle source
# File lib/mobily/mobily_sms.rb, line 55
def delete
  # send sms api method wrapper
  return if @delete_key.nil?
  request_handler = MobilyApiJsonRequestHandler.new(@auth)
  request_handler.set_api_method('deleteMsg')
  request_handler.add_parameter('deleteKey', @delete_key)
  request_handler.handle
end
get_numbers_as_csv() click to toggle source
# File lib/mobily/mobily_sms.rb, line 31
def get_numbers_as_csv
  @numbers.join(',')
end
schedule_to_send_on(day, month, year, hour=0, min=0, sec=0) click to toggle source
# File lib/mobily/mobily_sms.rb, line 64
def schedule_to_send_on(day, month, year, hour=0, min=0, sec=0)
  @time_send = '%02d:%02d:%02d' % [hour, min, sec]
  @date_send = '%02d/%02d/%04d' % [month, day, year]
end
send() click to toggle source
# File lib/mobily/mobily_sms.rb, line 49
def send
  # send sms api method wrapper
  prepare_to_send
  @request_handler.handle
end

Private Instance Methods

prepare_to_send() click to toggle source
# File lib/mobily/mobily_sms.rb, line 71
def prepare_to_send
  @request_handler.set_api_method(@api_method_name)
  @request_handler.add_parameter('sender', @sender)
  @request_handler.add_parameter('msg', @msg)
  @request_handler.add_parameter('numbers', get_numbers_as_csv)
  @request_handler.add_parameter('dateSend', @date_send)
  @request_handler.add_parameter('timeSend', @time_send)
  @request_handler.add_parameter('deleteKey', @delete_key)
  @request_handler.add_parameter('msgId', @msg_id)
  @request_handler.add_parameter('lang', '3')
  @request_handler.add_parameter('applicationType', @application_type)
  @request_handler.add_parameter('domainName', @domain_name)
end