sms_portal 0.1.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 2a8b21cfdee4fddaca026e1c834cb39b1c20ddb7
4
- data.tar.gz: f7990c0bf6457ceb414e55cb067cad09a6ec4194
2
+ SHA256:
3
+ metadata.gz: a8a1b432df2ed4f81a595a458a445dee7eb0b2bdc957073fa18ee1903c26b9ae
4
+ data.tar.gz: d45cc4bcfa6410ee3d370465c93ca7eec043b769db87d3d1e4434751b1815f17
5
5
  SHA512:
6
- metadata.gz: d853a970da950226ede0347ef4a7b6cda7521688fd47914ae833486463fd5751510ada66ab3dac913392cd5ddcc9c07fcae874122bd38cfbd5c3c714dbbfe10e
7
- data.tar.gz: a92fa4e45494e5dfeb9188ea00a11bac5af6e32698c4da5012ea3fd0787db7bf18bdb0a41620a174e1d2b250719baf0714f837dee5108d66ce21c364d3065c21
6
+ metadata.gz: d5c242adec90dceb5e99a9e165c902c3a04a00a4506ac1124930d4c8ccfd6ecbb4460f24efc9cb55393436218444adc8667fa27dd427c51d1ba505a377586dc3
7
+ data.tar.gz: f7ab7bcee8c43113434c0bf83a6ad70d5b1d00e421c94ef0d2b8286c07e33062adb8541e2d89baba064d6d0aac91e4744475344673d32722932c1b06be267cb3
data/Gemfile CHANGED
@@ -2,3 +2,5 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in sms_portal.gemspec
4
4
  gemspec
5
+
6
+ gem "rake", "~> 13.0"
data/README.md CHANGED
@@ -4,15 +4,51 @@ Send SMS messages using [SMSPortal](http://www.smsportal.co.za)
4
4
 
5
5
  ## Installation
6
6
 
7
- Install the gem:
7
+ Install the latest release
8
8
 
9
- $ gem install sms_portal
9
+ ```
10
+ $ gem install sms_portal
11
+ ```
10
12
 
11
- Then set your credentials:
13
+ Or add it to your Gemfile
12
14
 
13
- $ export SMS_PORTAL_USERNAME=sms_portal_username
14
- $ export SMS_PORTAL_PASSWORD=sms_portal_password
15
+ ```
16
+ gem 'sms_portal', '0.1.0'
17
+ ```
18
+
19
+ ## Configuration
20
+
21
+ Either set the following environment variables
22
+
23
+ ```
24
+ $ export SMS_PORTAL_USERNAME=sms_portal_username
25
+ $ export SMS_PORTAL_PASSWORD=sms_portal_password
26
+ ```
27
+
28
+ Or in Rails, you can create an initializer
29
+
30
+ ```
31
+ # config/initializers/sms_portal.rb
32
+
33
+ SmsPortal.configure do |config|
34
+ config.username = sms_portal_username
35
+ config.password = sms_portal_password
36
+ end
37
+ ```
38
+
39
+ To intercept messages in testing/development environments there is an extra configuration option to route all messages to that number.
40
+ ```
41
+ # as environment variable
42
+ $ export SMS_PORTAL_INTERCEPTOR=phone_number
43
+
44
+ # or in config/initializers/sms_portal.rb
45
+ SmsPortal.configure do |config|
46
+ config.interceptor = phone_number
47
+ end
48
+ ```
15
49
 
16
50
  ## Usage
17
51
 
18
- SmsPortal.deliver('0821234567', 'Your message body here')
52
+ ```
53
+ SmsPortal.deliver('0821234567', 'Your message body here')
54
+ ```
@@ -1,10 +1,11 @@
1
1
  module SmsPortal
2
2
  class Config
3
- attr_accessor :username, :password
3
+ attr_accessor :username, :password, :interceptor
4
4
 
5
5
  def initialize
6
6
  @username = ENV['SMS_PORTAL_USERNAME']
7
7
  @password = ENV['SMS_PORTAL_PASSWORD']
8
+ @interceptor = ENV['SMS_PORTAL_INTERCEPTOR']
8
9
  end
9
10
  end
10
11
  end
@@ -3,20 +3,21 @@ module SmsPortal
3
3
  include HTTParty
4
4
  base_uri "http://www.mymobileapi.com"
5
5
 
6
- def initialize(number, message)
6
+ def initialize(recipient, message)
7
7
  @options = {
8
8
  query: {
9
- numto: number,
9
+ numto: SmsPortal.config.interceptor || recipient,
10
10
  data1: message,
11
11
  type: 'sendparam',
12
12
  username: SmsPortal.config.username,
13
13
  password: SmsPortal.config.password
14
- }
14
+ },
15
+ format: :xml
15
16
  }
16
17
  end
17
18
 
18
19
  def deliver!
19
- self.class.get('/api5/http5.aspx', @options)
20
+ self.class.get('/api5/http5.aspx', @options).parsed_response
20
21
  end
21
22
  end
22
23
  end
@@ -1,3 +1,3 @@
1
1
  module SmsPortal
2
- VERSION = "0.1.0"
2
+ VERSION = "1.0.0"
3
3
  end
data/lib/sms_portal.rb CHANGED
@@ -16,8 +16,8 @@ module SmsPortal
16
16
  yield(config)
17
17
  end
18
18
 
19
- def self.deliver(number, message)
20
- message = Message.new(number, message)
19
+ def self.deliver(recipient, message)
20
+ message = Message.new(recipient, message)
21
21
  message.deliver!
22
22
  end
23
23
  end
data/sms_portal.gemspec CHANGED
@@ -17,7 +17,4 @@ Gem::Specification.new do |spec|
17
17
  spec.require_paths = ["lib"]
18
18
 
19
19
  spec.add_dependency "httparty"
20
-
21
- spec.add_development_dependency "bundler", "~> 1.6"
22
- spec.add_development_dependency "rake"
23
20
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sms_portal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wiehann Radyn
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-20 00:00:00.000000000 Z
11
+ date: 2022-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -24,35 +24,7 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: bundler
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '1.6'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '1.6'
41
- - !ruby/object:Gem::Dependency
42
- name: rake
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- description:
27
+ description:
56
28
  email:
57
29
  - wradyn@gmail.com
58
30
  executables: []
@@ -73,7 +45,7 @@ homepage: https://github.com/wiehann/sms_portal
73
45
  licenses:
74
46
  - MIT
75
47
  metadata: {}
76
- post_install_message:
48
+ post_install_message:
77
49
  rdoc_options: []
78
50
  require_paths:
79
51
  - lib
@@ -88,9 +60,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
88
60
  - !ruby/object:Gem::Version
89
61
  version: '0'
90
62
  requirements: []
91
- rubyforge_project:
92
- rubygems_version: 2.6.11
93
- signing_key:
63
+ rubygems_version: 3.1.4
64
+ signing_key:
94
65
  specification_version: 4
95
66
  summary: Send SMS messages using SMSPortal
96
67
  test_files: []