sms_fu 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +339 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +137 -0
- data/Rakefile +23 -0
- data/install.rb +4 -0
- data/lib/sms_fu.rb +7 -0
- data/lib/sms_fu/sms_fu.rb +112 -0
- data/lib/sms_fu/sms_fu_helper.rb +19 -0
- data/lib/sms_fu/sms_notifier.rb +8 -0
- data/sms_fu.gemspec +55 -0
- data/tasks/sms_fu_tasks.rake +0 -0
- data/templates/sms_fu.yml +233 -0
- data/test/sms_fu_test.rb +22 -0
- metadata +110 -0
data/CHANGELOG
ADDED
@@ -0,0 +1,339 @@
|
|
1
|
+
commit 36591f0eea341a46b48719e1aefa9f7b464a1b93
|
2
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
3
|
+
Date: Mon Aug 23 23:12:36 2010 -0400
|
4
|
+
|
5
|
+
Updating readme
|
6
|
+
|
7
|
+
commit f04b37c5fadbe2f4058782280cc622461b901c0d
|
8
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
9
|
+
Date: Mon Aug 23 23:09:01 2010 -0400
|
10
|
+
|
11
|
+
Reorganizing for gem
|
12
|
+
|
13
|
+
commit 97ee600bab782955a917cf70c971499bfb6fe1f2
|
14
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
15
|
+
Date: Mon Aug 23 18:09:09 2010 -0400
|
16
|
+
|
17
|
+
Updating for gem consumption
|
18
|
+
|
19
|
+
commit a59ba52a34e86c17a02ee4d4f4a1b08d9b3dccc1
|
20
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
21
|
+
Date: Fri Oct 30 15:17:21 2009 -0400
|
22
|
+
|
23
|
+
Updating README and CHANGELOG
|
24
|
+
|
25
|
+
commit 569bf6f5c0d3f47cc2f4c49771f4ddcc4f196f52
|
26
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
27
|
+
Date: Fri Oct 30 15:15:08 2009 -0400
|
28
|
+
|
29
|
+
Updating README and CHANGELOG
|
30
|
+
|
31
|
+
commit f93349785ebcc991bec1b463712d7cfef04fb91b
|
32
|
+
Author: pboling <peter.boling@peterboling.com>
|
33
|
+
Date: Fri Oct 23 03:00:06 2009 -0400
|
34
|
+
|
35
|
+
default phrase should not force a blank option tag, now it is optional
|
36
|
+
|
37
|
+
commit f77d6d076da2785da5c06e569c9891ba4b198c48
|
38
|
+
Author: pboling <peter.boling@peterboling.com>
|
39
|
+
Date: Fri Oct 23 02:23:41 2009 -0400
|
40
|
+
|
41
|
+
added SMSFu.carrier_name(key) to lookup carrier names in the YAML
|
42
|
+
|
43
|
+
commit aca2e94475da51114771fec3e29cbf2d69fc77b9
|
44
|
+
Author: mike castleman <m@mlcastle.net>
|
45
|
+
Date: Thu Oct 22 18:03:44 2009 -0400
|
46
|
+
|
47
|
+
add nextel to default YAML
|
48
|
+
|
49
|
+
commit 8ce7858e829bb409febe5da6e47fa7d2a691e3d2
|
50
|
+
Author: pboling <peter.boling@peterboling.com>
|
51
|
+
Date: Thu Oct 22 15:37:50 2009 -0400
|
52
|
+
|
53
|
+
improved setting of RAILS_CONFIG_ROOT
|
54
|
+
|
55
|
+
commit e010096f2a9c1f5ddecbad998051b210ba47b3dd
|
56
|
+
Author: pboling <peter.boling@peterboling.com>
|
57
|
+
Date: Thu Oct 22 14:59:23 2009 -0400
|
58
|
+
|
59
|
+
fixed tests so that they actually run (and all pass)
|
60
|
+
|
61
|
+
commit 0411f1f60ae8be13ac4a732a48e44d3153441002
|
62
|
+
Merge: d5a7437 17f23b1
|
63
|
+
Author: pboling <peter.boling@peterboling.com>
|
64
|
+
Date: Thu Oct 22 13:51:32 2009 -0400
|
65
|
+
|
66
|
+
Added 8 Canadian Carriers
|
67
|
+
|
68
|
+
commit d5a74370ef16af4514d3b9d01983ba3f7b1efb41
|
69
|
+
Author: pboling <peter.boling@peterboling.com>
|
70
|
+
Date: Thu Oct 22 13:38:16 2009 -0400
|
71
|
+
|
72
|
+
merge mlc/master
|
73
|
+
|
74
|
+
commit f31a115d9a0b4b54913c3c9c79d4b0ce605f8448
|
75
|
+
Merge: efd3df6 cd5fc17
|
76
|
+
Author: pboling <peter.boling@peterboling.com>
|
77
|
+
Date: Thu Oct 22 13:33:51 2009 -0400
|
78
|
+
|
79
|
+
Merge commit 'mlc/master'
|
80
|
+
|
81
|
+
commit efd3df69b9e232f40cacc0e0b94115e7a57e0238
|
82
|
+
Author: pboling <peter.boling@peterboling.com>
|
83
|
+
Date: Thu Oct 22 13:33:01 2009 -0400
|
84
|
+
|
85
|
+
merge adamalex/master and added .gitignore
|
86
|
+
|
87
|
+
commit 78a08891eb6d9b7b3b3ac78f531c5f4df35fce1c
|
88
|
+
Merge: 05679c8 a699a9e
|
89
|
+
Author: pboling <peter.boling@peterboling.com>
|
90
|
+
Date: Thu Oct 22 13:28:53 2009 -0400
|
91
|
+
|
92
|
+
Merge commit 'adamalex/master'
|
93
|
+
|
94
|
+
commit cd5fc1743e976e35cbaeeba2a3fcf2bf1ad3c5fd
|
95
|
+
Author: mike castleman <m@mlcastle.net>
|
96
|
+
Date: Tue Sep 29 16:39:45 2009 -0400
|
97
|
+
|
98
|
+
in carrier_select, allow caller to pre-select a carrier
|
99
|
+
|
100
|
+
commit 05679c809195764832f62f9739032a7693d54f78
|
101
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
102
|
+
Date: Tue Aug 4 00:11:50 2009 -0400
|
103
|
+
|
104
|
+
Fixing typo in yml for BlueSkyFrog
|
105
|
+
|
106
|
+
commit b0fd12533cc998618d41c27f2ec18334bf62afe2
|
107
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
108
|
+
Date: Mon Jul 20 19:15:18 2009 -0400
|
109
|
+
|
110
|
+
Regenerated gemspec for version 1.0.0
|
111
|
+
|
112
|
+
commit a9f07f6502b70143058219f8966cb7dc8b237d66
|
113
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
114
|
+
Date: Mon Jul 20 19:15:09 2009 -0400
|
115
|
+
|
116
|
+
Adding in gemspec
|
117
|
+
|
118
|
+
commit 74d6e1c9a109d2b576df148a01a34a9548c1ffd6
|
119
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
120
|
+
Date: Mon Jul 20 19:13:41 2009 -0400
|
121
|
+
|
122
|
+
Version bump to 0.0.0
|
123
|
+
|
124
|
+
commit 899050db2a8877fe508738811c121247571aaea2
|
125
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
126
|
+
Date: Thu Jul 2 11:47:27 2009 -0400
|
127
|
+
|
128
|
+
Adding support for SFR (France)
|
129
|
+
|
130
|
+
commit ad7cabcb7eb5ca8001ef187339d382664b1c3e81
|
131
|
+
Author: Brendan G. Lim <brendangl@gmail.com>
|
132
|
+
Date: Thu Jul 2 11:40:53 2009 -0400
|
133
|
+
|
134
|
+
Adding Mobistar (Belgium), T-Mobile (Netherlands), and Vodafone (Netherlands) to supporter carrier list
|
135
|
+
|
136
|
+
commit a699a9ec3119a717aefdca034b9dacefaab6f57f
|
137
|
+
Merge: 03d93f0 15d31df
|
138
|
+
Author: Adam Alexander <adamalex@gmail.com>
|
139
|
+
Date: Sun Mar 1 11:49:58 2009 -0500
|
140
|
+
|
141
|
+
Merge commit 'brendanlim/master'
|
142
|
+
|
143
|
+
commit 15d31df11aa0d77a688d44955daf9647aad70b2b
|
144
|
+
Author: Brent Collier <brentmc79@gmail.com>
|
145
|
+
Date: Sat Feb 28 22:47:53 2009 -0500
|
146
|
+
|
147
|
+
fixin syntax error in helper
|
148
|
+
|
149
|
+
commit 1c0903356b8b9ba96acd407e678b84d8fc186c3f
|
150
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
151
|
+
Date: Sat Feb 28 20:54:46 2009 -0500
|
152
|
+
|
153
|
+
fixing some issues with 2.2
|
154
|
+
|
155
|
+
commit 03d93f094b43cd1b66e4ca904b6bb895e2afb087
|
156
|
+
Author: Adam Alexander <adamalex@gmail.com>
|
157
|
+
Date: Fri Feb 27 06:07:58 2009 -0500
|
158
|
+
|
159
|
+
Added carrier_select_default to allow for providing default value
|
160
|
+
|
161
|
+
commit 7c918f19794ed618b10eb2db5d8dc6e6badadbda
|
162
|
+
Author: Adam Alexander <adamalex@gmail.com>
|
163
|
+
Date: Fri Feb 27 06:07:17 2009 -0500
|
164
|
+
|
165
|
+
Modified carrier_collection to return carrier name and key
|
166
|
+
|
167
|
+
commit 570b1e244ce64ce318d55e778ec629dc5177f6e8
|
168
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
169
|
+
Date: Thu Feb 26 17:20:04 2009 -0500
|
170
|
+
|
171
|
+
Message sent out should be in plain text
|
172
|
+
|
173
|
+
commit 752126921ea6948c46ac527b9f4b5a67f72a1048
|
174
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
175
|
+
Date: Tue Feb 24 01:32:35 2009 -0500
|
176
|
+
|
177
|
+
Completely restructing yaml and now showing proper names in select box -- again
|
178
|
+
|
179
|
+
commit e06b82db487e937c67a431ad3219a65b187b7827
|
180
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
181
|
+
Date: Tue Feb 24 01:30:30 2009 -0500
|
182
|
+
|
183
|
+
Completely restructing yaml and now showing proper names in select box
|
184
|
+
|
185
|
+
commit f17677ff1d47305d0217f56472a3156277eabda7
|
186
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
187
|
+
Date: Mon Feb 23 22:53:58 2009 -0500
|
188
|
+
|
189
|
+
Adding in quite a few more mobile carriers to our supported list
|
190
|
+
|
191
|
+
commit 1c7c3d79ee9eeae1b0fd55c9f2654633566d308f
|
192
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
193
|
+
Date: Mon Feb 23 22:44:10 2009 -0500
|
194
|
+
|
195
|
+
Adding in Beeline (UA) to the list of carriers
|
196
|
+
|
197
|
+
commit c62df8bf641c3b2e009dd2e64e3585e610778519
|
198
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
199
|
+
Date: Wed Feb 18 20:26:00 2009 -0500
|
200
|
+
|
201
|
+
... and I'm updating the changelog once again
|
202
|
+
|
203
|
+
commit 8abc7168dd392b083fdfd3a9cb2ce1e7c1d068a0
|
204
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
205
|
+
Date: Wed Feb 18 20:25:05 2009 -0500
|
206
|
+
|
207
|
+
Some structural changes to SMS Fu
|
208
|
+
|
209
|
+
commit 4e5aa349ac9d4c12da5d53de08d1fd3281bcfa0d
|
210
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
211
|
+
Date: Wed Feb 18 20:12:55 2009 -0500
|
212
|
+
|
213
|
+
Updating CHANGELOG
|
214
|
+
|
215
|
+
commit 4c1b777458b90de5d7c01cf7d14ef0be2fdcc4e6
|
216
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
217
|
+
Date: Wed Feb 18 20:12:33 2009 -0500
|
218
|
+
|
219
|
+
Adding in some view helpers for mobile carrier select boxes and updating README
|
220
|
+
|
221
|
+
commit 0d804bdd6e48aa3eae548665c4740b2e2d4e3b86
|
222
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
223
|
+
Date: Mon Dec 15 14:17:16 2008 -0500
|
224
|
+
|
225
|
+
Adding Etisalat support and adding country designation to mobinil and movistar
|
226
|
+
|
227
|
+
commit 0d417e1f30f5b153e9658e5649144630b95c2ec1
|
228
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
229
|
+
Date: Thu Dec 11 19:09:20 2008 -0500
|
230
|
+
|
231
|
+
Adding Vodafone Egypt, Virgin Mobile Canada, and Mobitel Sri Lanka to supported SMS carriers
|
232
|
+
|
233
|
+
commit ec20bd73afe7c26583bcdb7037028161f65cc8a5
|
234
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
235
|
+
Date: Thu Dec 11 13:31:17 2008 -0500
|
236
|
+
|
237
|
+
Adding a good chunk of carriers into SMS Fu
|
238
|
+
|
239
|
+
commit 17f23b116729beaf6dc399d1111f18f0a07b0619
|
240
|
+
Author: Michael Edwards <medwards@pilgrim.walledcity.ca>
|
241
|
+
Date: Sat Sep 6 22:00:05 2008 -0600
|
242
|
+
|
243
|
+
added canadian carriers
|
244
|
+
|
245
|
+
commit 8d9a829177f6a249206892ccc7a13b8ae5467496
|
246
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
247
|
+
Date: Thu Jul 31 13:48:30 2008 -0400
|
248
|
+
|
249
|
+
Upating the CHANGELOG
|
250
|
+
|
251
|
+
commit 3912b0b91621ba1a827585f3b22c1426fc70c9e4
|
252
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
253
|
+
Date: Thu Jul 31 13:48:15 2008 -0400
|
254
|
+
|
255
|
+
Adding ability to specify custom from address per mailing
|
256
|
+
|
257
|
+
commit 09fc1fa3076082d98b61f7cdf0d10dd5abd30a1a
|
258
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
259
|
+
Date: Thu Jun 19 02:18:09 2008 -0400
|
260
|
+
|
261
|
+
Updating CHANGELOG
|
262
|
+
|
263
|
+
commit f1026d0aca169caf57dd44e57661177bd66e2e37
|
264
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
265
|
+
Date: Thu Jun 19 02:17:08 2008 -0400
|
266
|
+
|
267
|
+
Updating to be compatibile with Rails 2.1
|
268
|
+
|
269
|
+
commit de241d15bfa878f600a462f49b4fd3c92285c3ab
|
270
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
271
|
+
Date: Sat May 31 10:05:16 2008 -0700
|
272
|
+
|
273
|
+
Merging in changes from gcnovus for fixing warnings and redundant YAML parsing when requiring sms_fu more than once.
|
274
|
+
|
275
|
+
commit d23d86216ffc5a6b44db5b354934f40178e9dfc0
|
276
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
277
|
+
Date: Sat Apr 19 01:23:45 2008 -0500
|
278
|
+
|
279
|
+
Another update to README
|
280
|
+
|
281
|
+
commit e8386f3b75f5f4794d5f280025772a34e79542ba
|
282
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
283
|
+
Date: Sat Apr 19 01:23:17 2008 -0500
|
284
|
+
|
285
|
+
Another update to README
|
286
|
+
|
287
|
+
commit d16925d6f60669d492005b419df212d26b3d21bd
|
288
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
289
|
+
Date: Sat Apr 19 01:17:51 2008 -0500
|
290
|
+
|
291
|
+
Adding in kajeet to carrier list and updated README
|
292
|
+
|
293
|
+
commit 9cf4ef9db332418dd167bd942f29ed34d11f20f9
|
294
|
+
Author: Jannis Leidel <jannis@leidel.info>
|
295
|
+
Date: Sat Apr 12 13:40:30 2008 +0200
|
296
|
+
|
297
|
+
added some international carriers
|
298
|
+
|
299
|
+
commit 364997b52bdb1c7ae8b3382b4742b5fbd52fb20c
|
300
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
301
|
+
Date: Mon Mar 31 18:23:53 2008 -0400
|
302
|
+
|
303
|
+
Fixed indentation of README and minor tweak
|
304
|
+
|
305
|
+
commit 5ecbaaee4d38543a66767b02d5b41ef9e885f2d5
|
306
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
307
|
+
Date: Mon Mar 31 18:18:40 2008 -0400
|
308
|
+
|
309
|
+
Fixed some of the tests
|
310
|
+
|
311
|
+
commit cb0138f5f1f637bcd5065e548b0dac04d413acd8
|
312
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
313
|
+
Date: Mon Mar 31 17:58:07 2008 -0400
|
314
|
+
|
315
|
+
Quick fix for international numbers
|
316
|
+
|
317
|
+
commit fc874c849ed5fb4f7b1e35b3e6b0e1496b95cf4f
|
318
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
319
|
+
Date: Mon Mar 31 17:45:09 2008 -0400
|
320
|
+
|
321
|
+
Updating README with International carrier information
|
322
|
+
|
323
|
+
commit 7813e59c8535f6180852a534fd0bfd7ba6085ace
|
324
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
325
|
+
Date: Mon Mar 31 17:37:02 2008 -0400
|
326
|
+
|
327
|
+
Adding in international support and externalizing carrier list into sms_fu.yml
|
328
|
+
|
329
|
+
commit 5393cc834ce85da8856ed8869e7b5e66b004239f
|
330
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
331
|
+
Date: Sun Mar 30 19:01:20 2008 -0400
|
332
|
+
|
333
|
+
Made some readme changes
|
334
|
+
|
335
|
+
commit aba05f07d765306b5bd5f6c403a318092a437c0b
|
336
|
+
Author: Brendan G. Lim <brendan@intridea.com>
|
337
|
+
Date: Sun Mar 30 16:10:05 2008 -0400
|
338
|
+
|
339
|
+
Initial import
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2008-2010 Brendan G. Lim (brendan@intridea.com)
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.rdoc
ADDED
@@ -0,0 +1,137 @@
|
|
1
|
+
= SMS Fu (sms_fu)
|
2
|
+
|
3
|
+
Want to send an SMS from your Ruby application? SMS Fu allows you to do just that.
|
4
|
+
It allows you to send a text message in the form of an e-mail to a cell phone on any
|
5
|
+
of the many supported carriers.
|
6
|
+
|
7
|
+
== Supported Carriers (US & International):
|
8
|
+
|
9
|
+
Alltel, Ameritech, AT&T, Bell Atlantic, BellSouth Mobility, Beeline(UA), BlueSkyFrog,
|
10
|
+
Boost Mobile, BPL Mobile, Cellular South, Claro (Brazil, Nicaragua), Comcast, Du,
|
11
|
+
E-Plus, Etisalat, Fido, kajeet, Mobinil, Mobitel, Movistar, Metro PCS, O2, Orange,
|
12
|
+
Powertel, PSC Wireless, Qwest, Rogers, Southern Link, Sprint, Suncom,
|
13
|
+
T-Mobile (US/UK/Germany), Telefonica, Tracfone, Virgin Mobile, Verizon Wireless,
|
14
|
+
Vodafone (UK, Egypt, Italy, Japan, Spain), and many more ...
|
15
|
+
|
16
|
+
== Opt-In Warning for Some International Carriers
|
17
|
+
|
18
|
+
Some International carriers require that their users subscribe to an Email to SMS
|
19
|
+
feature before they are able to receive SMS messages this way. If one your users
|
20
|
+
mentions that they are not receiving their messages, chances are it is due to this
|
21
|
+
limitation.
|
22
|
+
|
23
|
+
Some carriers that need this include, Mobitel, Etisalat, T-Mobile (Netherlands),
|
24
|
+
etc.
|
25
|
+
|
26
|
+
== Requirements
|
27
|
+
|
28
|
+
* SMS Fu requires that 'action_mailer' (>= 3.0.0rc2) and 'pony' (>= 1.0) are installed.
|
29
|
+
|
30
|
+
* If you require SMS Fu on an older version of ActionMailer, make sure to use the older plugin version of SMS Fu at http://github.com/brendanlim/sms-fu/tree/plugin
|
31
|
+
|
32
|
+
== Setup Instructions
|
33
|
+
|
34
|
+
* Install sms_fu gem
|
35
|
+
|
36
|
+
sudo gem install sms_fu
|
37
|
+
|
38
|
+
* Add sms_fu.yml to your config folder (Rails only)
|
39
|
+
|
40
|
+
http://github.com/brendanlim/sms-fu/blob/master/templates/sms_fu.yml
|
41
|
+
|
42
|
+
* (Optional) Modify sms_fu.yml in your config folder with your reply-to e-mail address.
|
43
|
+
|
44
|
+
== Numbers and Carriers
|
45
|
+
|
46
|
+
* You have to send in the phone number, without any non-numeric characters. The
|
47
|
+
phone numbers must be 10 digits in length.
|
48
|
+
* The two required parameters are the phone number and the phone carrier.
|
49
|
+
* Here are some of the default carrier values:
|
50
|
+
|
51
|
+
Alltel Wireless => "alltel"
|
52
|
+
AT&T/Cingular => "at&t"
|
53
|
+
Boost Mobile => "boost"
|
54
|
+
Sprint Wireless => "sprint"
|
55
|
+
T-Mobile US => "t-mobile"
|
56
|
+
T-Mobile UK => "t-mobile-uk"
|
57
|
+
Virgin Mobile => "virgin"
|
58
|
+
Verizon Wireless => "verizon"
|
59
|
+
Vodafone Tokyo => "vodafone-jp-tokyo"
|
60
|
+
|
61
|
+
* Check sms_fu.yml for a complete list of supported carriers, including international
|
62
|
+
carriers as well.
|
63
|
+
|
64
|
+
== Configuration and Usage
|
65
|
+
|
66
|
+
* SMS Fu relies on either ActionMailer or Pony for delivery. You can now specify
|
67
|
+
which you'd like to use for delivery.
|
68
|
+
|
69
|
+
* You can use your ActionMailer settings by just specifying the :delivery option as
|
70
|
+
:action_mailer.
|
71
|
+
|
72
|
+
* If you would like to use Pony, you can configure it to use :sendmail or :smtp via
|
73
|
+
Pony. Set the :delivery option to :pony and then make sure to specify the
|
74
|
+
:pony_options as well, if necessary.
|
75
|
+
|
76
|
+
# ActionMailer delivery
|
77
|
+
sms_fu = SMSFu.configure(:action_mailer)
|
78
|
+
|
79
|
+
# Pony delivery via Sendmail
|
80
|
+
sms_fu = SMSFu.configure(:pony, :pony_options => { :via => :sendmail })
|
81
|
+
|
82
|
+
# Pony delivery via SMTP
|
83
|
+
sms_fu = SMSFu.configure(:pony, :pony_options => { :via => :smtp,
|
84
|
+
:via_options => {
|
85
|
+
:address => 'smtp.gmail.com',
|
86
|
+
:port => '587',
|
87
|
+
:user_name => 'username',
|
88
|
+
:password => 'password',
|
89
|
+
:authentication => :plain,
|
90
|
+
:domain => "localhost.localdomain"
|
91
|
+
:enable_starttls_auto => true,
|
92
|
+
}})
|
93
|
+
|
94
|
+
* You can view more pony 'via_options' at http://github.com/benprew/pony
|
95
|
+
|
96
|
+
* Basic delivery
|
97
|
+
|
98
|
+
sms_fu.deliver("5558675309","at&t","message")
|
99
|
+
|
100
|
+
* If you want to set a custom from e-mail per SMS message, you can do so
|
101
|
+
by doing the following.
|
102
|
+
|
103
|
+
sms_fu.deliver("5558675309","at&t","message", :from => "bob@test.com")
|
104
|
+
|
105
|
+
* You can set the maximum length of the SMS message, which is not set by
|
106
|
+
default. Most phones can only accept 128 characters. To do this just
|
107
|
+
specify the limit option.
|
108
|
+
|
109
|
+
sms_fu.deliver("5558675309","at&t","message", :limit => 128)
|
110
|
+
|
111
|
+
* You can retrieve just the formatted address to use in your own mailer.
|
112
|
+
|
113
|
+
sms_fu.sms_address("5558675309","at&t") # => "5558675309@txt.att.net"
|
114
|
+
|
115
|
+
== View Helpers (Rails)
|
116
|
+
|
117
|
+
* Retrieve a collection of all carriers
|
118
|
+
|
119
|
+
<%= carrier_collection %>
|
120
|
+
|
121
|
+
* Display a select box with mobile carriers
|
122
|
+
|
123
|
+
<%= carrier_select %>
|
124
|
+
|
125
|
+
* Display a custom select box with mobile carriers
|
126
|
+
|
127
|
+
<%= carrier_select('user[carrier_name]', "Please choose a carrier") %>
|
128
|
+
|
129
|
+
== Special Thanks
|
130
|
+
|
131
|
+
I want to thank the following individuals with their help with adding some patches to SMS Fu:
|
132
|
+
|
133
|
+
* Brent Collier (brentmc79)
|
134
|
+
* Peter Boling (pboling)
|
135
|
+
* Mike (mic)
|
136
|
+
|
137
|
+
Copyright (c) 2010 Brendan G. Lim, Intridea, Inc., released under the MIT license
|
data/Rakefile
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'rake'
|
2
|
+
require 'rake/testtask'
|
3
|
+
require 'rake/rdoctask'
|
4
|
+
|
5
|
+
desc 'Default: run unit tests.'
|
6
|
+
task :default => :test
|
7
|
+
|
8
|
+
desc 'Test the sms_fu plugin.'
|
9
|
+
Rake::TestTask.new(:test) do |t|
|
10
|
+
t.libs << 'lib'
|
11
|
+
t.pattern = 'test/**/*_test.rb'
|
12
|
+
t.verbose = true
|
13
|
+
end
|
14
|
+
|
15
|
+
desc 'Generate documentation for the sms_fu plugin.'
|
16
|
+
Rake::RDocTask.new(:rdoc) do |rdoc|
|
17
|
+
rdoc.rdoc_dir = 'rdoc'
|
18
|
+
rdoc.title = 'SmsFu'
|
19
|
+
rdoc.options << '--line-numbers' << '--inline-source'
|
20
|
+
rdoc.rdoc_files.include('README')
|
21
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
22
|
+
end
|
23
|
+
|
data/install.rb
ADDED
data/lib/sms_fu.rb
ADDED
@@ -0,0 +1,112 @@
|
|
1
|
+
module SMSFu
|
2
|
+
class Client
|
3
|
+
DELIVERY_METHODS = [:action_mailer, :pony]
|
4
|
+
attr_accessor :delivery, :pony_config
|
5
|
+
|
6
|
+
# Sets up a new SMSFu::Client. Allows for use of ActionMailer or
|
7
|
+
# Pony for e-mail delivery. Pony requires :pony_config to be
|
8
|
+
# defined to work properly.
|
9
|
+
#
|
10
|
+
# * ActionMailer 3
|
11
|
+
# sms_fu = SMSFu::Client.configure(:delivery => :action_mailer)
|
12
|
+
#
|
13
|
+
# * Pony 1.0
|
14
|
+
# sms_fu = SMSFu::Client.configure(:delivery => :pony,
|
15
|
+
# :pony_config => { :via => :sendmail })
|
16
|
+
#
|
17
|
+
def self.configure(opts = {})
|
18
|
+
new(opts)
|
19
|
+
end
|
20
|
+
|
21
|
+
def initialize(opts = {})
|
22
|
+
self.delivery = opts[:delivery].to_sym
|
23
|
+
self.pony_config = opts[:pony_config]
|
24
|
+
raise SMSFuException.new("Pony configuration required") if @delivery == :pony && @pony_config.nil?
|
25
|
+
end
|
26
|
+
|
27
|
+
def delivery=(new_delivery)
|
28
|
+
if DELIVERY_METHODS.include?(new_delivery.to_sym)
|
29
|
+
@delivery = new_delivery
|
30
|
+
else
|
31
|
+
raise SMSFuException.new("Delivery options can only be: '#{DELIVERY_METHODS.join(", ")}'")
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
# Delivers the SMS message in the form of an e-mail
|
36
|
+
# sms_fu.deliver("1234567890","at&t","hello world")
|
37
|
+
def deliver(number, carrier, message, options = {})
|
38
|
+
raise SMSFuException.new("Can't deliver blank message to #{format_number(number)}") if message.nil? || message.empty?
|
39
|
+
|
40
|
+
limit = options[:limit] || message.length
|
41
|
+
from = options[:from] || SMSFu.from_address
|
42
|
+
message = message[0..limit-1]
|
43
|
+
email = SMSFu.sms_address(number,carrier)
|
44
|
+
|
45
|
+
if @delivery == :pony
|
46
|
+
Pony.mail({:to => email, :body => message, :from => from}.merge!(@pony_config))
|
47
|
+
else
|
48
|
+
SMSNotifier.send_sms(email, message, from).deliver
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
class << self
|
54
|
+
def config_yaml
|
55
|
+
@@config_yaml ||= YAML::load(File.open("#{template_directory}/sms_fu.yml"))
|
56
|
+
end
|
57
|
+
|
58
|
+
# Returns back a list of all carriers
|
59
|
+
# SMSFu.carriers
|
60
|
+
def carriers
|
61
|
+
config_yaml['carriers']
|
62
|
+
end
|
63
|
+
|
64
|
+
def from_address
|
65
|
+
config_yaml['config']['from_address']
|
66
|
+
end
|
67
|
+
|
68
|
+
def carrier_name(key)
|
69
|
+
carrier(key)['name']
|
70
|
+
end
|
71
|
+
|
72
|
+
def carrier_email(key)
|
73
|
+
carrier(key.downcase)['value']
|
74
|
+
end
|
75
|
+
|
76
|
+
def carrier(key)
|
77
|
+
raise SMSFuException.new("Carrier (#{key}) is not supported") unless SMSFu.carriers.has_key?(key.downcase)
|
78
|
+
carriers[key]
|
79
|
+
end
|
80
|
+
|
81
|
+
# Returns back a properly formatted SMS e-mail address
|
82
|
+
# SMSFu.sms_address("1234567890","at&t")
|
83
|
+
def sms_address(number,carrier)
|
84
|
+
raise SMSFuException.new("Missing number or carrier") if number.nil? || carrier.nil?
|
85
|
+
format_number(number) + carrier_email(carrier.downcase)
|
86
|
+
end
|
87
|
+
|
88
|
+
protected
|
89
|
+
|
90
|
+
def format_number(number)
|
91
|
+
stripped = number.gsub("-","").strip
|
92
|
+
formatted = (stripped.length == 11 && stripped[0,1] == "1") ? stripped[1..stripped.length] : stripped
|
93
|
+
raise SMSFuException.new("Number (#{number}) is not formatted correctly") unless valid_number?(formatted)
|
94
|
+
formatted
|
95
|
+
end
|
96
|
+
|
97
|
+
def valid_number?(number)
|
98
|
+
number.length >= 10 && number[/^.\d+$/]
|
99
|
+
end
|
100
|
+
|
101
|
+
def template_directory
|
102
|
+
directory = defined?(Rails) ? "#{RAILS_ROOT}/config" : "#{File.dirname(__FILE__)}/../../templates"
|
103
|
+
if (defined?(Rails) && Rails.env == 'test') || (defined?(RAILS_ENV) && RAILS_ENV == 'test)')
|
104
|
+
"#{File.dirname(__FILE__)}/../../templates"
|
105
|
+
else
|
106
|
+
directory
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
class SMSFuException < StandardError; end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module SMSFuHelper
|
2
|
+
# Returns a collection of carriers to be used in your own select tag
|
3
|
+
# e.g., <%= f.select :mobile_carrier, carrier_collection %>
|
4
|
+
def carrier_collection
|
5
|
+
SMSFu.carriers.sort.collect{ |carrier| [carrier[1]["name"], carrier[0]] }
|
6
|
+
end
|
7
|
+
|
8
|
+
# Returns a formatted select box filled with carriers
|
9
|
+
# e.g., <%= carrier_select %>
|
10
|
+
# - name => name of the method in which you want to store the carrier name
|
11
|
+
# - phrase => default selected blank option in select box
|
12
|
+
# - selected => carrier to pre-select
|
13
|
+
# - include_blank => Do you want the blank option tag (in ADDITION to the value-less 'phrase' option above)?
|
14
|
+
def carrier_select(name = :mobile_carrier, phrase = "Select a Carrier", selected = nil, include_blank = true)
|
15
|
+
options = phrase.nil? ? carrier_collection : include_blank ? [phrase,nil] + carrier_collection : [phrase] + carrier_collection
|
16
|
+
select_tag name, options_for_select(options, selected || phrase)
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
data/sms_fu.gemspec
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = %q{sms_fu}
|
5
|
+
s.version = "1.1.1"
|
6
|
+
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
|
+
s.authors = ["Brendan G. Lim"]
|
9
|
+
s.date = %q{2010-08-23}
|
10
|
+
s.description = %q{SMS Fu allows you to send text messages to a mobile recipient for free. It leverages ActionMailer or Pony for delivery of text messages through e-mail.}
|
11
|
+
s.email = %q{brendangl@gmail.com}
|
12
|
+
s.extra_rdoc_files = [
|
13
|
+
"README.rdoc"
|
14
|
+
]
|
15
|
+
s.files = [
|
16
|
+
"CHANGELOG",
|
17
|
+
"MIT-LICENSE",
|
18
|
+
"README.rdoc",
|
19
|
+
"Rakefile",
|
20
|
+
"install.rb",
|
21
|
+
"lib/sms_fu.rb",
|
22
|
+
"lib/sms_fu/sms_fu.rb",
|
23
|
+
"lib/sms_fu/sms_fu_helper.rb",
|
24
|
+
"lib/sms_fu/sms_notifier.rb",
|
25
|
+
"sms_fu.gemspec",
|
26
|
+
"tasks/sms_fu_tasks.rake",
|
27
|
+
"templates/sms_fu.yml",
|
28
|
+
"test/sms_fu_test.rb"
|
29
|
+
]
|
30
|
+
s.has_rdoc = true
|
31
|
+
s.homepage = %q{http://github.com/brendanlim/sms-fu}
|
32
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
33
|
+
s.require_paths = ["lib"]
|
34
|
+
s.rubygems_version = %q{1.3.1}
|
35
|
+
s.summary = %q{sms_fu allows you to send free text messages to a mobile recipient.}
|
36
|
+
s.test_files = [
|
37
|
+
"test/sms_fu_test.rb"
|
38
|
+
]
|
39
|
+
|
40
|
+
if s.respond_to? :specification_version then
|
41
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
42
|
+
s.specification_version = 3
|
43
|
+
|
44
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
45
|
+
s.add_development_dependency(%q<action_mailer>, [">= 3.0.0.rc2"])
|
46
|
+
s.add_development_dependency(%q<pony>, [">= 1.0"])
|
47
|
+
else
|
48
|
+
s.add_dependency(%q<action_mailer>, [">= 3.0.0.rc2"])
|
49
|
+
s.add_dependency(%q<pony>, [">= 1.0"])
|
50
|
+
end
|
51
|
+
else
|
52
|
+
s.add_dependency(%q<action_mailer>, [">= 3.0.0.rc2"])
|
53
|
+
s.add_dependency(%q<pony>, [">= 1.0"])
|
54
|
+
end
|
55
|
+
end
|
File without changes
|
@@ -0,0 +1,233 @@
|
|
1
|
+
config:
|
2
|
+
from_address: noreply@domain.com
|
3
|
+
|
4
|
+
carriers:
|
5
|
+
alltel:
|
6
|
+
name: Alltel
|
7
|
+
value: @message.alltel.com
|
8
|
+
ameritech:
|
9
|
+
name: Ameritech
|
10
|
+
value: @paging.acswireless.com
|
11
|
+
at&t:
|
12
|
+
name: AT&T
|
13
|
+
value: @txt.att.net
|
14
|
+
bell-atlantic:
|
15
|
+
name: Bell Atlantic
|
16
|
+
value: @message.bam.com
|
17
|
+
bellsouthmobility:
|
18
|
+
name: Bellsouth Mobility
|
19
|
+
value: @blsdcs.net
|
20
|
+
blueskyfrog:
|
21
|
+
name: BlueSkyFrog
|
22
|
+
value: @blueskyfrog.com
|
23
|
+
boost:
|
24
|
+
name: Boost Mobile
|
25
|
+
value: @myboostmobile.com
|
26
|
+
cellularsouth:
|
27
|
+
name: Cellular South
|
28
|
+
value: @csouth1.com
|
29
|
+
comcast:
|
30
|
+
name: Comcast PCS
|
31
|
+
value: @comcastpcs.textmsg.com
|
32
|
+
cricket:
|
33
|
+
name: Cricket
|
34
|
+
value: @sms.mycricket.com
|
35
|
+
kajeet:
|
36
|
+
name: kajeet
|
37
|
+
value: @mobile.kajeet.net
|
38
|
+
metropcs:
|
39
|
+
name: Metro PCS
|
40
|
+
value: @mymetropcs.com
|
41
|
+
nextel:
|
42
|
+
name: Nextel
|
43
|
+
value: @messaging.nextel.com
|
44
|
+
powertel:
|
45
|
+
name: Powertel
|
46
|
+
value: @ptel.net
|
47
|
+
pscwireless:
|
48
|
+
name: PSC Wireless
|
49
|
+
value: @sms.pscel.com
|
50
|
+
qwest:
|
51
|
+
name: Qwest
|
52
|
+
value: @qwestmp.com
|
53
|
+
southernlink:
|
54
|
+
name: Southern Link
|
55
|
+
value: @page.southernlinc.com
|
56
|
+
sprint:
|
57
|
+
name: Sprint PCS
|
58
|
+
value: @messaging.sprintpcs.com
|
59
|
+
suncom:
|
60
|
+
name: Suncom
|
61
|
+
value: @tms.suncom.com
|
62
|
+
t-mobile:
|
63
|
+
name: T-Mobile
|
64
|
+
value: @tmomail.net
|
65
|
+
tracfone:
|
66
|
+
name: Tracfone
|
67
|
+
value: @mmst5.tracfone.com
|
68
|
+
telus-mobility:
|
69
|
+
name: Telus Mobility
|
70
|
+
value: @msg.telus.com
|
71
|
+
virgin:
|
72
|
+
name: Virgin Mobile
|
73
|
+
value: @vmobl.net
|
74
|
+
verizon:
|
75
|
+
name: Verizon Wireless
|
76
|
+
value: @vtext.com
|
77
|
+
# International Carriers
|
78
|
+
aliant-canada:
|
79
|
+
name: Aliant (Canada)
|
80
|
+
value: @chat.wirefree.ca
|
81
|
+
beeline-ua:
|
82
|
+
name: Beeline
|
83
|
+
value: @sms.beeline.ua
|
84
|
+
bellmobility-canada:
|
85
|
+
name: Bell Mobility (Canada)
|
86
|
+
value: @txt.bell.ca
|
87
|
+
bpl-mobile:
|
88
|
+
name: BPL Mobile
|
89
|
+
value: @bplmobile.com
|
90
|
+
claro-brazil:
|
91
|
+
name: Claro (Brazil)
|
92
|
+
value: @clarotorpedo.com.br
|
93
|
+
claro-nicaragua:
|
94
|
+
name: Claro (Nicaragua)
|
95
|
+
value: @ideasclaro-ca.com
|
96
|
+
du-arab-emirates:
|
97
|
+
name: Du (UAE)
|
98
|
+
value: @email2sms.ae
|
99
|
+
e-plus-germany:
|
100
|
+
name: E-Plus (Germany)
|
101
|
+
value: @smsmail.eplus.de
|
102
|
+
etisalat-arab-emirates:
|
103
|
+
name: Etisalat (UAE)
|
104
|
+
value: @email2sms.ae
|
105
|
+
fido-canada:
|
106
|
+
name: Fido
|
107
|
+
value: @fido.ca
|
108
|
+
manitobatelecom-canada:
|
109
|
+
name: Manitoba Telecom (Canada)
|
110
|
+
value: @text.mtsmobility.com
|
111
|
+
mobinil-egypt:
|
112
|
+
name: Mobinil
|
113
|
+
value: @mobinil.net
|
114
|
+
mobistar-belgium:
|
115
|
+
name: Mobistar (Belgium)
|
116
|
+
value: @mobistar.be
|
117
|
+
mobitel:
|
118
|
+
name: Mobitel
|
119
|
+
value: @sms.mobitel.lk
|
120
|
+
movistar-spain:
|
121
|
+
name: Movistar (Spain)
|
122
|
+
value: @correo.movistar.net
|
123
|
+
northerntel-canada:
|
124
|
+
name: NorthernTel (Canada)
|
125
|
+
value: @txt.northerntelmobility.com
|
126
|
+
o2-germany:
|
127
|
+
name: o2 (Germany)
|
128
|
+
value: @o2online.de
|
129
|
+
o2-uk:
|
130
|
+
name: o2 (UK)
|
131
|
+
value: @mmail.co.uk
|
132
|
+
orange-mumbai:
|
133
|
+
name: Orange (Mumbai)
|
134
|
+
value: @orangemail.co.in
|
135
|
+
orange-netherlands:
|
136
|
+
name: Orange (Netherlands)
|
137
|
+
value: @sms.orange.nl
|
138
|
+
orange-uk:
|
139
|
+
name: Orange (UK)
|
140
|
+
value: @orange.net
|
141
|
+
rogers-wireless:
|
142
|
+
name: Rogers Wireless
|
143
|
+
value: @pcs.rogers.com
|
144
|
+
rogers-canada:
|
145
|
+
name: Rogers (Canada)
|
146
|
+
value: @pcs.rogers.ca
|
147
|
+
sasktel-canada:
|
148
|
+
name: SaskTel (canada)
|
149
|
+
value: @sms.sasktel.ca
|
150
|
+
sfr-france:
|
151
|
+
name: SFR (France)
|
152
|
+
value: @sfr.fr
|
153
|
+
t-mobile-austria:
|
154
|
+
name: T-Mobile (Austria)
|
155
|
+
value: @sms.t-mobile.at
|
156
|
+
t-mobile-germany:
|
157
|
+
name: T-Mobile (Germany)
|
158
|
+
value: @t-d1-sms.de
|
159
|
+
t-mobile-germany:
|
160
|
+
name: T-Mobile (Netherlands)
|
161
|
+
value: @gin.nl
|
162
|
+
t-mobile-uk:
|
163
|
+
name: T-Mobile (UK)
|
164
|
+
value: @t-mobile.uk.net
|
165
|
+
telebec-canada:
|
166
|
+
name: Telebec (Canada)
|
167
|
+
value: @txt.telebecmobilite.com
|
168
|
+
telefonica-spain:
|
169
|
+
name: Telefonica (Spain)
|
170
|
+
value: @movistar.net
|
171
|
+
telus-canada:
|
172
|
+
name: Telus (Canada)
|
173
|
+
value: @msg.telus.com
|
174
|
+
virgin-canada:
|
175
|
+
name: Virgin (Canada)
|
176
|
+
value: @vmobile.ca
|
177
|
+
vodafone-germany:
|
178
|
+
name: Vodafone (Germany)
|
179
|
+
value: @vodafone-sms.de
|
180
|
+
vodafone-egypt:
|
181
|
+
name: Vodafone (Egypt)
|
182
|
+
value: @vodafone.com.eg
|
183
|
+
vodafone-uk:
|
184
|
+
name: Vodafone (UK)
|
185
|
+
value: @sms.vodafone.net
|
186
|
+
vodafone-italy:
|
187
|
+
name: Vodafone (Italy)
|
188
|
+
value: @sms.vodafone.it
|
189
|
+
vodafone-jp-chuugoku:
|
190
|
+
name: Vodafone (Japan - Chuugoku)
|
191
|
+
value: @n.vodafone.ne.jp
|
192
|
+
vodafone-jp-hokkaido:
|
193
|
+
name: Vodafone (Japan - Hokkaido)
|
194
|
+
value: @d.vodafone.ne.jp
|
195
|
+
vodafone-jp-hokuriko:
|
196
|
+
name: Vodafone (Japan - Hokuriko)
|
197
|
+
value: @r.vodafone.ne.jp
|
198
|
+
vodafone-jp-kansai:
|
199
|
+
name: Vodafone (Japan - Kansai)
|
200
|
+
value: @k.vodafone.ne.jp
|
201
|
+
vodafone-jp-osaka:
|
202
|
+
name: Vodafone (Japan - Osaka)
|
203
|
+
value: @k.vodafone.ne.jp
|
204
|
+
vodafone-jp-kanto:
|
205
|
+
name: Vodafone (Japan - Kanto)
|
206
|
+
value: @k.vodafone.ne.jp
|
207
|
+
vodafone-jp-koushin:
|
208
|
+
name: Vodafone (Japan - Koushin)
|
209
|
+
value: @k.vodafone.ne.jp
|
210
|
+
vodafone-jp-tokyo:
|
211
|
+
name: Vodafone (Japan - Tokyo)
|
212
|
+
value: @k.vodafone.ne.jp
|
213
|
+
vodafone-jp-kyuushu:
|
214
|
+
name: Vodafone (Japan - Kyuushu)
|
215
|
+
value: @q.vodafone.ne.jp
|
216
|
+
vodafone-jp-okinawa:
|
217
|
+
name: Vodafone (Japan - Okinawa)
|
218
|
+
value: @q.vodafone.ne.jp
|
219
|
+
vodafone-jp-shikoku:
|
220
|
+
name: Vodafone (Japan - Shikoku)
|
221
|
+
value: @s.vodafone.ne.jp
|
222
|
+
vodafone-jp-touhoku:
|
223
|
+
name: Vodafone (Japan - Touhoku)
|
224
|
+
value: @h.vodafone.ne.jp
|
225
|
+
vodafone-jp-niigata:
|
226
|
+
name: Vodafone (Japan - Niigata)
|
227
|
+
value: @h.vodafone.ne.jp
|
228
|
+
vodafone-jp-toukai:
|
229
|
+
name: Vodafone (Japan - Toukai)
|
230
|
+
value: @h.vodafone.ne.jp
|
231
|
+
vodafone-spain:
|
232
|
+
name: Vodafone (Japan - Spain)
|
233
|
+
value: @vodafone.es
|
data/test/sms_fu_test.rb
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper'
|
2
|
+
|
3
|
+
class SmsFuTest < Test::Unit::TestCase
|
4
|
+
include SMSFu
|
5
|
+
|
6
|
+
def test_validity_of_number
|
7
|
+
assert_raise(SMSFuException) { deliver_sms("456789011","AT&T","Message") }
|
8
|
+
assert_equal("5555555555@txt.att.net", get_sms_address("1-555-555-5555","AT&T"))
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_international_number
|
12
|
+
assert_equal("+445555555555@txt.att.net", get_sms_address("+44-555-555-5555","AT&T"))
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_handling_of_blank_message
|
16
|
+
assert_raise(SMSFuException) { deliver_sms("1234567890","AT&T","") }
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_get_sms_address
|
20
|
+
assert_equal("1234567890@txt.att.net", get_sms_address("1234567890","AT&T"))
|
21
|
+
end
|
22
|
+
end
|
metadata
ADDED
@@ -0,0 +1,110 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: sms_fu
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 17
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 1
|
9
|
+
- 1
|
10
|
+
version: 1.1.1
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Brendan G. Lim
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2010-08-23 00:00:00 -05:00
|
19
|
+
default_executable:
|
20
|
+
dependencies:
|
21
|
+
- !ruby/object:Gem::Dependency
|
22
|
+
name: action_mailer
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
hash: 977940607
|
30
|
+
segments:
|
31
|
+
- 3
|
32
|
+
- 0
|
33
|
+
- 0
|
34
|
+
- rc2
|
35
|
+
version: 3.0.0.rc2
|
36
|
+
type: :development
|
37
|
+
version_requirements: *id001
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: pony
|
40
|
+
prerelease: false
|
41
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
hash: 15
|
47
|
+
segments:
|
48
|
+
- 1
|
49
|
+
- 0
|
50
|
+
version: "1.0"
|
51
|
+
type: :development
|
52
|
+
version_requirements: *id002
|
53
|
+
description: SMS Fu allows you to send text messages to a mobile recipient for free. It leverages ActionMailer or Pony for delivery of text messages through e-mail.
|
54
|
+
email: brendangl@gmail.com
|
55
|
+
executables: []
|
56
|
+
|
57
|
+
extensions: []
|
58
|
+
|
59
|
+
extra_rdoc_files:
|
60
|
+
- README.rdoc
|
61
|
+
files:
|
62
|
+
- CHANGELOG
|
63
|
+
- MIT-LICENSE
|
64
|
+
- README.rdoc
|
65
|
+
- Rakefile
|
66
|
+
- install.rb
|
67
|
+
- lib/sms_fu.rb
|
68
|
+
- lib/sms_fu/sms_fu.rb
|
69
|
+
- lib/sms_fu/sms_fu_helper.rb
|
70
|
+
- lib/sms_fu/sms_notifier.rb
|
71
|
+
- sms_fu.gemspec
|
72
|
+
- tasks/sms_fu_tasks.rake
|
73
|
+
- templates/sms_fu.yml
|
74
|
+
- test/sms_fu_test.rb
|
75
|
+
has_rdoc: true
|
76
|
+
homepage: http://github.com/brendanlim/sms-fu
|
77
|
+
licenses: []
|
78
|
+
|
79
|
+
post_install_message:
|
80
|
+
rdoc_options:
|
81
|
+
- --charset=UTF-8
|
82
|
+
require_paths:
|
83
|
+
- lib
|
84
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
85
|
+
none: false
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
hash: 3
|
90
|
+
segments:
|
91
|
+
- 0
|
92
|
+
version: "0"
|
93
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
hash: 3
|
99
|
+
segments:
|
100
|
+
- 0
|
101
|
+
version: "0"
|
102
|
+
requirements: []
|
103
|
+
|
104
|
+
rubyforge_project:
|
105
|
+
rubygems_version: 1.3.7
|
106
|
+
signing_key:
|
107
|
+
specification_version: 3
|
108
|
+
summary: sms_fu allows you to send free text messages to a mobile recipient.
|
109
|
+
test_files:
|
110
|
+
- test/sms_fu_test.rb
|