Class: Kapow::Response
- Inherits:
-
Object
- Object
- Kapow::Response
- Defined in:
- lib/kapow/response.rb
Overview
A small class for parsing the response from the sms gateway.
Instance Attribute Summary collapse
-
#message ⇒ Object
readonly
Returns the value of attribute message.
Instance Method Summary collapse
-
#initialize(sms, message) ⇒ Response
constructor
A new instance of Response.
-
#parse(message) ⇒ Object
Parses the response body.
Constructor Details
#initialize(sms, message) ⇒ Response
Returns a new instance of Response.
11 12 13 14 |
# File 'lib/kapow/response.rb', line 11 def initialize(sms, ) @sms = sms @message = parse() end |
Instance Attribute Details
#message ⇒ Object (readonly)
Returns the value of attribute message.
16 17 18 |
# File 'lib/kapow/response.rb', line 16 def @message end |
Instance Method Details
#parse(message) ⇒ Object
Parses the response body. Raises the appropriate error or returns true. Also updates the amount of available credit.
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/kapow/response.rb', line 21 def parse() if .is_a?(Net::HTTPSuccess || Net::HTTPRedirection) case .body when "USERPASS" raise AuthenticationError when "NOCREDIT" raise NoCreditError when "ERROR" raise Error when /STATUS (.*)/ # This needs to change $1 when /^OK (\d+)\s?(.*)?/ Kapow::Credit.available = $1.to_i @sms.unique_id = $2 unless $2 == "" end else raise .error! end end |