Go-to-Light Service 4.0.0.2397 - 121 - API License to Cloud Demo

<back to all web services

ShowMultipleEx

Requires Authentication
The following routes are available for this service:
All Verbs/ShowMultipleEx/{Color}/{Persistant}
import 'package:servicestack/servicestack.dart';

class KeyToDisplay implements IConvertible
{
    /**
    * Key identifying a location
    */
    // @ApiMember(Description="Key identifying a location", IsRequired=true)
    String? Key;

    /**
    * Blinking or not
    */
    // @ApiMember(Description="Blinking or not", IsRequired=true)
    bool? Blink;

    /**
    * Indicates whether we show the area header of the blinking key or not
    */
    // @ApiMember(Description="Indicates whether we show the area header of the blinking key or not", IsRequired=true)
    bool? ShowHeader;

    KeyToDisplay({this.Key,this.Blink,this.ShowHeader});
    KeyToDisplay.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Key = json['Key'];
        Blink = json['Blink'];
        ShowHeader = json['ShowHeader'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Key': Key,
        'Blink': Blink,
        'ShowHeader': ShowHeader
    };

    getTypeName() => "KeyToDisplay";
    TypeContext? context = _ctx;
}

class ShowMultipleEx implements IConvertible
{
    /**
    * HTML Color code (e.g. FF00FF)
    */
    // @ApiMember(Description="HTML Color code (e.g. FF00FF)", IsRequired=true)
    String? Color;

    /**
    * When set to false, it turns off the same color in a previous position
    */
    // @ApiMember(Description="When set to false, it turns off the same color in a previous position", IsRequired=true)
    bool? Persistant;

    /**
    * List of key object (KeyToDisplay) to display
    */
    // @ApiMember(Description="List of key object (KeyToDisplay) to display", IsRequired=true)
    List<KeyToDisplay>? Keys = [];

    /**
    * Optional: delay the execution of the command (in seconds)
    */
    // @ApiMember(Description="Optional: delay the execution of the command (in seconds)")
    int? Delay;

    /**
    * Optional: duration of the show in seconds
    */
    // @ApiMember(Description="Optional: duration of the show in seconds")
    int? Duration;

    /**
    * Optional: name of the stockroom where to show the position
    */
    // @ApiMember(Description="Optional: name of the stockroom where to show the position")
    String? StockroomName;

    /**
    * Name of the owner of the color/command to allow color sharing
    */
    // @ApiMember(Description="Name of the owner of the color/command to allow color sharing")
    String? Owner;

    ShowMultipleEx({this.Color,this.Persistant,this.Keys,this.Delay,this.Duration,this.StockroomName,this.Owner});
    ShowMultipleEx.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Color = json['Color'];
        Persistant = json['Persistant'];
        Keys = JsonConverters.fromJson(json['Keys'],'List<KeyToDisplay>',context!);
        Delay = json['Delay'];
        Duration = json['Duration'];
        StockroomName = json['StockroomName'];
        Owner = json['Owner'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Color': Color,
        'Persistant': Persistant,
        'Keys': JsonConverters.toJson(Keys,'List<KeyToDisplay>',context!),
        'Delay': Delay,
        'Duration': Duration,
        'StockroomName': StockroomName,
        'Owner': Owner
    };

    getTypeName() => "ShowMultipleEx";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'clouddemo.pickeos.com', types: <String, TypeInfo> {
    'KeyToDisplay': TypeInfo(TypeOf.Class, create:() => KeyToDisplay()),
    'ShowMultipleEx': TypeInfo(TypeOf.Class, create:() => ShowMultipleEx()),
    'List<KeyToDisplay>': TypeInfo(TypeOf.Class, create:() => <KeyToDisplay>[]),
});

Dart ShowMultipleEx DTOs

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

HTTP + XML

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

POST /ShowMultipleEx/{Color}/{Persistant} HTTP/1.1 
Host: clouddemo.pickeos.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<ShowMultipleEx xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/GoToLightAPI">
  <Color>String</Color>
  <Delay>0</Delay>
  <Duration>0</Duration>
  <Keys>
    <KeyToDisplay>
      <Blink>false</Blink>
      <Key>String</Key>
      <ShowHeader>false</ShowHeader>
    </KeyToDisplay>
  </Keys>
  <Owner>String</Owner>
  <Persistant>false</Persistant>
  <StockroomName>String</StockroomName>
</ShowMultipleEx>