{
  "pluginAlias": "NexusAutomation",
  "pluginType": "platform",
  "singular": true,
  "headerDisplay": "Expõe os dispositivos de automação do Nexus no HomeKit. Crie um API Client no Nexus (Configurações → API Clients) com os escopos **automation:read** e **automation:control** e cole a chave abaixo.",
  "footerDisplay": "baseUrl: use `http://SEU_HOST/hb` (receptor no host da web) ou `http://SEU_HOST_API/api/v1/automation` (vhost da API REST).",
  "schema": {
    "type": "object",
    "properties": {
      "name": {
        "title": "Nome da plataforma",
        "type": "string",
        "default": "Nexus",
        "required": true
      },
      "baseUrl": {
        "title": "URL base da API do Nexus",
        "type": "string",
        "required": true,
        "placeholder": "http://172.16.0.10/hb",
        "description": "Sem barra no final. Ex.: http://172.16.0.10/hb (host da web) ou http://172.16.0.10:8080/api/v1/automation (vhost da API)."
      },
      "apiKey": {
        "title": "API Key (X-API-Key)",
        "type": "string",
        "required": true,
        "description": "Chave do API Client criado no Nexus com escopos automation:read e automation:control."
      },
      "pollSeconds": {
        "title": "Intervalo de atualização (segundos)",
        "type": "integer",
        "default": 20,
        "minimum": 5,
        "maximum": 3600
      },
      "exposeWater": {
        "title": "Expor o nível da caixa d'água",
        "type": "boolean",
        "default": true,
        "description": "Cria um sensor de nível (umidade) + sensor de vazamento p/ 'água baixa'."
      },
      "exposeDoors": {
        "title": "Expor portões/chaves (fechaduras)",
        "type": "boolean",
        "default": false,
        "description": "ATENÇÃO: qualquer pessoa com acesso à sua Casa poderá abrir o portão. Exige a API Key com o escopo doors:open."
      },
      "doorRelockSeconds": {
        "title": "Segundos até 're-trancar' o portão",
        "type": "integer",
        "default": 3,
        "minimum": 1,
        "maximum": 60,
        "condition": { "functionBody": "return model.exposeDoors === true;" }
      },
      "doorAccessoryType": {
        "title": "Tipo do acessório de portão",
        "type": "string",
        "default": "lock",
        "oneOf": [
          { "title": "Fechadura (Lock) — Apple / Matter / Google", "enum": ["lock"] },
          { "title": "Porta de garagem — melhor p/ a skill Alexa em nuvem", "enum": ["garage"] }
        ],
        "condition": { "functionBody": "return model.exposeDoors === true;" }
      }
    }
  }
}
