Funktion des Smartmeter-Servers
Übersicht
Der Grafik kann die Struktur der Komponenten des Mibakus-Smartmeter-Servers entnommen werden

Komponentenbeschreibung
- Geräte-Verwaltung
- Dieses Modul enthält eine Liste aller von der Hardware bereitgestellten Geräte. Als Gerät in diesem Sinn ist ein von einem LoRaWAN-Devices gelieferter Zähler- oder Sensorwert zu verstehen.
- Zähler-Verwaltung
- Diese Komponente hält eine Liste der vorhandenen Zähler, die aus den vom Mibakus-Desktop-Programm erhaltenen Informationen gebildet wird. Für jeden Zähler werden die erhaltenen Zählerstände auf der Festplatte gesichert
- LoRaWAN-Verwaltung
- Sie enthält eine Liste aller LoRaWAN-Geräte. Für jedes Gerät wird eine Liste der enthaltenen Zähler und Sensoren gehalten, jede erhaltene Nachricht wird auf der Festplatte gespeichert
- ChirpStack bzw. TTN-Decoder
- Diese enthalten die Anpassungen an den entsprechenden Application-Server, insbesondere die unterschiedliche Dekodierung der empfangenen Daten
- Verbrauchsberechnung
- Sie berechnet monatlich aus den Zählerständen und den vom Mibakus-Desktop-Programm erhaltenen Informationen die Verbräuche der einzelnen Mieter und erzeugt daraus die E-Mails zum Versand
- Zeitsteuerung
- Sie sorgt für die Aktivierung der Verbrauchsberechnung und den Versand der Statusmails
- Sensorenverwaltung
- Sie enthält eine Liste der in der Konfigurationsdatei definierten Sensoren und hält für jeden Sensor eine Referenz auf das zugehörige Gerät
- Alarmerzeugung
- Diese Komponente ermittelt regelmäßig beim Eintreffen eines Sensorwertes, ob eine Alarmbedingung eingetreten ist und erzeugt bei Bedarf eine entsprechende E-Mail
- E-Mail-Versand
- Sie kümmert sich um den Versand der E-Mails. Alle E-Mails werden vor dem Versand auf der Festplatte gespeichert, um sicherzustellen, dass E-Mails auch bei Problemen nicht verloren gehen.
- Setup/Konfiguration
- Diese Komponente wird beim Start des Mibakus-Smartmeter-Servers aktiv und versorgt alle anderen Module mit den Daten des Konfigurationsfiles
- Web-Oberfläche
- Dieses Modul erzeugt die Web-Oberfläche und sammelt dazu aus den anderen Komponenten die benötigten Informationen ein.
