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

<back to all web services

ShowMultiple

Requires Authentication
The following routes are available for this service:
All Verbs/ShowMultiple/{Keys}/{Color}/{Blink}/{Persistant}
import Foundation
import ServiceStack

public class ShowMultiple : ShowCommon
{
    /**
    * Keys array identifying a location
    */
    // @ApiMember(Description="Keys array identifying a location", IsRequired=true)
    public var keys:[String] = []

    /**
    * Blinking or not
    */
    // @ApiMember(Description="Blinking or not", IsRequired=true)
    public var blink:Bool

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case keys
        case blink
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        keys = try container.decodeIfPresent([String].self, forKey: .keys) ?? []
        blink = try container.decodeIfPresent(Bool.self, forKey: .blink)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if keys.count > 0 { try container.encode(keys, forKey: .keys) }
        if blink != nil { try container.encode(blink, forKey: .blink) }
    }
}

public class ShowCommon : Codable
{
    /**
    * HTML Color code (e.g. FF00FF)
    */
    // @ApiMember(Description="HTML Color code (e.g. FF00FF)", IsRequired=true)
    public var color:String

    /**
    * 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)
    public var persistant:Bool

    /**
    * Optional: delay the execution of the command (in seconds)
    */
    // @ApiMember(Description="Optional: delay the execution of the command (in seconds)")
    public var delay:Int?

    /**
    * Optional: duration of the show in seconds
    */
    // @ApiMember(Description="Optional: duration of the show in seconds")
    public var duration:Int?

    /**
    * Optional: name of the stockroom where to show the position
    */
    // @ApiMember(Description="Optional: name of the stockroom where to show the position")
    public var stockroomName:String

    /**
    * Optional: name of the owner of the color/command to allow color sharing
    */
    // @ApiMember(Description="Optional: name of the owner of the color/command to allow color sharing")
    public var owner:String

    /**
    * Optional: indicates if message shall be delivered in an unreliable way (faster)
    */
    // @ApiMember(Description="Optional: indicates if message shall be delivered in an unreliable way (faster)")
    public var unreliable:Bool?

    /**
    * Optional: indicates if the header shall be displayed
    */
    // @ApiMember(Description="Optional: indicates if the header shall be displayed")
    public var displayHeader:Bool?

    required public init(){}
}


Swift ShowMultiple DTOs

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

HTTP + OTHER

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

POST /ShowMultiple/{Keys}/{Color}/{Blink}/{Persistant} HTTP/1.1 
Host: clouddemo.pickeos.com 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"Keys":["String"],"Blink":false,"Color":"String","Persistant":false,"Delay":0,"Duration":0,"StockroomName":"String","Owner":"String","Unreliable":false,"DisplayHeader":false}