Class: Samsara::Types::SafetySettingsObjectResponseBody

Inherits:
Object
  • Object
show all
Defined in:
lib/samsara_api/types/safety_settings_object_response_body.rb

Overview

Safety settings for a single organization.

Constant Summary collapse

OMIT =
Object.new

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(default_vehicle_type:, distracted_driving_detection_alerts:, following_distance_detection_alerts:, forward_collision_detection_alerts:, harsh_event_sensitivity:, harsh_event_sensitivity_v_2:, policy_violations_detection_alerts:, rolling_stop_detection_alerts:, safety_score_configuration:, safety_score_target:, speeding_settings:, voice_coaching:, additional_properties: nil) ⇒ Samsara::Types::SafetySettingsObjectResponseBody

Parameters:



70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 70

def initialize(default_vehicle_type:, distracted_driving_detection_alerts:, following_distance_detection_alerts:, forward_collision_detection_alerts:, harsh_event_sensitivity:, harsh_event_sensitivity_v_2:, policy_violations_detection_alerts:, rolling_stop_detection_alerts:, safety_score_configuration:, safety_score_target:, speeding_settings:, voice_coaching:, additional_properties: nil)
  @default_vehicle_type = default_vehicle_type
  @distracted_driving_detection_alerts = distracted_driving_detection_alerts
  @following_distance_detection_alerts = following_distance_detection_alerts
  @forward_collision_detection_alerts = forward_collision_detection_alerts
  @harsh_event_sensitivity = harsh_event_sensitivity
  @harsh_event_sensitivity_v_2 = harsh_event_sensitivity_v_2
  @policy_violations_detection_alerts = policy_violations_detection_alerts
  @rolling_stop_detection_alerts = rolling_stop_detection_alerts
  @safety_score_configuration = safety_score_configuration
  @safety_score_target = safety_score_target
  @speeding_settings = speeding_settings
  @voice_coaching = voice_coaching
  @additional_properties = additional_properties
  @_field_set = { "defaultVehicleType": default_vehicle_type, "distractedDrivingDetectionAlerts": distracted_driving_detection_alerts, "followingDistanceDetectionAlerts": following_distance_detection_alerts, "forwardCollisionDetectionAlerts": forward_collision_detection_alerts, "harshEventSensitivity": harsh_event_sensitivity, "harshEventSensitivityV2": harsh_event_sensitivity_v_2, "policyViolationsDetectionAlerts": policy_violations_detection_alerts, "rollingStopDetectionAlerts": rolling_stop_detection_alerts, "safetyScoreConfiguration": safety_score_configuration, "safetyScoreTarget": safety_score_target, "speedingSettings": speeding_settings, "voiceCoaching": voice_coaching }
end

Instance Attribute Details

#additional_properties ⇒ OpenStruct (readonly)

Returns Additional properties unmapped to the current class definition.

Returns:

  • (OpenStruct) —

    Additional properties unmapped to the current class definition



47
48
49
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 47

def additional_properties
  @additional_properties
end

#default_vehicle_type ⇒ Object (readonly)

off, automatic, passengerCar, lightTruck, heavyDuty



22
23
24
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 22

def default_vehicle_type
  @default_vehicle_type
end

#distracted_driving_detection_alerts ⇒ Samsara::Types::DistractedDrivingDetectionAlertSettingsObjectResponseBody (readonly)



24
25
26
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 24

def distracted_driving_detection_alerts
  @distracted_driving_detection_alerts
end

#following_distance_detection_alerts ⇒ Samsara::Types::FollowingDistanceDetectionAlertSettingsObjectResponseBody (readonly)



26
27
28
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 26

def following_distance_detection_alerts
  @following_distance_detection_alerts
end

#forward_collision_detection_alerts ⇒ Samsara::Types::ForwardCollisionDetectionAlertSettingsObjectResponseBody (readonly)



28
29
30
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 28

def forward_collision_detection_alerts
  @forward_collision_detection_alerts
end

#harsh_event_sensitivity ⇒ Samsara::Types::HarshEventSensitivitySettingsObjectResponseBody (readonly)



30
31
32
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 30

def harsh_event_sensitivity
  @harsh_event_sensitivity
end

#harsh_event_sensitivity_v_2 ⇒ Samsara::Types::HarshEventSensitivityV2SettingsObjectResponseBody (readonly)



32
33
34
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 32

