nibbme 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,11 @@
1
1
  = Nibbme - Changelog
2
2
 
3
3
 
4
+ == nibbme v1.2.0 released 2010/05/16
5
+
6
+ * adding SMS status tracking interface (SmsLog)
7
+
8
+
4
9
  == nibbme v1.1.0 released 2010/05/15
5
10
 
6
11
  * adding a "Simple SMS Gateway" interface
@@ -73,6 +73,7 @@ You can request data simply by calling a +find+ method.
73
73
  groups = Nibbme::Group.find(:all)
74
74
  groups = Nibbme::Group.find(:first)
75
75
  groups = Nibbme::Group.find(:last)
76
+ group = Nibbme::Group.find(15) # Where 15 is a Group ID number
76
77
 
77
78
  Note that this will return only the items on the first page. You can pass the +page+ variable to
78
79
  get the items on the subpage. If the request is empty you know there is no more items.
@@ -114,6 +115,7 @@ You can request data simply by calling a +find+ method.
114
115
  clients = Nibbme::Client.find(:all)
115
116
  clients = Nibbme::Client.find(:first)
116
117
  clients = Nibbme::Client.find(:last)
118
+ client = Nibbme::Client.find(15) # Where 15 is a Client ID number
117
119
 
118
120
  Note that this will return only the items on the first page. You can pass the +page+ variable to
119
121
  get the items on the subpage. If the request is empty you know there is no more items.
@@ -155,6 +157,7 @@ You can request data simply by calling a +find+ method.
155
157
  messages = Nibbme::Message.find(:all)
156
158
  messages = Nibbme::Message.find(:first)
157
159
  messages = Nibbme::Message.find(:last)
160
+ message = Nibbme::Message.find(15) # Where 15 is a Message ID number
158
161
 
159
162
  Note that this will return only the items on the first page. You can pass the +page+ variable to
160
163
  get the items on the subpage. If the request is empty you know there is no more items.
@@ -211,6 +214,44 @@ Similar to ActiveRecord all errors are logged as part of +errors+ variable.
211
214
 
212
215
  You can find more about error handling {here}[http://api.rubyonrails.org/classes/ActiveResource/Validations.html].
213
216
 
217
+ === Logs (Tracking SMS Status)
218
+
219
+ You can request data simply by calling a +find+ method.
220
+
221
+ logs = Nibbme::SmsLog.find(:all)
222
+ logs = Nibbme::SmsLog.find(:first)
223
+ logs = Nibbme::SmsLog.find(:last)
224
+ logs = Nibbme::SmsLog.find(15) # Where 15 is a SmsLog ID number
225
+
226
+ Note that this will return only the items on the first page. You can pass the +page+ variable to
227
+ get the items on the subpage. If the request is empty you know there is no more items.
228
+
229
+ # Request the second page
230
+ logs = Nibbme::SmsLog.find(:all, :params => { :page => 1 })
231
+
232
+ You can also filter the list through a +tags+ variable.
233
+
234
+ # Request the second page but filter only the items containing the word '313'
235
+ logs = Nibbme::SmsLog.find(:all, :params => { :page => 1, :tags => '313' })
236
+
237
+ You can check if an item exists by calling the +exists?+ method.
238
+
239
+ # Check if the SmsLog with ID=1 exists
240
+ exists = Nibbme::SmsLog.exists?(1)
241
+
242
+ Usually you will know a message and client ID. You can check an SMS status as follows
243
+
244
+ # Find log for a message with ID=14 and client ID=50
245
+ log = Nibbme::SmsLog.find_one(14, 50)
246
+
247
+ # Check if the message has been delivered
248
+ log.delivered?
249
+
250
+ # Check if the message has failed
251
+ log.failed?
252
+
253
+ # Show the message state
254
+ log.state
214
255
 
215
256
  == Links
216
257
 
@@ -0,0 +1,23 @@
1
+ module Nibbme
2
+ class SmsLog < Nibbme::AbstractBase
3
+
4
+ def self.find_one(message_id, client_id)
5
+ self.find(message_id, :params => { :client_id => client_id })
6
+ end
7
+
8
+ def delivered?
9
+ !self.delivered_at.nil?
10
+ end
11
+
12
+ def failed?
13
+ !self.failed_at.nil?
14
+ end
15
+
16
+ def state
17
+ return 'delivered' if self.delivered?
18
+ return 'failed' if self.failed?
19
+ 'in_progress'
20
+ end
21
+
22
+ end
23
+ end
@@ -1,7 +1,7 @@
1
1
  module Nibbme #:nodoc:
2
2
  module Version #:nodoc:
3
3
  MAJOR = 1
4
- MINOR = 1
4
+ MINOR = 2
5
5
  TINY = 0
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
metadata CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 1
7
- - 1
7
+ - 2
8
8
  - 0
9
- version: 1.1.0
9
+ version: 1.2.0
10
10
  platform: ruby
11
11
  authors:
12
12
  - Kristijan Sedlak
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-05-15 00:00:00 +02:00
17
+ date: 2010-05-16 00:00:00 +02:00
18
18
  default_executable:
19
19
  dependencies: []
20
20
 
@@ -35,6 +35,7 @@ files:
35
35
  - lib/nibbme/gateway.rb
36
36
  - lib/nibbme/group.rb
37
37
  - lib/nibbme/message.rb
38
+ - lib/nibbme/sms_log.rb
38
39
  - lib/nibbme/tasks.rb
39
40
  - lib/nibbme/version.rb
40
41
  - lib/nibbme.rb