Omada widget : One widget, shows only the number alerts, the number of connected AP, the number of connected devices to Wifi, the number of connected switches and gatewawys.

This commit is contained in:
Benoit 2022-12-13 18:15:20 +01:00
parent a1babd860c
commit 93d80350b1
6 changed files with 5 additions and 74 deletions

View file

@ -25,7 +25,6 @@ const components = {
npm: dynamic(() => import("./npm/component")),
nzbget: dynamic(() => import("./nzbget/component")),
omada: dynamic(() => import("./omada/component")),
omadalan: dynamic(() => import("./omadalan/component")),
ombi: dynamic(() => import("./ombi/component")),
overseerr: dynamic(() => import("./overseerr/component")),
paperlessngx: dynamic(() => import("./paperlessngx/component")),

View file

@ -23,7 +23,8 @@ export default function Component({ service }) {
<Block label="omada.connectedAp" />
<Block label="omada.activeUser" />
<Block label="omada.alerts" />
<Block label="omada.isolatedAp" />
<Block label="omada.connectedGateway" />
<Block label="omada.connectedSwitches" />
</Container>
);
}
@ -33,7 +34,8 @@ export default function Component({ service }) {
<Block label="omada.connectedAp" value={t( "common.number", { value: omadaData.connectedAp})} />
<Block label="omada.activeUser" value={t( "common.number", { value: omadaData.activeUser })} />
<Block label="omada.alerts" value={t( "common.number", { value: omadaData.alerts })} />
<Block label="omada.isolatedAp" value={t("common.number", { value: omadaData.isolatedAp})} />
{ omadaData.connectedGateways > 0 && <Block label="omada.connectedGateway" value={t("common.number", { value: omadaData.connectedGateways})} /> }
{ omadaData.connectedSwitches > 0 && <Block label="omada.connectedSwitches" value={t("common.number", { value: omadaData.connectedSwitches})} /> }
</Container>
);
}

View file

@ -60,13 +60,9 @@ export default async function omadaProxyHandler(req, res) {
let cid;
let cversion;
let connectedAp;
let isolatedAp;
let disconnectedAp;
let activeuser;
let connectedSwitches;
let connectedGateways;
let availablePorts;
let powerConsumption;
let alerts;
let loginUrl;
@ -210,8 +206,6 @@ export default async function omadaProxyHandler(req, res) {
}
connectedAp = data.result.connectedAp;
activeuser = data.result.activeUser;
isolatedAp = data.result.isolatedAp;
disconnectedAp = data.result.disconnectedAp;
alerts = data.result.alerts;
} else {
@ -245,11 +239,9 @@ export default async function omadaProxyHandler(req, res) {
activeuser = clientresult.result.totalClientNum;
connectedAp = clientresult.result.connectedApNum;
isolatedAp = clientresult.result.isolatedApNum;
connectedGateways = clientresult.result.connectedGatewayNum;
connectedSwitches = clientresult.result.connectedSwitchNum;
availablePorts = clientresult.result.availablePorts;
powerConsumption = clientresult.result.powerConsumption;
let alertUrl;
if (cversion >= "5.0.0") {
@ -271,12 +263,8 @@ export default async function omadaProxyHandler(req, res) {
"connectedAp": connectedAp,
"activeUser": activeuser,
"alerts": alerts,
"isolatedAp": isolatedAp,
"connectedGateways": connectedGateways,
"connectedSwitches": connectedSwitches,
"availablePorts": availablePorts,
"powerConsumption": powerConsumption,
"disconnectedAp": disconnectedAp,
}));
}
}

View file

@ -1,41 +0,0 @@
import { useTranslation } from "next-i18next";
import useWidgetAPI from "../../utils/proxy/use-widget-api";
import Container from "../../components/services/widget/container";
import Block from "../../components/services/widget/block";
export default function Component({ service }) {
const { t } = useTranslation();
const { widget } = service;
const { data: omadaData, error: omadaAPIError } = useWidgetAPI(widget, "stats", {
refreshInterval: 5000,
});
if (omadaAPIError) {
return <Container error={omadaAPIError} />;
}
if (!omadaData) {
return (
<Container service={service}>
<Block label="omada.alerts" />
<Block label="omada.connectedGateway" />
<Block label="omada.powerConsumption" />
<Block label="omada.availablePorts" />
<Block label="omada.connectedSwitches" />
</Container>
);
}
return (
<Container service={service}>
<Block label="omada.alerts" value={t( "common.number", { value: omadaData.alerts })} />
<Block label="omada.connectedGateway" value={t("common.number", { value: omadaData.connectedGateways})}/>
<Block label="omada.powerConsumption" value={t("common.power", { value: omadaData.powerConsumption})}/>
<Block label="omada.availablePorts" value={t("common.number", { value: omadaData.availablePorts})}/>
<Block label="omada.connectedSwitches" value={t("common.number", { value: omadaData.connectedSwitches})} />
</Container>
);
}

View file

@ -1,15 +0,0 @@
import omadaProxyHandler from "../omada/proxy";
// import genericProxyHandler from "../../utils/proxy/handlers/generic";
const widget = {
api: "{url}/web/v1/{endpoint}",
proxyHandler: omadaProxyHandler,
mappings: {
stats: {
endpoint: "controller",
}
}
};
export default widget;

View file

@ -20,7 +20,6 @@ import navidrome from "./navidrome/widget";
import npm from "./npm/widget";
import nzbget from "./nzbget/widget";
import omada from "./omada/widget";
import omadalan from './omadalan/widget';
import ombi from "./ombi/widget";
import overseerr from "./overseerr/widget";
import paperlessngx from "./paperlessngx/widget";
@ -71,7 +70,6 @@ const widgets = {
npm,
nzbget,
omada,
omadalan,
ombi,
overseerr,
paperlessngx,