sms_masking 0.1.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.DS_Store +0 -0
- data/README.md +184 -3
- data/lib/sms_masking/auth.rb +2 -2
- data/lib/sms_masking/base.rb +4 -0
- data/lib/sms_masking/phone_book.rb +149 -0
- data/lib/sms_masking/send_sms.rb +25 -2
- data/lib/sms_masking/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 205a16f3061343713fc0fb72574a75cff1bce6b7
|
4
|
+
data.tar.gz: 31a933717fb885da39baa7c459d62e0200ebe4ea
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4351c62d05964d4ef8fc454e4135e1d37d6af55270a733994151c2a134a90126345d395f7f35571ad654b1b4b05ac011403edf6e74aa91e9a65723743572c8ff
|
7
|
+
data.tar.gz: aadf3565285755c5332c4ce297f13a91f907c8413377a124b0f81a5a02e461dd14ffcb72a86500a98024385a5f7b42bd0a3cbdb636ef9ed8a6764a7065a54888
|
data/.DS_Store
CHANGED
Binary file
|
data/README.md
CHANGED
@@ -6,6 +6,21 @@ SmsMasking allows you to send SMS messages from your Ruby application using serv
|
|
6
6
|
|
7
7
|
This is not official gem of [www.smsmasking.co.id](http://www.smsmasking.co.id/).
|
8
8
|
|
9
|
+
# Index
|
10
|
+
|
11
|
+
* [Installation](https://github.com/yunanhelmy/sms_masking#installation)
|
12
|
+
* [Initialize](https://github.com/yunanhelmy/sms_masking#initialize)
|
13
|
+
* [Send an SMS](https://github.com/yunanhelmy/sms_masking#send-an-sms)
|
14
|
+
* [Send SMS by Group](https://github.com/yunanhelmy/sms_masking#send-sms-by-group)
|
15
|
+
* [Add Phone Book](https://github.com/yunanhelmy/sms_masking#add-phone-book)
|
16
|
+
* [Edit Phone Book](https://github.com/yunanhelmy/sms_masking#edit-phone-book)
|
17
|
+
* [Delete Phone Book](https://github.com/yunanhelmy/sms_masking#delete-phone-book)
|
18
|
+
* [Get Contact List](https://github.com/yunanhelmy/sms_masking#get-contact-list)
|
19
|
+
* [Get Contact List by Group](https://github.com/yunanhelmy/sms_masking#get-contact-list-by-group)
|
20
|
+
* [Get Complete Data](https://github.com/yunanhelmy/sms_masking#get-complete-data)
|
21
|
+
* [Find Name](https://github.com/yunanhelmy/sms_masking#find-name)
|
22
|
+
* [Find Phone Number](https://github.com/yunanhelmy/sms_masking#find-phone-number)
|
23
|
+
|
9
24
|
## Installation
|
10
25
|
|
11
26
|
Add this line to your application's Gemfile:
|
@@ -24,17 +39,183 @@ Or install it yourself as:
|
|
24
39
|
|
25
40
|
## Usage
|
26
41
|
|
27
|
-
###
|
42
|
+
### Initialize
|
28
43
|
|
29
44
|
```ruby
|
30
45
|
sms = SmsMasking::Base.new(username: "your_username", password: "your_password")
|
31
46
|
```
|
32
47
|
|
33
|
-
|
48
|
+
Parameters :
|
49
|
+
|
50
|
+
* `mobile` : recipient
|
51
|
+
* `message` : SMS
|
52
|
+
|
53
|
+
### Send an SMS
|
54
|
+
|
55
|
+
Purpose : To Send an SMS
|
56
|
+
|
57
|
+
Example :
|
58
|
+
|
34
59
|
```ruby
|
35
60
|
sms.send_sms({mobile: "085699999999", message: "your_message"})
|
36
61
|
```
|
37
62
|
|
63
|
+
Parameters :
|
64
|
+
|
65
|
+
- `mobile` : recipient number
|
66
|
+
- `message` : SMS
|
67
|
+
|
68
|
+
### Send SMS by Group
|
69
|
+
|
70
|
+
Purpose : To Send SMS to a Group
|
71
|
+
|
72
|
+
Example :
|
73
|
+
|
74
|
+
```ruby
|
75
|
+
sms.send_sms_group({group: "My group", msg: "your_message"})
|
76
|
+
```
|
77
|
+
|
78
|
+
Parameters :
|
79
|
+
|
80
|
+
* `group` : Group Name
|
81
|
+
* `message` : SMS
|
82
|
+
|
83
|
+
### Add Phone Book
|
84
|
+
|
85
|
+
Purpose : Add new contact to phone book
|
86
|
+
|
87
|
+
Example :
|
88
|
+
|
89
|
+
```ruby
|
90
|
+
sms.add_phone_book({
|
91
|
+
name: "John Doe",
|
92
|
+
mobile: "085699999999",
|
93
|
+
group: "My Group",
|
94
|
+
address: "My Address",
|
95
|
+
birth: "19900101",
|
96
|
+
desc: "My Description"
|
97
|
+
})
|
98
|
+
```
|
99
|
+
|
100
|
+
Parameters :
|
101
|
+
|
102
|
+
* `name` : Contact Name
|
103
|
+
* `mobile` : Recipient
|
104
|
+
* `group` : Contact Group Name
|
105
|
+
* `address` (optional) : Contact Address
|
106
|
+
* `birth` (optional) : Contact Birthday (YYYYMMDD)
|
107
|
+
* `desc` (optional) : Contact Description
|
108
|
+
|
109
|
+
### Edit Phone Book
|
110
|
+
|
111
|
+
Purpose : Edit existing Contact
|
112
|
+
|
113
|
+
Example :
|
114
|
+
|
115
|
+
```ruby
|
116
|
+
sms.edit_phone_book({
|
117
|
+
id: 1,
|
118
|
+
name: "John Doe",
|
119
|
+
mobile: "085699999999",
|
120
|
+
group: "My Group",
|
121
|
+
address: "My Address",
|
122
|
+
birth: "19900101",
|
123
|
+
desc: "My Description"
|
124
|
+
})
|
125
|
+
```
|
126
|
+
|
127
|
+
Parameters :
|
128
|
+
|
129
|
+
* `id` : Contact ID Number
|
130
|
+
* `name` : Contact Name
|
131
|
+
* `mobile` : Recipient
|
132
|
+
* `group` : Contact Group Name
|
133
|
+
* `address` (optional) : Contact Address
|
134
|
+
* `birth` (optional) : Contact Birthday (YYYYMMDD)
|
135
|
+
* `desc` (optional) : Contact Description
|
136
|
+
|
137
|
+
### Delete Phone Book
|
138
|
+
|
139
|
+
Purpose : Delete existing contact
|
140
|
+
|
141
|
+
Example :
|
142
|
+
|
143
|
+
```ruby
|
144
|
+
sms.delete_phone_book({id: 1})
|
145
|
+
```
|
146
|
+
|
147
|
+
Parameters :
|
148
|
+
|
149
|
+
* `id` : Contact ID Number
|
150
|
+
|
151
|
+
### Get Contact List
|
152
|
+
|
153
|
+
```ruby
|
154
|
+
sms.list_phone_book({
|
155
|
+
page: 1,
|
156
|
+
size: 10
|
157
|
+
})
|
158
|
+
```
|
159
|
+
|
160
|
+
Parameters :
|
161
|
+
|
162
|
+
* `page` : Page Number (default=1)
|
163
|
+
* `size` : number of records per page (default=10)
|
164
|
+
|
165
|
+
### Get Contact List by Group
|
166
|
+
|
167
|
+
Purpose : To get Contact list by Group Name
|
168
|
+
|
169
|
+
```ruby
|
170
|
+
sms.list_phone_book_by_group({
|
171
|
+
page: 1,
|
172
|
+
size: 10,
|
173
|
+
group: "My Group"
|
174
|
+
})
|
175
|
+
```
|
176
|
+
|
177
|
+
Parameters :
|
178
|
+
|
179
|
+
* `page` : Page Number (default=1)
|
180
|
+
* `size` : number of records per page (default=10)
|
181
|
+
* `group` : Group Name
|
182
|
+
|
183
|
+
### Get Complete Data
|
184
|
+
|
185
|
+
Purpose : To retrieve contact detail
|
186
|
+
|
187
|
+
```ruby
|
188
|
+
sms.contact_detail({id: 1})
|
189
|
+
```
|
190
|
+
|
191
|
+
Parameters :
|
192
|
+
|
193
|
+
* `id` : Contact ID Number
|
194
|
+
|
195
|
+
### Find Name
|
196
|
+
|
197
|
+
Purpose : To search contact by name
|
198
|
+
|
199
|
+
```ruby
|
200
|
+
sms.find_contact({name: "John Doe"})
|
201
|
+
```
|
202
|
+
|
203
|
+
Parameters :
|
204
|
+
|
205
|
+
* `name` : Name to search
|
206
|
+
|
207
|
+
### Find Phone Number
|
208
|
+
|
209
|
+
Purpose : To search contact by Phone Number
|
210
|
+
|
211
|
+
```ruby
|
212
|
+
sms.find_contact({number: "085699999999"})
|
213
|
+
```
|
214
|
+
|
215
|
+
Parameters :
|
216
|
+
|
217
|
+
* `number` : Number to search
|
218
|
+
|
38
219
|
## Development
|
39
220
|
|
40
221
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
@@ -43,7 +224,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
|
|
43
224
|
|
44
225
|
## Contributing
|
45
226
|
|
46
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
227
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/yunanhelmy/sms_masking. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
47
228
|
|
48
229
|
|
49
230
|
## License
|
data/lib/sms_masking/auth.rb
CHANGED
data/lib/sms_masking/base.rb
CHANGED
@@ -1,20 +1,24 @@
|
|
1
1
|
require 'sms_masking/auth'
|
2
2
|
require 'sms_masking/response'
|
3
3
|
require 'sms_masking/send_sms'
|
4
|
+
require 'sms_masking/phone_book'
|
4
5
|
|
5
6
|
module SmsMasking
|
6
7
|
class Base
|
7
8
|
attr_accessor :username
|
8
9
|
attr_accessor :password
|
10
|
+
attr_accessor :base_path
|
9
11
|
|
10
12
|
include HTTParty
|
11
13
|
include SmsMasking::Auth
|
12
14
|
include SmsMasking::SendSms
|
15
|
+
include SmsMasking::PhoneBook
|
13
16
|
include SmsMasking::Response
|
14
17
|
|
15
18
|
base_uri 'http://send.smsmasking.co.id:8080'
|
16
19
|
|
17
20
|
def initialize(params = {})
|
21
|
+
@base_path = "/Web2SMS/api"
|
18
22
|
params.each do |key, value|
|
19
23
|
instance_variable_set("@#{key}", value)
|
20
24
|
end
|
@@ -0,0 +1,149 @@
|
|
1
|
+
module SmsMasking
|
2
|
+
module PhoneBook
|
3
|
+
|
4
|
+
# ==== Attributes
|
5
|
+
# * +name+ : Contact Name
|
6
|
+
# * +mobile+ : Recipient
|
7
|
+
# * +group+ : Contact Group Name
|
8
|
+
# * +address+ (optional) : Contact Address
|
9
|
+
# * +birth+ (optional) : Contact Birthday (YYYYMMDD)
|
10
|
+
# * +desc+ (optional) : Contact Description
|
11
|
+
#
|
12
|
+
# ==== Example
|
13
|
+
# sms.add_phone_book({
|
14
|
+
# name: "John Doe",
|
15
|
+
# mobile: "085699999999",
|
16
|
+
# group: "My Group",
|
17
|
+
# address: "My Address",
|
18
|
+
# birth: "19900101",
|
19
|
+
# desc: "My Description"
|
20
|
+
# })
|
21
|
+
#
|
22
|
+
def add_phone_book(params = {})
|
23
|
+
params[:username] = @username
|
24
|
+
params[:auth] = auth(params[:mobile]+@password.to_s)
|
25
|
+
res = self.class.get(@base_path+"/phbkAdd.aspx", query: params)
|
26
|
+
print_response res
|
27
|
+
end
|
28
|
+
|
29
|
+
# ==== Attributes
|
30
|
+
# * +id+ : Contact ID Number
|
31
|
+
# * +name+ : Contact Name
|
32
|
+
# * +mobile+ : Recipient
|
33
|
+
# * +group+ : Contact Group Name
|
34
|
+
# * +address+ (optional) : Contact Address
|
35
|
+
# * +birth+ (optional) : Contact Birthday (YYYYMMDD)
|
36
|
+
# * +desc+ (optional) : Contact Description
|
37
|
+
#
|
38
|
+
# ==== Example
|
39
|
+
# sms.edit_phone_book({
|
40
|
+
# id: 1,
|
41
|
+
# name: "John Doe",
|
42
|
+
# mobile: "085699999999",
|
43
|
+
# group: "My Group",
|
44
|
+
# address: "My Address",
|
45
|
+
# birth: "19900101",
|
46
|
+
# desc: "My Description"
|
47
|
+
# })
|
48
|
+
#
|
49
|
+
def edit_phone_book(params = {})
|
50
|
+
params[:username] = @username
|
51
|
+
params[:auth] = auth(params[:id].to_s+@password.to_s)
|
52
|
+
res = self.class.get(@base_path+"/phbkEdit.aspx", query: params)
|
53
|
+
print_response res
|
54
|
+
end
|
55
|
+
|
56
|
+
# ==== Attributes
|
57
|
+
# * +id+ : Contact ID Number
|
58
|
+
#
|
59
|
+
# ==== Example
|
60
|
+
# sms.delete_phone_book({id: 1})
|
61
|
+
#
|
62
|
+
def delete_phone_book(params = {})
|
63
|
+
params[:username] = @username
|
64
|
+
params[:auth] = auth(params[:id].to_s+@password.to_s)
|
65
|
+
res = self.class.get(@base_path+"/phbkDelete.aspx", query: params)
|
66
|
+
print_response res
|
67
|
+
end
|
68
|
+
|
69
|
+
# ==== Attributes
|
70
|
+
# * +page+ : Page Number (default=1)
|
71
|
+
# * +size+ : number of records per page (default=10)
|
72
|
+
#
|
73
|
+
# ==== Example
|
74
|
+
# sms.list_phone_book({
|
75
|
+
# page: 1,
|
76
|
+
# size: 10
|
77
|
+
# })
|
78
|
+
#
|
79
|
+
def list_phone_book(params = {})
|
80
|
+
params[:username] = @username
|
81
|
+
params[:auth] = auth(@username.to_s+@password.to_s)
|
82
|
+
res = self.class.get(@base_path+"/phbk_getList.aspx", query: params)
|
83
|
+
print_response res
|
84
|
+
end
|
85
|
+
|
86
|
+
# ==== Attributes
|
87
|
+
# * +page+ : Page Number (default=1)
|
88
|
+
# * +size+ : number of records per page (default=10)
|
89
|
+
# * +group+ : Group Name
|
90
|
+
#
|
91
|
+
# ==== Example
|
92
|
+
# sms.list_phone_book_by_group({
|
93
|
+
# page: 1,
|
94
|
+
# size: 10,
|
95
|
+
# group: "My Group"
|
96
|
+
# })
|
97
|
+
#
|
98
|
+
def list_phone_book_by_group(params = {})
|
99
|
+
params[:username] = @username
|
100
|
+
params[:auth] = auth(@username.to_s+@password.to_s)
|
101
|
+
res = self.class.get(@base_path+"/phbk_getListbyGroup.aspx", query: params)
|
102
|
+
print_response res
|
103
|
+
end
|
104
|
+
|
105
|
+
# ==== Attributes
|
106
|
+
# * +id+ : Contact ID Number
|
107
|
+
#
|
108
|
+
# ==== Example
|
109
|
+
# sms.contact_detail({id: 1})
|
110
|
+
#
|
111
|
+
def contact_detail(params = {})
|
112
|
+
params[:username] = @username
|
113
|
+
params[:auth] = auth(@username.to_s+@password.to_s)
|
114
|
+
res = self.class.get(@base_path+"/phbk_getCompleteData.aspx", query: params)
|
115
|
+
print_response res
|
116
|
+
end
|
117
|
+
|
118
|
+
# ==== Attributes
|
119
|
+
# * +name+ : Name to search
|
120
|
+
#
|
121
|
+
# ==== Example
|
122
|
+
# sms.find_contact({name: "John Doe"})
|
123
|
+
#
|
124
|
+
def find_contact(params = {})
|
125
|
+
params[:username] = @username
|
126
|
+
params[:auth] = auth(@username.to_s+@password.to_s)
|
127
|
+
res = self.class.get(@base_path+"/phbk_findName.aspx", query: params)
|
128
|
+
print_response res
|
129
|
+
end
|
130
|
+
|
131
|
+
# ==== Attributes
|
132
|
+
# * +number+ : Number to search
|
133
|
+
#
|
134
|
+
# ==== Example
|
135
|
+
# sms.find_number({number: "085699999999"})
|
136
|
+
#
|
137
|
+
def find_number(params = {})
|
138
|
+
params[:username] = @username
|
139
|
+
params[:auth] = auth(@username.to_s+@password.to_s)
|
140
|
+
res = self.class.get(@base_path+"/phbk_findPhNumber.aspx", query: params)
|
141
|
+
print_response res
|
142
|
+
end
|
143
|
+
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
|
148
|
+
end
|
149
|
+
end
|
data/lib/sms_masking/send_sms.rb
CHANGED
@@ -1,9 +1,32 @@
|
|
1
1
|
module SmsMasking
|
2
2
|
module SendSms
|
3
|
+
|
4
|
+
# ==== Attributes
|
5
|
+
# * +mobile+ : recipient
|
6
|
+
# * +message+ : SMS
|
7
|
+
#
|
8
|
+
# ==== Example
|
9
|
+
# sms.send_sms({mobile: "085642568786", message: "your message"})
|
10
|
+
#
|
3
11
|
def send_sms(params = {})
|
4
12
|
params[:username] = @username
|
5
|
-
params[:auth] = auth(params[:mobile])
|
6
|
-
res = self.class.get("/
|
13
|
+
params[:auth] = auth(@username.to_s+@password.to_s+params[:mobile])
|
14
|
+
res = self.class.get(@base_path+"/sendSMS.aspx", query: params)
|
15
|
+
print_response res
|
16
|
+
end
|
17
|
+
|
18
|
+
# ==== Attributes
|
19
|
+
# * +group+ : Group Name
|
20
|
+
# * +message+ : SMS
|
21
|
+
#
|
22
|
+
# ==== Example
|
23
|
+
# sms.send_sms_group({group: "My Group", message: "your message"})
|
24
|
+
#
|
25
|
+
def send_sms_group(params = {})
|
26
|
+
params[:username] = @username
|
27
|
+
params[:auth] = auth(@username.to_s+@password.to_s)
|
28
|
+
params[:msg] = params.delete :message
|
29
|
+
res = self.class.get(@base_path+"/SendSMSGroup.aspx", query: params)
|
7
30
|
print_response res
|
8
31
|
end
|
9
32
|
end
|
data/lib/sms_masking/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sms_masking
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- yunanhelmy
|
@@ -87,6 +87,7 @@ files:
|
|
87
87
|
- lib/sms_masking.rb
|
88
88
|
- lib/sms_masking/auth.rb
|
89
89
|
- lib/sms_masking/base.rb
|
90
|
+
- lib/sms_masking/phone_book.rb
|
90
91
|
- lib/sms_masking/railtie.rb
|
91
92
|
- lib/sms_masking/response.rb
|
92
93
|
- lib/sms_masking/send_sms.rb
|