Class: Samsara::Coaching::AsyncSessionsClient

Inherits:
Object
  • Object
show all
Defined in:
lib/samsara_api/coaching/sessions/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request_client:) ⇒ Samsara::Coaching::AsyncSessionsClient

Parameters:



94
95
96
# File 'lib/samsara_api/coaching/sessions/client.rb', line 94

def initialize(request_client:)
  @request_client = request_client
end

Instance Attribute Details

#request_clientSamsara::AsyncRequestClient (readonly)



89
90
91
# File 'lib/samsara_api/coaching/sessions/client.rb', line 89

def request_client
  @request_client
end

Instance Method Details

#stream(driver_ids: nil, coach_ids: nil, session_statuses: nil, include_coachable_events: nil, start_time:, end_time: nil, after: nil, include_external_ids: nil, request_options: nil) ⇒ Object

api.coaching.sessions.stream(start_time: DateTime.parse(“2024-01-15T09:30:00.000Z”))



145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
# File 'lib/samsara_api/coaching/sessions/client.rb', line 145

def stream(driver_ids: nil, coach_ids: nil, session_statuses: nil, include_coachable_events: nil, start_time:, end_time: nil, after: nil, include_external_ids: nil, request_options: nil)
  Async do
    response = @request_client.conn.get do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  req.params = { **(request_options&.additional_query_parameters || {}), "driverIds": driver_ids, "coachIds": coach_ids, "sessionStatuses": session_statuses, "includeCoachableEvents": include_coachable_events, "startTime": start_time, "endTime": end_time, "after": after, "includeExternalIds": include_external_ids }.compact
  unless request_options.nil? || request_options&.additional_body_parameters.nil?
    req.body = { **(request_options&.additional_body_parameters || {}) }.compact
  end
  req.url "#{@request_client.get_url(request_options: request_options)}/coaching/sessions/stream"
end
    Samsara::Types::CoachingSessionsGetCoachingSessionsResponseBody.from_json(json_object: response.body)
  end
end