Filtertimer Warnung

Alle Infos und Tipps speziell zu openHAB 2

Moderatoren: seppy, udo1toni

Antworten
Peter Aschinger
Beiträge: 201
Registriert: 8. Feb 2019 12:12

Filtertimer Warnung

Beitrag von Peter Aschinger » 15. Mär 2019 18:16

Hallo zusammen,

hier habe ich eine Rule von "madmike" (vielen Dank), etwas abgeändert.
Damit möchte ich mir eine Warnung "pushen".

Wird das so funktionieren ?

Code: Alles auswählen

 // globale Variablen müssen zu Beginn der rules Datei deklariert werden!
var Timer tFilter = null

rule "Filterwarnung"

when
    Item Filtertimer changed
    
then
    if(tFilter === null && (FilterTimer.state >2000 | "h")) {
        tFilter = createTimer(now.plusHours(1), [ |
            tFilter = null
        ])
        sendBroadcastNotification("Erinnerung !!  Filterwechsel bei 2160h!") //Allgemeine Warnung an alle 
        
        
    }
end

Peter Aschinger
Beiträge: 201
Registriert: 8. Feb 2019 12:12

Re: Filtertimer Warnung

Beitrag von Peter Aschinger » 15. Mär 2019 23:15

Also wieder Erwarten funktioniert die Rule nicht :/
Im Grunde möchte ich eine Pushnachricht bekommen wenn der Filtertimer einen bestimmten Wert erreicht hat. Hier 2000h.
Hmm da fällt mir ein, der Wert kommt ohne "h" aus der Anlage. Also nur der Zahlen Wert. Sollte das "h" entfallen?

Peter Aschinger
Beiträge: 201
Registriert: 8. Feb 2019 12:12

Re: Filtertimer Warnung

Beitrag von Peter Aschinger » 16. Mär 2019 00:34

So, jetzt scheint es mit dieser Rule zu funktionieren.

könnte ich mir nun noch die Aktuelle "FilterTime" mit Pushen lassen ?

Code: Alles auswählen

 // globale Variablen müssen zu Beginn der rules Datei deklariert werden!
var Timer tFilter = null

rule "Filterwarnung"

when
    Item FilterTimer changed
    
then
    if(tFilter === null && (FilterTimer.state >2000 )) {
        tFilter = createTimer(now.plusHours(12), [ |
            tFilter = null
        ])
        sendBroadcastNotification("Erinnerung !!  Filterwechsel bei 2160h!") //Allgemeine Warnung an alle 
        
        
    }
end/code]

Benutzeravatar
udo1toni
Beiträge: 1673
Registriert: 11. Apr 2018 18:05
Wohnort: Darmstadt

Re: Filtertimer Warnung

Beitrag von udo1toni » 16. Mär 2019 00:36

Ja sicher,

Code: Alles auswählen

sendBroadcastNotification("Erinnerung !!  Filterwechsel bei 2160h! Aktueller Wert "+FilterTimer.state.toString+"h") //Allgemeine Warnung an alle 

Peter Aschinger
Beiträge: 201
Registriert: 8. Feb 2019 12:12

Re: Filtertimer Warnung

Beitrag von Peter Aschinger » 16. Mär 2019 07:51

Hallo Udo,

Top! Funktioniert!
Noch Fragen zu "createTimer(now.plusHours(12)".
Gibt es da "grenzen" was den Timer angeht ? max 24h oder so ?
Und könnte ich da noch ne art Loginfo einbauen, wenn die Notification gesendet wurde ?

Benutzeravatar
udo1toni
Beiträge: 1673
Registriert: 11. Apr 2018 18:05
Wohnort: Darmstadt

Re: Filtertimer Warnung

Beitrag von udo1toni » 17. Mär 2019 17:44

Nein, es gibt keine Grenzen, man muss nur aufpassen, dass man den Zeitpunkt nicht in die Vergangenheit setzt. now() kennt verschiedene Methoden, plusMillis(), plusSeconds(), plusMinutes(), plusHours(), plusDays... die Methoden können auch miteinander kombiniert werden. Man sollte ich aber darüber im Klaren sein, dass der Scheduler alles vergisst, wenn openHAB neu gestartet wird.

Peter Aschinger
Beiträge: 201
Registriert: 8. Feb 2019 12:12

Re: Filtertimer Warnung

Beitrag von Peter Aschinger » 17. Mär 2019 18:03

Ok alles klar,

Damit möchte ich nur verhindern, das ich ständig eine Nachricht bekomme wenn ich über 2000h bin.

Antworten

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 7 Gäste