Class: SmsCenter
- Inherits:
-
Object
show all
- Defined in:
- lib/sms_center.rb
Defined Under Namespace
Classes: Infobip, Nexmo, Plivo, Telerivet, Twilio
Constant Summary
collapse
- @@platforms =
nil
- @@platform_by_country =
nil
- @@keys =
nil
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(content, to_number, options = {}) ⇒ SmsCenter
Returns a new instance of SmsCenter.
40
41
42
43
44
45
46
47
48
|
# File 'lib/sms_center.rb', line 40
def initialize(content, to_number, options = {})
country = options[:country]
platform = options[:platform]
f_platform = platform.present? ? platform.downcase.capitalize : platform_by_country(country, to_number)
from_number = SmsCenter.root_number_by_platform[f_platform.to_sym]
@request = SmsCenter.const_get(f_platform, false).new(content, to_number, from_number, @@keys)
end
|
Class Method Details
12
13
14
|
# File 'lib/sms_center.rb', line 12
def self.configure
yield self
end
|
.keys ⇒ Object
32
33
34
|
# File 'lib/sms_center.rb', line 32
def self.keys
@@keys
end
|
.keys=(keys) ⇒ Object
24
25
26
|
# File 'lib/sms_center.rb', line 24
def self.keys=(keys)
@@keys = keys
end
|
28
29
30
|
# File 'lib/sms_center.rb', line 28
def self.platform_by_country
@@platform_by_country
end
|
16
17
18
|
# File 'lib/sms_center.rb', line 16
def self.platform_by_country=(platform_by_country)
@@platform_by_country = platform_by_country
end
|
36
37
38
|
# File 'lib/sms_center.rb', line 36
def self.root_number_by_platform
@@root_number_by_platform
end
|
20
21
22
|
# File 'lib/sms_center.rb', line 20
def self.root_number_by_platform=(root_number_by_platform)
@@root_number_by_platform = root_number_by_platform
end
|
Instance Method Details
#send ⇒ Object
50
51
52
|
# File 'lib/sms_center.rb', line 50
def send
HTTPClient.new.post_async(@request.api_url, @request.body, @request.)
end
|
#send_and_wait ⇒ Object
54
55
56
|
# File 'lib/sms_center.rb', line 54
def send_and_wait
HTTPClient.new.post(@request.api_url, @request.body, @request.)
end
|