{
  "version": "1",
  "information": {
    "name": "siip-available-ips",
    "displayName": "SIIP - Buscador de IP's Disponibles UISP",
    "description": "Este plugin permite buscar IP's disponibles en UISP (UNMS) y asignarlas a los clientes en UCRM. Evitando así la asignación de IP's duplicadas y mejorando la gestión de direcciones IP en la red.",
    "url": "https://siip.mx",
    "version": "1.6.1",
    "ucrmVersionCompliancy": {
      "min": "1.0.0",
      "max": null
    },
    "unmsVersionCompliancy": {
      "min": "1.0.0",
      "max": null
    },
    "author": "SIIP Internet"
  },
  "configuration": [
    {
      "key": "ipserver",
      "label": "Dirección IP o dominio del servidor",
      "description": "La dirección IP del servidor o dominio donde se ejecuta el sistema UISP CRM. Ejemplo: 172.16.5.120 o sistema.empresa.com",
      "required": 1,
      "type": "text"
    },
    {
      "key": "apitoken",
      "label": "Token de la API UCRM",
      "description": "Token de autenticación para el uso de la API del sistema UISP UCRM. Contiene 36 caracteres y se genera desde el apartado de CRM en Ajustes->Seguridad->Claves app. Ejemplo: 3d3fa6c9-e268-6e8b-b4d5-aae394d99d7d",
      "required": 1,
      "type": "text"
    },
    {
      "key": "unmsApiToken",
      "label": "Token de la API UNMS",
      "description": "Token de autenticación necesario para el uso de la API del sistema UISP UNMS, se utiliza para gestionar información de antenas u otros dispositivos de red. Contiene 34 caracteres y se genera desde el módulo de Ajustes del UISP Network en la opción de 'Usuarios' y en apartado de 'API tokens'.",
      "required": 1,
      "type": "text"
    },
    {
      "key": "enablePingVerification",
      "label": "Habilitar verificación por Ping",
      "description": "Permite verificar la disponibilidad real de las IPs mediante ping. Cuando está habilitado, el usuario puede elegir si desea verificar las IPs con ping antes de mostrarlas como disponibles. Esto ayuda a detectar dispositivos no registrados en UISP.",
      "required": 0,
      "type": "checkbox"
    },
    {
      "key": "adminRangeStart",
      "label": "Inicio primer rango admin",
      "description": "Primera IP del rango administrativo inicial (ej: 1). Las IPs en este rango se marcarán como administrativas.",
      "required": 1,
      "type": "number",
      "default": 1
    },
    {
      "key": "adminRangeEnd",
      "label": "Fin primer rango admin",
      "description": "Última IP del rango administrativo inicial (ej: 30). Las IPs desde 'Inicio primer rango' hasta este valor se marcarán como administrativas.",
      "required": 1,
      "type": "number",
      "default": 30
    },
    {
      "key": "adminRangeFinalStart",
      "label": "Inicio rango admin final",
      "description": "Primera IP del rango administrativo final (ej: 254). Útil para reservar las últimas IPs del segmento.",
      "required": 1,
      "type": "number",
      "default": 2541
    },
    {
      "key": "adminRangeFinalEnd",
      "label": "Fin rango admin final",
      "description": "Última IP del rango administrativo final (ej: 254). Las IPs desde 'Inicio rango final' hasta este valor se marcarán como administrativas.",
      "required": 1,
      "type": "number",
      "default": 254
    },
    {
      "key": "useCustomAdminRanges",
      "label": "Usar rangos de IPs administrativas personalizados por segmento",
      "description": "Habilita configuración personalizada por segmento en lugar de rangos globales. Permite definir rangos específicos para cada segmento de red.",
      "required": 0,
      "type": "checkbox"
    },
    {
      "key": "customAdminRangesJson",
      "label": "Configuración JSON de rangos administrativos",
      "description": "JSON con rangos administrativos por segmento (Utilizar interfaz de configuración avanzada para editar). Formato: {\"segmentos\": [{\"segmento\": \"18\", \"administrativas_iniciales\": [{\"inicio\": 1, \"hasta\": 50}], \"administrativas_finales\": [{\"inicio\": 253, \"hasta\": 255}]}]}",
      "required": 1,
      "type": "textarea",
      "default": "{\"segmentos\":[]}"
    },
    {
      "key": "adminPassword",
      "label": "Contraseña de administrador para configuración avanzada",
      "description": "Contraseña requerida para acceder al editor visual de configuración avanzada de rangos administrativos.",
      "required": 1,
      "type": "password"
    },
    {
      "key": "debugMode",
      "label": "Debug Mode?",
      "description": "More detailed log info - Informacion de log mas detallada",
      "required": 0,
      "type": "checkbox"
    },
    {
      "key": "logging_level",
      "label": "enable debug logs",
      "description": "Make the plugin more verbose - Hace el plugin mas verboso.",
      "type": "checkbox",
      "required": 0
    }
  ],
  "menu": [
    {
      "key": "Reports",
      "label": "Consultar IP's Disponibles",
      "type": "admin",
      "target": "iframe"
    }
  ],
  "supportsWebhookEvents": true
}