Class: Samsara::DriversClient
- Inherits:
-
Object
- Object
- Samsara::DriversClient
- Defined in:
- lib/samsara_api/drivers/client.rb
Instance Attribute Summary collapse
- #qr_codes ⇒ Samsara::Drivers::QrCodesClient readonly
- #request_client ⇒ Samsara::RequestClient readonly
- #vehicle_assignments ⇒ Samsara::Drivers::VehicleAssignmentsClient readonly
Instance Method Summary collapse
-
#create(attributes: nil, carrier_settings: nil, current_id_card_code: nil, eld_adverse_weather_exemption_enabled: nil, eld_big_day_exemption_enabled: nil, eld_day_start_hour: nil, eld_exempt: nil, eld_exempt_reason: nil, eld_pc_enabled: nil, eld_ym_enabled: nil, external_ids: nil, has_driving_features_hidden: nil, hos_setting: nil, license_number: nil, license_state: nil, locale: nil, name:, notes: nil, password:, peer_group_tag_id: nil, phone: nil, static_assigned_vehicle_id: nil, tachograph_card_number: nil, tag_ids: nil, timezone: nil, us_driver_ruleset_override: nil, username:, vehicle_group_tag_id: nil, waiting_time_duty_status_enabled: nil, request_options: nil) ⇒ Object
).
-
#get(id:, request_options: nil) ⇒ Object
api.drivers.get(id: “id”).
- #initialize(request_client:) ⇒ Samsara::DriversClient constructor
-
#list(driver_activation_status: nil, limit: nil, after: nil, parent_tag_ids: nil, tag_ids: nil, attribute_value_ids: nil, attributes: nil, updated_after_time: nil, created_after_time: nil, request_options: nil) ⇒ Object
api.drivers.list.
-
#sign_out(driver_id:, request_options: nil) ⇒ Object
api.drivers.sign_out(driver_id: “12434”).
-
#update(id:, attributes: nil, carrier_settings: nil, current_id_card_code: nil, deactivated_at_time: nil, driver_activation_status: nil, eld_adverse_weather_exemption_enabled: nil, eld_big_day_exemption_enabled: nil, eld_day_start_hour: nil, eld_exempt: nil, eld_exempt_reason: nil, eld_pc_enabled: nil, eld_ym_enabled: nil, external_ids: nil, has_driving_features_hidden: nil, hos_setting: nil, license_number: nil, license_state: nil, locale: nil, name: nil, notes: nil, password: nil, peer_group_tag_id: nil, phone: nil, static_assigned_vehicle_id: nil, tachograph_card_number: nil, tag_ids: nil, timezone: nil, us_driver_ruleset_override: nil, username: nil, vehicle_group_tag_id: nil, waiting_time_duty_status_enabled: nil, request_options: nil) ⇒ Object
api.drivers.update(id: “id”).
Constructor Details
#initialize(request_client:) ⇒ Samsara::DriversClient
36 37 38 39 40 |
# File 'lib/samsara_api/drivers/client.rb', line 36 def initialize(request_client:) @request_client = request_client @qr_codes = Samsara::Drivers::QrCodesClient.new(request_client: request_client) @vehicle_assignments = Samsara::Drivers::VehicleAssignmentsClient.new(request_client: request_client) end |
Instance Attribute Details
#qr_codes ⇒ Samsara::Drivers::QrCodesClient (readonly)
29 30 31 |
# File 'lib/samsara_api/drivers/client.rb', line 29 def qr_codes @qr_codes end |
#request_client ⇒ Samsara::RequestClient (readonly)
27 28 29 |
# File 'lib/samsara_api/drivers/client.rb', line 27 def request_client @request_client end |
#vehicle_assignments ⇒ Samsara::Drivers::VehicleAssignmentsClient (readonly)
31 32 33 |
# File 'lib/samsara_api/drivers/client.rb', line 31 def vehicle_assignments @vehicle_assignments end |
Instance Method Details
#create(attributes: nil, carrier_settings: nil, current_id_card_code: nil, eld_adverse_weather_exemption_enabled: nil, eld_big_day_exemption_enabled: nil, eld_day_start_hour: nil, eld_exempt: nil, eld_exempt_reason: nil, eld_pc_enabled: nil, eld_ym_enabled: nil, external_ids: nil, has_driving_features_hidden: nil, hos_setting: nil, license_number: nil, license_state: nil, locale: nil, name:, notes: nil, password:, peer_group_tag_id: nil, phone: nil, static_assigned_vehicle_id: nil, tachograph_card_number: nil, tag_ids: nil, timezone: nil, us_driver_ruleset_override: nil, username:, vehicle_group_tag_id: nil, waiting_time_duty_status_enabled: nil, request_options: nil) ⇒ Object
)
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 |
# File 'lib/samsara_api/drivers/client.rb', line 194 def create(attributes: nil, carrier_settings: nil, current_id_card_code: nil, eld_adverse_weather_exemption_enabled: nil, eld_big_day_exemption_enabled: nil, eld_day_start_hour: nil, eld_exempt: nil, eld_exempt_reason: nil, eld_pc_enabled: nil, eld_ym_enabled: nil, external_ids: nil, has_driving_features_hidden: nil, hos_setting: nil, license_number: nil, license_state: nil, locale: nil, name:, notes: nil, password:, peer_group_tag_id: nil, phone: nil, static_assigned_vehicle_id: nil, tachograph_card_number: nil, tag_ids: nil, timezone: nil, us_driver_ruleset_override: nil, username:, vehicle_group_tag_id: nil, waiting_time_duty_status_enabled: nil, request_options: nil) response = @request_client.conn.post do | req | unless &.timeout_in_seconds.nil? req..timeout = .timeout_in_seconds end unless &.token.nil? req.headers["Authorization"] = .token end req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end req.body = { **(&.additional_body_parameters || {}), attributes: attributes, carrierSettings: carrier_settings, currentIdCardCode: current_id_card_code, eldAdverseWeatherExemptionEnabled: eld_adverse_weather_exemption_enabled, eldBigDayExemptionEnabled: eld_big_day_exemption_enabled, eldDayStartHour: eld_day_start_hour, eldExempt: eld_exempt, eldExemptReason: eld_exempt_reason, eldPcEnabled: eld_pc_enabled, eldYmEnabled: eld_ym_enabled, externalIds: external_ids, hasDrivingFeaturesHidden: has_driving_features_hidden, hosSetting: hos_setting, licenseNumber: license_number, licenseState: license_state, locale: locale, name: name, notes: notes, password: password, peerGroupTagId: peer_group_tag_id, phone: phone, staticAssignedVehicleId: static_assigned_vehicle_id, tachographCardNumber: tachograph_card_number, tagIds: tag_ids, timezone: timezone, usDriverRulesetOverride: us_driver_ruleset_override, username: username, vehicleGroupTagId: vehicle_group_tag_id, waitingTimeDutyStatusEnabled: waiting_time_duty_status_enabled }.compact req.url "#{@request_client.get_url(request_options: )}/fleet/drivers" end Samsara::Types::DriverResponse.from_json(json_object: response.body) end |
#get(id:, request_options: nil) ⇒ Object
api.drivers.get(id: “id”)
284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 |
# File 'lib/samsara_api/drivers/client.rb', line 284 def get(id:, request_options: nil) response = @request_client.conn.get do | req | unless &.timeout_in_seconds.nil? req..timeout = .timeout_in_seconds end unless &.token.nil? req.headers["Authorization"] = .token end req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/fleet/drivers/#{id}" end Samsara::Types::DriverResponse.from_json(json_object: response.body) end |
#list(driver_activation_status: nil, limit: nil, after: nil, parent_tag_ids: nil, tag_ids: nil, attribute_value_ids: nil, attributes: nil, updated_after_time: nil, created_after_time: nil, request_options: nil) ⇒ Object
api.drivers.list
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'lib/samsara_api/drivers/client.rb', line 92 def list(driver_activation_status: nil, limit: nil, after: nil, parent_tag_ids: nil, tag_ids: nil, attribute_value_ids: nil, attributes: nil, updated_after_time: nil, created_after_time: nil, request_options: nil) response = @request_client.conn.get do | req | unless &.timeout_in_seconds.nil? req..timeout = .timeout_in_seconds end unless &.token.nil? req.headers["Authorization"] = .token end req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact req.params = { **(&.additional_query_parameters || {}), "driverActivationStatus": driver_activation_status, "limit": limit, "after": after, "parentTagIds": parent_tag_ids, "tagIds": tag_ids, "attributeValueIds": attribute_value_ids, "attributes": attributes, "updatedAfterTime": updated_after_time, "createdAfterTime": created_after_time }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/fleet/drivers" end Samsara::Types::ListDriversResponse.from_json(json_object: response.body) end |
#sign_out(driver_id:, request_options: nil) ⇒ Object
api.drivers.sign_out(driver_id: “12434”)
241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 |
# File 'lib/samsara_api/drivers/client.rb', line 241 def sign_out(driver_id:, request_options: nil) response = @request_client.conn.post do | req | unless &.timeout_in_seconds.nil? req..timeout = .timeout_in_seconds end unless &.token.nil? req.headers["Authorization"] = .token end req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end req.body = { **(&.additional_body_parameters || {}), driverId: driver_id }.compact req.url "#{@request_client.get_url(request_options: )}/fleet/drivers/remote-sign-out" end Samsara::Types::DriverRemoteSignoutPostDriverRemoteSignoutResponseBody.from_json(json_object: response.body) end |
#update(id:, attributes: nil, carrier_settings: nil, current_id_card_code: nil, deactivated_at_time: nil, driver_activation_status: nil, eld_adverse_weather_exemption_enabled: nil, eld_big_day_exemption_enabled: nil, eld_day_start_hour: nil, eld_exempt: nil, eld_exempt_reason: nil, eld_pc_enabled: nil, eld_ym_enabled: nil, external_ids: nil, has_driving_features_hidden: nil, hos_setting: nil, license_number: nil, license_state: nil, locale: nil, name: nil, notes: nil, password: nil, peer_group_tag_id: nil, phone: nil, static_assigned_vehicle_id: nil, tachograph_card_number: nil, tag_ids: nil, timezone: nil, us_driver_ruleset_override: nil, username: nil, vehicle_group_tag_id: nil, waiting_time_duty_status_enabled: nil, request_options: nil) ⇒ Object
api.drivers.update(id: “id”)
400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 |
# File 'lib/samsara_api/drivers/client.rb', line 400 def update(id:, attributes: nil, carrier_settings: nil, current_id_card_code: nil, deactivated_at_time: nil, driver_activation_status: nil, eld_adverse_weather_exemption_enabled: nil, eld_big_day_exemption_enabled: nil, eld_day_start_hour: nil, eld_exempt: nil, eld_exempt_reason: nil, eld_pc_enabled: nil, eld_ym_enabled: nil, external_ids: nil, has_driving_features_hidden: nil, hos_setting: nil, license_number: nil, license_state: nil, locale: nil, name: nil, notes: nil, password: nil, peer_group_tag_id: nil, phone: nil, static_assigned_vehicle_id: nil, tachograph_card_number: nil, tag_ids: nil, timezone: nil, us_driver_ruleset_override: nil, username: nil, vehicle_group_tag_id: nil, waiting_time_duty_status_enabled: nil, request_options: nil) response = @request_client.conn.patch do | req | unless &.timeout_in_seconds.nil? req..timeout = .timeout_in_seconds end unless &.token.nil? req.headers["Authorization"] = .token end req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact unless .nil? || &.additional_query_parameters.nil? req.params = { **(&.additional_query_parameters || {}) }.compact end req.body = { **(&.additional_body_parameters || {}), attributes: attributes, carrierSettings: carrier_settings, currentIdCardCode: current_id_card_code, deactivatedAtTime: deactivated_at_time, driverActivationStatus: driver_activation_status, eldAdverseWeatherExemptionEnabled: eld_adverse_weather_exemption_enabled, eldBigDayExemptionEnabled: eld_big_day_exemption_enabled, eldDayStartHour: eld_day_start_hour, eldExempt: eld_exempt, eldExemptReason: eld_exempt_reason, eldPcEnabled: eld_pc_enabled, eldYmEnabled: eld_ym_enabled, externalIds: external_ids, hasDrivingFeaturesHidden: has_driving_features_hidden, hosSetting: hos_setting, licenseNumber: license_number, licenseState: license_state, locale: locale, name: name, notes: notes, password: password, peerGroupTagId: peer_group_tag_id, phone: phone, staticAssignedVehicleId: static_assigned_vehicle_id, tachographCardNumber: tachograph_card_number, tagIds: tag_ids, timezone: timezone, usDriverRulesetOverride: us_driver_ruleset_override, username: username, vehicleGroupTagId: vehicle_group_tag_id, waitingTimeDutyStatusEnabled: waiting_time_duty_status_enabled }.compact req.url "#{@request_client.get_url(request_options: )}/fleet/drivers/#{id}" end Samsara::Types::DriverResponse.from_json(json_object: response.body) end |