{
  "code_name": "notification_processing",
  "unique_prefix": "NTFPRCS",
  "plugin_type": "core",
  "enabled": true,
  "data_source": "script",
  "show_ui": false,
  "localized": ["display_name", "description", "icon"],
  "display_name": [
    {
      "language_code": "en_us",
      "string": "Notification Processing"
    }
  ],
  "icon": [
    {
      "language_code": "en_us",
      "string": "<i class=\"fa-solid fa-envelopes-bulk\"></i>"
    }
  ],
  "description": [
    {
      "language_code": "en_us",
      "string": "A plugin to for advanced notification processing."
    }
  ],
  "params": [],

  "settings": [
    {
      "function": "INCLUDED_SECTIONS",
      "type": {
        "dataType": "array",
        "elements": [
          {
            "elementType": "select",
            "elementOptions": [{ "multiple": "true", "ordeable": "true" }],
            "transformers": []
          }
        ]
      },
      "default_value": ["new_devices", "down_devices", "events"],
      "options": [
        "new_devices",
        "down_devices",
        "down_reconnected",
        "events",
        "plugins"
      ],
      "localized": ["name", "description"],
      "name": [
        {
          "language_code": "en_us",
          "string": "Notify on"
        },
        {
          "language_code": "de_de",
          "string": "Benachrichtigungen"
        },
        {
          "language_code": "es_es",
          "string": "Notificar en"
        }
      ],
      "description": [
        {
          "language_code": "en_us",
          "string": "Specifies which events trigger notifications. Remove the event type(s) you do not want to get notified on. This setting overrides device-specific settings in the UI."
        },
        {
          "language_code": "de_de",
          "string": "Spezifiziert, bei welchen Events Benachrichtigungen versendet werden. Entfernen Sie die Eventtypen, bei welchen Sie nicht benachrichtigt werden wollen. Diese Einstellung überschreibt gerätespezifische Einstellungen im UI."
        },
        {
          "language_code": "es_es",
          "string": "Especifica que eventos envían notificaciones. Elimina los tipos de eventos de los que no quieras recibir notificaciones. Este ajuste sobreescribe los ajustes específicos de los dispositivos en la interfaz."
        }
      ]
    },
    {
      "function": "alert_down_time",
      "type": {
        "dataType": "integer",
        "elements": [
          {
            "elementType": "input",
            "elementOptions": [{ "type": "number" }],
            "transformers": []
          }
        ]
      },
      "default_value": 5,
      "options": [],
      "localized": ["name", "description"],
      "name": [
        {
          "language_code": "en_us",
          "string": "Alert Down After"
        }
      ],
      "description": [
        {
          "language_code": "en_us",
          "string": "After how many minutes a device is reported as down and a notification is sent."
        }
      ]
    },
    {
      "function": "new_dev_condition",
      "type": {
        "dataType": "string",
        "elements": [
          { "elementType": "input", "elementOptions": [], "transformers": [] }
        ]
      },
      "default_value": "",
      "options": [],
      "localized": ["name", "description"],
      "name": [
        {
          "language_code": "en_us",
          "string": "New Devices Filter"
        }
      ],
      "description": [
        {
          "language_code": "en_us",
          "string": "You can specify a SQL where condition to filter out New Devices from notifications. For example <code>AND devLastIP NOT LIKE '192.168.3.%'</code> will always exclude New Device notifications for all devices with the IP starting with <code>192.168.3.%</code>."
        }
      ]
    },
    {
      "function": "event_condition",
      "type": {
        "dataType": "string",
        "elements": [
          { "elementType": "input", "elementOptions": [], "transformers": [] }
        ]
      },
      "default_value": "",
      "options": [],
      "localized": ["name", "description"],
      "name": [
        {
          "language_code": "en_us",
          "string": "Events Filter"
        }
      ],
      "description": [
        {
          "language_code": "en_us",
          "string": "You can specify a SQL where condition to filter out Events from notifications. For example <code>AND devLastIP NOT LIKE '192.168.3.%'</code> will always exclude New Device notifications for all devices with the IP starting with <code>192.168.3.%</code>."
        }
      ]
    }
  ],

  "database_column_definitions": []
}
