class Easemob::BaseMessage

Attributes

action[R]
application[R]
application_name[R]
body[R]
body_hash[R]
code[R]
count[R]
cursor[R]
data[R]
duration[R]
entities[R]
error[R]
error_description[R]
exception[R]
organization[R]
params[R]
raw_http_response[R]
timestamp[R]
uri[R]

Public Class Methods

new(http_response) click to toggle source
# File lib/easemob/message/base_message.rb, line 23
def initialize(http_response)
  @raw_http_response = http_response
  @code = http_response.code
  @body = http_response.body

  return unless http_response.headers['Content-Type'].index('application/json')

  @body_hash = JSON.parse(@body)

  @timestamp = @body_hash['timestamp']
  @duration = @body_hash['duration']

  if http_response.code == 200
    @action = @body_hash['action']
    @application = @body_hash['application']
    @params = @body_hash['params']
    @uri = @body_hash['uri']
    @entities = @body_hash['entities']
    @data = @body_hash['data']
    @organization = @body_hash['organization']
    @application_name = @body_hash['applicationName']
    @cursor = @body_hash['cursor']
    @count = @body_hash['count']
  else
    @error = @body_hash['error']
    @exception = @body_hash['exception']
    @error_description = @body_hash['error_description']
  end
end

Public Instance Methods

inspect() click to toggle source
# File lib/easemob/message/base_message.rb, line 57
def inspect
  "#{self.class.name}(code: #{@code}, body: #{@body}, action: #{@action},
   application: #{@application}, params: #{@params}, uri: #{@uri}, entities: #{@entities},
   data: #{@data}, timestamp: #{@timestamp}, duration: #{@duration}, organization: #{@organization},
   applicationName: #{@applicationName}, cursor: #{@cursor}, count: #{@count})"
end
to_s() click to toggle source
# File lib/easemob/message/base_message.rb, line 53
def to_s
  @body.to_s
end