Filter in set-Befehl mit zusätzlichem Argument?

Begonnen von heikoh81, 21 November 2016, 22:32:57

Vorheriges Thema - Nächstes Thema

heikoh81

Hallo zusammen,

ich habe mir eine Homematic Status-Anzeige zugelegt mit 16 LEDs.
Ich möchte verhindern, dass ein Befehl erneut gesendet wird, wenn die LED von einem anderen Ereignis schon die gewünschte Farbe hat.

Bislang habe ich mich mit folgendem Befehl Beholfen:

set NAME=Lampe1:FILTER=STATE=on off


Die Statusanzeige erwartet aber nach dem DEVICE-Namen ein zusätzliches Argument.
Der folgende Befehl funktioniert aber nicht:
set NAME=Statusanzeige01_Led_01:FILTER=STATE!=red led red
Die Farbe der LED wird auch im STATE gespeichert, so sehe ich es im WebUI, aber zum Schalten muss ich vor die Farbe zwingend noch "led" stellen, sonst kommt die Fehlermeldung, dass ein Argument erwartet wird.

Kann ich mein Vorhaben mit dem FILTER-Befehl so umsetzen, oder geht das gar nicht?

Vielen Dank für eure Antworten,
viele Grüße,

Heiko

justme1968

#1
natürlich geht das.

der filter ausdruck gehört zur devspec angabe. d.h. zur auswahl der devices auf die sich das kommando bezieht. die anzahl und art der parameter danach ist nicht relevant und wird 1:1 weiter gegeben.

das sollte auch ein kurzer test direkt zeigen :).

gruss
  andre

ps: du musst nicht vor die farbe noch led stellen sondern dein kommando ist led und das hat noch einen zusätzlichen parameter für die farbe.

pps: meist ist es besser aus ein reading zu filtern statt auf STATE. STATE kann sich durch stateFormat ändern. readings sind immer gleich.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

heikoh81

#2
Ok, danke für deine Antwort.
Mein Fehler war, dass ich nicht auf "led" filtern darf, weil das reading für dieses Homematic-Gerät "color" heißt.  :o

So funktioniert es:
(set NAME=Statusanzeige01_Led_01:FILTER=color!=red led red)

Viele Grüße,
Heiko

heikoh81

#3
Nochmal ein Update:
Die Befehle werden zwar ausgeführt, im Log erscheint aber das hier:



2016.11.21 23:19:47 1: Error: Statusanzeige01 has no TYPE
2016.11.21 23:19:47 3: CUL_HM set Statusanzeige01_Led_01 led off


"2016.11.21 23:19:47 1: Error: Statusanzeige01 has no TYPE" war vermutlich ein Homematic-spezifisches Problem, nach einem shutdown restart war diese Meldung weg.