diff --git a/docs/widgets/services/netalertx.md b/docs/widgets/services/netalertx.md index 1f618182c..a67de624c 100644 --- a/docs/widgets/services/netalertx.md +++ b/docs/widgets/services/netalertx.md @@ -9,11 +9,17 @@ _Note that the project was renamed from PiAlert to NetAlertX._ Allowed fields: `["total", "connected", "new_devices", "down_alerts"]`. -If you have enabled a password on your NetAlertX instance, you will need to provide the `SYNC_api_token` as the `key` in your config. +Provide the `API_TOKEN` (f.k.a. `SYNC_api_token`) as the `key` in your config. + +| NetAlertX Version | Homepage Widget Version | +| ----------------- | ----------------------- | +| < v26.1.17 | 1 (default) | +| > v26.1.17 | 2 | ```yaml widget: type: netalertx url: http://ip:port - key: netalertxsyncapitoken # optional, only if password is enabled + key: yournetalertxapitoken + version: 2 # optional, default is 1 ``` diff --git a/src/utils/config/service-helpers.js b/src/utils/config/service-helpers.js index b47e1b7c4..dc141cd91 100644 --- a/src/utils/config/service-helpers.js +++ b/src/utils/config/service-helpers.js @@ -314,7 +314,7 @@ export function cleanServiceGroups(groups) { // gamedig gameToken, - // authentik, beszel, glances, immich, komga, mealie, pihole, pfsense, speedtest + // authentik, beszel, glances, immich, komga, mealie, netalertx, pihole, pfsense, speedtest version, // glances @@ -559,6 +559,7 @@ export function cleanServiceGroups(groups) { "immich", "komga", "mealie", + "netalertx", "pfsense", "pihole", "speedtest", diff --git a/src/widgets/netalertx/component.jsx b/src/widgets/netalertx/component.jsx index 786db9a55..21885a627 100644 --- a/src/widgets/netalertx/component.jsx +++ b/src/widgets/netalertx/component.jsx @@ -9,7 +9,9 @@ export default function Component({ service }) { const { widget } = service; - const { data: netalertxData, error: netalertxError } = useWidgetAPI(widget, "data"); + const dataEndpoint = widget?.version > 1 ? "datav2" : "data"; + + const { data: netalertxData, error: netalertxError } = useWidgetAPI(widget, dataEndpoint); if (netalertxError) { return ; diff --git a/src/widgets/netalertx/widget.js b/src/widgets/netalertx/widget.js index 033d3d81d..176a8c4c2 100644 --- a/src/widgets/netalertx/widget.js +++ b/src/widgets/netalertx/widget.js @@ -1,12 +1,15 @@ import credentialedProxyHandler from "utils/proxy/handlers/credentialed"; const widget = { - api: "{url}/php/server/devices.php?action=getDevicesTotals", + api: "{url}/{endpoint}", proxyHandler: credentialedProxyHandler, mappings: { data: { - endpoint: "data", + endpoint: "php/server/devices.php?action=getDevicesTotals", + }, + datav2: { + endpoint: "devices/totals", }, }, };