ich möchte mir eine Liste mit Erinnerungen für wiederkehrende Aufgaben im Haus erstellen. Sind aktuell so ca. 50 Stück übers Jahr verteilt. Beispiel Wasserfilter spülen oder den Wasserfilter am Kühlschrank tauschen...
Damit ich dafür nicht 50+ Rules brauche würde ich die Aufgaben gerne in zwei Rules packen.
Aufbau ist so, dass ein ITEM "KG_Wasserfilter_Spuelung" als DateTime fungiert und dazugehörig ein ITEM "KG_Wasserfilter_Spuelung_Reset" als Switch mit Expiration Timer 5 Sek. existiert.
Plan wäre es, wenn ich den Switch betätigte, dass eine Rule in das erste ITEM das aktuelle Datum schreibt. Klappt natürlich nicht wie gedacht
Code: Alles auswählen
configuration: {}
triggers:
- id: "2"
configuration:
command: ON
itemName: Group_Putzen_Reset
type: core.ItemCommandTrigger
conditions: []
actions:
- inputs: {}
id: "3"
configuration:
type: application/vnd.openhab.dsl.rule
script: >-2
val PutzenResetSwitch = Group_Putzen_Reset.members.filter[i|i.name.startsWith(triggeringItem.name)].head
var ItemNamePutzen = i|i.name.startsWith(triggeringItem.name)
postUpdate(ItemNamePutzen, new DateTimeType())
type: script.ScriptAction
Der zweite Teil, ist noch nicht angefangen... Hier wäre der Gedanken eine Rule, die jeden Samstag prüft, ob ein Item älter als X Tage ist. Hier denke ich aber, dass ich nicht davon komme, die einzelnen Aufgaben einzeln zu nennen...
Wäre aber als Gedanke:
Code: Alles auswählen
if (KG_Wasserfilter_Spuelung < 30){
[Mache irgendwas...]
}