Ich steuere mein LED16 Display mit je einem Befehl. Erzeuge ich dadurch unnötig viel Funkverkehr? Könnte ich das auch in eine Zeile bringen?
Beim Einschalten:
define LED16_01_ein_notify notify MWSchalter01:on set LED16_01 led red
Beim Ausschalten:
define LED16_01_aus_notify notify MWSchalter01:off set LED16_01 led off
Das kommt darauf an, wie oft der MWSchalter on bzw. off sendet.
Wenn du zu oft sendest, geht das Sendelimit in die Knie und FS20 hängt sich dann auf.
In einer Zeile kann man das nicht unterbringen.
ZitatIn einer Zeile kann man das nicht unterbringen.
das geht schon, ändert aber nichts am funkverkehr.
ich hätte es in eine Zeile geschrieben um CPU-performance zu sparen. Jedes notify muss gegenjeden trigger geprüft werden.
define LED16_01_ein_notify notify MWSchalter01:(on|off) { fhem "set LED16_01 ".($EVENT eq "on"?"red":"off" }
Aber den Funkverkehr bekommt man nicht runter. Das ginge, wenn MWSchalter01 ein HM-Sensor ist. den könnte man dann peeren. MWSchalter01 und LED16 machen es dann untereinander aus. Das spart wirklich
MWSchalter ist ein 2fach Unterputz Aktor.
Ich habe jetzt mal alle 16 Befehle, so wie du sie geschrieben hast eingegeben. Der Status wird nicht geändert. LED´s bleiben aus...
Das notify kannst du sicher selbst debuggen. Wird es angesprungen, ist $EVENT auch on oder off.
Generell wuerde ich das reading trigger nutzen anstelle von state und ausserdem eventonchangereading setzen. Alles auch wegen der performance.
Aber das solltest du dir ansehen, ist das gleiche in ganz fhem. Deine Frage aber ging in den funkverkehr. Du hast 2 aktoren, das koppeln geht also nicht direkt, du brauchst das notify
Also, ich kann leider den Fehler nicht finden. Mit meinen zwei Zeilen, funktioniert es .
Dein Code ist sauberer aber funktioniert bei mir nicht.
Kannst du mir bitte nochmal helfen?
define LED16_01_ein_notify notify MWSchalter01:(on|off) { fhem "set LED16_01 ".($EVENT eq "on"?"red":"off" }
nimm die Klammer raus ...
Ich habe das jetzt mal mit dem 16er Schalter versucht. Geht leider nicht:
define LED16_16_ein_notify notify MWSchalter16:(on|off) { fhem "set LED16_16 ".$EVENT eq "on"?"red":"off" }
ich würde die klammer schliessen und ggf den doppelpunkt in der regex ändern:
Zitatdefine LED16_16_ein_notify notify MWSchalter16.(on|off) { fhem "set LED16_16 ".($EVENT eq "on"?"red":"off") }
...leider auch nicht!
@pointde:
sagte ich doch, dass es fast unmöglich ist.
Ohne dass ich die Regex-Konstruktion jetzt verstanden hätte, aber muss dass WENN dann nicht
define LED16_16_ein_notify notify MWSchalter16.(on|off) { fhem "set LED16_16 led ".($EVENT eq "on"?"red":"off") }
heißen?
TOP!!!!! So gehts !!! Dankeschön ;D ;D ;D ;D