{
"api": "1.0",
"error": null,
"method": "hub.scenes.block.data.list",
"id": "<REQUEST_ID>",
"result": {
"valueTypes": {
"list": [ "bool", "int", "float", "string", "token", "dictionary", "array", "rgb", ... ]
},
"scalableValueTypes": {
"list": [ "illuminance", "pressure", ... 38 more names ]
},
"valueScales": {
"temperature": { "scales": [ "celsius", "fahrenheit" ], "converter": true, "defaultScale": "fahrenheit" },
...
"velocity": { "scales": [ "meter_per_second", "mile_per_hour" ], "converter": false }
},
"scenesValueTypes": { "list": ["24_hours_interval", "interval", "hms_interval"] },
"valueTypeFamilies": {
"numeric": [ "int", "float", "scalableValueTypes" ],
"strings": [ "string", "token" ],
"valuesWithLess": [ "int", "float", "scalableValueTypes", "string" ],
"valuesWithoutLess": [ "otherTypes??" ]
},
"comparisonOperators": {
"families": [ {
"family": "numeric",
"methods": [
{"op": "<", "name": "less", "method": "compareNumbers"},
{"op": ">", "name": "greater", "method": "compareNumbers"},
{"op": "<=", "name": "less equal", "method": "compareNumbers"},
{"op": ">=", "name": "greater equal", "method": "compareNumbers"},
{"op": "==", "name": "equal", "method": "compareNumbers"},
{"op": "!=", "name": "not equal", "method": "compareNumbers"},
{"op": "between", "name": "between", "method": "compareNumberRange"},
{"op": "not_between", "name": "not between", "method": "compareNumberRange"}
]
},
{
"family": "strings",
"methods": [
{"op": "<", "name": "less", "method": "compareStrings"},
{"op": ">", "name": "greater", "method": "compareStrings"},
{"op": "<=", "name": "less equal", "method": "compareStrings"},
{"op": ">=", "name": "greater equal", "method": "compareStrings"},
{"op": "==", "name": "equal", "method": "compareStrings"},
{"op": "!=", "name": "not equal", "method": "compareStrings"},
{"op": "begin", "name": "begins with", "method": "stringOperation"},
{"op": "end", "name": "ends with", "method": "stringOperation"},
{"op": "contain", "name": "contains", "method": "stringOperation"},
{"op": "length", "name": "length equal to", "method": "stringOperation"},
{"op": "not_begin", "name": "doesn't begin with", "method": "stringOperation"},
{"op": "not_end", "name": "doesn't end with", "method": "stringOperation"},
{"op": "not_contain", "name": "doesn't contain", "method": "stringOperation"},
{"op": "not_length", "name": "length not equal to", "method": "stringOperation"}
]
},
{
"family": "valuesWithLess",
"methods": [
{"op": "<", "name": "less", "method": "compareValues"},
{"op": ">", "name": "greater", "method": "compareValues"},
{"op": "<=", "name": "less equal", "method": "compareValues"},
{"op": ">=", "name": "greater equal", "method": "compareValues"},
{"op": "==", "name": "equal", "method": "compareValues"},
{"op": "!=", "name": "not equal", "method": "compareValues"}
]
},
{
"family": "valuesWithoutLess",
"methods": [
{"op": "==", "name": "equal", "method": "compareValues"},
{"op": "!=", "name": "not equal", "method": "compareValues"}
]
}
]
},
"comparisonMethods": {
"info": { "version": "1.0.0" },
"compareNumberRange": {
"comparator": {
"family": "numeric",
"field": "comparator",
"options": [ "between", "not_between" ],
"type": "enum"
},
"dataSource": [
{ "index": 0, "types": [ "item", "expression" ] },
{ "index": 1, "types": [ "constant" ], "field": "startValue" },
{ "index": 2, "types": [ "constant" ], "field": "endValue" }
]
},
"compareNumbers": {
"comparator": {
"family": "numeric",
"field": "comparator",
"options": [ "<", ">", "<=", ">=", "==", "!=" ],
"type": "enum"
},
"dataSource": [
{ "index": 0, "types": [ "item", "expression" ] },
{ "index": 1, "types": [ "constant", "expression" ] }
]
},
"compareStrings": {
"comparator": {
"family": "strings",
"field": "comparator",
"options": [ "<", ">", "<=", ">=", "==", "!=" ],
"type": "enum"
},
"dataSource": [
{ "index": 0, "types": [ "item", "expression" ] },
{ "index": 1, "types": [ "constant", "expression" ] }
]
},
"compareValues": {
"comparator": {
"family": "valuesWithoutLess",
"field": "comparator",
"options": [ "==", "!=" ],
"type": "enum"
},
"dataSource": [
{ "index": 0, "types": [ "item", "expression" ] },
{ "index": 1, "types": [ "constant", "expression" ] }
]
},
"inArray": {
"comparator": {
"family": "array",
"field": "comparator",
"options": [ "in", "not_in" ],
"type": "enum"
},
"dataSource": [
{ "index": 0, "types": [ "item", "expression" ] },
{ "index": 1, "types": [ "constant" ] }
]
},
"isItemState": {
"dataSource": [
{ "index": 0, "types": [ "device_item", "item" ] },
{ "index": 1, "types": [ "constant", "expression" ] }
]
},
"isItemStateChanged": {
"dataSource": [
{ "index": 0, "types": [ "item", "expression" ] },
{ "index": 1, "types": [ "constant", "expression" ], "field": "start" },
{ "index": 2, "types": [ "constant", "expression" ], "field": "finish" }
]
},
"stringOperation": {
"comparator": {
"family": "strings",
"field": "comparator",
"options": [ "begin", "end", "contain", "length", "not_begin", "not_end", "not_contain", "not_length" ],
"type": "enum"
},
"dataSource": [
{ "index": 0, "types": [ "item", "expression" ] },
{ "index": 1, "types": [ "constant", "expression" ] }
]
}
},
"advancedScenesVersion": { "version": "Major.Minor" }
}
}