Seite 1 von 1

Anfänger Frage

Verfasst: 15. Dez 2021 17:52
von Snatsch
Hallo,
da meine Innogy Zentrale immer mal wieder offline geht hätte ich gerne eine Nachricht wenn es mal wieder soweit ist. Ich habe versucht es über eine Rule zu lösen :( aber leider ohne Erfolg.
Vielleicht könnt ihr mir wieder mal helfen :D

Code: Alles auswählen

rule "Innogy Zentrale ist Offline"

when  Thing "innogysmarthome:bridge:d79b954f20" changed 

then

    if ( "innogysmarthome:bridge:d79b954f20".state == Offline) {

    Meldung.postUpdate ("Achtung die Innogy Zentrale ist Offline !!!")
    }
    

end 

Re: Anfänger Frage

Verfasst: 15. Dez 2021 22:30
von udo1toni
Also, grundsätzlich funktionieren Things anders als Items. Ein Thing hat keinen Status, den man einfach so verwenden kann. Stattdessen reeden wir hier immer von Events.
Du kannst hier zwei Wege gehen. Der eine Weg ist, explizit die Rule zu triggern, wenn ein bestimmter Zustand erreicht oder auch verlassen wird:

Code: Alles auswählen

rule "Innogy Zentrale ist Offline"
when
    Thing "innogysmarthome:bridge:d79b954f20" changed to OFFLINE
then
    Meldung.postUpdate ("Achtung die Innogy Zentrale ist Offline !!!")
end 
Oder Du reagierst allgemein auf den Change und ermittelst den Status innerhalb der Rule:

Code: Alles auswählen

rule "Innogy Zentrale ist Offline"
when
    Thing "innogysmarthome:bridge:d79b954f20" changed
then
    val thingStatusInfo = getThingStatusInfo("innogysmarthome:bridge:d79b954f20")
    if ((thingStatusInfo !== null) && (thingStatusInfo.getStatus().toString() == "ONLINE")) {
        logInfo("ThingStatus", "The thing is online.")
    } else {
        Meldung.postUpdate ("Achtung die Innogy Zentrale ist Offline !!!")
    }
end
Der Status wird in Großbuchstaben geschrieben. openHAB unterscheidet Groß- und Kleinschreibung fast überall. Die zweite Rule reagieert auf alle Zustände, die nicht ONLINE sind. da gibt es etliche... https://www.openhab.org/docs/concepts/t ... ing-status

Re: Anfänger Frage

Verfasst: 15. Dez 2021 23:02
von Snatsch
vielen Dank. das kann ich für einige Things ableiten :)