def harsh_event_sensitivity_v_2
  @harsh_event_sensitivity_v_2
end

#policy_violations_detection_alerts ⇒ Samsara::Types::PolicyViolationsDetectionAlertSettingsObjectResponseBody (readonly)



34
35
36
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 34

def policy_violations_detection_alerts
  @policy_violations_detection_alerts
end

#rolling_stop_detection_alerts ⇒ Samsara::Types::RollingStopDetectionAlertSettingsObjectResponseBody (readonly)



36
37
38
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 36

def rolling_stop_detection_alerts
  @rolling_stop_detection_alerts
end

#safety_score_configuration ⇒ Samsara::Types::SafetyScoreConfigurationSettingsObjectResponseBody (readonly)



38
39
40
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 38

def safety_score_configuration
  @safety_score_configuration
end

#safety_score_target ⇒ Object (readonly)

safety score goal of 0 means that score benchmarking is disabled.



41
42
43
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 41

def safety_score_target
  @safety_score_target
end

#speeding_settings ⇒ Samsara::Types::SpeedingSettingsObjectResponseBody (readonly)



43
44
45
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 43

def speeding_settings
  @speeding_settings
end

#voice_coaching ⇒ Samsara::Types::VoiceCoachingSettingsObjectResponseBody (readonly)



45
46
47
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 45

def voice_coaching
  @voice_coaching
end

Class Method Details

.from_json(json_object:) ⇒ Samsara::Types::SafetySettingsObjectResponseBody

Parameters:

  • json_object (String)

Returns:



90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 90

def self.from_json(json_object:)
  struct = JSON.parse(json_object, object_class: OpenStruct)
  parsed_json = JSON.parse(json_object)
  default_vehicle_type = parsed_json["defaultVehicleType"]
  unless parsed_json["distractedDrivingDetectionAlerts"].nil?
    distracted_driving_detection_alerts = parsed_json["distractedDrivingDetectionAlerts"].to_json
    distracted_driving_detection_alerts = Samsara::Types::DistractedDrivingDetectionAlertSettingsObjectResponseBody.from_json(json_object: distracted_driving_detection_alerts)
  else
    distracted_driving_detection_alerts = nil
  end
  unless parsed_json["followingDistanceDetectionAlerts"].nil?
    following_distance_detection_alerts = parsed_json["followingDistanceDetectionAlerts"].to_json
    following_distance_detection_alerts = Samsara::Types::FollowingDistanceDetectionAlertSettingsObjectResponseBody.from_json(json_object: following_distance_detection_alerts)
  else
    following_distance_detection_alerts = nil
  end
  unless parsed_json["forwardCollisionDetectionAlerts"].nil?
    forward_collision_detection_alerts = parsed_json["forwardCollisionDetectionAlerts"].to_json
    forward_collision_detection_alerts = Samsara::Types::ForwardCollisionDetectionAlertSettingsObjectResponseBody.from_json(json_object: forward_collision_detection_alerts)
  else
    forward_collision_detection_alerts = nil
  end
  unless parsed_json["harshEventSensitivity"].nil?
    harsh_event_sensitivity = parsed_json["harshEventSensitivity"].to_json
    harsh_event_sensitivity = Samsara::Types::HarshEventSensitivitySettingsObjectResponseBody.from_json(json_object: harsh_event_sensitivity)
  else
    harsh_event_sensitivity = nil
  end
  unless parsed_json["harshEventSensitivityV2"].nil?
    harsh_event_sensitivity_v_2 = parsed_json["harshEventSensitivityV2"].to_json
    harsh_event_sensitivity_v_2 = Samsara::Types::HarshEventSensitivityV2SettingsObjectResponseBody.from_json(json_object: harsh_event_sensitivity_v_2)
  else
    harsh_event_sensitivity_v_2 = nil
  end
  unless parsed_json["policyViolationsDetectionAlerts"].nil?
    policy_violations_detection_alerts = parsed_json["policyViolationsDetectionAlerts"].to_json
    policy_violations_detection_alerts = Samsara::Types::PolicyViolationsDetectionAlertSettingsObjectResponseBody.from_json(json_object: policy_violations_detection_alerts)
  else
    policy_violations_detection_alerts = nil
  end
  unless parsed_json["rollingStopDetectionAlerts"].nil?
    rolling_stop_detection_alerts = parsed_json["rollingStopDetectionAlerts"].to_json
    rolling_stop_detection_alerts = Samsara::Types::RollingStopDetectionAlertSettingsObjectResponseBody.from_json(json_object: rolling_stop_detection_alerts)
  else
    rolling_stop_detection_alerts = nil
  end
  unless parsed_json["safetyScoreConfiguration"].nil?
    safety_score_configuration = parsed_json["safetyScoreConfiguration"].to_json
    safety_score_configuration = Samsara::Types::SafetyScoreConfigurationSettingsObjectResponseBody.from_json(json_object: safety_score_configuration)
  else
    safety_score_configuration = nil
  end
  safety_score_target = parsed_json["safetyScoreTarget"]
  unless parsed_json["speedingSettings"].nil?
    speeding_settings = parsed_json["speedingSettings"].to_json
    speeding_settings = Samsara::Types::SpeedingSettingsObjectResponseBody.from_json(json_object: speeding_settings)
  else
    speeding_settings = nil
  end
  unless parsed_json["voiceCoaching"].nil?
    voice_coaching = parsed_json["voiceCoaching"].to_json
    voice_coaching = Samsara::Types::VoiceCoachingSettingsObjectResponseBody.from_json(json_object: voice_coaching)
  else
    voice_coaching = nil
  end
  new(
    default_vehicle_type: default_vehicle_type,
    distracted_driving_detection_alerts: distracted_driving_detection_alerts,
    following_distance_detection_alerts: following_distance_detection_alerts,
    forward_collision_detection_alerts: forward_collision_detection_alerts,
    harsh_event_sensitivity: harsh_event_sensitivity,
    harsh_event_sensitivity_v_2: harsh_event_sensitivity_v_2,
    policy_violations_detection_alerts: policy_violations_detection_alerts,
    rolling_stop_detection_alerts: rolling_stop_detection_alerts,
    safety_score_configuration: safety_score_configuration,
    safety_score_target: safety_score_target,
    speeding_settings: speeding_settings,
    voice_coaching: voice_coaching,
    additional_properties: struct
  )
