Table of Contents

Class CustomVehicleDevice

Namespace
Geotab.Checkmate.ObjectModel
Assembly
Geotab.Checkmate.ObjectModel.dll

A custom telematics automotive vehicle device that is used in MyGeotab. This is used for extensibility and is based on the CustomDevice object.

public class CustomVehicleDevice : CustomDevice, IEntity, IComparable, IIdentifiable, IVersion, IGroupLinked, ITimeZoneIdProvider, IDefaultable, ICustomizable<Device>, IMediaFiles, IInstanceSizeEstimate, IAutoGroupsProvider, IOdometerProvider, IOdometerAdjustmentProvider, IEngineHoursProvider, IEngineHoursAdjustmentProvider, ILicensable, IVehicleIdentificationNumber, IHOSDevice, IFuelProvider
Inheritance
CustomVehicleDevice
Implements
Inherited Members

Constructors

CustomVehicleDevice()

Initializes a new instance of the CustomVehicleDevice class.

public CustomVehicleDevice()

CustomVehicleDevice(CustomVehicleDevice)

Initializes a new instance of the CustomVehicleDevice class.

public CustomVehicleDevice(CustomVehicleDevice customVehicleDevice)

Parameters

customVehicleDevice CustomVehicleDevice

The custom vehicle device.

CustomVehicleDevice(Id?, long?, string?, string?, int?, TimeSpan?, DateTime?, int?, string?, WorkTime?, float?, IList<Group>?, string?, DeviceFlags?, DateTime?, DateTime?, IReadOnlyList<DevicePlanBillingInfo>?, string?, string?, string?, string?, double?, float?, double?, double?, int?, bool?, double?, bool?, HosOption?, List<PropertyValue<Device>>?, IList<Group>?)

Initializes a new instance of the CustomVehicleDevice class.

public CustomVehicleDevice(Id? id, long? version, string? name, string? comment, int? productId, TimeSpan? timeToDownload, DateTime? ignoreDownloadsUntil, int? hardwareId, string? serialNumber, WorkTime? workTime, float? maxSecondsBetweenLogs, IList<Group>? groups, string? timeZoneId, DeviceFlags? deviceFlags, DateTime? activeTo, DateTime? activeFrom, IReadOnlyList<DevicePlanBillingInfo>? devicePlanBillingInfo, string? vehicleIdentificationNumber, string? engineVehicleIdentificationNumber, string? licensePlate, string? licenseState, double? odometer, float? odometerFactor, double? odometerOffset, double? engineHours, int? engineHoursOffset, bool? pinDevice, double? fuelTankCapacity, bool? disableSleeperBerth, HosOption? autoHos, List<PropertyValue<Device>>? customProperties, IList<Group>? autoGroups = null)

Parameters

id Id

The Id.

version long?

The version.

name string

The name.

comment string

The comment.

productId int?

The product id.

timeToDownload TimeSpan?

The time to download.

ignoreDownloadsUntil DateTime?

The ignore downloads until.

hardwareId int?

The hardware id.

serialNumber string

The serial number of the device.

workTime WorkTime

A WorkTime object.

maxSecondsBetweenLogs float?

The max number of log seconds.

groups IList<Group>

The collection of Group(s) this CustomDevice belongs to.

timeZoneId string

The Timezone Id.

deviceFlags DeviceFlags

The DevicePlan this device is on.

activeTo DateTime?

Date after which device becomes archived.

activeFrom DateTime?

Date after which device becomes active.

devicePlanBillingInfo IReadOnlyList<DevicePlanBillingInfo>

The device plan billing information.

vehicleIdentificationNumber string

The device identification number.

engineVehicleIdentificationNumber string

The device identification number from engine.

licensePlate string

The license plate.

licenseState string

State of the license.

odometer double?

The odometer.

odometerFactor float?

The odometer factor.

odometerOffset double?

The odometer offset.

engineHours double?

The engine hours.

engineHoursOffset int?

The engine hours offset.

pinDevice bool?

Disable automatic device moving.

fuelTankCapacity double?

The capacity of all usable fuel tanks in litres.

disableSleeperBerth bool?

Hide the Sleeper Berth option

autoHos HosOption?

Represents automatic generation of DutyStatusLogs for a Device.

customProperties List<PropertyValue<Device>>

The custom properties and its associated PropertyValue<T>s for this device.

autoGroups IList<Group>

The collection of auto Group(s) this Device belongs to.

Properties

AutoHos

Gets or sets a toggle that represents automatic generation of DutyStatusLogs for a Device. Default [null].

public HosOption? AutoHos { get; set; }

Property Value

HosOption?

HosOption

DisableSleeperBerth

Gets or sets a value indicating whether the SB option will be available when adding logs or changing driver's status

[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceSleeperBerth })]
public bool? DisableSleeperBerth { get; set; }

Property Value

bool?

A bool value.

EngineHourOffset

Gets or sets the offset to be applied engine hours data reported by the engine computer. Default [0].

[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceProgrammingEngineHourOffset })]
public int? EngineHourOffset { get; set; }

Property Value

int?

int

EngineHours

Gets or sets the Engine Hours for the device. Default [0].

public double? EngineHours { get; set; }

Property Value

double?

double

EngineVehicleIdentificationNumber

Gets or sets the Engine Vehicle Identification Number from the engine of the vehicle associated with the device.

public string? EngineVehicleIdentificationNumber { get; set; }

Property Value

string

string

FuelTankCapacity

Gets or sets the capacity of all usable fuel tanks in litres. Default [null].

public double? FuelTankCapacity { get; set; }

Property Value

double?

The double capacity.

LicensePlate

Gets or sets the vehicle license plate details of the vehicle associated with the device. Maximum length [50] Default [""].

[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceLicensePlate })]
public string? LicensePlate { get; set; }

Property Value

string

string

LicenseState

Gets or sets the state or province of the vehicle associated with the device. Maximum length [50] Default [""].

[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceLicenseState })]
public string? LicenseState { get; set; }

Property Value

string

string

Odometer

Gets or sets the Odometer for the device.

public double? Odometer { get; set; }

Property Value

double?

double

OdometerFactor

Gets or sets a value used to correct the odometer value received from the engine. Default [1].

public float? OdometerFactor { get; set; }

Property Value

float?

float

OdometerOffset

Gets or sets the offset to be applied odometer reported by the engine computer. Default [0].

[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceProgrammingOdometerOffset })]
public double? OdometerOffset { get; set; }

Property Value

double?

double

PinDevice

Gets or sets a toggle that determines whether or not a device is under automatic vehicle management. Default [true]. This value is the inverse of whether automatic vehicle management is enabled. A value of false means that automatic vehicle management is enabled in the UI.

public bool? PinDevice { get; set; }

Property Value

bool?

bool

VehicleIdentificationNumber

Gets or sets the Vehicle Identification Number (VIN) of the vehicle associated with the device. Maximum length [50] Default [""].

[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceVIN })]
public string? VehicleIdentificationNumber { get; set; }

Property Value

string

string

Methods

Clone()

Creates a new object that is a copy of the current instance.

public override IEntity Clone()

Returns

IEntity

A new object that is a copy of this instance.

PopulateDefaults()

Populate non-required empty (null) properties with default values.

public override void PopulateDefaults()