homebridge-myplace
Version:
Exec Plugin bringing Advanatge Air MyPlace system to Homekit
407 lines (406 loc) • 11.7 kB
JSON
{
"pluginAlias": "MyPlace",
"pluginType": "platform",
"singular": true,
"customUi": true,
"headerDisplay": "Homebridge plugin for AdvantageAir devices",
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"default": "MyPlace",
"required": true
},
"devices": {
"type": "array",
"items": {
"title": "AdvantageAir device",
"type": "object",
"properties": {
"name": {
"title": "Name",
"description": "The name of the AdvantageAir device, default=Aircon",
"type": "string",
"required": true,
"default": "Aircon"
},
"ipAddress": {
"title": "IP Address",
"description": "The device's IP address. It is recommended to set a static IP for this device.",
"type": "string",
"format": "ipv4",
"required": true,
"placeholder": "192.168.0.1"
},
"port": {
"title": "PORT used",
"description": "The PORT number used for this device, default=2025.",
"type": "number",
"required": true,
"default": "2025"
},
"extraTimers": {
"title": "Include extra timers",
"description": "Include extra timers to turn on the Aircon in specific mode: Cool, Heat or Vent.",
"type": "boolean",
"required": false,
"default": false
},
"debug": {
"title": "Enable detailed debug log",
"description": "Enables a detailed debug log. Useful when trying to figure out issues with the plugin.",
"type": "boolean",
"required": false,
"default": false
}
}
}
},
"title": {
"type": "string"
},
"debug": {
"type": "boolean"
},
"outputConstants": {
"type": "boolean"
},
"statusMsg": {
"type": "boolean"
},
"timeout": {
"type": "number"
},
"stateChangeResponseTime": {
"type": "number"
},
"constants": {
"type": "array",
"required": false,
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"queueTypes": {
"type": "array",
"required": false,
"items": {
"type": "object",
"properties": {
"queue": {
"type": "string"
},
"queueType": {
"type": "string"
}
}
}
},
"accessories": {
"type": "array",
"required": false,
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"displayName": {
"type": "string"
},
"active": {
"type": "number"
},
"brightness": {
"type": "number"
},
"on": {
"type": "boolean"
},
"rotationSpeed": {
"type": "number"
},
"rotationDirection": {
"type": "number"
},
"currentHeatingCoolingState": {
"type": "string"
},
"targetHeatingCoolingState": {
"type": "string"
},
"currentDoorState": {
"type": "number"
},
"targetDoorState": {
"type": "number"
},
"currentPosition": {
"type": "number"
},
"targetPosition": {
"type": "number"
},
"currentTemperature": {
"type": "number"
},
"targetTemperature": {
"type": "number"
},
"temperatureDisplayUnits": {
"type": "string"
},
"obstructionDetected": {
"type": "boolean"
},
"name": {
"type": "string"
},
"manufacturer": {
"type": "string"
},
"model": {
"type": "string"
},
"positionState": {
"type": "number"
},
"serialNumber": {
"type": "string"
},
"queue": {
"type": "string"
},
"polling": {
"type": "boolean"
},
"polling": {
"type": "array",
"required": false,
"items": {
"type": "object",
"properties": {
"characteristic": {
"type": "string"
}
}
}
},
"props": {
"type": "object",
"required": false,
"properties": {
"brightness": {
"type": "object",
"properties": {
"minStep": {
"type": "number"
}
}
},
"currentTemperature": {
"type": "object",
"properties": {
"maxValue": {
"type": "number"
},
"minValue": {
"type": "number"
},
"minStep": {
"type": "number"
}
}
},
"rotationSpeed": {
"type": "object",
"properties": {
"minStep": {
"type": "number"
}
}
},
"targetTemperature": {
"type": "object",
"properties": {
"maxValue": {
"type": "number"
},
"minValue": {
"type": "number"
},
"minStep": {
"type": "number"
}
}
}
}
},
"state_cmd": {
"type": "string"
},
"state_cmd_suffix": {
"type": "string"
},
"linkedTypes": {
"type": "array",
"required": false,
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"displayName": {
"type": "string"
},
"active": {
"type": "number"
},
"on": {
"type": "boolean"
},
"brightness": {
"type": "number"
},
"currentTemperature": {
"type": "number"
},
"targetTemperature": {
"type": "number"
},
"currentHeatingCoolingState": {
"type": "string"
},
"targetHeatingCoolingState": {
"type": "string"
},
"temperatureDisplayUnits": {
"type": "string"
},
"rotationSpeed": {
"type": "number"
},
"rotationDirection": {
"type": "number"
},
"name": {
"type": "string"
},
"manufacturer": {
"type": "string"
},
"model": {
"type": "string"
},
"serialNumber": {
"type": "string"
},
"queue": {
"type": "string"
},
"polling": {
"type": "array",
"items": {
"type": "object",
"properties": {
"characteristic": {
"type": "string"
}
}
}
},
"props": {
"type": "object",
"properties": {
"brightness": {
"type": "object",
"properties": {
"minStep": {
"type": "number"
}
}
},
"currentTemperature": {
"type": "object",
"properties": {
"maxValue": {
"type": "number"
},
"minValue": {
"type": "number"
},
"minStep": {
"type": "number"
}
}
},
"rotationSpeed": {
"type": "object",
"properties": {
"minStep": {
"type": "number"
}
}
},
"targetTemperature": {
"type": "object",
"properties": {
"maxValue": {
"type": "number"
},
"minValue": {
"type": "number"
},
"minStep": {
"type": "number"
}
}
}
}
},
"state_cmd": {
"type": "string"
},
"state_cmd_suffix": {
"type": "string"
}
}
}
}
}
}
}
}
},
"layout": [
{
"type": "fieldset",
"title": "Device Settings",
"description": "Enter below the name and IP address of your AdvantageAir device.",
"items": []
},
{
"key": "devices",
"type": "tabarray",
"title": "{{ value.name || 'new device' }}",
"description": "Note: only a maximum of 3 AdvantageAir devices can be processed by Config Creator.",
"items": [
"devices[].name",
"devices[].ipAddress",
"devices[].port",
"devices[].extraTimers",
"devices[].debug"
]
}
]
}