end

.validate_raw(obj:) ⇒ Void

Parameters:

  • obj (Object)

Returns:

  • (Void)


183
184
185
186
187
188
189
190
191
192
193
194
195
196
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 183

def self.validate_raw(obj:)
  obj.default_vehicle_type.is_a?(Samsara::Types::SafetySettingsObjectResponseBodyDefaultVehicleType) != false || raise("Passed value for field obj.default_vehicle_type is not the expected type, validation failed.")
  Samsara::Types::DistractedDrivingDetectionAlertSettingsObjectResponseBody.validate_raw(obj: obj.distracted_driving_detection_alerts)
  Samsara::Types::FollowingDistanceDetectionAlertSettingsObjectResponseBody.validate_raw(obj: obj.following_distance_detection_alerts)
  Samsara::Types::ForwardCollisionDetectionAlertSettingsObjectResponseBody.validate_raw(obj: obj.forward_collision_detection_alerts)
  Samsara::Types::HarshEventSensitivitySettingsObjectResponseBody.validate_raw(obj: obj.harsh_event_sensitivity)
  Samsara::Types::HarshEventSensitivityV2SettingsObjectResponseBody.validate_raw(obj: obj.harsh_event_sensitivity_v_2)
  Samsara::Types::PolicyViolationsDetectionAlertSettingsObjectResponseBody.validate_raw(obj: obj.policy_violations_detection_alerts)
  Samsara::Types::RollingStopDetectionAlertSettingsObjectResponseBody.validate_raw(obj: obj.rolling_stop_detection_alerts)
  Samsara::Types::SafetyScoreConfigurationSettingsObjectResponseBody.validate_raw(obj: obj.safety_score_configuration)
  obj.safety_score_target.is_a?(Long) != false || raise("Passed value for field obj.safety_score_target is not the expected type, validation failed.")
  Samsara::Types::SpeedingSettingsObjectResponseBody.validate_raw(obj: obj.speeding_settings)
  Samsara::Types::VoiceCoachingSettingsObjectResponseBody.validate_raw(obj: obj.voice_coaching)
end

Instance Method Details

#to_json ⇒ String

Returns:

  • (String)


174
175
176
# File 'lib/samsara_api/types/safety_settings_object_response_body.rb', line 174

def to_json
  @_field_set&.to_json
end