Data Types~
There are 5 major data types that openHASP uses when communicating over MQTT:
Boolean~
Properties with a boolean data type accept these values and are case insensitive:
true/ON/1/yesfalse/OFF/0/no
The return value will be either 1/0 or on/off depending on the context.
Integer~
Numeric properties have integer values with a variable minimum and maximum input value.   
Certain object properties also support negative values.
Details
int8 (signed) supports values ranging from -128 to 127.  
uint8 (unsigned) supports values ranging from 0 to 255.  
int16 (signed) supports values ranging from -32768 to 32767.   
uint16 (unsigned) supports values ranging from 0 to 65535.
String~
Properties that accept textual input. When sending raw text in the MQTT payload or as command parameter no quotes are needed.  
Only when a text value is included in a jsonl or json command, it needs to be quoted accoring to JSON rules.
JSON Object~
Some properties can be set or retrieved in JSON format too. The JSON object has several keys that have a boolean, integer or string data type.
Example: {"cover":"cover.my_room","position":"50"}
Colors~
Color values can be:
- Short names (from table below)
 - RGB hex code (
#rrggbb) - Short hex code (
#rgb) - RGB565 number format (
0..65535) 
| Hex Code | Short Name | Hex Code | Short Name | 
|---|---|---|---|
#00FFFF  | 
Cyan or Aqua | #FFC0CB  | 
Pink | 
#00FF00  | 
Lime | #DDA0DD  | 
Plum | 
#008000  | 
Green | #DA70D6  | 
Orchid | 
#008080  | 
Teal | #EE82EE  | 
Violet | 
#0000FF  | 
Blue | #FF00FF  | 
Magenta or Fuchsia | 
#000080  | 
Navy | #800080  | 
Purple | 
#808000  | 
Olive | #4B0082  | 
Indigo | 
#CD853F  | 
Peru | #B00000  | 
Blush | 
#A0522D  | 
Sienna | #FF0000  | 
Red | 
#A52A2A  | 
Brown | #FF6347  | 
Tomato | 
#800000  | 
Maroon | #FA8072  | 
Salmon | 
#FFFFFF  | 
White | #FF7F50  | 
Coral | 
#FFFAFA  | 
Snow | #FFA500  | 
Orange | 
#FFFFF0  | 
Ivory | #FFD700  | 
Gold | 
#FAF0E6  | 
Linen | #FFFF00  | 
Yellow | 
#F5F5DC  | 
Beige | #F0E68C  | 
Khaki | 
#F0FFFF  | 
Azure | #FFE4C4  | 
Bisque | 
#C0C0C0  | 
Silver | #F5DEB3  | 
Wheat | 
#808080  | 
Gray or Grey | #D2B48C  | 
Tan | 
#000000  | 
Black | 
Setting Color~
Examples:
1 2 3 4  |  | 
Return values~
When retrieving the color of an object, both the HTML representation as the RGB values are returned separately.
The format will be a json object with components:
- color : 6 digit hexadecimal code preceeded by a hash 
#sign. - r : byte value for red (
0..255) - g : byte value for green (
0..255) - b : byte value for blue (
0..255) 
For example, the color returned by a color picker change event is:
1 |  | 
Variables~
Some properties can be set with variable data at plate runtime. Use the strings below to retrieve data:
%ip%- IP address of the plate%hostname%- hostname (nodename)%ssid%- SSID of the network connected to%model%- plate model (set in the firmware)%version%- firmware version number