src/daemon/graphs/contextswitches.c \
src/daemon/graphs/contextswitches.h \
src/daemon/graphs/graph.h \
+ src/daemon/graphs/hostapd.c \
+ src/daemon/graphs/hostapd.h \
src/daemon/graphs/loadavg.c \
src/daemon/graphs/loadavg.h \
src/daemon/graphs/memory.c \
src/daemon/graphs/contextswitches.h
src/daemon/graphs/graph.h
src/daemon/graphs.h
+src/daemon/graphs/hostapd.c
+src/daemon/graphs/hostapd.h
src/daemon/graphs/loadavg.c
src/daemon/graphs/loadavg.h
src/daemon/graphs/memory.c
src/daemon/sources/df.c
src/daemon/sources/df.h
src/daemon/sources.h
+src/daemon/sources/hostapd.c
+src/daemon/sources/hostapd.h
src/daemon/sources/ipfrag4.c
src/daemon/sources/ipfrag4.h
src/daemon/sources/loadavg.c
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Arabic (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "متوسط الجهد"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Catalan (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Czech (Czech Republic) (http://www.transifex.com/mstremer/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Průměrná zátěž 1m"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Danish (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Gennemsnitlig belastning"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2020-09-28 18:12+0100\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: German (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr "Kontextwechsel/s"
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr "Load Average"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Greek (Greece) (http://www.transifex.com/mstremer/ipfire/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Spanish (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Carga media"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Persian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "متوسط بارگزاری"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: French (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Charge moyenne"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Croatian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Prosječno opterećenje"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Hungarian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Átlag terhelés"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Indonesian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Muatan rata-rata"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Italian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Caricamento medio"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Japanese (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Javanese (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Khmer (Cambodia) (http://www.transifex.com/mstremer/ipfire/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Load មធ្យម"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Dutch (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Gemiddelde belasting"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Polish (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "średnie obciążenie"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Portuguese (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/mstremer/ipfire/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Carga média"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Portuguese (Portugal) (http://www.transifex.com/mstremer/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Romanian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Romanian (Romania) (http://www.transifex.com/mstremer/ipfire/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Încărcarea medie"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Russian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Загрузка около"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Kinyarwanda (http://www.transifex.com/mstremer/ipfire/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Slovak (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Albanian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Ngarko mesatarisht"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Serbian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Sundanese (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Swedish (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Snitt belastning"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Thai (http://www.transifex.com/mstremer/ipfire/language/th/)\n"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Turkmen (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Turkish (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Ortalama yük"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Ukrainian (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
#, fuzzy
msgid "Load Average"
msgstr "Завантаження біля"
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Uzbek (Latin) (http://www.transifex.com/mstremer/ipfire/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Vietnamese (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
msgstr ""
"Project-Id-Version: IPFire Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-10-19 13:40+0000\n"
+"POT-Creation-Date: 2025-10-21 10:43+0000\n"
"PO-Revision-Date: 2015-10-26 17:22+0000\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: Chinese (http://www.transifex.com/mstremer/ipfire/language/"
msgid "Context Switches/s"
msgstr ""
+#, python-format
+msgid "Station %s - Signal"
+msgstr ""
+
+msgid "RSSI - dBm"
+msgstr ""
+
+msgid "Signal"
+msgstr ""
+
+msgid "dBm"
+msgstr ""
+
+msgid "Last ACK Signal"
+msgstr ""
+
msgid "Load Average"
msgstr ""
// Load all graphs
#include "graphs/conntrack.h"
#include "graphs/contextswitches.h"
+#include "graphs/hostapd.h"
#include "graphs/loadavg.h"
#include "graphs/memory.h"
#include "graphs/processor.h"
static const td_graph_impl* graph_impls[] = {
&conntrack_graph,
&contextswitches_graph,
+ &hostapd_station_signal_graph,
&loadavg_graph,
&memory_graph,
&processor_graph,
--- /dev/null
+/*#############################################################################
+# #
+# telemetryd - The IPFire Telemetry Collection Service #
+# Copyright (C) 2025 IPFire Development Team #
+# #
+# This program is free software: you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation, either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# This program is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see <http://www.gnu.org/licenses/>. #
+# #
+#############################################################################*/
+
+#include <limits.h>
+
+#include "../string.h"
+#include "graph.h"
+#include "hostapd.h"
+
+/*
+ This graph is showing the signal from the station to the AP.
+
+ It would have been nice to show the other way round, too (last_ack_signal),
+ but on my development system this is always showing (-95 dBm) for all stations.
+*/
+
+static int hostapd_station_signal_title(td_ctx* ctx, td_graph* graph,
+ const char* object, char* title, size_t length) {
+ return __td_string_format(title, length, _("Station %s - Signal"), object);
+}
+
+static int hostapd_station_signal_vlabel(td_ctx* ctx, td_graph* graph,
+ const char* object, char* vlabel, size_t length) {
+ return __td_string_set(vlabel, length, _("RSSI - dBm"));
+}
+
+static int hostapd_station_signal_render(td_ctx* ctx,
+ td_graph* graph, td_args* args, const char* object) {
+ int r;
+
+ // This require the source
+ r = td_graph_require_source(graph, args, "hostapd", object);
+ if (r < 0)
+ return r;
+
+ // Header
+ PRINT_HEADER4(args, _("Current"), _("Average"), _("Minimum"), _("Maximum"));
+
+ // Draw signal
+ DRAW_LINE2_WITH_LABEL(args, "signal", object, BLACK, _("Signal"));
+ PRINT_CAMM(args, "signal", object, FLOAT_WITH_UNIT, _("dBm"));
+
+ // Draw last ACK signal
+ DRAW_LINE2_WITH_LABEL(args, "last_ack_signal", object, GREY, _("Last ACK Signal"));
+ PRINT_CAMM(args, "last_ack_signal", object, FLOAT_WITH_UNIT, _("dBm"));
+
+ return 0;
+}
+
+const td_graph_impl hostapd_station_signal_graph = {
+ .name = "HostapdStationSignal",
+ .render = hostapd_station_signal_render,
+ .title = hostapd_station_signal_title,
+ .vlabel = hostapd_station_signal_vlabel,
+
+ // Limits
+ .lower_limit = -LONG_MAX,
+ .upper_limit = 0,
+};
--- /dev/null
+/*#############################################################################
+# #
+# telemetryd - The IPFire Telemetry Collection Service #
+# Copyright (C) 2025 IPFire Development Team #
+# #
+# This program is free software: you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation, either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# This program is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see <http://www.gnu.org/licenses/>. #
+# #
+#############################################################################*/
+
+#ifndef TELEMETRY_GRAPH_HOSTAPD_H
+#define TELEMETRY_GRAPH_HOSTAPD_H
+
+#include "../graph.h"
+
+extern const td_graph_impl hostapd_station_signal_graph;
+
+#endif /* TELEMETRY_GRAPH_HOSTAPD_H */
if (!self->impl->heartbeat)
return 0;
+#if 0
// To avoid any load peaks, stagger sources
heartbeat = SEC_TO_USEC(rand() % STAGGER);
+#endif
// Call the heartbeat function immediately
r = sd_event_add_time_relative(self->loop, &self->events.heartbeat,