| All Verbs | /ShowQuantity/{Key}/{Color}/{Quantity}/{Persistant} |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ShowCommon:
# @ApiMember(Description="HTML Color code (e.g. FF00FF)", IsRequired=true)
color: Optional[str] = None
"""
HTML Color code (e.g. FF00FF)
"""
# @ApiMember(Description="When set to false, it turns off the same color in a previous position", IsRequired=true)
persistant: bool = False
"""
When set to false, it turns off the same color in a previous position
"""
# @ApiMember(Description="Optional: delay the execution of the command (in seconds)")
delay: Optional[int] = None
"""
Optional: delay the execution of the command (in seconds)
"""
# @ApiMember(Description="Optional: duration of the show in seconds")
duration: Optional[int] = None
"""
Optional: duration of the show in seconds
"""
# @ApiMember(Description="Optional: name of the stockroom where to show the position")
stockroom_name: Optional[str] = None
"""
Optional: name of the stockroom where to show the position
"""
# @ApiMember(Description="Optional: name of the owner of the color/command to allow color sharing")
owner: Optional[str] = None
"""
Optional: name of the owner of the color/command to allow color sharing
"""
# @ApiMember(Description="Optional: indicates if message shall be delivered in an unreliable way (faster)")
unreliable: Optional[bool] = None
"""
Optional: indicates if message shall be delivered in an unreliable way (faster)
"""
# @ApiMember(Description="Optional: indicates if the header shall be displayed")
display_header: Optional[bool] = None
"""
Optional: indicates if the header shall be displayed
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ShowQuantity(ShowCommon):
# @ApiMember(Description="Key identifying a location", IsRequired=true)
key: Optional[str] = None
"""
Key identifying a location
"""
# @ApiMember(Description="Quantity: number of LED to show", IsRequired=true)
quantity: int = 0
"""
Quantity: number of LED to show
"""
# @ApiMember(Description="Optional: Force blinking")
force_blink: Optional[bool] = None
"""
Optional: Force blinking
"""
# @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")
effect: Optional[int] = None
"""
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
"""
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /ShowQuantity/{Key}/{Color}/{Quantity}/{Persistant} HTTP/1.1
Host: clouddemo.pickeos.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Key":"String","Quantity":0,"ForceBlink":false,"Effect":0,"Color":"String","Persistant":false,"Delay":0,"Duration":0,"StockroomName":"String","Owner":"String","Unreliable":false,"DisplayHeader":false}