Funklichtschalter Rückmeldung an Openhab

Allgemeine Fragen rund um die "Smart Home" Hardware/Komponenten

Moderatoren: seppy, udo1toni

Benutzeravatar
peter-pan
Beiträge: 2568
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von peter-pan »

Ich weiss nicht, ob das zielführend ist, aber hast du es schon mit einer Rule probiert, die ein "postUpdate" auf das Schalter-Item macht, wenn sich der Shelly-Status ändert ?
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

Chri1983
Beiträge: 8
Registriert: 24. Okt 2020 21:54

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von Chri1983 »

Erstmal danke für deine Hilfe.
Nein hab ich noch nicht, bin noch ein ziemlicher Anfänger in der Openhab Szene.
Wie könnte so eine Rule aussehen?

Benutzeravatar
peter-pan
Beiträge: 2568
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von peter-pan »

Hab das nicht getestet. Ich hoffe dass das kein Dauerläufer wird.

Code: Alles auswählen

rule "Livolo Spielzimmer"
 when 
  Item status_Shelly_SZ changed
 then 
  logInfo("Schaltzustand", "Rule wird ausgeführt")  // für Test
  if (status_Shelly_SZ.state == "true") {
      Light_State.postUpdate(ON)
   }
   else if (status_Shelly_SZ.state == "false") {
      Light_State.postUpdate(OFF)   
   }
   else {
      logInfo("Schaltzustand", "Nichts ist passiert")
   }
  end
Sollte die Rule sich immer wieder selber aufrufen, einfach einen Fehler mit dem Editor einbauen und speichern, dann wird die Rule beendet und als fehlerhaft gemeldet.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

Chri1983
Beiträge: 8
Registriert: 24. Okt 2020 21:54

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von Chri1983 »

Vielen Herzlichen Dank....
Es funktioniert genau so wie soll

Benutzeravatar
peter-pan
Beiträge: 2568
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von peter-pan »

Gerne. Freut mich, dass es geklappt hat :)
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von PeterA »

So habe ich auch den Status meiner ShellyPlugS in OpenHab verfügbar gemacht.
Allerdings über eine URL-Action die der Shelly senden kann.
(Ziehmlich Oldschool aber ich bin zu faul die über Mqtt anzubinden) :)
- OpenHab 2.4
#PWRUP

Benutzeravatar
peter-pan
Beiträge: 2568
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von peter-pan »

PeterA hat geschrieben: 29. Okt 2020 07:43 Ziehmlich Oldschool
Wieso OldSchool ? Kannst du deine Rule mal posten ? Rein lernmässig !!! Da ich keinen Shelly habe war das von mir auch nur eine Vermutung.

Den "postUpdate" deshalb, weil er nur den Status des Items verändert und nichts an den Channel weiterleitet, wie "sendCommand". Siehe Doku

Gruss
Peter
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von PeterA »

Ich hatte das in einen anderen Post schon mal beschrieben.
Die Shellys können mit dem Binding, Mqtt und auch über direkte Http Kommandos angesprochen werden.
Das Shelly Biding nutze ich nicht da es zu meinem Einstieg in die Shelly Welt dieses noch nicht gab.
Mqtt nutze ich sehr wohl für meine ganzen Rollladen (Shelly 2.5). Das funktioniert ausgesprochen dauerhaft Stabil!!!
Nun habe ich auch einige ShellyPlugS Zwischenstecker. Diese wollte ich auch in openHab abbilden.
Wenn man aber Mqtt aktiviert, geht die zugegeben sehr komfortable Cloud von Shelly nicht mehr.
Wenn man aber direkte Http Kommandos nutzt bleib die Cloud funktionalität erhalten.

Also habe ich folgendes Item erstellt:

Code: Alles auswählen

Group            gShellys
//ShellyPlugS_02: 192.168.X.XX id: XXXXX DG_Wohnzimmer_Nord: TV+BD
Switch           ShellyPlugS_02          "Shelly TV u. DB"              <poweroutlet>                    {http=">[ON:POST:http://192.168.X.XX/relay/0?turn=on] >[OFF:POST:http://192.168.X.XX/relay/0?turn=off]"}
Switch           ShellyPlugS_02_Proxy                                                      (gShellys)
Im Shelly kann man dann wiederum eine Http Action konfigurieren die beim Schalten des Relais zurück an openHab gesendet wird:

"OUTPUT SWITCHED ON URL:"

Code: Alles auswählen

http://raspiIP:8080/classicui/CMD?ShellyPlugS_02_Proxy=ON
"OUTPUT SWITCHED OFF URL:"

Code: Alles auswählen

http://raspiIP:8080/classicui/CMD?ShellyPlugS_02_Proxy=OFF
Und die Rule dazu:

Code: Alles auswählen

rule "EG Wohnzimmer Nord TV+BD" 
    when Item ShellyPlugS_02_Proxy received command 
then
    if (receivedCommand==ON)
{
    ShellyPlugS_02.postUpdate(ON) //ShellyPlugS_02: 192.168.X.XX id: XXXXX DG_Wohnzimmer_Nord: TV+BD
    }
    else if (receivedCommand==OFF)
{
    ShellyPlugS_02.postUpdate(OFF)
}
end
Funktioniert sehr schön.
- OpenHab 2.4
#PWRUP

Benutzeravatar
peter-pan
Beiträge: 2568
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von peter-pan »

PeterA hat geschrieben: 29. Okt 2020 17:21 Wenn man aber direkte Http Kommandos nutzt bleib die Cloud funktionalität erhalten.
Hallo Peter, Danke für die ausführliche Info, Super.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

Benutzeravatar
PeterA
Beiträge: 1052
Registriert: 8. Feb 2019 12:12
Answers: 13

Re: Funklichtschalter Rückmeldung an Openhab

Beitrag von PeterA »

Und wenn man jetzt noch das ganze um zwei weitere DateTime Items erweitert kann man sich in der Sitemap anzeigen lassen
wann Ein und Aus geschaltet wurde. Wenn man möchte :)

item:

Code: Alles auswählen

DateTime         ShellyPlugS_02_Proxy_Ein_LUD    "Shelly TV u. BD Ein [%1$ta, %1$td.%1$tm.%1$ty, %1$tH:%1$tM Uhr]"         <time>             (gShellys)
DateTime         ShellyPlugS_02_Proxy_Aus_LUD    "Shelly TV u. BD Aus [%1$ta, %1$td.%1$tm.%1$ty, %1$tH:%1$tM Uhr]"         <time>             (gShellys)
Und die Rule dazu:

Code: Alles auswählen

rule "Record Last Update Shellys EIN"
when
  Member of gShellys changed to ON
then
// post an update to the item with the same name and _Ein_LUD suffix
  sendCommand(triggeringItem.name+"_Ein_LUD", now.toString)
end

rule "Record Last Update Shellys AUS"
when
  Member of gShellys changed to OFF
then
// post an update to the item with the same name and _Ein_LUD suffix
  sendCommand(triggeringItem.name+"_Aus_LUD", now.toString)
end
- OpenHab 2.4
#PWRUP

Antworten