/* Options: Date: 2025-09-14 06:28:30 SwiftVersion: 6.0 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.trackunit.com/public //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: CreateAlarm.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/CreateAlarm", "GET POST") // @Route("/Alarm", "POST") // @DataContract public class CreateAlarm : IReturn, Codable { public typealias Return = CreateAlarmResponse // @DataMember public var name:String? // @DataMember public var type:String? // @DataMember public var enabled:Bool? // @DataMember public var allUnits:Bool? // @DataMember public var units:[String]? // @DataMember public var groups:[String]? // @DataMember public var emailRecipients:[String]? // @DataMember public var systemRecipients:[String]? // @DataMember public var smsRecipients:[String]? // @DataMember public var temperatureLimits:TemperatureAlarmLimits? // @DataMember public var adVoltageLimits:ADVoltageAlarmLimits? // @DataMember public var adVoltageInputIndex:Int? // @DataMember public var threshold:Double? // @DataMember public var batteryLevel:Double? // @DataMember public var location:Location? // @DataMember public var radius:Double? // @DataMember public var inputIndex:Int? // @DataMember public var interval:Double? // @DataMember public var pointId:String? // @DataMember public var expectedArrivalTime:Date? // @DataMember public var powerLevel:Double? // @DataMember public var weekdays:[String]? // @DataMember public var timeStart:TimeOfDay? // @DataMember public var timeEnd:TimeOfDay? // @DataMember public var zoneId:String? required public init(){} } // @DataContract public class CreateAlarmResponse : Codable { // @DataMember public var id:String? // @DataMember public var responseStatus:ResponseStatus? required public init(){} } // @DataContract public class TemperatureAlarmLimits : Codable { // @DataMember public var temperature1LowerLimit:Double? // @DataMember public var temperature1UpperLimit:Double? // @DataMember public var temperature2LowerLimit:Double? // @DataMember public var temperature2UpperLimit:Double? required public init(){} } // @DataContract public class ADVoltageAlarmLimits : Codable { // @DataMember public var adVoltageLowerLimit:Double? // @DataMember public var adVoltageUpperLimit:Double? required public init(){} } // @DataContract public class Location : Codable { // @DataMember public var latitude:Double? // @DataMember public var longitude:Double? required public init(){} } // @DataContract public class TimeOfDay : Codable { // @DataMember public var hour:Int? // @DataMember public var minute:Int? required public init(){} }