UNPKG

homebridge-lookin-http-ac

Version:
389 lines (388 loc) 17.6 kB
{ "pluginAlias": "Lookin HTTP AC", "pluginType": "platform", "singular": true, "strictValidation": false, "schema": { "type": "object", "properties": { "devices": { "type": "array", "title": "devices", "items": { "type": "object", "properties": { "name": { "title": "Name", "type": "string", "required": true, "default": "My AC" }, "ip": { "title": "IP", "type": "string", "required": true, "default": "127.0.0.1" }, "off": { "title": "IR off", "type": "string", "required": true }, "debug": { "title": "Enable debug logs", "type": "boolean", "default": false }, "irMap": { "title": "IR Map", "type": "object", "properties": { "low": { "title": "Low flow", "type": "object", "properties": { "cool": { "title": "Cooling", "type": "object", "properties": { "t16": { "title": "16", "type": "string" }, "t17": { "title": "17", "type": "string" }, "t18": { "title": "18", "type": "string" }, "t19": { "title": "19", "type": "string" }, "t20": { "title": "20", "type": "string" }, "t21": { "title": "21", "type": "string" }, "t22": { "title": "22", "type": "string" }, "t23": { "title": "23", "type": "string" }, "t24": { "title": "24", "type": "string" }, "t25": { "title": "25", "type": "string" }, "t26": { "title": "26", "type": "string" }, "t27": { "title": "27", "type": "string" }, "t28": { "title": "28", "type": "string" }, "t29": { "title": "29", "type": "string" }, "t30": { "title": "30", "type": "string" } }, "additionalProperties": false }, "heat": { "title": "Heating", "type": "object", "properties": { "t16": { "title": "16", "type": "string" }, "t17": { "title": "17", "type": "string" }, "t18": { "title": "18", "type": "string" }, "t19": { "title": "19", "type": "string" }, "t20": { "title": "20", "type": "string" }, "t21": { "title": "21", "type": "string" }, "t22": { "title": "22", "type": "string" }, "t23": { "title": "23", "type": "string" }, "t24": { "title": "24", "type": "string" }, "t25": { "title": "25", "type": "string" }, "t26": { "title": "26", "type": "string" }, "t27": { "title": "27", "type": "string" }, "t28": { "title": "28", "type": "string" }, "t29": { "title": "29", "type": "string" }, "t30": { "title": "30", "type": "string" } }, "additionalProperties": false } }, "additionalProperties": false }, "medium": { "title": "Medium flow", "type": "object", "properties": { "cool": { "title": "Cooling", "type": "object", "properties": { "t16": { "title": "16", "type": "string" }, "t17": { "title": "17", "type": "string" }, "t18": { "title": "18", "type": "string" }, "t19": { "title": "19", "type": "string" }, "t20": { "title": "20", "type": "string" }, "t21": { "title": "21", "type": "string" }, "t22": { "title": "22", "type": "string" }, "t23": { "title": "23", "type": "string" }, "t24": { "title": "24", "type": "string" }, "t25": { "title": "25", "type": "string" }, "t26": { "title": "26", "type": "string" }, "t27": { "title": "27", "type": "string" }, "t28": { "title": "28", "type": "string" }, "t29": { "title": "29", "type": "string" }, "t30": { "title": "30", "type": "string" } }, "additionalProperties": false }, "heat": { "title": "Heating", "type": "object", "properties": { "t16": { "title": "16", "type": "string" }, "t17": { "title": "17", "type": "string" }, "t18": { "title": "18", "type": "string" }, "t19": { "title": "19", "type": "string" }, "t20": { "title": "20", "type": "string" }, "t21": { "title": "21", "type": "string" }, "t22": { "title": "22", "type": "string" }, "t23": { "title": "23", "type": "string" }, "t24": { "title": "24", "type": "string" }, "t25": { "title": "25", "type": "string" }, "t26": { "title": "26", "type": "string" }, "t27": { "title": "27", "type": "string" }, "t28": { "title": "28", "type": "string" }, "t29": { "title": "29", "type": "string" }, "t30": { "title": "30", "type": "string" } }, "additionalProperties": false } }, "additionalProperties": false }, "high": { "title": "High flow", "type": "object", "properties": { "cool": { "title": "Cooling", "type": "object", "properties": { "t16": { "title": "16", "type": "string" }, "t17": { "title": "17", "type": "string" }, "t18": { "title": "18", "type": "string" }, "t19": { "title": "19", "type": "string" }, "t20": { "title": "20", "type": "string" }, "t21": { "title": "21", "type": "string" }, "t22": { "title": "22", "type": "string" }, "t23": { "title": "23", "type": "string" }, "t24": { "title": "24", "type": "string" }, "t25": { "title": "25", "type": "string" }, "t26": { "title": "26", "type": "string" }, "t27": { "title": "27", "type": "string" }, "t28": { "title": "28", "type": "string" }, "t29": { "title": "29", "type": "string" }, "t30": { "title": "30", "type": "string" } }, "additionalProperties": false }, "heat": { "title": "Heating", "type": "object", "properties": { "t16": { "title": "16", "type": "string" }, "t17": { "title": "17", "type": "string" }, "t18": { "title": "18", "type": "string" }, "t19": { "title": "19", "type": "string" }, "t20": { "title": "20", "type": "string" }, "t21": { "title": "21", "type": "string" }, "t22": { "title": "22", "type": "string" }, "t23": { "title": "23", "type": "string" }, "t24": { "title": "24", "type": "string" }, "t25": { "title": "25", "type": "string" }, "t26": { "title": "26", "type": "string" }, "t27": { "title": "27", "type": "string" }, "t28": { "title": "28", "type": "string" }, "t29": { "title": "29", "type": "string" }, "t30": { "title": "30", "type": "string" } }, "additionalProperties": false } }, "additionalProperties": false } }, "additionalProperties": false } } } } } }, "layout": [ { "type": "tabarray", "key": "devices", "title": "{{ value.name || 'New device' }}", "description": "Configure AC devices and their IR mappings.", "items": [ "devices[].name", "devices[].ip", "devices[].off", "devices[].debug", { "type": "fieldset", "title": "IR Map", "key": "devices[].irMap", "description": "Map fan speed, mode, and temperature to IR strings.", "expandable": true, "expanded": false, "items": [ { "type": "fieldset", "title": "Low Speed", "expandable": true, "expanded": false, "items": [ { "type": "fieldset", "title": "Cooling", "expandable": true, "expanded": false, "items": [ "devices[].irMap.low.cool.t16", "devices[].irMap.low.cool.t17", "devices[].irMap.low.cool.t18", "devices[].irMap.low.cool.t19", "devices[].irMap.low.cool.t20", "devices[].irMap.low.cool.t21", "devices[].irMap.low.cool.t22", "devices[].irMap.low.cool.t23", "devices[].irMap.low.cool.t24", "devices[].irMap.low.cool.t25", "devices[].irMap.low.cool.t26", "devices[].irMap.low.cool.t27", "devices[].irMap.low.cool.t28", "devices[].irMap.low.cool.t29", "devices[].irMap.low.cool.t30" ] }, { "type": "fieldset", "title": "Heating", "expandable": true, "expanded": false, "items": [ "devices[].irMap.low.heat.t16", "devices[].irMap.low.heat.t17", "devices[].irMap.low.heat.t18", "devices[].irMap.low.heat.t19", "devices[].irMap.low.heat.t20", "devices[].irMap.low.heat.t21", "devices[].irMap.low.heat.t22", "devices[].irMap.low.heat.t23", "devices[].irMap.low.heat.t24", "devices[].irMap.low.heat.t25", "devices[].irMap.low.heat.t26", "devices[].irMap.low.heat.t27", "devices[].irMap.low.heat.t28", "devices[].irMap.low.heat.t29", "devices[].irMap.low.heat.t30" ] } ] }, { "type": "fieldset", "title": "Medium Speed", "expandable": true, "expanded": false, "items": [ { "type": "fieldset", "title": "Cooling", "expandable": true, "expanded": false, "items": [ "devices[].irMap.medium.cool.t16", "devices[].irMap.medium.cool.t17", "devices[].irMap.medium.cool.t18", "devices[].irMap.medium.cool.t19", "devices[].irMap.medium.cool.t20", "devices[].irMap.medium.cool.t21", "devices[].irMap.medium.cool.t22", "devices[].irMap.medium.cool.t23", "devices[].irMap.medium.cool.t24", "devices[].irMap.medium.cool.t25", "devices[].irMap.medium.cool.t26", "devices[].irMap.medium.cool.t27", "devices[].irMap.medium.cool.t28", "devices[].irMap.medium.cool.t29", "devices[].irMap.medium.cool.t30" ] }, { "type": "fieldset", "title": "Heating", "expandable": true, "expanded": false, "items": [ "devices[].irMap.medium.heat.t16", "devices[].irMap.medium.heat.t17", "devices[].irMap.medium.heat.t18", "devices[].irMap.medium.heat.t19", "devices[].irMap.medium.heat.t20", "devices[].irMap.medium.heat.t21", "devices[].irMap.medium.heat.t22", "devices[].irMap.medium.heat.t23", "devices[].irMap.medium.heat.t24", "devices[].irMap.medium.heat.t25", "devices[].irMap.medium.heat.t26", "devices[].irMap.medium.heat.t27", "devices[].irMap.medium.heat.t28", "devices[].irMap.medium.heat.t29", "devices[].irMap.medium.heat.t30" ] } ] }, { "type": "fieldset", "title": "High Speed", "expandable": true, "expanded": false, "items": [ { "type": "fieldset", "title": "Cooling", "expandable": true, "expanded": false, "items": [ "devices[].irMap.high.cool.t16", "devices[].irMap.high.cool.t17", "devices[].irMap.high.cool.t18", "devices[].irMap.high.cool.t19", "devices[].irMap.high.cool.t20", "devices[].irMap.high.cool.t21", "devices[].irMap.high.cool.t22", "devices[].irMap.high.cool.t23", "devices[].irMap.high.cool.t24", "devices[].irMap.high.cool.t25", "devices[].irMap.high.cool.t26", "devices[].irMap.high.cool.t27", "devices[].irMap.high.cool.t28", "devices[].irMap.high.cool.t29", "devices[].irMap.high.cool.t30" ] }, { "type": "fieldset", "title": "Heating", "expandable": true, "expanded": false, "items": [ "devices[].irMap.high.heat.t16", "devices[].irMap.high.heat.t17", "devices[].irMap.high.heat.t18", "devices[].irMap.high.heat.t19", "devices[].irMap.high.heat.t20", "devices[].irMap.high.heat.t21", "devices[].irMap.high.heat.t22", "devices[].irMap.high.heat.t23", "devices[].irMap.high.heat.t24", "devices[].irMap.high.heat.t25", "devices[].irMap.high.heat.t26", "devices[].irMap.high.heat.t27", "devices[].irMap.high.heat.t28", "devices[].irMap.high.heat.t29", "devices[].irMap.high.heat.t30" ] } ] } ] } ] } ] }