AutoApi.MaintenanceState (auto_api v13.2.0) View Source
Maintenance state
Link to this section Summary
Functions
Callback implementation for AutoApi.State.base/0
.
Build state based on binary value
Convenience function to build the State properties.
Parse state to bin
Link to this section Types
Specs
automatic_teleservice_call_date() :: DateTime.t()
Specs
brake_fluid_change_date() :: DateTime.t()
Specs
brand() :: :unknown | :abarth | :alfaromeo | :alpine | :audi | :bmw | :cadillac | :chevrolet | :chrysler | :citroen | :cupra | :dacia | :dodge | :ds | :fiat | :ford | :honda | :hyundai | :iveco | :jaguar | :jeep | :kia | :lancia | :land_rover | :lexus | :man | :mazda | :mercedes_benz | :mini | :mitsubishi | :nissan | :opel | :peugeot | :porsche | :renault | :seat | :skoda | :smart | :subaru | :toyota | :volkswagen | :volvo_cars | :emulator
Specs
cbs_reports_count() :: integer()
Specs
drive_in_inspection_date() :: DateTime.t()
Specs
last_ecall() :: DateTime.t()
Specs
legal_inspection_date() :: DateTime.t()
Specs
next_inspection_date() :: DateTime.t()
Specs
next_oil_service_date() :: DateTime.t()
Specs
nonce() :: binary()
Specs
service_date() :: DateTime.t()
Specs
t() :: %AutoApi.MaintenanceState{ automatic_teleservice_call_date: AutoApi.State.property(DateTime.t()), brake_fluid_change_date: AutoApi.State.property(DateTime.t()), brake_fluid_remaining_distance: AutoApi.State.property(AutoApi.UnitType.length()), brake_fluid_status: AutoApi.State.property(AutoApi.CustomType.service_status()), brakes_service_due_dates: AutoApi.State.multiple_property(AutoApi.CustomType.brake_service_due_date()), brakes_service_remaining_distances: AutoApi.State.multiple_property( AutoApi.CustomType.brake_service_remaining_distance() ), brakes_service_statuses: AutoApi.State.multiple_property(AutoApi.CustomType.brake_service_status()), brand: AutoApi.State.property( :unknown | :abarth | :alfaromeo | :alpine | :audi | :bmw | :cadillac | :chevrolet | :chrysler | :citroen | :cupra | :dacia | :dodge | :ds | :fiat | :ford | :honda | :hyundai | :iveco | :jaguar | :jeep | :kia | :lancia | :land_rover | :lexus | :man | :mazda | :mercedes_benz | :mini | :mitsubishi | :nissan | :opel | :peugeot | :porsche | :renault | :seat | :skoda | :smart | :subaru | :toyota | :volkswagen | :volvo_cars | :emulator ), cbs_reports_count: AutoApi.State.property(integer()), condition_based_services: AutoApi.State.multiple_property( AutoApi.CustomType.condition_based_service() ), days_to_next_service: AutoApi.State.property(AutoApi.UnitType.duration()), distance_to_next_oil_service: AutoApi.State.property(AutoApi.UnitType.length()), distance_to_next_service: AutoApi.State.property(AutoApi.UnitType.length()), drive_in_inspection_date: AutoApi.State.property(DateTime.t()), drive_in_inspection_distance_to: AutoApi.State.property(AutoApi.UnitType.length()), drive_in_inspection_status: AutoApi.State.property(AutoApi.CustomType.service_status()), inspection_status: AutoApi.State.property(AutoApi.CustomType.service_status()), kilometers_to_next_service: AutoApi.State.property(AutoApi.UnitType.length()), last_ecall: AutoApi.State.property(DateTime.t()), legal_inspection_date: AutoApi.State.property(DateTime.t()), months_to_exhaust_inspection: AutoApi.State.property(AutoApi.UnitType.duration()), next_inspection_date: AutoApi.State.property(DateTime.t()), next_inspection_distance_to: AutoApi.State.property(AutoApi.UnitType.length()), next_oil_service_date: AutoApi.State.property(DateTime.t()), nonce: AutoApi.State.property(binary()), service_date: AutoApi.State.property(DateTime.t()), service_distance_threshold: AutoApi.State.property(AutoApi.UnitType.length()), service_status: AutoApi.State.property(AutoApi.CustomType.service_status()), service_time_threshold: AutoApi.State.property(AutoApi.UnitType.duration()), teleservice_availability: AutoApi.State.property(:pending | :idle | :successful | :error), teleservice_battery_call_date: AutoApi.State.property(DateTime.t()), time_to_exhaust_inspection: AutoApi.State.property(AutoApi.UnitType.duration()), time_to_next_oil_service: AutoApi.State.property(AutoApi.UnitType.duration()), time_to_next_service: AutoApi.State.property(AutoApi.UnitType.duration()), timestamp: AutoApi.State.property(DateTime.t()), vehicle_check_date: AutoApi.State.property(DateTime.t()), vehicle_check_distance_to: AutoApi.State.property(AutoApi.UnitType.length()), vehicle_check_status: AutoApi.State.property(AutoApi.CustomType.service_status()), vehicle_signature: AutoApi.State.property(binary()), vin: AutoApi.State.property(String.t()) }
Specs
teleservice_availability() :: :pending | :idle | :successful | :error
Specs
teleservice_battery_call_date() :: DateTime.t()
Specs
timestamp() :: DateTime.t()
Specs
vehicle_check_date() :: DateTime.t()
Specs
vehicle_signature() :: binary()
Specs
vin() :: String.t()
Link to this section Functions
Specs
base() :: t()
Callback implementation for AutoApi.State.base/0
.
Specs
Build state based on binary value
Example
iex> AutoApi.MaintenanceState.from_bin(<<3, 0, 4, 1, 0, 1, 42>>)
%AutoApi.MaintenanceState{cbs_reports_count: %AutoApi.Property{data: 42}}
Specs
Convenience function to build the State properties.
See AutoApi.State.put/3
.
Examples
iex> state_base = AutoApi.DiagnosticsState.base()
iex> odometer = %{value: 10_921, unit: :kilometers}
iex> state_1 = AutoApi.DiagnosticsState.put(state_base, :odometer, data: odometer)
iex> state_2 = AutoApi.State.put(state_base, :odometer, data: odometer)
iex> state_1 === state_2
true
Specs
Parse state to bin
Example
iex> state = %AutoApi.MaintenanceState{cbs_reports_count: %AutoApi.Property{data: 42}}
iex> AutoApi.MaintenanceState.to_bin(state)
<<3, 0, 4, 1, 0, 1, 42>>