{ "code_name": "snmp_discovery", "unique_prefix": "SNMPDSC", "plugin_type": "device_scanner", "enabled": true, "data_source": "script", "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"], "mapped_to_table": "CurrentScan", "display_name": [ { "language_code": "en_us", "string": "SNMP discovery" }, { "language_code": "es_es", "string": "Descubrimiento SNMP" }, { "language_code": "de_de", "string": "SNMP-Erkennung" } ], "icon": [ { "language_code": "en_us", "string": "" }, { "language_code": "es_es", "string": "" }, { "language_code": "de_de", "string": "" } ], "description": [ { "language_code": "en_us", "string": "This plugin is used to discover devices via the arp table(s) of a RFC1213 compliant router or switch." }, { "language_code": "es_es", "string": "Este complemento se utiliza para descubrir dispositivos a través de las tablas arp de un enrutador o conmutador compatible con RFC1213." } ], "params": [ { "name": "routers", "type": "setting", "value": "SNMPDSC_routers" } ], "database_column_definitions": [ { "column": "Index", "css_classes": "col-sm-2", "show": false, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "N/A" }, { "language_code": "es_es", "string": "N/A" } ] }, { "column": "Plugin", "css_classes": "col-sm-2", "show": false, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "N/A" }, { "language_code": "es_es", "string": "N/A" } ] }, { "column": "Object_PrimaryID", "mapped_to_column": "cur_MAC", "css_classes": "col-sm-2", "show": true, "type": "device_mac", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "MAC address" }, { "language_code": "es_es", "string": "Dirección 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" } ] }, { "column": "DateTimeCreated", "mapped_to_column": "cur_DateTime", "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" } ] }, { "column": "Watched_Value1", "mapped_to_column": "cur_Name", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "(unknown)", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Hostname" }, { "language_code": "es_es", "string": "Nombre de host" } ] }, { "column": "Watched_Value2", "css_classes": "col-sm-2", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Router IP" }, { "language_code": "es_es", "string": "Router IP" } ] }, { "column": "Watched_Value3", "css_classes": "col-sm-2", "show": false, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Type" }, { "language_code": "es_es", "string": "Tipo" } ] }, { "column": "Watched_Value4", "css_classes": "col-sm-2", "show": false, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Network" }, { "language_code": "es_es", "string": "Red" } ] }, { "column": "UserData", "css_classes": "col-sm-2", "show": false, "type": "textbox_save", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "Comments" }, { "language_code": "es_es", "string": "Comentarios" } ] }, { "column": "Extra", "css_classes": "col-sm-3", "show": true, "type": "label", "default_value": "", "options": [], "localized": ["name"], "name": [ { "language_code": "en_us", "string": "RAW output" }, { "language_code": "es_es", "string": "salida RAW" } ] }, { "column": "Dummy", "mapped_to_column": "cur_ScanMethod", "mapped_to_column_data": { "value": "SNMPDSC" }, "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" } ] }, { "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" } ] } ], "settings": [ { "function": "RUN", "events": ["run"], "type": { "dataType": "string", "elements": [ { "elementType": "select", "elementOptions": [], "transformers": [] } ] }, "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 a SNMP enabled device. 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. ⚠ Use the same schedule if you have multiple Device scanners enabled." }, { "language_code": "es_es", "string": "Habilite la importación de dispositivos desde un dispositivo habilitado para SNMP. 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": { "dataType": "string", "elements": [ { "elementType": "input", "elementOptions": [], "transformers": [] } ] }, "default_value": "python3 /app/front/plugins/snmp_discovery/script.py routers={s-quote}{routers}{s-quote}", "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. Not recommended to change." }, { "language_code": "es_es", "string": "Comando para ejecutar. No se recomienda cambiar." } ] }, { "function": "routers", "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-sm-12" }, { "onClick": "addList(this, false)" }, { "getStringKey": "Gen_Add" } ], "transformers": [] }, { "elementType": "button", "elementOptions": [ { "sourceSuffixes": [] }, { "separator": "" }, { "cssClasses": "col-sm-6" }, { "onClick": "removeAllOptions(this)" }, { "getStringKey": "Gen_Remove_All" } ], "transformers": [] }, { "elementType": "button", "elementOptions": [ { "sourceSuffixes": [] }, { "separator": "" }, { "cssClasses": "col-sm-6" }, { "onClick": "removeFromList(this)" }, { "getStringKey": "Gen_Remove_Last" } ], "transformers": [] }, { "elementType": "select", "elementOptions": [ { "multiple": "true" }, { "readonly": "true" }, { "editable": "true" } ], "transformers": [] } ] }, "default_value": [ "snmpwalk -v 2c -c public -OXsq 192.168.1.1 .1.3.6.1.2.1.3.1.1.2" ], "options": [], "localized": ["name", "description"], "name": [ { "language_code": "en_us", "string": "Routers" }, { "language_code": "es_es", "string": "Routers" } ], "description": [ { "language_code": "en_us", "string": "A list of snmpwalk commands to execute against IP addresses of roputers/switches with SNMP turned on.

Example with the router on the IP 192.168.1.1:
snmpwalk -v 2c -c public -OXsq 192.168.1.1 .1.3.6.1.2.1.3.1.1.2

Only IPv4 supported. Authentication is not supported. More info on the plugin here." }, { "language_code": "es_es", "string": "Una lista de comandos snmpwalk para ejecutar en direcciones IP de computadoras/conmutadores con SNMP activado.

Ejemplo con el enrutador en la IP 192.168.1.1:
snmpwalk -v 2c -c public -OXsq 192.168.1.1 .1.3.6.1. 2.1.3.1.1.2

Solo se admite IPv4. No se admite la autenticación. Más información sobre el complemento aquí." } ] }, { "function": "RUN_SCHD", "type": { "dataType": "string", "elements": [ { "elementType": "input", "elementOptions": [], "transformers": [] } ] }, "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 SNMPDSC_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 SNMPDSC_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": { "dataType": "integer", "elements": [ { "elementType": "input", "elementOptions": [{ "type": "number" }], "transformers": [] } ] }, "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 excede este tiempo, el script se cancela.." } ] }, { "function": "WATCH", "type": { "dataType": "array", "elements": [ { "elementType": "select", "elementOptions": [{ "multiple": "true" }], "transformers": [] } ] }, "default_value": ["Watched_Value1"], "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. " }, { "language_code": "es_es", "string": "Envíe una notificación si los valores seleccionados cambian. Utilice CTRL + clic para seleccionar/deseleccionar. " } ] }, { "function": "REPORT_ON", "type": { "dataType": "array", "elements": [ { "elementType": "select", "elementOptions": [{ "multiple": "true" }], "transformers": [] } ] }, "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." } ] } ] }