Benachrichtigungen: Geraet, Abos und der Reiter Meldungen

Der Geraetesuchlauf legt "Benachrichtigungen" an (benachrichtigung_module.py),
ein Kommando je Kanal. Damit kann jede Automatik melden, ohne dass Editor,
Zeitleiste oder Datenbank etwas davon wissen muessten.

Fuer die Meldung aufs Handy braucht es keine App: Der Browser meldet sich
unter Einstellungen -> Meldungen selbst an (sw.js, ajax/push.php), das Abo
steht in homeMesh.push_abos, verschickt wird vom Runner. Auf dem iPhone geht
es erst ab der Ablage auf dem Home-Bildschirm - der Reiter sagt das auch.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-21 08:37:31 +02:00
co-authored by Claude Opus 5
parent 061dfa3fc5
commit df48432133
10 changed files with 720 additions and 1 deletions
+34
View File
@@ -37,6 +37,7 @@ $reiter = [
["id" => "kacheln", "titel" => "Home-Kacheln", "symbol" => "bi-grid-1x2"],
["id" => "geraete", "titel" => "Geräte", "symbol" => "bi-house-gear"],
["id" => "fahrzeug", "titel" => "Fahrzeug", "symbol" => "bi-ev-front"],
["id" => "meldungen", "titel" => "Meldungen", "symbol" => "bi-bell"],
];
// "merken": der offene Reiter steht in der Adresse und uebersteht ein
// Neuladen - siehe reiterMerken() in js/solar/common.js.
@@ -319,6 +320,39 @@ try {
</div>
</div>
<?= reiterFlaecheZu() ?><!-- /Fahrzeug -->
<!-- Meldungen. Web Push braucht kein fremdes Konto und keine App: Der
Browser meldet sich selbst an, die NAS schickt verschlüsselt an den
Push-Dienst seines Herstellers. Jedes Gerät meldet sich einzeln an -
ein Abo gehört dem Browser, nicht dem Benutzer. -->
<?= reiterFlaecheAuf("meldungen", $reiterOpt) ?>
<div class="row">
<div class="col-12 col-xxl-8">
<div class="card mb-4" id="pushKarte">
<div class="card-header pb-2 pt-2">
<h3 class="card-title"><i class="bi bi-bell me-2"></i>Benachrichtigungen</h3>
<div class="card-tools">
<button type="button" class="btn btn-tool" id="pushNeuLaden" title="Neu laden">
<i class="bi bi-arrow-counterclockwise"></i>
</button>
</div>
</div>
<div class="card-body">
<p class="text-secondary small mb-3">
Automatiken können Meldungen schicken als Nachricht auf dieses Gerät
oder als E-Mail. Für die Meldung auf dem Gerät braucht es keine App:
Der Browser meldet sich hier an und zeigt die Meldung auch, wenn die
Seite zu ist. Auf dem iPhone muss die Seite dafür einmal über
„Teilen ▸ Zum Home-Bildschirm“ abgelegt und von dort geöffnet werden.
</p>
<div id="pushListe">
<p class="text-secondary small mb-0">Wird geladen …</p>
</div>
</div>
</div>
</div>
</div>
<?= reiterFlaecheZu() ?><!-- /Meldungen -->
</div><!-- /tab-content -->
</div>