FHEM Forum

FHEM - Entwicklung => FHEM Development => Thema gestartet von: Icinger am 21 Mai 2019, 18:18:15

Titel: Evtl. Vereinheitlichung DOIF / Set magic
Beitrag von: Icinger am 21 Mai 2019, 18:18:15
Hi Leute,

bin grade über einen kleinen Definitions-Unterschied zw. den set magic und DOIF gestolpert:

Runden von Werten bei setMagic:
[device:reading:r1]
Selbiges bei DOIF:
[device:reading:d1]

Durch den DOIF-Parser brauchts jetzt aber zB bei:
([$SELF:cmd]==0 or [$SELF:cmd]>=3) (set mq2_Client_gl publish -r pooldisplay/message {"text": "Pool: [PoolController:PoolTemp:d1]°","lum": 5,"pos": 1,"eff_in": 1,"eff_out": 1,"speed": 100,"pause": 1000})
das d1, obwohl eigentlich der set magic greifen sollte.

Könnte man sich da evtl. auf eine Vereinheitlichung  einigen?
Um kompatibel zu bleiben zB im setMagic beides zulassen?

lg, Stefan
Titel: Antw:Evtl. Vereinheitlichung DOIF / Set magic
Beitrag von: rudolfkoenig am 21 Mai 2019, 21:11:57
Habe in fhem.pl :dNumber zugelassen.
Damit ist :r ueberfluessig geworden.
Wofuer wird :r in DOIF verwendet?
Titel: Antw:Evtl. Vereinheitlichung DOIF / Set magic
Beitrag von: Damian am 21 Mai 2019, 23:32:58
Zitat von: rudolfkoenig am 21 Mai 2019, 21:11:57
Habe in fhem.pl :dNumber zugelassen.
Damit ist :r ueberfluessig geworden.
Wofuer wird :r in DOIF verwendet?

:r gibt es in DOIF nicht.

Nur zur Info: set magic stellt nur eine kleine Untermenge der möglichen Angaben im DOIF dar:

-Filter mit Ausgabeformatierung: https://fhem.de/commandref_DE.html#DOIF_Filtern_nach_Zahlen
-Statistikfunktionen:  https://fhem.de/commandref_DE.html#DOIF_Reading_Funktionen
-Aggregatsfunktionen: https://fhem.de/commandref_DE.html#DOIF_aggregation
-Defaultwert: https://fhem.de/commandref_DE.html#DOIF_notexist
usw.

set magic kommt übrigens beim DOIF gar nicht zum Zuge, da die Angaben bereits vom DOIF-Modul ausgewertet und ersetzt werden. Da die DOIF-Syntax ja weitgehend eine Obermenge darstellt, ist es ziemlich egal. Die Erweiterung mit :r habe ich für überflüssig gehalten und habe damals :d um Nachkommastellen erweitert.