Hallo,
ich habe
(set Jalo_SchlafZi:FILTER=pct=100 pct 0)
um die Jalousie nur zu schließen wenn diese "offen" ist.
Jetzt möchte ich gerne den fogenden Code so modifizieren, dass nur die Jalousien geöffnet werden,
die *nicht* 62% als Stellung haben.
*11:00 {if (Value("Jalousie_Automatik") eq "Auto") {fhem("set Rollo_Gruppe on")}}
Wie kann ich den
:FILTER=pct=100 pct 0
so umbauen das er nicht GLEICH sondern UNGLEICH vergleicht?
Vielen Dank
Hoffi
kurze Suche nach "FILTER" in der cref bringt einen hier hin: https://fhem.de/commandref_DE.html#devspec (https://fhem.de/commandref_DE.html#devspec)
Da steht nach einer kurzen Erläuterung zum Negieren z.B.
set room=kitchen:FILTER=STATE!=off off
Hallo Beta-User,
vielen Dank für die schnelle Antwort.
Jetzt weiß ich auch wieder, warum ich da Schwierigkeiten hatte.
Das
*11:00 {if (Value("Jalousie_Automatik") eq "Auto") {fhem("set Rollo_Gruppe:FILTER=STATE!=62 on")}}
schaltet eine structure, die bei unterschiedlichen Stellungen der Jalos "undefined" anzeigt.
Somit werden dann alle Jalousien, egal in welcher Stellung sie stehen, wieder geöffnet.
kann man über die structure auch die Prozentabfrage machen oder ist es einfacher ein
set Jalo1, Jalo2, Jalo3:FILTER=STATE!=62, Jalo4 on
zu erstellen?
Torsten
List Rollo_Gruppe:
Internals:
.cachedHelp Unknown argument ?, choose one of assignHmKey clear deviceRename down fwUpdate getConfig getDevInfo getRegRaw getSerial getVersion inhibit off on pair pct peerBulk peerIODev peerSmart href='/fhem?detail=vccu_Btn1'>vccu_Btn1 press raw regBulk regSet reset sign statusRequest stop toggle toggleDir unpair up saveStructState restoreStructState
.eventMapCmd Runter Hoch
ATTR alleRollos
CHANGEDCNT 850
DEF alleRollos Jalo_Bad Jalo_Finnja_hinten Jalo_SchlafZi Jalo_WZ_Seite Jalo_WZ_TV_vorne Jalo_SchlafZi_hinten
FUUID 5c6a8907-f33f-7e98-6654-ff3156106620e1fc
NAME Rollo_Gruppe
NR 138
NTFY_ORDER 50-Rollo_Gruppe
STATE undefined
TYPE structure
.asyncQueue:
.attraggr:
.attrminint:
.memberHash:
Jalo_Bad 62
Jalo_Finnja_hinten 62
Jalo_SchlafZi 62
Jalo_SchlafZi_hinten 62
Jalo_WZ_Seite 62
Jalo_WZ_TV_vorne 67
.memberList:
Jalo_Bad
Jalo_Finnja_hinten
Jalo_SchlafZi
Jalo_WZ_Seite
Jalo_WZ_TV_vorne
Jalo_SchlafZi_hinten
READINGS:
2019-07-27 09 LastDevice Jalo_WZ_TV_vorne
2019-07-27 09 LastDevice_Abs Jalo_WZ_TV_vorne
2019-07-27 09 state undefined
Attributes:
clientstate_behavior absolute
devStateIcon off on
eventMap off on
group Jalousien
room Jalousien,Jalousien Di´s
webCmd on
Versuch's mal mit pct.
Ansonsten ggf. mal die devspec mit dem userattr auf den Eintrag durch die structure arbeiten lassen.
Hallo,
ich habe nun verschiedene "sets" ausprobiert. Leider bekomme ich die Negierung nicht hin
Mit
set room=Jalousien:FILTER=level!=pct=62 100
oder
set room=Jalousien:FILTER=STATE!=pct=62 100
kommt folgender Fehler:
Unknown argument 100, choose one of active execNow inactive modifyTimeSpec
und alle Jalousien öffnen sich.
auch ein
set room=Jalousien:FILTER=STATE!=pct=62 pct 100
zeigt die Funktion wie oben beschrieben.
Vielleicht ist es nur ne kleinigkeit, ich komme aber nicht weiter.
Hoffi
? Wie wäre es mit
set room=Jalousien:FILTER=pct!=62 100
Der Befehl öffnet auch wieder alle Jalousien und es kommt wieder folgene Fehlermeldung:
Unknown argument 100, choose one of active execNow inactive modifyTimeSpec
Der Befehl mit "on" statt mit "100" gesetzt funktioniert auch nicht:
Unknown argument on, choose one of active execNow inactive modifyTimeSpec
Dann sind da wohl noch andere Geräte in dem Raum, oder (hier: ein at?)...?
set room=Jalousien:FILTER=TYPE=CUL_HM:FILTER=pct!=62 100
Sowas kann man voher auch mit "list" austesten (statt "set")...
Danke ;)
Jetzt funktioniert es. Wenn ich mir das SET angucke, verstehe ich es auch. Von allein wäre ich da nie drauf gekommen
Dank!
Hoffi
:)
Schön, dass es jetzt funktioniert wie erwartet.
Das mit der Filterei (oder devspec und regex allgemein) ist eine feine Sache, aber leider nicht selbsterklärend. Aber wenn man mal den Einstieg hat, ist es nicht mehr sooo schwierig und wird immer leichter... Also: üben, üben, üben (und vorher mit list nachsehen, ob das klappen kann, wenn man effektiv ein set, attr ... durchführen will ;) .