{
    "pluginAlias": "RA2Select",
    "pluginType": "platform",
    "headerDisplay": "For detailed description of parameters, see: [homebridge-ra2-select configuration](https://github.com/isalkind/homebridge-ra2-select#configuration)",
    "singular": true,
    "schema": {
        "definitions": {
            "device_obj": {
                "title": "Device Configuration",
                "type": "object",
                "properties": {
                    "ignore": { "type": "boolean" },
                    "singlePressOnly": { "type": "boolean" },
                    "logging": { "type": "boolean" },
                    "id": { "type": "integer", "minimum": 1 },
                    "name": { "type": "string" },
                    "buttons": {
                        "title": "Buttons",
                        "type": "array",
                        "items": { "$ref": "#/definitions/button_obj" }
                    }
                },
                "required": ["id"]
            },
            "button_obj": {
                "title": "Button Configuration",
                "type": "object",
                "properties": {
                    "ignore": { "type": "boolean" },
                    "singlePressOnly": { "type": "boolean" },
                    "id": { "type": "integer", "minimum": 1 },
                    "name": { "type": "string" }
                },
                "required": ["id"]
            }
        },
        "type": "object",
        "properties": {
            "name": {
                "type": "string",
                "default": "RA2",
                "description": "The name used to identify this plugin"
            },
            "host": {
                "type": "string",
                "format": "hostname",
                "description": "Hostname / IP Address of the RA2 Select bridge"
            },
            "username": { "type": "string", "default": "lutron" },
            "password": { "type": "string", "default": "integration" },
            "pressTimeout": {
                "type": "integer",
                "description": "Single Press Timeout (ms)",
                "placeholder": 500
            },
            "longTimeout": {
                "type": "integer",
                "description": "Long Press Timeout (ms)",
                "placeholder": 2000
            },
            "devices": {
                "title": "Devices",
                "type": "array",
                "items": { "$ref": "#/definitions/device_obj" }
            }
        },
        "required": ["name", "host", "username", "password"]
    }
}
