BIMS - Internes Gebaude Monitoring System
Bild, das das Projekt BIMS - Internes Gebaude Monitoring System darstellt

BIMS - Internes Gebaude Monitoring System

Autor Nikola Filipovski
Foto des Autors Nikola Filipovski

Nikola Filipovski

Full-Stack Webentwickler

Über das Projekt

BIMS (Building Internal Monitoring System) ist eine Anwendung zur Überwachung eines lokalen Netzwerks, entwickelt mit Node.js und EJS Templating. Im Gegensatz zu traditionellen Systemen, die auf MySQL oder Cloud-Datenbanken setzen, verwendet BIMS Excel-Dateien (.xlsx) als Datenbank. Jedes Gebäude wird als eigener Ordner dargestellt, und jeder Ordner enthält dynamische Excel-Tabellen mit Gerätedaten.

Dieser Ansatz ermöglichte es dem Unternehmen, bestehende Dokumente weiterzuverwenden und kostspielige Migrationen zu vermeiden. Administratoren konnten Excel-Dateien direkt über die Benutzeroberfläche hochladen, generieren oder bearbeiten, während das System die Daten in Echtzeit interpretierte.

Architektur und Design

BIMS ist eine ausschließlich im lokalen Netzwerk verfügbare Anwendung. Sie wird auf einem privaten Server gehostet und ist nur innerhalb des internen LAN zugänglich. Die Anwendung wurde entwickelt, um jedes Gerät mit einer statischen IP-Adresse zu überwachen, darunter:

  • IP-Kameras
  • Drucker
  • Wi-Fi Access Points
  • Computer und Server
  • Switches und Fernseher
  • Rufanlagen für Pflegepersonal
  • Jedes andere Gerät mit statischer IP-Adresse

Das System überprüft periodisch, ob Geräte online oder offline sind, indem ihre IP-Adressen angepingt werden, und aktualisiert anschließend die Benutzeroberfläche basierend auf den Ergebnissen.

Bild, das eine spezielle Gebäudeseite der BIMS-Website darstellt

Admin-Steuerung und Rollenberechtigungen

Die Benutzerverwaltung innerhalb von BIMS ist vollständig dynamisch. Nur Administratoren können neue Benutzer erstellen und individuelle Rollen zuweisen. Berechtigungen können einschränken:

  • Auf welche Gebäude ein Benutzer zugreifen darf
  • Welche Gerätekategorien angezeigt werden
  • Zugriff auf Logs, Berichte und Systemeinstellungen

Zum Beispiel kann ein Administrator folgende Rollen definieren:

Rolle Gebäude Zugriffsebene
Wartung Gebäude 1 Alle Geräte
Rezeption Gebäude 2 Nur TV, Wi-Fi und Telefone
Techniker Gebäude 3 Kameras und Drucker

Administratoren können außerdem weitere Administratoren mit vollständigem Zugriff auf alle Gebäude, Geräte und Aktionen erstellen.

Bild, das eine Geräteliste-Seite mit Administrationsbefehlen/-kontrollen zeigt, wenn als Admin-Benutzer angemeldet

Datenbanklogik mit XLSX-Dateien

Anstelle von SQL- oder NoSQL-Datenbanken behandelt BIMS Ordner als Gebäude und .xlsx-Dateien als Tabellen. Die Anwendung kann:

  • Neue Gebäudeordner über die Benutzeroberfläche erstellen
  • Bestehende Excel-Gerätelisten hochladen
  • Neue Dateien generieren, falls keine vorhanden sind
  • Neue Geräte direkt über das Dashboard hinzufügen

Diese Methode ermöglichte es dem Unternehmen, weiterhin mit vertrauten Tabellen zu arbeiten und gleichzeitig von einem Echtzeit-Monitoring-System zu profitieren.

"Die Datenbank ist buchstäblich ein Ordner. Die Tabellen sind Excel-Dateien. Das System ist intelligent genug, um sie als strukturierte Daten zu behandeln."
Bild, das die Ordner- und Dateistruktur darstellt

Logging und Sicherheit

BIMS verfügt über ein integriertes Logging-System für Administratoren, das folgende Ereignisse erfasst:

  • Fehlgeschlagene Anmeldeversuche
  • Fehler bei Gerätescans
  • Warnmeldungen und Systemstatus
  • Benutzeraktivitäten bei Datei- oder Rollenänderungen

Die Logs speichern Geräteinformationen und IP-Adressen der Benutzer und zeigen genau, was passiert ist und von wo aus. Dies hilft Administratoren, die Kontrolle zu behalten und Fehlkonfigurationen schnell zu erkennen.

Serverzuverlässigkeit und PM2

Die Anwendung wird mit PM2 dauerhaft am Laufen gehalten und bietet:

  • Automatischen Neustart bei Abstürzen
  • Automatischen Neustart nach einem System-Reboot
  • Verwaltung von Hintergrunddiensten
  • Ressourcen-Monitoring für Node.js
Logo des PM2 Prozessmanagers

In der Praxis bedeutet dies, dass das System dauerhaft läuft. Selbst wenn der Server neu startet oder ein Dienst abstürzt, stellt PM2 den Betrieb automatisch wieder her.

Responsiv, praxisnah und für den realen Einsatz entwickelt

Die Benutzeroberfläche wurde responsiv gestaltet, sodass die Anwendung auf Desktop-Computern, Tablets und mobilen Geräten genutzt werden kann. Das Design konzentriert sich auf Übersichtlichkeit statt Komplexität und ist auch für nicht-technisches Personal leicht verständlich.

Entwickelt zur Lösung eines realen Problems mit Werkzeugen, die bereits vorhanden waren. Manchmal bedeutet Innovation nicht, neue Technologie zu erfinden, sondern bestehende Lösungen intelligenter einzusetzen.

Wenn Sie Interesse an der Entwicklung einer ähnlichen Monitoring-Lösung für Ihr Unternehmen haben, kontaktieren Sie mich gerne.