/* Options: Date: 2026-04-04 01:06:26 Version: 8.52 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://pfapi.pstpf.com.au/api //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: LogDeviceStatuses.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* /** * Logs details of an event(crash,error,unexpected result) and the device status at the time of the event. */ @Api(Description="Logs details of an event(crash,error,unexpected result) and the device status at the time of the event.") open class LogDeviceStatus : IReturn { /** * Guid of the Appliance this Device is logging an event status for. */ @ApiMember(DataType="Guid", Description="Guid of the Appliance this Device is logging an event status for.", IsRequired=true, Name="ApplianceId", ParameterType="query") open var ApplianceId:UUID? = null /** * Guid representing the saved Device */ @ApiMember(DataType="Guid", Description="Guid representing the saved Device", IsRequired=true, Name="DeviceId", ParameterType="query") open var DeviceId:UUID? = null /** * The latitude the device was last located at. */ @ApiMember(DataType="double", Description="The latitude the device was last located at.", IsRequired=true, Name="Latitude", ParameterType="query") open var Latitude:Double? = null /** * The longitude the device was last located at. */ @ApiMember(DataType="double", Description="The longitude the device was last located at.", IsRequired=true, Name="Longitude", ParameterType="query") open var Longitude:Double? = null /** * Name of the event we're logging. */ @ApiMember(DataType="string", Description="Name of the event we're logging.", Name="EventName", ParameterType="query") open var EventName:String? = null /** * Details of the event up to (255 char). */ @ApiMember(DataType="string", Description="Details of the event up to (255 char).", Name="EventDetail1", ParameterType="query") open var EventDetail1:String? = null /** * Details of the event up to (255 char). */ @ApiMember(DataType="string", Description="Details of the event up to (255 char).", Name="EventDetail2", ParameterType="query") open var EventDetail2:String? = null /** * Details of the event up to (255 char). */ @ApiMember(DataType="string", Description="Details of the event up to (255 char).", Name="EventDetail3", ParameterType="query") open var EventDetail3:String? = null /** * Details of the event up to (255 char). */ @ApiMember(DataType="string", Description="Details of the event up to (255 char).", Name="EventDetail4", ParameterType="query") open var EventDetail4:String? = null /** * Details of the event up to (255 char). */ @ApiMember(DataType="string", Description="Details of the event up to (255 char).", Name="EventDetail5", ParameterType="query") open var EventDetail5:String? = null /** * Details of the event up to (255 char). */ @ApiMember(DataType="string", Description="Details of the event up to (255 char).", Name="Orientation", ParameterType="query") open var Orientation:String? = null /** * The device internet connection status. */ @ApiMember(DataType="string", Description="The device internet connection status.", Name="InternetConnectionStatus", ParameterType="query") open var InternetConnectionStatus:String? = null /** * Unlimited text field for logging details of the event. */ @ApiMember(DataType="string", Description="Unlimited text field for logging details of the event.", Name="Log", ParameterType="query") open var Log:String? = null /** * Date and Time of the event. */ @ApiMember(DataType="DateTime", Description="Date and Time of the event.", Name="Event", ParameterType="query") open var Event:Date? = null /** * True if the device is in portrait mode. */ @ApiMember(DataType="bool", Description="True if the device is in portrait mode.", Name="IsInPortrait", ParameterType="query") open var IsInPortrait:Boolean? = null /** * True if the device is in landscape mode. */ @ApiMember(DataType="bool", Description="True if the device is in landscape mode.", Name="IsInLandscape", ParameterType="query") open var IsInLandscape:Boolean? = null /** * True if cellular data is enabled. */ @ApiMember(DataType="bool", Description="True if cellular data is enabled.", Name="CellularDataEnabled", ParameterType="query") open var CellularDataEnabled:Boolean? = null /** * True if data roaming is enabled. */ @ApiMember(DataType="bool", Description="True if data roaming is enabled.", Name="DataRoamingEnabled", ParameterType="query") open var DataRoamingEnabled:Boolean? = null /** * True if the network is available. */ @ApiMember(DataType="bool", Description="True if the network is available.", Name="IsNetworkAvailable", ParameterType="query") open var IsNetworkAvailable:Boolean? = null /** * True if the device can send an sms. */ @ApiMember(DataType="bool", Description="True if the device can send an sms.", Name="CanSendSMS", ParameterType="query") open var CanSendSMS:Boolean? = null /** * True if the battery is charging. */ @ApiMember(DataType="bool", Description="True if the battery is charging.", Name="BatteryCharging", ParameterType="query") open var BatteryCharging:Boolean? = null /** * The amount of battery life left as a percentage. */ @ApiMember(DataType="int", Description="The amount of battery life left as a percentage.", Name="BatteryLevel", ParameterType="query") open var BatteryLevel:Int? = null /** * The Guid of a saved Media Object. */ @ApiMember(DataType="Guid", Description="The Guid of a saved Media Object.", Name="MediaFileId1", ParameterType="query") open var MediaFileId1:UUID? = null /** * The Guid of a saved Media Object. */ @ApiMember(DataType="Guid", Description="The Guid of a saved Media Object.", Name="MediaFileId2", ParameterType="query") open var MediaFileId2:UUID? = null companion object { private val responseType = ResponseStatus::class.java } override fun getResponseType(): Any? = LogDeviceStatus.responseType } /** * Logs multiple device event details. Details include an event(crash,error,unexpected result) and the device status at the time of the event. */ @Api(Description="Logs multiple device event details. Details include an event(crash,error,unexpected result) and the device status at the time of the event.") open class LogDeviceStatuses : IReturn { /** * A list of logged event statuses for a device. */ @ApiMember(DataType="int", Description="A list of logged event statuses for a device.", IsRequired=true, Name="DeviceStatuses", ParameterType="query") open var DeviceStatuses:ArrayList = ArrayList() companion object { private val responseType = ResponseStatus::class.java } override fun getResponseType(): Any? = LogDeviceStatuses.responseType } @DataContract open class ResponseStatus { @DataMember(Order=1) open var ErrorCode:String? = null @DataMember(Order=2) open var Message:String? = null @DataMember(Order=3) open var StackTrace:String? = null @DataMember(Order=4) open var Errors:ArrayList? = null @DataMember(Order=5) open var Meta:HashMap? = null }