[Modul] Notice (Mitteilungen)

nein natürlich nicht, das funktioniert auch.
Eigentlich ist das Script auch zur Aufbereitung der Daten da. Wieso bist Du dir sicher, das die Variable bereits den neuen Wert hat?
In dem übergebenen Array _IPS stehen ja diverse Werte drin, u.a. ob es sich um ein recovery handelt. (das müsstest du mit IPS_LogMessage kontrollieren

Mit der permanenten Statusänderung … das wird ohne eine Hilfskonstruktion wohl nicht gegen

Nachtrag: in der NoticeEvent-Instanz kannst DU auch simulieren, wie eine Meldung aussehen würde in den verschiedenen Situationen (siehe Testbereich). Hier wird in einem Popup angezeigt, was kommen würde.
SO kann man auch den Unterschied von Erstmeldung, Wiederholung und Wiederherstellungsmeldung testen.

Das setzt natürlich voraus, das die Variablen, auf die man sich in der Nachrichtenerstellung bezieht, den korrekten Wert haben.

Das ist ein simpler Meldungstext

$r = [];
if (GetValueBoolean(21644) == false) {
    $r['message'] = 'Gateway ist offline';
} else {
    $s = $_IPS['recovery'] ? ' wieder' : '';
    $r['message'] = 'Gateway ist' . $s . ' online';
}
echo json_encode($r);

Die Rückgabe als json ist ja optional und nur dann relevant, wenn man nicht nur den Text zurückgeben will sonder auch eventuell die severity

$r = [];
if (GetValueBoolean(59002)) {
    $r['message'] = 'Wasserstand unter der Heizung erkannt';
} else if (GetValueBoolean(50572)) {
    $r['message'] = 'Feuchtigkeit unter der Heizung erkannt';
} else {
    $r['message'] = 'Heizung-Wassersensor OK';
    $r['severity'] = 'info';
}
echo json_encode($r);

Danke!

Habe ich jetzt auch so realisiert und alles funktioniert. Die Verwirrung bei mir entstanden, weil ich die Auslösung per Script aufbereitet habe, die Wiederherstellung aber mit Hilfe des Formulars (ohne Script umsetzen wollte.

Habe mittlerweile fast alle Mitteilungen über das Modul realisiert und damit ist das auch besser strukturiert und übersichtlicher. Genau das, was ich gesucht hatte.