NEWS
Lovelace Notification mit Trigger löschen Blockly-json-List
-
Hallo zusammen,
ich verwende Lovelace und möchte gerne eine bestimmte Notification automatisch löschen, wenn ein bestimmtes Ereignis eintritt.
Meine Anwendung:
Ich erhalte unter Notifications in Lovelace die Meldung, dass die Garage schon länger als 30 Minuten offen ist. Wenn ich die Garage schließe (Trigger vom Türsensor ist vorhanden), soll diese Notification gelöscht werden. Die anderen Notifications sollen allerdings bestehen bleiben.
Blick ins System
- Benachrichtigung in Lovelace
- Die Objektansicht der Notifications.
- Der Eintrag "Die Garagentüre ist seit 30 min offen" wird als Liste in das Objekt list geschrieben.
Gibt es einen schlanken Weg, wie ich alle Einträge "Die Garagentüre ist seit 30 min offen" im Objekt list lösche, sobald sich die Garagetüre schließt?
Danke vorab für eure Unterstützung.
-
Das ist ein json.
Das müsste man mit Blockly hinbekommen.
Da bin ich aber auch nicht so ganz fit drinnen.Vermutlich muss man es erst zu einem Objekt konvertieren, dann entsprechendes suchen und löschen und wieder ein json erstellen.
Deine Titel ist sehr speziell. Da lesen es evtl einige nicht die es können. Evtl reichen die Zeichen noch um "-json bearbeiten" oder so dran zu hängen.
-
Ich verwende nun folgendes Javascript:
//Trigger on({ id: 'deconz.0.Sensors.24.open' /* Türsensor_Garage */, val: false }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; const list = getObject('lovelace.0.notifications.list'); const filteredList = list.filter(element => { return element !== "Die Garagentüre ist seit 30 min offen"; }); // Update the iobroker list with the filtered list setObject('lovelace.0.notifications.list', filteredList); });
Das Skript tut allerdings nichts. Was ist hier falsch?