Trackunit API

<back to all web services

UpdateAlarm

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()),
});

Dart UpdateAlarm DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .soap11 suffix or ?format=soap11

HTTP + SOAP11

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /soap11 HTTP/1.1 
Host: api.trackunit.com 
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: UpdateAlarm

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap: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>

</soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap: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>

</soap:Body>
</soap:Envelope>