Moin,
ich will auf einen per FHEM2FHEM angebundenen CUL ein devStateIcon setzen.
Wenn darüber noch nichts kam (state: ? ? ?) soll es rc_YELLOW zeigen:
attr Connector_CUL.1 devStateIcon ? ? ?:rc_YELLOW
Die 3 Fragezeichen sind ohne Leerzeichen hintereinander. Das Forum schreibt sonst nur das ??? Smiley.
Sobald ich das mache stürzt das FHEMWEB ab:
Nested quantifiers in regex; marked by <-- HERE in m/^??? <-- HERE .*$/ at ./FHEM/01_FHEMWEB.pm line 2674.
LG Jan
Das Fragezeichen hat in regulären Ausdrücken eine spezielle Bedeutung. Versuch mal, jeweils einen Backslash davorzusetzen:
attr Connector_CUL.1 devStateIcon \?\?\?:rc_YELLOW
Ja, ok, logisch. :) So läuft's.
Nichts desto trotz sollte müsste das abgefangen werden bevor sich das system abschießt. ;D
Rudi liest hier mit und Dein Threadtitel ist sprechend, er wird das schnell lesen denke ich.
Alternativ darfst Du gerne auch einen Patch anbieten.
Grüße
Ist mir schon klar. War auch eher so ne Floskel von mir :D.
-
Neee.. Da wüsste ich nicht mal wo ich suchen sollte. Außerdem will ich Rudi ja nicht den Spaß nehmen ;)
Ich denke auch, dass jeder hat da seinen eignen Programmierstil hat, sodass der Ersteller eines Programmes immer die beste Wahl für eine Änderung ist.
LG Jan
Absolut falsches Gedankengut für ein Community Projekt.
Ist meine Meinung und somit nicht Allgemeingültig
Grüße
Leon
Ab morgen sollte sowas beim Ausfuehren des attr Befehls auffallen.
Hallo zusammen,
kann obige gestrige Änderung mit folgendem zusammenhängen?
1) Ein über die Befehlszeile eingegebenes
attr DSI_TEST devStateIcon {if (Value($name) eq "red") {return '.*:rc_dot@red';;} else {return '.*:rc_dot@green';;};;}
führt bei mir zur Fehlermeldung:
ZitatArgument (Value($name) for attr DSI_TEST devStateIcon is not a valid regexp: Unmatched ( in regex; marked by <-- HERE in m/^( <-- HERE Value($name)$/ at fhem.pl line 2736.
Ein simpleres
attr DSI_TEST devStateIcon {return '.*:rc_dot@red';;}
wird ohne Fehlermeldung akzeptiert und funktioniert hingegen.
2) Das gleiche Verhalten bei Eingabe über die "attr"-Select-Box .
Oder fehlt es mir am Verständnis zur korrekten devStateIcon-Definition?
Habe einige DevState-Icons mit {if-Abfragen} im Einsatz, diese wurden nach heutigem Update und Shutdown/Restart mit entsprechender Fehlermeldung aus meiner cfg entfernt.
Ich hoffe, die Angaben sind ausreichend, liefere gerne weitere Infos, wenn gewünscht.
Vielen Dank,
Andreas
PS:
Hier die Raw-Definition des Test-Dummys:
defmod DSI_TEST dummy
attr DSI_TEST devStateIcon {return '.*:rc_dot@red';;;;}
setstate DSI_TEST rot
setstate DSI_TEST 2017-05-15 17:45:35 state rot
Sorry, die Version mit {} habe ich verpennt. Kann es leider erst morgen Abend oder Mittwoch fixen.
Hallo Rudolf,
alles klar, kein Stress, mit der Vorversion der fhem.pl funktioniert es ja.
Danke für's Kümmern,
Andreas
Ab sofort wird die {} Form von devStateIcon mit perlSyntaxCheck geprueft, und alle Pruefungen habe ich auf "nach Initialisieren" (d.h. Erstanlegen/Modifizieren) beschraenkt.
Achja, ich war zu vorschnell! Hatte noch die buggy Zwischenversion und vergessen auf morgen mit dem Update zu warten.
Scheint nun wieder zu funktionieren.
Vielen Dank für die schnelle Korrektur! :)
Hallo Rudolf,
kann auch bestätigen, das es nun wieder funktioniert.
Vielen Dank,
Andreas