Diskussion:UserReadings

Aus FHEMWiki
Zur Navigation springen Zur Suche springen

Klarstellung der heutigen Syntax-Hinweise notwendig?

Zu den heutigen Ergänzungen im Bereich Syntax folgende Anmerkungen:

1. Zitat: Bei mehreren auszuführenden Befehlen müssen die einzelnen Teile mit zwei ";" getrennt werden.

Liegt das nicht daran, wo/wie man das eingibt? Bei der Eingabe im Befehls-Eingabefeld kann ich die Verdoppelung der ; nachvollziehen. Bei einer Eingabe über die Attributauswahl ist das mMn nicht korrekt; dort genügt ein ; . Letztere Vorgehensweise interpretiere ich aus dem Weglassen von "attr <device> userReadings" im Beispiel. Das sollte nach Prüfung klargestellt werden.

2. Zitat: Die Variable, dessen Wert man im Reading haben möchte, kann man einfach ans Ende stellen.

Das ist meines Wissen nach das normale Verhalten von Perl, wenn return fehlt und keine Besonderheit von FHEM: "In the absence of an explicit return, a subroutine, eval, or do FILE automatically returns the value of the last expression evaluated.)" [1]

Wäre schön, wenn das jemand gegenchecken könnte. Danke.

Gruß, --Christian (Diskussion) 07:46, 28. Dez. 2017 (CET)


Hi Christian,

1.: In der Commandref steht: "attr myEnergyMeter userReadings energy { ReadingsVal("myEnergyMeter","counters.A",0)/1250.0;; }". Da das bei mir so funktioniert, habe ich das so in Verwendung, und es funktioniert. Nachdem du jetzt nachgefragt hast, hab ich versucht, das Attribut über die Eingabezeile zu setzen, nun ist es nur noch ein ";". Dann geb ich dir recht, wenn das auch funktioniert (oder besser ist, wenn ich das richtig verstehe, sende ich dann jeweils einen "leeren" Befehl dazwischen) sollte das geändert werden. - würd ich dann machen.


2.: Du hast recht, das ist das normale Verhalten von Perl. Aber: wenn ich drüber nachdenke, wie lange ich bei "normalen" Perl-Syntaxen schon gesucht und mir den Kopf zerbrochen hab, warum der das macht... Deshalb habe ich das mit aufgenommen. Ob FHEM-Wiki oder nicht, ich vertrete die Ansicht, dass die "hilfreichen, informativen, nützlichen" Parameter da stehen sollten, wo man sie leicht findet... Wenn Du das anders siehst, akzeptiere ich das aber, im Sinne eines großen ganzen (über das ich zugegebenermaßen keinen Überblick habe :)

Grüße, Stephan (Diskussion) 13:57, 28. Dez. 2017 (CET)


1.: Wenn man das commandref-Beispiel über die Eingabezeile anlegt, dann sieht man in der Detailansicht unter dem attr userReadings nur ein ;. Bei Eingabe über Detailansicht durch Anklicken von userReadings muss man entsprechend nur ein ; eingeben. Gibt man dort 2 ; an, werden die unerwünscht in fhem.cfg verdoppelt (=4x). Welchen Weg der Eingabe man nimmt ist eigentlich egal; besser/schlechter gibt es dort nicht. Jedoch muss man eben nicht immer verdoppeln und das lese ich aus dem Text und bei Eingabe über Detailansicht führt 2x im Fazit zu unerwünschten 4x.
2.: Der Hinweis ist vollkommen in Ordnung. Ich faende es nur gut, wenn man dann ergaenzen würde, dass es sich um ein "normales" Perl-Verhalten handelt. Habe die Befürchtung, dass ansonsten suggeriert wird, es handelt sich um ein FHEM-Special. Momentan bin ich aber sowieso im Gedankengang, den FHEM-Einsteigern (wieder) deutlicher zu sagen "Schaut Euch mal zumindest die Grundzüge von Perl an, damit FHEM nachvollziehbarer ist", da das meinem Eindruck nach, ein wenig in den Hintergrund geraet (und ich mich auch beim Vergessen ertappe.).
Gruß, --Christian (Diskussion) 04:01, 29. Dez. 2017 (CET)

1.: Ich gebe dir völlig recht. Habe bereits selbst mehrfach überlegt, wie man mal die Unterschiede zwischen "eingabe in der fhem.cfg", "eingabe in der Eingabezeile" und "eingabe im DEF-Editor" ( wie heisst das eigtl bei Attributen?) kennzeichnet. Werde es mal ausformulieren, aber so richtig schön eindeutig finde ich das nicht.

Grüße, Stephan (Diskussion) 06:33, 29. Dez. 2017 (CET)