import 'package:servicestack/servicestack.dart';
// @DataContract
class UpdateAlarmResponse implements IConvertible
{
// @DataMember
ResponseStatus? responseStatus;
UpdateAlarmResponse({this.responseStatus});
UpdateAlarmResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
};
getTypeName() => "UpdateAlarmResponse";
TypeContext? context = _ctx;
}
// @DataContract
class TemperatureAlarmLimits implements IConvertible
{
// @DataMember
double? temperature1LowerLimit;
// @DataMember
double? temperature1UpperLimit;
// @DataMember
double? temperature2LowerLimit;
// @DataMember
double? temperature2UpperLimit;
TemperatureAlarmLimits({this.temperature1LowerLimit,this.temperature1UpperLimit,this.temperature2LowerLimit,this.temperature2UpperLimit});
TemperatureAlarmLimits.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
temperature1LowerLimit = JsonConverters.toDouble(json['temperature1LowerLimit']);
temperature1UpperLimit = JsonConverters.toDouble(json['temperature1UpperLimit']);
temperature2LowerLimit = JsonConverters.toDouble(json['temperature2LowerLimit']);
temperature2UpperLimit = JsonConverters.toDouble(json['temperature2UpperLimit']);
return this;
}
Map<String, dynamic> toJson() => {
'temperature1LowerLimit': temperature1LowerLimit,
'temperature1UpperLimit': temperature1UpperLimit,
'temperature2LowerLimit': temperature2LowerLimit,
'temperature2UpperLimit': temperature2UpperLimit
};
getTypeName() => "TemperatureAlarmLimits";
TypeContext? context = _ctx;
}
// @DataContract
class ADVoltageAlarmLimits implements IConvertible
{
// @DataMember
double? adVoltageLowerLimit;
// @DataMember
double? adVoltageUpperLimit;
ADVoltageAlarmLimits({this.adVoltageLowerLimit,this.adVoltageUpperLimit});
ADVoltageAlarmLimits.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
adVoltageLowerLimit = JsonConverters.toDouble(json['adVoltageLowerLimit']);
adVoltageUpperLimit = JsonConverters.toDouble(json['adVoltageUpperLimit']);
return this;
}
Map<String, dynamic> toJson() => {
'adVoltageLowerLimit': adVoltageLowerLimit,
'adVoltageUpperLimit': adVoltageUpperLimit
};
getTypeName() => "ADVoltageAlarmLimits";
TypeContext? context = _ctx;
}
// @DataContract
class Location implements IConvertible
{
// @DataMember
double? latitude;
// @DataMember
double? longitude;
Location({this.latitude,this.longitude});
Location.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
latitude = JsonConverters.toDouble(json['latitude']);
longitude = JsonConverters.toDouble(json['longitude']);
return this;
}
Map<String, dynamic> toJson() => {
'latitude': latitude,
'longitude': longitude
};
getTypeName() => "Location";
TypeContext? context = _ctx;
}
// @DataContract
class TimeOfDay implements IConvertible
{
// @DataMember
int? hour;
// @DataMember
int? minute;
TimeOfDay({this.hour,this.minute});
TimeOfDay.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
hour = json['hour'];
minute = json['minute'];
return this;
}
Map<String, dynamic> toJson() => {
'hour': hour,
'minute': minute
};
getTypeName() => "TimeOfDay";
TypeContext? context = _ctx;
}
// @DataContract
class UpdateAlarm implements IConvertible
{
// @DataMember
String? id;
// @DataMember
String? name;
// @DataMember
bool? enabled;
// @DataMember
bool? allUnits;
// @DataMember
bool? clearUnits;
// @DataMember
List<String>? addUnits;
// @DataMember
List<String>? removeUnits;
// @DataMember
bool? clearGroups;
// @DataMember
List<String>? addGroups;
// @DataMember
List<String>? removeGroups;
// @DataMember
bool? clearEmailRecipients;
// @DataMember
List<String>? addEmailRecipients;
// @DataMember
List<String>? removeEmailRecipients;
// @DataMember
bool? clearSystemRecipients;
// @DataMember
List<String>? addSystemRecipients;
// @DataMember
List<String>? removeSystemRecipients;
// @DataMember
bool? clearSmsRecipients;
// @DataMember
List<String>? addSmsRecipients;
// @DataMember
List<String>? removeSmsRecipients;
// @DataMember
TemperatureAlarmLimits? temperatureLimits;
// @DataMember
ADVoltageAlarmLimits? adVoltageLimits;
// @DataMember
int? adVoltageInputIndex;
// @DataMember
double? threshold;
// @DataMember
double? batteryLevel;
// @DataMember
Location? location;
// @DataMember
double? radius;
// @DataMember
int? inputIndex;
// @DataMember
double? interval;
// @DataMember
String? pointId;
// @DataMember
DateTime? expectedArrivalTime;
// @DataMember
double? powerLevel;
// @DataMember
List<String>? weekdays;
// @DataMember
TimeOfDay? timeStart;
// @DataMember
TimeOfDay? timeEnd;
// @DataMember
String? zoneId;
UpdateAlarm({this.id,this.name,this.enabled,this.allUnits,this.clearUnits,this.addUnits,this.removeUnits,this.clearGroups,this.addGroups,this.removeGroups,this.clearEmailRecipients,this.addEmailRecipients,this.removeEmailRecipients,this.clearSystemRecipients,this.addSystemRecipients,this.removeSystemRecipients,this.clearSmsRecipients,this.addSmsRecipients,this.removeSmsRecipients,this.temperatureLimits,this.adVoltageLimits,this.adVoltageInputIndex,this.threshold,this.batteryLevel,this.location,this.radius,this.inputIndex,this.interval,this.pointId,this.expectedArrivalTime,this.powerLevel,this.weekdays,this.timeStart,this.timeEnd,this.zoneId});
UpdateAlarm.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
name = json['name'];
enabled = json['enabled'];
allUnits = json['allUnits'];
clearUnits = json['clearUnits'];
addUnits = JsonConverters.fromJson(json['addUnits'],'List<String>',context!);
removeUnits = JsonConverters.fromJson(json['removeUnits'],'List<String>',context!);
clearGroups = json['clearGroups'];
addGroups = JsonConverters.fromJson(json['addGroups'],'List<String>',context!);
removeGroups = JsonConverters.fromJson(json['removeGroups'],'List<String>',context!);
clearEmailRecipients = json['clearEmailRecipients'];
addEmailRecipients = JsonConverters.fromJson(json['addEmailRecipients'],'List<String>',context!);
removeEmailRecipients = JsonConverters.fromJson(json['removeEmailRecipients'],'List<String>',context!);
clearSystemRecipients = json['clearSystemRecipients'];
addSystemRecipients = JsonConverters.fromJson(json['addSystemRecipients'],'List<String>',context!);
removeSystemRecipients = JsonConverters.fromJson(json['removeSystemRecipients'],'List<String>',context!);
clearSmsRecipients = json['clearSmsRecipients'];
addSmsRecipients = JsonConverters.fromJson(json['addSmsRecipients'],'List<String>',context!);
removeSmsRecipients = JsonConverters.fromJson(json['removeSmsRecipients'],'List<String>',context!);
temperatureLimits = JsonConverters.fromJson(json['temperatureLimits'],'TemperatureAlarmLimits',context!);
adVoltageLimits = JsonConverters.fromJson(json['adVoltageLimits'],'ADVoltageAlarmLimits',context!);
adVoltageInputIndex = json['adVoltageInputIndex'];
threshold = JsonConverters.toDouble(json['threshold']);
batteryLevel = JsonConverters.toDouble(json['batteryLevel']);
location = JsonConverters.fromJson(json['location'],'Location',context!);
radius = JsonConverters.toDouble(json['radius']);
inputIndex = json['inputIndex'];
interval = JsonConverters.toDouble(json['interval']);
pointId = json['pointId'];
expectedArrivalTime = JsonConverters.fromJson(json['expectedArrivalTime'],'DateTime',context!);
powerLevel = JsonConverters.toDouble(json['powerLevel']);
weekdays = JsonConverters.fromJson(json['weekdays'],'List<String>',context!);
timeStart = JsonConverters.fromJson(json['timeStart'],'TimeOfDay',context!);
timeEnd = JsonConverters.fromJson(json['timeEnd'],'TimeOfDay',context!);
zoneId = json['zoneId'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'name': name,
'enabled': enabled,
'allUnits': allUnits,
'clearUnits': clearUnits,
'addUnits': JsonConverters.toJson(addUnits,'List<String>',context!),
'removeUnits': JsonConverters.toJson(removeUnits,'List<String>',context!),
'clearGroups': clearGroups,
'addGroups': JsonConverters.toJson(addGroups,'List<String>',context!),
'removeGroups': JsonConverters.toJson(removeGroups,'List<String>',context!),
'clearEmailRecipients': clearEmailRecipients,
'addEmailRecipients': JsonConverters.toJson(addEmailRecipients,'List<String>',context!),
'removeEmailRecipients': JsonConverters.toJson(removeEmailRecipients,'List<String>',context!),
'clearSystemRecipients': clearSystemRecipients,
'addSystemRecipients': JsonConverters.toJson(addSystemRecipients,'List<String>',context!),
'removeSystemRecipients': JsonConverters.toJson(removeSystemRecipients,'List<String>',context!),
'clearSmsRecipients': clearSmsRecipients,
'addSmsRecipients': JsonConverters.toJson(addSmsRecipients,'List<String>',context!),
'removeSmsRecipients': JsonConverters.toJson(removeSmsRecipients,'List<String>',context!),
'temperatureLimits': JsonConverters.toJson(temperatureLimits,'TemperatureAlarmLimits',context!),
'adVoltageLimits': JsonConverters.toJson(adVoltageLimits,'ADVoltageAlarmLimits',context!),
'adVoltageInputIndex': adVoltageInputIndex,
'threshold': threshold,
'batteryLevel': batteryLevel,
'location': JsonConverters.toJson(location,'Location',context!),
'radius': radius,
'inputIndex': inputIndex,
'interval': interval,
'pointId': pointId,
'expectedArrivalTime': JsonConverters.toJson(expectedArrivalTime,'DateTime',context!),
'powerLevel': powerLevel,
'weekdays': JsonConverters.toJson(weekdays,'List<String>',context!),
'timeStart': JsonConverters.toJson(timeStart,'TimeOfDay',context!),
'timeEnd': JsonConverters.toJson(timeEnd,'TimeOfDay',context!),
'zoneId': zoneId
};
getTypeName() => "UpdateAlarm";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.trackunit.com', types: <String, TypeInfo> {
'UpdateAlarmResponse': TypeInfo(TypeOf.Class, create:() => UpdateAlarmResponse()),
'TemperatureAlarmLimits': TypeInfo(TypeOf.Class, create:() => TemperatureAlarmLimits()),
'ADVoltageAlarmLimits': TypeInfo(TypeOf.Class, create:() => ADVoltageAlarmLimits()),
'Location': TypeInfo(TypeOf.Class, create:() => Location()),
'TimeOfDay': TypeInfo(TypeOf.Class, create:() => TimeOfDay()),
'UpdateAlarm': TypeInfo(TypeOf.Class, create:() => UpdateAlarm()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .soap12 suffix or ?format=soap12
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /soap12 HTTP/1.1
Host: api.trackunit.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<UpdateAlarm xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<ADVoltageInputIndex>0</ADVoltageInputIndex>
<ADVoltageLimits>
<ADVoltageLowerLimit>0</ADVoltageLowerLimit>
<ADVoltageUpperLimit>0</ADVoltageUpperLimit>
</ADVoltageLimits>
<AddEmailRecipients xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AddEmailRecipients>
<AddGroups xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AddGroups>
<AddSmsRecipients xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AddSmsRecipients>
<AddSystemRecipients xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AddSystemRecipients>
<AddUnits xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AddUnits>
<AllUnits>false</AllUnits>
<BatteryLevel>0</BatteryLevel>
<ClearEmailRecipients>false</ClearEmailRecipients>
<ClearGroups>false</ClearGroups>
<ClearSmsRecipients>false</ClearSmsRecipients>
<ClearSystemRecipients>false</ClearSystemRecipients>
<ClearUnits>false</ClearUnits>
<Enabled>false</Enabled>
<ExpectedArrivalTime>0001-01-01T00:00:00</ExpectedArrivalTime>
<Id>String</Id>
<InputIndex>0</InputIndex>
<Interval>0</Interval>
<Location>
<Latitude>0</Latitude>
<Longitude>0</Longitude>
</Location>
<Name>String</Name>
<PointId>String</PointId>
<PowerLevel>0</PowerLevel>
<Radius>0</Radius>
<RemoveEmailRecipients xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</RemoveEmailRecipients>
<RemoveGroups xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</RemoveGroups>
<RemoveSmsRecipients xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</RemoveSmsRecipients>
<RemoveSystemRecipients xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</RemoveSystemRecipients>
<RemoveUnits xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</RemoveUnits>
<TemperatureLimits>
<Temperature1LowerLimit>0</Temperature1LowerLimit>
<Temperature1UpperLimit>0</Temperature1UpperLimit>
<Temperature2LowerLimit>0</Temperature2LowerLimit>
<Temperature2UpperLimit>0</Temperature2UpperLimit>
</TemperatureLimits>
<Threshold>0</Threshold>
<TimeEnd>
<Hour>0</Hour>
<Minute>0</Minute>
</TimeEnd>
<TimeStart>
<Hour>0</Hour>
<Minute>0</Minute>
</TimeStart>
<Weekdays xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</Weekdays>
<ZoneId>String</ZoneId>
</UpdateAlarm>
</soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"> <soap12:Body> <UpdateAlarmResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types"> <ResponseStatus> <ErrorCode>String</ErrorCode> <Message>String</Message> <StackTrace>String</StackTrace> <Errors> <ResponseError> <ErrorCode>String</ErrorCode> <FieldName>String</FieldName> <Message>String</Message> <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </Meta> </ResponseError> </Errors> <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </Meta> </ResponseStatus> </UpdateAlarmResponse> </soap12:Body> </soap12:Envelope>