Hallo Zusammen,
ich habe auch mal wieder eine Frage, dessen Antwort (vermutlich) sehr einfach sein wird.
Ich nutze OH 3.2 auf einem RPI 4 und habe mehrere Shelly´s in meiner Smarthome-Automation.
Nun habe ich einen Shelly-Button1 eingebunden, der ja bekanntlich mehrere Aktionen (je nach Schaltzustand [kurzer Tastendruck, doppelt-kurzer-Tastendruck, langer-Tastendruck, usw.) schalten kann.
In meinem Bad habe ich einen Lautsprecher, der mit einem weiteren RPI und einer Volumio-Instanz verbunden ist stehen.
Mit dem Shelly-Button1 würde ich nun gerne die Musik starten, anhalten und auch ein Lied weiterschalten.
Die Play/Pause-Funktion funktioniert auch bereits über eine Regel.
Die Regel lautet:
Code: Alles auswählen
rule "Shelly Button1 Musikplayer OG-Bad aktivieren"
when
Channel 'shelly:shellybutton1:OGBadMusikplay:status#button' triggered
then
OGBadMusikplayerToggle.sendCommand (ON)
createTimer(now.plusSeconds(3))
[|
OGBadMusikplayerToggle.sendCommand (OFF)
]
end
rule "Musik starten"
when
Item OGBadMusikplayerToggle changed to ON
then
OGBadSchlafzimmerVolumioPlay_OGBADMusikplayHTTPBefehl.sendCommand (ON)
end
Nun gibt es unter den Channels des ShellyButton1 den Kanal "Letztes Ereignis".
Dort wird in einem String die zuletzt gedrückte Eingabe gezeigt. Die Werte des String lauten:
"Typ des letzen Ereignisses (S=kurz, SS=2x kurz, SSS=3x kurz, L=lang, SL=kurz-lang, LS=lang-kurz)"
Nun habe ich gedacht, dass wenn ich den String in der Rule "auswerte", ich den entsprechenden Ausgang schalten kann.
Sobald ich aber in meiner Rule die zweite Abfrage einbinden möchte, funktioniert das ganze nicht mehr.
Vielleicht liegt es daran, dass OH in Rule nur nummerische Werte verarbeiten kann.
Ich poste mal die Rule, die ich (erfolglos) versucht habe zu erstellen:
Code: Alles auswählen
rule "Shelly Button1 Musikplayer OG-Bad aktivieren"
when
Channel 'shelly:shellybutton1:OGBadMusikplay:status#button' triggered
then
if (OGBadMusikplay_LetztesEreignis.state = S) {
OGBadMusikplayerToggle.sendCommand (ON)
}
createTimer(now.plusSeconds(3))
[|
OGBadMusikplayerToggle.sendCommand (OFF)
]
end
Kann mir da jemand mal einen Tipp geben?
Liebe Grüße
Tim
Openhab3 auf einem Raspberry-PI4, Wemos D1 mini über MQTT, AVM Fritz!, Wifi LED, Diverse Shelly Produkte, Gardena Smart Produkte, Reolink-IP Cams, Wansview-IP Cams, Foscam-IP Cams.