{
  "title": "Matterbridge test plugin",
  "description": "matterbridge-test v. 1.0.0 by https://github.com/Luligu",
  "type": "object",
  "properties": {
    "name": {
      "description": "Plugin Name",
      "type": "string",
      "readOnly": true,
      "ui:widget": "hidden"
    },
    "type": {
      "description": "Plugin Type",
      "type": "string",
      "readOnly": true,
      "ui:widget": "hidden"
    },
    "turnOn": {
      "description": "Turn on all devices",
      "type": "boolean",
      "buttonText": "Turn On",
      "default": false
    },
    "turnOff": {
      "description": "Turn off all devices",
      "type": "boolean",
      "buttonText": "Turn Off",
      "default": false
    },
    "turnOnDevice": {
      "description": "Turn on the device:",
      "type": "boolean",
      "buttonField": "Turn On",
      "textPlaceholder": "Enter the device name",
      "default": false
    },
    "turnOffDevice": {
      "description": "Turn off the device:",
      "type": "boolean",
      "buttonField": "Turn Off",
      "textPlaceholder": "Enter the device name",
      "default": false
    },
    "noDevices": {
      "title": "No devices",
      "description": "Do not register any devices on startup",
      "type": "boolean",
      "default": false
    },
    "delayStart": {
      "title": "Delay start",
      "description": "Delay start by 20 seconds to simulate a slow startup",
      "type": "boolean",
      "default": false
    },
    "longDelayStart": {
      "title": "Long delay start",
      "description": "Delay start by 60 seconds to simulate a very slow startup",
      "type": "boolean",
      "default": false
    },
    "loadSwitches": {
      "title": "Load switches",
      "description": "Load a defined number of switches",
      "type": "number",
      "default": 1
    },
    "loadOutlets": {
      "title": "Load outlets",
      "description": "Load a defined number of outlets",
      "type": "number",
      "default": 1
    },
    "loadLights": {
      "title": "Load lights",
      "description": "Load a defined number of lights",
      "type": "number",
      "default": 1
    },
    "whiteList": {
      "title": "White List",
      "description": "Only the devices in the list will be exposed. If the list is empty, all the devices will be exposed.",
      "type": "array",
      "items": {
        "type": "string"
      },
      "uniqueItems": true,
      "selectFrom": "name"
    },
    "blackList": {
      "title": "Black List",
      "description": "The devices in the list will not be exposed. If the list is empty, no devices will be excluded.",
      "type": "array",
      "items": {
        "type": "string"
      },
      "uniqueItems": true,
      "selectFrom": "name"
    },
    "setUpdateInterval": {
      "title": "Update interval",
      "description": "Set an update interval in seconds to update the device states periodically",
      "type": "number",
      "default": 60
    },
    "enableElectrical": {
      "title": "Add electrical measurements",
      "description": "Add electrical measurements cluster to the devices",
      "type": "boolean",
      "default": true
    },
    "enablePowerSource": {
      "title": "Add power source",
      "description": "Add power source cluster to the devices",
      "type": "boolean",
      "default": true
    },
    "enableModeSelect": {
      "title": "Add mode select",
      "description": "Add mode select cluster to the devices",
      "type": "boolean",
      "default": true
    },
    "enableReachable": {
      "title": "Enable reachable",
      "description": "Change reachable attribute of the devices during the interval updates",
      "type": "boolean",
      "default": true
    },
    "throwLoad": {
      "title": "Throw on load",
      "description": "Throw on load to test Matterbridge handling",
      "type": "boolean",
      "default": false
    },
    "throwStart": {
      "title": "Throw on start",
      "description": "Throw on start to test Matterbridge handling",
      "type": "boolean",
      "default": false
    },
    "throwConfigure": {
      "title": "Throw on configure",
      "description": "Throw on configure to test Matterbridge handling",
      "type": "boolean",
      "default": false
    },
    "throwShutdown": {
      "title": "Throw on shutdown",
      "description": "Throw on shutdown to test Matterbridge handling",
      "type": "boolean",
      "default": false
    },
    "debug": {
      "title": "Enable Debug",
      "description": "Enable the debug for the plugin",
      "type": "boolean",
      "default": false
    },
    "unregisterOnShutdown": {
      "title": "Unregister On Shutdown",
      "description": "Unregister all devices on shutdown",
      "type": "boolean",
      "default": false
    }
  }
}
