{ "code_name": "omada_sdn_imp", "unique_prefix": "OMDSDN", "plugin_type": "device_scanner", "execution_order" : "Layer_0", "enabled": true, "data_source": "script", "mapped_to_table": "CurrentScan", "data_filters": [ { "compare_column": "Object_PrimaryID", "compare_operator": "==", "compare_field_id": "txtMacFilter", "compare_js_template": "'{value}'.toString()", "compare_use_quotes": true } ], "show_ui": true, "localized": ["display_name", "description", "icon"], "display_name": [ { "language_code": "en_us", "string": "OMADA SDN import (do not use)" } ], "description": [ { "language_code": "en_us", "string": "Unmaintained and superseded. Use OMDSDNOPENAPI instead." } ], "icon": [ { "language_code": "en_us", "string": "" } ], "params": [], "settings": [ { "function": "RUN", "events": ["run"], "type": { "dataType": "string", "elements": [ { "elementType": "select", "elementOptions": [], "transformers": [] } ] }, "default_value": "disabled", "options": ["disabled", "once", "schedule", "always_after_scan"], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "When to run" }, { "language_code": "es_es", "string": "Cuándo ejecutar" }, { "language_code": "de_de", "string": "Wann laufen" } ], "description": [ { "language_code": "en_us", "string": "When the scan should run. Good options are: schedule" } ] }, { "function": "RUN_SCHD", "type": { "dataType": "string", "elements": [ { "elementType": "span", "elementOptions": [ { "cssClasses": "input-group-addon validityCheck" }, { "getStringKey": "Gen_ValidIcon" } ], "transformers": [] }, { "elementType": "input", "elementOptions": [ { "onChange": "validateRegex(this)" }, { "base64Regex": "Xig/OlwqfCg/OlswLTldfFsxLTVdWzAtOV18WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlswLTldfDFbMC05XXwyWzAtM118WzAtOV0rLVswLTldK3xcKi9bMC05XSspKVxzKyg/OlwqfCg/OlsxLTldfFsxMl1bMC05XXwzWzAxXXxbMC05XSstWzAtOV0rfFwqL1swLTldKykpXHMrKD86XCp8KD86WzEtOV18MVswLTJdfFswLTldKy1bMC05XSt8XCovWzAtOV0rKSlccysoPzpcKnwoPzpbMC02XXxbMC02XS1bMC02XXxcKi9bMC05XSspKSQ=" } ], "transformers": [] } ] }, "default_value": "*/5 * * * *", "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Schedule" } ], "description": [ { "language_code": "en_us", "string": "Only enabled if you select schedule in the SYNC_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." }, { "language_code": "es_es", "string": "Solo está habilitado si selecciona schedule en la configuración SYNC_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." }, { "language_code": "de_de", "string": "Nur aktiviert, wenn Sie schedule in der SYNC_RUN-Einstellung auswählen. Stellen Sie sicher, dass Sie den Zeitplan im richtigen Cron-ähnlichen Format eingeben (z. B. validieren unter crontab.guru). Wenn Sie beispielsweise 0 4 * * * eingeben, wird der Scan nach 4 Uhr morgens in der TIMEZONE den Sie oben festgelegt haben. Wird das NÄCHSTE Mal ausgeführt, wenn die Zeit vergeht." } ] }, { "function": "url", "type": { "dataType": "string", "elements": [ { "elementType": "input", "elementOptions": [], "transformers": [] } ] }, "maxLength": 50, "default_value": "", "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "URL" } ], "description": [ { "language_code": "en_us", "string": "Enter full URL with protocol https://CHANGEME_omada.mylocaldomain:PORT." } ] }, { "function": "sites", "type": { "dataType": "array", "elements": [ { "elementType": "input", "elementOptions": [ { "placeholder": "Enter value" }, { "suffix": "_in" }, { "cssClasses": "col-sm-10" }, { "prefillValue": "null" } ], "transformers": [] }, { "elementType": "button", "elementOptions": [ { "sourceSuffixes": ["_in"] }, { "separator": "" }, { "cssClasses": "col-xs-12" }, { "onClick": "addList(this, false)" }, { "getStringKey": "Gen_Add" } ], "transformers": [] }, { "elementType": "select", "elementHasInputValue": 1, "elementOptions": [ { "multiple": "true" }, { "readonly": "true" }, { "editable": "true" } ], "transformers": [] }, { "elementType": "button", "elementOptions": [ { "sourceSuffixes": [] }, { "separator": "" }, { "cssClasses": "col-xs-6" }, { "onClick": "removeAllOptions(this)" }, { "getStringKey": "Gen_Remove_All" } ], "transformers": [] }, { "elementType": "button", "elementOptions": [ { "sourceSuffixes": [] }, { "separator": "" }, { "cssClasses": "col-xs-6" }, { "onClick": "removeFromList(this)" }, { "getStringKey": "Gen_Remove_Last" } ], "transformers": [] } ] }, "default_value": [], "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "OMADA sites" } ], "description": [ { "language_code": "en_us", "string": "Omada SDN site IDs. For now, we only process the first site listed since NetAlertX's other probes won't traverse across NAT and routers. But if needed please submit an issue in github with your specific use case for consideration: https://github.com/jokob-sk/NetAlertX/issues " } ] }, { "function": "username", "type": { "dataType": "string", "elements": [ { "elementType": "input", "elementOptions": [], "transformers": [] } ] }, "maxLength": 50, "default_value": "", "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "User name" } ], "description": [ { "language_code": "en_us", "string": "Omada SDN instance user name." } ] }, { "function": "password", "type": { "dataType": "string", "elements": [ { "elementType": "input", "elementOptions": [{ "type": "password" }], "transformers": [] } ] }, "maxLength": 50, "default_value": "", "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Password" } ], "description": [ { "language_code": "en_us", "string": "Omada SDN instance password." } ] }, { "function": "force_overwrite", "type": { "dataType": "boolean", "elements": [ { "elementType": "input", "elementOptions": [{ "type": "checkbox" }], "transformers": [] } ] }, "default_value": false, "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Force overwrite" } ], "description": [ { "language_code": "en_us", "string": "The plugin synchronizes names from NetAlertX to OMADA Clients. By default NetAlertX will only populate missing names in OMADASDN devices (i.e.: where the name is defaulting to the device MAC address); with this setting toggled, it will overwrite existing values regardless." } ] }, { "function": "CMD", "type": { "dataType": "string", "elements": [ { "elementType": "input", "elementOptions": [{ "readonly": "true" }], "transformers": [] } ] }, "default_value": "python3 /app/front/plugins/omada_sdn_imp/omada_sdn.py", "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Command" }, { "language_code": "es_es", "string": "Comando" }, { "language_code": "de_de", "string": "Befehl" } ], "description": [ { "language_code": "en_us", "string": "Command to run. This can not be changed" }, { "language_code": "es_es", "string": "Comando a ejecutar. Esto no se puede cambiar" }, { "language_code": "de_de", "string": "Befehl zum Ausführen. Dies kann nicht geändert werden" } ] }, { "function": "RUN_TIMEOUT", "type": { "dataType": "integer", "elements": [ { "elementType": "input", "elementOptions": [{ "type": "number" }], "transformers": [] } ] }, "default_value": 30, "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Run timeout" }, { "language_code": "es_es", "string": "Tiempo límite de ejecución" }, { "language_code": "de_de", "string": "Zeitüberschreitung" } ], "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." }, { "language_code": "de_de", "string": "Maximale Zeit in Sekunden, die auf den Abschluss des Skripts gewartet werden soll. Bei Überschreitung dieser Zeit wird das Skript abgebrochen." } ] }, { "default_value": [], "description": [ { "language_code": "en_us", "string": "Send a notification if selected values change. Use CTRL + Click to select/deselect. " } ], "function": "WATCH", "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Watched" }, { "language_code": "es_es", "string": "Visto" } ], "options": [ "Watched_Value1", "Watched_Value2", "Watched_Value3", "Watched_Value4" ], "type": { "dataType": "array", "elements": [ { "elementType": "select", "elementOptions": [{ "multiple": "true" }], "transformers": [] } ] } }, { "default_value": ["new", "watched-changed"], "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." } ], "function": "REPORT_ON", "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Report on" } ], "options": [ "new", "watched-changed", "watched-not-changed", "missing-in-last-scan" ], "type": { "dataType": "array", "elements": [ { "elementType": "select", "elementOptions": [{ "multiple": "true" }], "transformers": [] } ] } } ], "database_column_definitions": [ { "column": "Index", "css_classes": "col-sm-2", "show": true, "type": "none", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Index" } ] }, { "column": "Object_PrimaryID", "mapped_to_column": "cur_MAC", "css_classes": "col-sm-3", "show": true, "type": "device_name_mac", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "MAC (name)" }, { "language_code": "es_es", "string": "MAC" }, { "language_code": "de_de", "string": "MAC" } ] }, { "column": "Object_SecondaryID", "mapped_to_column": "cur_IP", "css_classes": "col-sm-2", "show": true, "type": "device_ip", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "IP" }, { "language_code": "es_es", "string": "IP" }, { "language_code": "de_de", "string": "IP" } ] }, { "column": "Watched_Value1", "mapped_to_column": "cur_Name", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Name" } ] }, { "column": "Watched_Value2", "mapped_to_column": "cur_NetworkNodeMAC", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Parent Network MAC" } ] }, { "column": "Watched_Value3", "mapped_to_column": "cur_PORT", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Port" } ] }, { "column": "Watched_Value4", "mapped_to_column": "cur_SSID", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "SSID" } ] }, { "column": "Extra", "mapped_to_column": "cur_Type", "css_classes": "col-sm-2", "show": false, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Site or Vendor" } ] }, { "column": "Dummy", "mapped_to_column": "cur_ScanMethod", "mapped_to_column_data": { "value": "OMDSDN" }, "css_classes": "col-sm-2", "show": false, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Scan method" }, { "language_code": "es_es", "string": "Método de escaneo" }, { "language_code": "de_de", "string": "Scanmethode" } ] }, { "column": "DateTimeCreated", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Created" }, { "language_code": "es_es", "string": "Creado" }, { "language_code": "de_de", "string": "Erstellt" } ] }, { "column": "DateTimeChanged", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Changed" }, { "language_code": "es_es", "string": "Cambiado" }, { "language_code": "de_de", "string": "Geändert" } ] }, { "column": "Status", "css_classes": "col-sm-1", "show": true, "type": "replace", "default_value": "", "options": [ { "equals": "watched-not-changed", "replacement": "
" }, { "equals": "watched-changed", "replacement": "
" }, { "equals": "new", "replacement": "
" }, { "equals": "missing-in-last-scan", "replacement": "
" } ], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Status" }, { "language_code": "es_es", "string": "Estado" }, { "language_code": "de_de", "string": "Status" } ] } ] }