Hallo
Vieleicht weiß einer wie ich das am Einfachsten programmieren kann.
Und Zwar_:
Ich möchte wenn einer der Werte eintrifft (könnte ca Zwanzig sein) eine Bedienung durchführen.
Was funktioniert aber umständlich ist habe ich so gemacht.
if ((RC433Value_1.state == 21) || (RC433Value_1.state == 521234) || (RC433Value_1.state == 74234) || (RC433Value_1.state == 61234) ) .....
Was einfacher wäre aber in Openhab nicht funktioniert wäre
switch(RC433Value_1.state ) {
case 21; 521234; 74234; 61234: { ..}
Weiß jemand wie man so was am besten realisiert?
SG Franz
Mehrere Bedingungen abfragen
- udo1toni
- Beiträge: 15244
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Mehrere Bedingungen abfragen
Wenn die Liste der Werte fix ist, kannst Du eine Liste als String hinterlegen und schauen, ob die Zeichenfolge vorkommt:
Wichtig ist natürlich, ein Trennzeichen zu verwenden, welches niemals in einem Code vorkommt. Es gibt sicherlich auch eine Möglichkeit, ein Array zu verwenden, um das Gleiche zu erreichen, ich finde nur gerade kein Codebeispiel dazu... 
Code: Alles auswählen
val String sCommands = "21_521234_74234_61234"
rule "auf Kommando testen"
when
Item RC433Value_1 received command
then
if(sCommands.contains(RC433Value_1.state.toString)) {
//Befehl ausführen
}
end

openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 46
- Registriert: 6. Jan 2018 13:59
Re: Mehrere Bedingungen abfragen
Hi Udo
Genial !
Das ist genau was ich brauchen kann.
Wieder was gelernt.
Vielen lieben Dank und schöne Feiertage
Franz
Genial !
Das ist genau was ich brauchen kann.
Wieder was gelernt.
Vielen lieben Dank und schöne Feiertage
Franz