homebridge-flume
Version:
Homebridge plugin to integrate Flume devices into HomeKit.
111 lines (110 loc) • 3.11 kB
JSON
{
"pluginAlias": "Flume",
"pluginType": "platform",
"singular": true,
"customUi": true,
"customUiPath": "./dist/homebridge-ui",
"schema": {
"type": "object",
"required": ["username", "password", "clientId", "clientSecret", "refreshInterval", "units"],
"properties": {
"name": {
"type": "string",
"default": "Flume"
},
"username": {
"type": "string",
"title": "${config.title.username}",
"required": true
},
"password": {
"type": "string",
"title": "${config.title.password}",
"required": true
},
"clientId": {
"type": "string",
"title": "${config.title.clientId}",
"placeholder": "1234567890ABCD",
"required": true
},
"clientSecret": {
"type": "string",
"title": "${config.title.clientSecret}",
"description": "${config.description.clientSecret}",
"placeholder": "1234567890ABCDEFGHIJ",
"required": true
},
"refreshInterval": {
"type": "integer",
"title": "${config.title.refreshInterval}",
"description": "${config.description.refreshInterval}",
"default": 2,
"minimum": 1,
"required": true
},
"useNotifications": {
"type": "boolean",
"title": "${config.title.useNotifications}",
"description": "${config.description.useNotifications}"
},
"units": {
"type": "string",
"title": "${config.title.units}",
"description": "${config.description.units}",
"enum": ["GALLONS", "LITERS", "CUBIC_FEET", "CUBIC_METERS"],
"enumNames": ["${config.enumNames.gallons}", "${config.enumNames.liters}", "${config.enumNames.cubicFeet}", "${config.enumNames.cubicMeters}"],
"default": "GALLONS",
"required": true
},
"disableDeviceLogging": {
"type": "boolean",
"title": "${config.title.disableDeviceLogging}",
"description": "${config.description.disableDeviceLogging}",
"default": false,
"required": false
},
"verbose": {
"type": "boolean",
"title": "${config.title.verbose}",
"description": "${config.description.verbose}",
"required": false
},
"excludeDevices": {
"type": "array",
"title": "${config.title.excludeDevices}",
"description": "${config.description.excludeDevices}",
"items": {
"type": "string"
},
"uniqueItems": true,
"default": [],
"required": false
}
}
},
"layout": [
{
"type": "fieldset",
"items": [
"username",
"password",
"clientId",
"clientSecret",
"refreshInterval",
"useNotifications",
"units",
"disableDeviceLogging",
"verbose",
{
"key": "excludeDevices",
"type": "array",
"items": {
"type": "string",
"title": "${config.title.deviceId}"
}
}
]
}
]
}