Class: SPOT::Services::Messages

Inherits:
Base
  • Object
show all
Defined in:
lib/spot-gps/services/messages.rb

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from SPOT::Services::Base

Instance Method Details

#all(start_at: nil, end_at: nil) ⇒ Object



4
5
6
7
8
9
10
11
12
13
# File 'lib/spot-gps/services/messages.rb', line 4

def all(start_at: nil, end_at: nil)
  query_params = {}
  query_params[:startDate] = spot_formatted_time(start_at) if start_at
  query_params[:endDate] = spot_formatted_time(end_at) if end_at

  SPOT::Paginator.new(
    service: self,
    params: query_params
  ).enumerator
end

#latestObject



30
31
32
33
34
35
36
# File 'lib/spot-gps/services/messages.rb', line 30

def latest
  response = get(path: "latest.json")
  unenveloped_body = unenvelope_body(response.body)

  return nil if unenveloped_body.nil?
  Resources::Message.new(unenveloped_body, response)
end

#list(page: nil, start_at: nil, end_at: nil) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/spot-gps/services/messages.rb', line 15

def list(page: nil, start_at: nil, end_at: nil)
  query_params = {}
  query_params[:start] = start(page) if page
  query_params[:startDate] = spot_formatted_time(start_at) if start_at
  query_params[:endDate] = spot_formatted_time(end_at) if end_at

  response = get(path: "message.json", params: query_params)

  SPOT::ListResponse.new(
    response: response,
    resource_class: SPOT::Resources::Message,
    unenveloped_body: unenvelope_body(response.body)
  )
end