From 5c08b06ace56bdad92af18b657cd62340dc4a4dc Mon Sep 17 00:00:00 2001 From: Markus Lorenz Date: Mon, 9 Oct 2023 16:44:55 +0200 Subject: [PATCH] Format dhcp_leases config file --- front/plugins/dhcp_leases/config.json | 774 +++++++++++++++----------- 1 file changed, 458 insertions(+), 316 deletions(-) diff --git a/front/plugins/dhcp_leases/config.json b/front/plugins/dhcp_leases/config.json index 0fa8e7d5..7228e684 100755 --- a/front/plugins/dhcp_leases/config.json +++ b/front/plugins/dhcp_leases/config.json @@ -1,283 +1,345 @@ { "code_name": "dhcp_leases", "unique_prefix": "DHCPLSS", - "enabled": true, - "data_source": "script", + "enabled": true, + "data_source": "script", "data_filters": [ { - "compare_column" : "Object_PrimaryID", - "compare_operator" : "==", + "compare_column": "Object_PrimaryID", + "compare_operator": "==", "compare_field_id": "txtMacFilter", - "compare_js_template": "'{value}'.toString()", - "compare_use_quotes": true + "compare_js_template": "'{value}'.toString()", + "compare_use_quotes": true } ], "show_ui": true, - "localized": ["display_name", "description", "icon"], - "mapped_to_table": "CurrentScan", - "display_name" : [{ - "language_code":"en_us", - "string" : "DHCP Leases (Device import)" - }, - { - "language_code":"es_es", - "string" : "DHCP Leases (Importación de dispositivos)" - }], - "icon":[{ - "language_code":"en_us", - "string" : "" - }], - "description": [{ - "language_code":"en_us", - "string" : "This plugin is to import devices from dhcp.leases files." - }, - { - "language_code":"es_es", - "string" : "Este plugin es para importar dispositivos desde archivos dhcp.leases." - }], - "params" : [ + "localized": [ + "display_name", + "description", + "icon" + ], + "mapped_to_table": "CurrentScan", + "display_name": [ { - "name" : "paths", - "type" : "setting", - "value" : "DHCPLSS_paths_to_check" - }], - "database_column_definitions": - [ + "language_code": "en_us", + "string": "DHCP Leases (Device import)" + }, { - "column": "Index", + "language_code": "es_es", + "string": "DHCP Leases (Importación de dispositivos)" + } + ], + "icon": [ + { + "language_code": "en_us", + "string": "" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "This plugin is to import devices from dhcp.leases files." + }, + { + "language_code": "es_es", + "string": "Este plugin es para importar dispositivos desde archivos dhcp.leases." + } + ], + "params": [ + { + "name": "paths", + "type": "setting", + "value": "DHCPLSS_paths_to_check" + } + ], + "database_column_definitions": [ + { + "column": "Index", "css_classes": "col-sm-2", "show": false, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "N/A" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "N/A" }, { - "language_code":"es_es", - "string" : "N/A" - }] - } , + "language_code": "es_es", + "string": "N/A" + } + ] + }, { "column": "Plugin", "css_classes": "col-sm-2", "show": false, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "N/A" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "N/A" }, { - "language_code":"es_es", - "string" : "N/A" - }] + "language_code": "es_es", + "string": "N/A" + } + ] }, { "column": "Object_PrimaryID", - "mapped_to_column": "cur_MAC", + "mapped_to_column": "cur_MAC", "css_classes": "col-sm-2", "show": true, - "type": "device_mac", - "default_value":"", + "type": "device_mac", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "MAC address" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "MAC address" }, { - "language_code":"es_es", - "string" : "Dirección MAC" - }] + "language_code": "es_es", + "string": "Dirección MAC" + } + ] }, { "column": "Object_SecondaryID", - "mapped_to_column": "cur_IP", + "mapped_to_column": "cur_IP", "css_classes": "col-sm-2", "show": true, - "type": "device_ip", - "default_value":"", + "type": "device_ip", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "IP" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "IP" }, { - "language_code":"es_es", - "string" : "IP" - }] - } , + "language_code": "es_es", + "string": "IP" + } + ] + }, { "column": "DateTimeCreated", "css_classes": "col-sm-2", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Created" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Created" }, { - "language_code":"es_es", - "string" : "Creado" - }] + "language_code": "es_es", + "string": "Creado" + } + ] }, { "column": "DateTimeChanged", - "mapped_to_column": "cur_DateTime", + "mapped_to_column": "cur_DateTime", "css_classes": "col-sm-2", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Changed" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Changed" }, { - "language_code":"es_es", - "string" : "Cambiado" - }] + "language_code": "es_es", + "string": "Cambiado" + } + ] }, { "column": "Watched_Value1", "css_classes": "col-sm-2", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Is active" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Is active" }, { - "language_code":"es_es", - "string" : "Está activo" - }] + "language_code": "es_es", + "string": "Está activo" + } + ] }, { "column": "Watched_Value2", - "mapped_to_column": "cur_Name", + "mapped_to_column": "cur_Name", "css_classes": "col-sm-2", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Hostname" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Hostname" }, - { - "language_code":"es_es", - "string" : "Nombre de host" - }] + { + "language_code": "es_es", + "string": "Nombre de host" + } + ] }, { "column": "Watched_Value3", "css_classes": "col-sm-2", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Hardware" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Hardware" }, { - "language_code":"es_es", - "string" : "Hardware" - }] - } , + "language_code": "es_es", + "string": "Hardware" + } + ] + }, { "column": "Watched_Value4", "css_classes": "col-sm-2", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "State" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "State" }, { - "language_code":"es_es", - "string" : "Estado" - }] - } , + "language_code": "es_es", + "string": "Estado" + } + ] + }, { "column": "UserData", "css_classes": "col-sm-2", "show": false, - "type": "textbox_save", - "default_value":"", + "type": "textbox_save", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Comments" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Comments" }, { - "language_code":"es_es", - "string" : "Comentarios" - }] - }, + "language_code": "es_es", + "string": "Comentarios" + } + ] + }, { "column": "Extra", "css_classes": "col-sm-3", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "DHCP leases file" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "DHCP leases file" }, { - "language_code":"es_es", - "string" : "Archivo DHCP leases" - }] + "language_code": "es_es", + "string": "Archivo DHCP leases" + } + ] }, { "column": "ScanMethod", - "mapped_to_column": "cur_ScanMethod", + "mapped_to_column": "cur_ScanMethod", "mapped_to_column_data": { - "value": "DHCPLSS" - }, + "value": "DHCPLSS" + }, "css_classes": "col-sm-2", "show": true, - "type": "label", - "default_value":"", + "type": "label", + "default_value": "", "options": [], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Scan method" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Scan method" }, { - "language_code":"es_es", - "string" : "Método de escaneo" - }] - }, + "language_code": "es_es", + "string": "Método de escaneo" + } + ] + }, { "column": "Status", "css_classes": "col-sm-1", "show": true, - "type": "replace", - "default_value":"", + "type": "replace", + "default_value": "", "options": [ { "equals": "watched-not-changed", @@ -289,190 +351,270 @@ }, { "equals": "new", - "replacement": "
" + "replacement": "
" }, { "equals": "missing-in-last-scan", "replacement": "
" } ], - "localized": ["name"], - "name":[{ - "language_code":"en_us", - "string" : "Status" + "localized": [ + "name" + ], + "name": [ + { + "language_code": "en_us", + "string": "Status" }, { - "language_code":"es_es", - "string" : "Estado" - }] - } + "language_code": "es_es", + "string": "Estado" + } + ] + } ], - "settings":[ + "settings": [ { - "function": "RUN", - "events": ["run"], - "type": "text.select", - "default_value":"disabled", - "options": ["disabled", "once", "schedule", "always_after_scan", "on_new_device"], - "localized": ["name", "description"], - "name" :[{ - "language_code":"en_us", - "string" : "When to run" - }, - { - "language_code":"es_es", - "string" : "Cuándo ejecutar" - }], - "description": [{ - "language_code":"en_us", - "string" : "Enable import of devices from dhcp.leases files. If you select schedule the scheduling settings from below are applied. If you select once the scan is run only once on start of the application (container) or after you update your settings." - }, - { - "language_code":"es_es", - "string" : "Habilite la importación de dispositivos desde archivos dhcp.leases. Si selecciona schedule, se aplican las configuraciones de programación de abajo. Si selecciona once, el análisis se ejecuta solo una vez al inicio de la aplicación (contenedor) o después de actualizar su configuración." - }] + "function": "RUN", + "events": [ + "run" + ], + "type": "text.select", + "default_value": "disabled", + "options": [ + "disabled", + "once", + "schedule", + "always_after_scan", + "on_new_device" + ], + "localized": [ + "name", + "description" + ], + "name": [ + { + "language_code": "en_us", + "string": "When to run" + }, + { + "language_code": "es_es", + "string": "Cuándo ejecutar" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "Enable import of devices from dhcp.leases files. If you select schedule the scheduling settings from below are applied. If you select once the scan is run only once on start of the application (container) or after you update your settings." + }, + { + "language_code": "es_es", + "string": "Habilite la importación de dispositivos desde archivos dhcp.leases. Si selecciona schedule, se aplican las configuraciones de programación de abajo. Si selecciona once, el análisis se ejecuta solo una vez al inicio de la aplicación (contenedor) o después de actualizar su configuración." + } + ] }, { "function": "CMD", "type": "text", - "default_value":"python3 /home/pi/pialert/front/plugins/dhcp_leases/script.py paths={paths}", + "default_value": "python3 /home/pi/pialert/front/plugins/dhcp_leases/script.py paths={paths}", "options": [], - "localized": ["name", "description"], - "name" : [{ - "language_code":"en_us", - "string" : "Command" - }, - { - "language_code":"es_es", - "string" : "Comando" - }], - "description": [{ - "language_code":"en_us", - "string" : "Command to run" - }, - { - "language_code":"es_es", - "string" : "Comando a ejecutar" - }] + "localized": [ + "name", + "description" + ], + "name": [ + { + "language_code": "en_us", + "string": "Command" + }, + { + "language_code": "es_es", + "string": "Comando" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "Command to run" + }, + { + "language_code": "es_es", + "string": "Comando a ejecutar" + } + ] }, { "function": "paths_to_check", "type": "list", - "default_value":["/mnt/dhcp1.leases", "/mnt/dhcp2.leases"], + "default_value": [ + "/mnt/dhcp1.leases", + "/mnt/dhcp2.leases" + ], "options": [], - "localized": ["name", "description"], - "name" : [{ - "language_code":"en_us", - "string" : "Files" - }, - { - "language_code":"es_es", - "string" : "Archivos" - }], - "description": [{ - "language_code":"en_us", - "string" : "Add all dhcp.leases mapped paths to watch. Enter full path within the container, e.g. /mnt/dhcp2.leases. You must map these files accordingly in your docker-compose.yml file. (If you are mapping a PiHole dhcp.leases file the path in the container must contain pihole, e.g.: :/etc/pihole/dhcp.leases)" - }, - { - "language_code":"es_es", - "string" : "Agregue todas las rutas asignadas de dhcp.leases para observar. Ingrese la ruta completa dentro del contenedor, p.e. /mnt/dhcp2.leases. Debe asignar estos archivos en consecuencia en su archivo docker-compose.yml. (Si está asignando un archivo PiHole dhcp.leases, la ruta en el contenedor debe contener pihole, por ejemplo: :/etc/pihole/dhcp.leases)" - }] + "localized": [ + "name", + "description" + ], + "name": [ + { + "language_code": "en_us", + "string": "Files" + }, + { + "language_code": "es_es", + "string": "Archivos" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "Add all dhcp.leases mapped paths to watch. Enter full path within the container, e.g. /mnt/dhcp2.leases. You must map these files accordingly in your docker-compose.yml file. (If you are mapping a PiHole dhcp.leases file the path in the container must contain pihole, e.g.: :/etc/pihole/dhcp.leases)" + }, + { + "language_code": "es_es", + "string": "Agregue todas las rutas asignadas de dhcp.leases para observar. Ingrese la ruta completa dentro del contenedor, p.e. /mnt/dhcp2.leases. Debe asignar estos archivos en consecuencia en su archivo docker-compose.yml. (Si está asignando un archivo PiHole dhcp.leases, la ruta en el contenedor debe contener pihole, por ejemplo: :/etc/pihole/dhcp.leases)" + } + ] }, { "function": "RUN_SCHD", "type": "text", - "default_value":"0 2 * * *", + "default_value": "0 2 * * *", "options": [], - "localized": ["name", "description"], - "name" : [{ - "language_code":"en_us", - "string" : "Schedule" - }, - { - "language_code":"es_es", - "string" : "Schedule" - }], - "description": [{ - "language_code":"en_us", - "string" : "Only enabled if you select schedule in the DHCPLSS_RUN setting. Make sure you enter the schedule in the correct cron-like format (e.g. validate at crontab.guru). For example entering 0 4 * * * will run the scan after 4 am in the TIMEZONE you set above. Will be run NEXT time the time passes.
It's recommended to use the same schedule interval for all plugins responsible for discovering new devices." - }, - { - "language_code":"es_es", - "string" : "Solo está habilitado si selecciona schedule en la configuración DHCPLSS_RUN. Asegúrese de ingresar la programación en el formato similar a cron correcto (por ejemplo, valide en crontab.guru). Por ejemplo, ingresar 0 4 * * * ejecutará el escaneo después de las 4 a.m. en el TIMEZONE que configuró arriba. Se ejecutará la PRÓXIMA vez que pase el tiempo." - }] + "localized": [ + "name", + "description" + ], + "name": [ + { + "language_code": "en_us", + "string": "Schedule" + }, + { + "language_code": "es_es", + "string": "Schedule" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "Only enabled if you select schedule in the DHCPLSS_RUN setting. Make sure you enter the schedule in the correct cron-like format (e.g. validate at crontab.guru). For example entering 0 4 * * * will run the scan after 4 am in the TIMEZONE you set above. Will be run NEXT time the time passes.
It's recommended to use the same schedule interval for all plugins responsible for discovering new devices." + }, + { + "language_code": "es_es", + "string": "Solo está habilitado si selecciona schedule en la configuración DHCPLSS_RUN. Asegúrese de ingresar la programación en el formato similar a cron correcto (por ejemplo, valide en crontab.guru). Por ejemplo, ingresar 0 4 * * * ejecutará el escaneo después de las 4 a.m. en el TIMEZONE que configuró arriba. Se ejecutará la PRÓXIMA vez que pase el tiempo." + } + ] }, { "function": "RUN_TIMEOUT", "type": "integer", - "default_value":5, + "default_value": 5, "options": [], - "localized": ["name", "description"], - "name" : [{ - "language_code":"en_us", - "string" : "Run timeout" - }, - { - "language_code":"es_es", - "string" : "Tiempo de espera de ejecución" - }, - { - "language_code":"de_de", - "string" : "Wartezeit" - }], - "description": [{ - "language_code":"en_us", - "string" : "Maximum time in seconds to wait for the script to finish. If this time is exceeded the script is aborted." - }, - { - "language_code":"es_es", - "string" : "Tiempo máximo en segundos para esperar a que finalice el script. Si se supera este tiempo, el script se cancela." - }] + "localized": [ + "name", + "description" + ], + "name": [ + { + "language_code": "en_us", + "string": "Run timeout" + }, + { + "language_code": "es_es", + "string": "Tiempo de espera de ejecución" + }, + { + "language_code": "de_de", + "string": "Wartezeit" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "Maximum time in seconds to wait for the script to finish. If this time is exceeded the script is aborted." + }, + { + "language_code": "es_es", + "string": "Tiempo máximo en segundos para esperar a que finalice el script. Si se supera este tiempo, el script se cancela." + } + ] }, { "function": "WATCH", "type": "text.multiselect", - "default_value":["Watched_Value1", "Watched_Value4"], - "options": ["Watched_Value1","Watched_Value2","Watched_Value3","Watched_Value4"], - "localized": ["name", "description"], - "name" :[{ - "language_code":"en_us", - "string" : "Watched" - }, - { - "language_code":"es_es", - "string" : "Visto" - }] , - "description":[{ - "language_code":"en_us", - "string" : "Send a notification if selected values change. Use CTRL + Click to select/deselect.
  • Watched_Value1 is Active
  • Watched_Value2 is Hostname
  • Watched_Value3 is hardware
  • Watched_Value4 is State
" - }, - { - "language_code":"es_es", - "string" : "Enviar una notificación si los valores seleccionados cambian. Utilice CTRL + clic para seleccionar/deseleccionar.
  • Watched_Value1 está activo
  • Watched_Value2 es el nombre de host
  • Watched_Value3 es hardware
  • Watched_Value4 es Estado
" - }] + "default_value": [ + "Watched_Value1", + "Watched_Value4" + ], + "options": [ + "Watched_Value1", + "Watched_Value2", + "Watched_Value3", + "Watched_Value4" + ], + "localized": [ + "name", + "description" + ], + "name": [ + { + "language_code": "en_us", + "string": "Watched" + }, + { + "language_code": "es_es", + "string": "Visto" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "Send a notification if selected values change. Use CTRL + Click to select/deselect.
  • Watched_Value1 is Active
  • Watched_Value2 is Hostname
  • Watched_Value3 is hardware
  • Watched_Value4 is State
" + }, + { + "language_code": "es_es", + "string": "Enviar una notificación si los valores seleccionados cambian. Utilice CTRL + clic para seleccionar/deseleccionar.
  • Watched_Value1 está activo
  • Watched_Value2 es el nombre de host
  • Watched_Value3 es hardware
  • Watched_Value4 es Estado
" + } + ] }, { "function": "REPORT_ON", "type": "text.multiselect", - "default_value":["new","watched-changed"], - "options": ["new","watched-changed","watched-not-changed", "missing-in-last-scan"], - "localized": ["name", "description"], - "name" :[{ - "language_code":"en_us", - "string" : "Report on" - }, - { - "language_code":"es_es", - "string" : "Informar sobre" - } ] , - "description":[{ - "language_code":"en_us", - "string" : "Send a notification only on these statuses. new means a new unique (unique combination of PrimaryId and SecondaryId) object was discovered. watched-changed means that selected Watched_ValueN columns changed." - }, - { - "language_code":"es_es", - "string" : "Envíe una notificación solo en estos estados. new significa que se descubrió un nuevo objeto único (una combinación única de PrimaryId y SecondaryId). watched-changed significa que las columnas Watched_ValueN seleccionadas cambiaron." - }] + "default_value": [ + "new", + "watched-changed" + ], + "options": [ + "new", + "watched-changed", + "watched-not-changed", + "missing-in-last-scan" + ], + "localized": [ + "name", + "description" + ], + "name": [ + { + "language_code": "en_us", + "string": "Report on" + }, + { + "language_code": "es_es", + "string": "Informar sobre" + } + ], + "description": [ + { + "language_code": "en_us", + "string": "Send a notification only on these statuses. new means a new unique (unique combination of PrimaryId and SecondaryId) object was discovered. watched-changed means that selected Watched_ValueN columns changed." + }, + { + "language_code": "es_es", + "string": "Envíe una notificación solo en estos estados. new significa que se descubrió un nuevo objeto único (una combinación única de PrimaryId y SecondaryId). watched-changed significa que las columnas Watched_ValueN seleccionadas cambiaron." + } + ] } ] -} +} \ No newline at end of file