Class GoDevice
- Namespace
- Geotab.Checkmate.ObjectModel
- Assembly
- Geotab.Checkmate.ObjectModel.dll
The base device for all Geotab GO products. Additional properties can be seen in Device.
public class GoDevice : XDevice, IEntity, IComparable, IIdentifiable, IVersion, IGroupLinked, ITimeZoneIdProvider, IDefaultable, ICustomizable<Device>, IMediaFiles, IInstanceSizeEstimate, IVehicleIdentificationNumber, ILicensable, IAutoGroupsProvider, IFuelProvider, IOdometerProvider, IEngineHoursProvider, IHOSDevice
- Inheritance
-
GoDevice
- Implements
- Derived
- Inherited Members
Constructors
GoDevice()
Initializes a new instance of the GoDevice class.
protected GoDevice()
GoDevice(GoDevice)
Initializes a new instance of the GoDevice class.
protected GoDevice(GoDevice goDevice)
Parameters
goDevice
GoDeviceThe go device.
GoDevice(Id?, long?, string?, string?, string?, string?, bool?, string?, string?, int?, TimeSpan?, DateTime?, int?, string?, bool?, short?, short?, WorkTime?, float?, IList<Group>?, string?, DeviceFlags?, IList<Group>?, EngineType?, double?, bool?, double?, double?, int?, bool?, uint?, bool?, bool?, bool?, int?, IReadOnlyCollection<CustomParameter>?, DateTime?, DateTime?, IReadOnlyList<DevicePlanBillingInfo>?, GoTalkLanguage?, double?, bool?, uint?, HosOption?, List<PropertyValue<Device>>?)
protected GoDevice(Id? id, long? version, string? name, string? comment, string? vehicleIdentificationNumber, string? engineVehicleIdentificationNumber, bool? pinDevice, string? licensePlate, string? licenseState, int? productId, TimeSpan? timeToDownload, DateTime? ignoreDownloadsUntil, int? hardwareId, string? serialNumber, bool? enableMustReprogram, short? minor, short? major, WorkTime? workTime, float? maxSecondsBetweenLogs, IList<Group>? groups, string? timeZoneId, DeviceFlags? deviceFlags, IList<Group>? autoGroups, EngineType? engineType, double? minAccidentSpeed, bool? isSpeedIndicator, double? speedingOn, double? speedingOff, int? gpsOffDelay, bool? disableBuzzer, uint? parameterVersion, bool? ensureHotStart, bool? enableSpeedWarning, bool? enableBeepOnIdle, int? idleMinutes, IReadOnlyCollection<CustomParameter>? customParameters, DateTime? activeTo, DateTime? activeFrom, IReadOnlyList<DevicePlanBillingInfo>? devicePlanBillingInfo, GoTalkLanguage? goTalkLanguage, double? fuelTankCapacity, bool? disableSleeperBerth, uint? parameterVersionOnDevice, HosOption? autoHos, List<PropertyValue<Device>>? customProperties)
Parameters
id
IdThe Id.
version
long?The version.
name
stringThe name.
comment
stringThe comment.
vehicleIdentificationNumber
stringThe device identification number.
engineVehicleIdentificationNumber
stringThe device identification number reported by the engine.
pinDevice
bool?Disable automatic device moving.
licensePlate
stringThe license plate.
licenseState
stringState of the license.
productId
int?The product id.
timeToDownload
TimeSpan?The time to download.
ignoreDownloadsUntil
DateTime?The ignore downloads until.
hardwareId
int?The hardware id.
serialNumber
stringThe serial number of the device.
enableMustReprogram
bool?If set to true, force the parameters to be updated on a device, the store will be updated with the parameter version of the go device +1.
minor
short?The minor.
major
short?The major.
workTime
WorkTimeA WorkTime object.
maxSecondsBetweenLogs
float?The max number of seconds between receiving logs from the device. If exceeded, data is considered missing. Must be at least 200s.
groups
IList<Group>timeZoneId
stringtimeZoneId
.deviceFlags
DeviceFlagsThe DevicePlan this device is on.
autoGroups
IList<Group>engineType
EngineTypeType of the engine. Default is. EngineTypeNone
minAccidentSpeed
double?The min accident speed.
isSpeedIndicator
bool?Is the speed indicator on.
speedingOn
double?Is speeding on.
speedingOff
double?Is speeding off.
gpsOffDelay
int?The gps off delay.
disableBuzzer
bool?Is the buzzer disabled.
parameterVersion
uint?The parameter version.
ensureHotStart
bool?Enable hot start.
enableSpeedWarning
bool?Enable speed warning.
enableBeepOnIdle
bool?Enable beeping on idle.
idleMinutes
int?Number of minutes the vehicle is stationary with ignition on to constitute idling.
customParameters
IReadOnlyCollection<CustomParameter>The custom parameters.
activeTo
DateTime?Date after which device becomes archived.
activeFrom
DateTime?Date after which device becomes active.
devicePlanBillingInfo
IReadOnlyList<DevicePlanBillingInfo>The device plan billing information.
goTalkLanguage
GoTalkLanguage?The language to be used by any attached GoTalk.
fuelTankCapacity
double?The capacity of all usable fuel tanks in litres.
disableSleeperBerth
bool?Hide the Sleeper Berth option
parameterVersionOnDevice
uint?The parameter version that is currently stored on the Device.
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.
Properties
ActiveFrom
Gets or sets the date that the device is active from. Default [MinDate].
[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceActiveFrom })]
public override DateTime? ActiveFrom { get; set; }
Property Value
Remarks
Old vehicles are designated as archived so their data is still available. A retired vehicle cannot be "un-retired".
ActiveTo
Gets or sets the date that the device is active to. Default [MaxDate].
[ExcelColumnHeader(new ReportHeading[] { ReportHeading.DeviceActiveTo })]
public override DateTime? ActiveTo { get; set; }
Property Value
AutoHos
Gets or sets a toggle that represents automatic generation of DutyStatusLogs for a Device. Default [null].
public HosOption? AutoHos { get; set; }
Property Value
DisableBuzzer
Gets or sets master toggle to disable the device buzzer. When set to [true], the device will not provide driver feedback of any kind. Default [false].
[DeviceParameter]
public bool? DisableBuzzer { get; set; }
Property Value
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
EnableBeepOnIdle
Gets or sets toggle to enable beeping when the vehicle idles for more than IdleMinutes. Default [false].
[DeviceParameter]
public bool? EnableBeepOnIdle { get; set; }
Property Value
EnableSpeedWarning
Gets or sets toggle to enable speed warning value for the vehicle. When enabled [true], only beep briefly (instead of continuously), when 'SpeedingOn' value is exceeded. 'IsSpeedIndicator' must also be enabled. Default [false].
[DeviceParameter]
public bool? EnableSpeedWarning { get; set; }
Property Value
EngineHours
Gets or sets the Engine Hours for the device. Default [0].
public double? EngineHours { get; set; }
Property Value
- double?
Nullable<T> where T is. double
EngineType
Gets or sets the EngineType. Default [EngineTypeGeneric].
public EngineType? EngineType { get; set; }
Property Value
FuelTankCapacity
Gets or sets the capacity of all usable fuel tanks in litres. Default [0].
public double? FuelTankCapacity { get; set; }
Property Value
GoTalkLanguage
Gets or sets the GoTalkLanguage of an attached GoTalk. Default [English].
[DeviceParameter]
public GoTalkLanguage? GoTalkLanguage { get; set; }
Property Value
IdleMinutes
Gets or sets the number of minutes of allowed idling before device beeping starts. EnableBeepOnIdle must be enabled. Default [3].
[DeviceParameter]
public int? IdleMinutes { get; set; }
Property Value
IsExternalDevicePowerControlSupported
Gets returns true if this device supports external device power control. Originally only GO4v3 was to support this - but there are a significant number of customers that had GO3V2s with this feature. As per DB: We had to support Iridium on Go4v2 for Oz and Garmin on GO4v2 for Toronto Hydro 78.x.x and 79.x.x supports Iridium, 66.x.x (J1708 Live) and 80.x.x supports Garmin.
public bool? IsExternalDevicePowerControlSupported { get; }
Property Value
- bool?
Nullable<T> where T is bool.
IsSpeedIndicator
Gets or sets a toggle to beep constantly when the vehicle reaches the speed set in 'SpeedingOn', and do not stop until the vehicle slows below the 'SpeedingOff' speed. To only beep briefly (instead of continuously), enable 'EnableSpeedWarning'. Default [false].
[DeviceParameter]
public bool? IsSpeedIndicator { get; set; }
Property Value
MinAccidentSpeed
Gets or sets the minimum accident speed in km/h. Default [4].
[DeviceParameter]
public double? MinAccidentSpeed { get; set; }
Property Value
MinSecondsBetweenLogs
Gets the minimum allowable value for MaxSecondsBetweenLogs. For GoDevices, this is the same as the default value of 200.0f.
[DeviceParameter]
protected override float MinSecondsBetweenLogs { get; }
Property Value
- float
The minimum allowable value for MaxSecondsBetweenLogs. For GoDevices, this is the same as the default value of 200.0f.
Odometer
Gets or sets the Odometer for the device.
public double? Odometer { get; set; }
Property Value
SpeedingOff
Gets or sets the speeding off value in km/h. When 'IsSpeedIndicator' is enabled, once beeping starts, the vehicle must slow down to this speed for the beeping to stop. Default [90].
[DeviceParameter]
public double? SpeedingOff { get; set; }
Property Value
SpeedingOn
Gets or sets the speeding on value in km/h. When 'IsSpeedIndicator' is enabled, the device will start beeping when the vehicle exceeds this speed. Default [100].
[DeviceParameter]
public double? SpeedingOn { get; set; }
Property Value
WifiHotspotLimits
Gets or sets the list of Wifi Usage Tiers for Wifi Hotspot rate plans. Will only be populated if this device has a RatePlan which has Wifi Hotspot functionality.
public IReadOnlyList<WifiUsageTier>? WifiHotspotLimits { get; set; }
Property Value
- IReadOnlyList<WifiUsageTier>
Ordered WifiUsageTiers, in order of smallest to highest data usage limit.
Methods
IsGarminSupported()
Determines whether garmin is supported on this device.
public bool? IsGarminSupported()
Returns
IsRFDevice()
Returns true if this device is definitely an rf device. Device will need to connect once before the product id is available to check. @return. bool
public bool? IsRFDevice()
Returns
PopulateDefaults()
Populate non-required empty (null) properties with default values.
public override void PopulateDefaults()