Mikrotik widget : Adding number of leases

This commit is contained in:
Benoit 2022-12-23 07:52:07 +01:00
parent 9ae58250f9
commit 416b67142f
3 changed files with 14 additions and 5 deletions

View File

@ -392,6 +392,7 @@
"mikrotik": {
"cpuload": "CPU Load",
"memoryused": "Memory Used",
"uptime": "Uptime"
"uptime": "Uptime",
"numberofleases": "Leases"
}
}

View File

@ -10,29 +10,34 @@ export default function Component({ service }) {
const { widget } = service;
const { data: statsData, error: statsError } = useWidgetAPI(widget, "system");
const { data: leasesData, error: leasesError } = useWidgetAPI(widget, "leases");
if (statsError) {
return <Container error={statsError} />;
if (statsError || leasesError) {
const finalError = statsError ?? leasesError;
return <Container error={ finalError } />;
}
if (!statsData) {
if (!statsData || !leasesData) {
return (
<Container service={service}>
<Block label="mikrotik.uptime" />
<Block label="mikrotik.cpuload" />
<Block label="mikrotik.memoryused" />
<Block label="mikrotik.numberofleases" />
</Container>
);
}
const memoryused = 100 - (statsData['free-memory'] / statsData['total-memory'])*100
const numberofleases = leasesData.length
return (
<Container service={service}>
<Block label="mikrotik.uptime" value={ statsData.uptime } />
<Block label="mikrotik.cpuload" value={t("common.number", { value: statsData['cpu-load'] })} />
<Block label="mikrotik.memoryused" value={t("common.percent", { value: memoryused })} />
<Block label="mikrotik.numberofleases" value={t("common.number", { value: numberofleases })} />
</Container>
);
}

View File

@ -9,6 +9,9 @@ const widget = {
system: {
endpoint: "system/resource",
},
leases: {
endpoint: "ip/dhcp-server/lease",
}
},
};