{ "code_name": "omada_sdn_imp", "unique_prefix": "OMDSDN", "plugin_type": "device_scanner", "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" } ], "description": [ { "language_code": "en_us", "string": "Plugin to import data from OMADA SDN." } ], "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": "input", "elementOptions": [], "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." } ] }, { "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": "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": [] }, { "elementType": "select", "elementOptions": [ { "multiple": "true" }, { "readonly": "true" }, { "editable": "true" } ], "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. You can get it by..." } ] }, { "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. 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": "Object_PrimaryID", "mapped_to_column": "cur_MAC", "css_classes": "col-sm-2", "show": true, "type": "device_name_mac", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "MAC" }, { "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": true, "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" } ] } ] }