OH3 rules // Selection widget

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

chimera86
Beiträge: 15
Registriert: 26. Dez 2020 11:09
Answers: 1

OH3 rules // Selection widget

Beitrag von chimera86 »

Hallo,

ich versuche es hier auch nochmal weil ich mir einfach langsam nicht mehr vorstellen kann warum es nicht geht. :evil:
Da bringt einen OH schon echt manchmal an die Grenze ;-)

Ich möchte verschiedene Items UND deren States aus dem habpanel via selection widget steuern. Heisst also konkret, ein Selection Widget für verschiedenste Raumszenen in Hue (ODER auch ein anderes Item und nicht zwingend hue).

Ich möchte nicht 15x buttons auf habpanel haben sondern lieber ein Selection Widget mit allen Varianten.
Das Problem ist, das ich nicht über das Selection Widget ein Item und deren States anspreche sondern verschiedenste Items und deren States, daher die folgende Rule:

Code: Alles auswählen

rule "scene"
when
Item AllLightsSwitchGroupAmbient received command
then
switch (receivedCommand.toString)
{
case "WOHNZIMMER" : sendCommand(WohnzimmerSceneGroup,"uPJnmIlnGampnc9")
}
logInfo("myRule-after1", "value is {}", WohnzimmerSceneGroup.state)
logInfo("myRule-after2", "value is {}", AllLightsSwitchGroupAmbient.state)
logInfo("myRule-after3", "value is {}", receivedCommand.toString)
end
Log Viewer:

Code: Alles auswählen

rule "scene"
when
Item AllLightsSwitchGroupAmbient received command
then
switch (receivedCommand.toString)
{
case "WOHNZIMMER" : sendCommand(WohnzimmerSceneGroup,"uPJnmIlnGampnc9")
}
logInfo("myRule-after1", "value is {}", WohnzimmerSceneGroup.state)
logInfo("myRule-after2", "value is {}", AllLightsSwitchGroupAmbient.state)
logInfo("myRule-after3", "value is {}", receivedCommand.toString)
end

Item:

Code: Alles auswählen

String AllLightsSwitchGroupAmbient "Wohnung Farbige Beleuchtung Alle Räume 2" { homekit="Switchable" }

Die Regel wird auch einwandfrei ausgeführt, nur leider nicht das SendCommand für die WohnzimmerSceneGroup und ich weiß einfach nicht mehr warum. Wenn ich einzeln einen Button deploye für die WohnzimmerSceneGroup mit dem gewünschten Wert, ist es kein Problem und er feuert den Befehl.

Habt ihr Ideen? Im englischen Forum hat auch keiner eine zündende Idee :(

Danke euch
von chimera86 » 23. Jan 2021 19:38
In dem Fall funktioniert Office nicht mit dem selben Fehler wie vorhin aber Wohnzimmer funktioniert:

Code: Alles auswählen

rule "scene"
when
Item AllLightsSwitchGroupAmbient received command
then
switch (receivedCommand.toString)
{
case "WOHNZIMMER" : WohnzimmerSceneGroup.sendCommand("uPJnmIlnGampnc9")
case "OFFICE" : OfficeSceneGroup.sendCommand("wld0q4iKiCQNo46")
}
logInfo("myRule-after1", "value is {}", WohnzimmerSceneGroup.state)
logInfo("myRule-after2", "value is {}", AllLightsSwitchGroupAmbient.state)
logInfo("myRule-after3", "value is {}", receivedCommand.toString)
end
Gehe zur vollständigen Antwort

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: OH3 rules // Selection widget

Beitrag von Darkwin101 »

Setze das sendcommand mal in geschweifte Klammern


Gesendet von iPhone mit Tapatalk

chimera86
Beiträge: 15
Registriert: 26. Dez 2020 11:09
Answers: 1

Re: OH3 rules // Selection widget

Beitrag von chimera86 »

Ist doch in geschweiften Klammern? Oder meinst du das anders?

{
case "WOHNZIMMER" : sendCommand(WohnzimmerSceneGroup,"uPJnmIlnGampnc9")
}

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

OH3 rules // Selection widget

Beitrag von Darkwin101 »

Nach dem Doppelpunkt also : {sendCommand...} und im send Befehl nach dem Komma auch noch Klammern also sendcommand(...., („....“))} so ist es bei mir

Beachte mit iPhone geschrieben die Anführungszeichen beide hoch wie du es schon gemacht hast das phone mach das immer nach unten


Gesendet von iPhone mit Tapatalk

chimera86
Beiträge: 15
Registriert: 26. Dez 2020 11:09
Answers: 1

Re: OH3 rules // Selection widget

Beitrag von chimera86 »

Ich habe es jetzt so gemacht aber selbes Verhalten, der sendCommand wird anscheinend nicht ausgeführt:

Code: Alles auswählen

rule "scene"
when
Item AllLightsSwitchGroupAmbient received command
then
switch (receivedCommand.toString)
{
case "WOHNZIMMER" : {sendCommand(WohnzimmerSceneGroup,"uPJnmIlnGampnc9")}
}
logInfo("myRule-after1", "value is {}", WohnzimmerSceneGroup.state)
logInfo("myRule-after2", "value is {}", AllLightsSwitchGroupAmbient.state)
logInfo("myRule-after3", "value is {}", receivedCommand.toString)
end

chimera86
Beiträge: 15
Registriert: 26. Dez 2020 11:09
Answers: 1

Re: OH3 rules // Selection widget

Beitrag von chimera86 »

Also via Loginfo sieht man das die Values alle richtig sind und übergeben sind, also WOHNZIMMER und uPJnmIlnGampnc9 aber trotzdem feuert der sendCommand nicht.

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: OH3 rules // Selection widget

Beitrag von Darkwin101 »

Dann versuche mal wohnzimmerscenegroup.sendCommand(„...“)


Gesendet von iPhone mit Tapatalk

chimera86
Beiträge: 15
Registriert: 26. Dez 2020 11:09
Answers: 1

Re: OH3 rules // Selection widget

Beitrag von chimera86 »

Schade, selbes Verhalten, es muss irgendein anderes Problem sein aber was?

Darkwin101
Beiträge: 424
Registriert: 6. Mär 2019 11:19
Answers: 14

Re: OH3 rules // Selection widget

Beitrag von Darkwin101 »

Dann kann es ja eigentlich nur am case liegen ist Wohnzimmer auch alles groß geschrieben oder ist nur der erste Buchstabe groß geschrieben die Schreibweise ist wichtig


Gesendet von iPhone mit Tapatalk

chimera86
Beiträge: 15
Registriert: 26. Dez 2020 11:09
Answers: 1

Re: OH3 rules // Selection widget

Beitrag von chimera86 »

Du hast den entscheidenden Tipp gegeben. VIELEN DANK! Es lag an habpanel und das offensichtlich das 4 oder 5. Element in dem Widget nicht funktioniert hat obwohl die Schreibweise richtig war. Jetzt habe ich mal mit Test es probiert und ohne weitere selections und es geht. Ich teste jetzt mit mehreren und dann sollte es gehen. DANKE nochmal :)

Antworten