RZ-Monitor

Hilfe

RZ-Monitor Stufe 1 zeigt den Stromverbrauch des RZ-Racks (Skylink-Feed, Rack D.B.3, Feeds A und B) in Echtzeit an. Version 1.0.1.

Anzeige

Die große Zahl zeigt die aktuelle Gesamtleistung (Summe der Feeds A und B). Darunter stehen die Einzelwerte je Feed mit dem Alter der letzten Messung. Ein Feed wird rot markiert, wenn er 0 W meldet oder die letzte Messung älter als 45 Minuten ist (Skylink aktualisiert nur etwa alle 30 Minuten) – das ist eine reine Anzeige-Markierung, es werden keine Mails verschickt. Die Seite lädt sich automatisch alle 60 Sekunden neu.

Verlauf

Die beiden Diagramme zeigen die Gesamtleistung über 24 Stunden (5-Minuten-Raster aus den Rohwerten) und über 7 Tage (Stundenmittel). Beide sind als Inline-SVG eingebettet, ohne externe Bibliotheken oder Netzwerk-Nachladen.

kWh- und €-Berechnung

Aus den Leistungswerten (Watt) wird die Energie (kWh) je Feed durch Integration über die Zeit berechnet (Trapezregel zwischen zwei aufeinanderfolgenden Messpunkten). Liegen zwei Messpunkte mehr als 45 Minuten auseinander, wird diese Lücke nicht überbrückt – sie fließt nicht in die Berechnung ein, um bei Ausfällen keine falschen Werte zu erzeugen. Die kWh der Feeds A und B werden zur Gesamt-kWh addiert.

Kacheln zeigen kWh heute, kWh im laufenden Monat, kWh im Vormonat sowie eine Hochrechnung für den ganzen Monat (kWh Monat bisher ÷ vergangene Tage × Tage im Monat). Die Preise stehen in rz-privat/config.php:

Netto0,3100 € / kWh
Brutto0,3689 € / kWh

API-Nutzung

Die API liefert JSON unter /api.php?v=1. Authentifizierung per Bearer-Token oder ?token= (für Geräte ohne Header-Unterstützung, z. B. ein Wallboard). Beispiel (Token hier nur als Platzhalter):

curl -s -H "Authorization: Bearer DEIN_API_TOKEN" \
  "https://rz.deltatec-computer.de/api.php?v=1"

Alternative mit Token als Parameter:

curl -s "https://rz.deltatec-computer.de/api.php?v=1&token=DEIN_API_TOKEN"

Ohne oder mit falschem Token antwortet die API mit HTTP 401. Die Antwort enthält u. a. strom.feeds, strom.summe_w, strom.kwh_heute, strom.kwh_monat, strom.eur_monat_netto/_brutto und strom.kwh_hochrechnung_monat.

Für Stufe 2 vorbereitet: POST /api.php?v=1&push=infra mit eigenem Push-Token speichert beliebige JSON-Daten (max. 256 KB), die dann unter infra im GET erscheinen. Wird in Stufe 1 noch nicht verwendet.

Einrichtung

Benutzer, Passwort und die Anmeldung per Authenticator-App (TOTP) werden einmalig über die Kommandozeile angelegt:

sudo -u dtweb /opt/plesk/php/8.3/bin/php \
  /var/www/vhosts/deltatec-computer.de/rz-privat/einrichten.php

Das Skript fragt Benutzername und Passwort ab (ohne Bildschirm-Echo), erzeugt das TOTP-Secret und zeigt einen QR-Code bzw. den otpauth-Link zum Einscannen in einer Authenticator-App (z. B. Google Authenticator, Authy, 1Password). API- und Push-Token werden dabei ebenfalls erzeugt. Den API-Token später erneut anzeigen:

sudo -u dtweb /opt/plesk/php/8.3/bin/php \
  /var/www/vhosts/deltatec-computer.de/rz-privat/einrichten.php --api-token-anzeigen

Der Skylink-Code für den Datenabruf wird in /var/www/vhosts/deltatec-computer.de/rz-privat/config.php unter skylink_code eingetragen. Solange dort der Platzhalter HIER_CODE steht, bricht der Sammler bewusst ab, ohne den echten Skylink-Server anzufragen.

Sicherheit

5 Fehlversuche je IP-Adresse sperren den Login für 15 Minuten. Die Sitzung läuft nach 8 Stunden ab. Die Seite ist per noindex von Suchmaschinen ausgeschlossen.