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

<back to all web services

ShowQuantityMultiple

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

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

    /**
    * Quantity: number of LED to show
    */
    // @ApiMember(Description="Quantity: number of LED to show", IsRequired=true)
    public var quantity:Int

    /**
    * Optional: Force blinking
    */
    // @ApiMember(Description="Optional: Force blinking")
    public var forceBlink:Bool?

    /**
    * Animated effect selection: 0 = Always ON (no effect), 1 = BLINK_NORMAL, 2 = BLINK_FAST, 3 = BLINK_SLOW, 4 = FADE_IN_OUT_NORMAL, 5 = FADE_IN_OUT_FAST, 6 = FADE_IN_OUT_SLOW, 7 = FADE_OUT_NORMAL, 8 = FADE_OUT_FAST, 9 = FADE_OUT_SLOW
    */
    // @ApiMember(Description="Animated effect selection: 0 = Always ON (no effect), 1 = BLINK_NORMAL, 2 = BLINK_FAST, 3 = BLINK_SLOW, 4 = FADE_IN_OUT_NORMAL, 5 = FADE_IN_OUT_FAST, 6 = FADE_IN_OUT_SLOW, 7 = FADE_OUT_NORMAL, 8 = FADE_OUT_FAST, 9 = FADE_OUT_SLOW")
    public var effect:Int?

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

    private enum CodingKeys : String, CodingKey {
        case keys
        case quantity
        case forceBlink
        case effect
    }

    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) ?? []
        quantity = try container.decodeIfPresent(Int.self, forKey: .quantity)
        forceBlink = try container.decodeIfPresent(Bool.self, forKey: .forceBlink)
        effect = try container.decodeIfPresent(Int.self, forKey: .effect)
    }

    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 quantity != nil { try container.encode(quantity, forKey: .quantity) }
        if forceBlink != nil { try container.encode(forceBlink, forKey: .forceBlink) }
        if effect != nil { try container.encode(effect, forKey: .effect) }
    }
}

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 ShowQuantityMultiple DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /ShowQuantityMultiple/{Keys}/{Color}/{Quantity}/{Persistant} HTTP/1.1 
Host: clouddemo.pickeos.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

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