Hallo,
irgendwie komme ich gerade nicht weiter, kennt jamand eine Möglichkeit beim setreading $EVENT:d in einem DOIF nachzubilden?
Ich möchte aus dem event control 20.0 den Zahlenwert (20.0) nur nutzen und exportieren. leider macht er bei {("$EVENT" =~ "[^\ ]* (-?\d+(\.\d+)?)";$1)} nur das draus: "control 20.0" =~ "[^\ ]* (-?\d+(\.\d+)?)"
das DOIF ist folgendermaßen:
(["HM_ZHR_Wohnzimmer:^control.*"])
(setreading DI_WZ_Licht HZ_Manual {("$EVENT" =~ "[^\ ]* (-?\d+(\.\d+)?)";$1)}
)
kann mir jemand helfen?
Hallo,
versuche es doch einfach mal mit "ReadingsNum".
Rolf
Hier findest Du Deine Antwort
https://wiki.fhem.de/wiki/Set_magic
Zitat von: CoolTux am 08 März 2019, 08:23:37
Hier findest Du Deine Antwort
https://wiki.fhem.de/wiki/Set_magic
Ach vielen dank. Genau das ist es, wonach ich gesucht habe.. hatte zwar :d schon gefunden, was so aber nur bei Notify's ging...
Jetzt hab ich wieder was tolles gelernt..
hier meine Lösung: klappt perfekt
(["HM_ZHR_Wohnzimmer:^control.*"])
(setreading DI_WZ_Licht HZ_Manual [HM_ZHR_Wohnzimmer:control:d]
)
Zitat von: kotaro am 08 März 2019, 08:46:57
Ach vielen dank. Genau das ist es, wonach ich gesucht habe.. hatte zwar :d schon gefunden, was so aber nur bei Notify's ging...
Jetzt hab ich wieder was tolles gelernt..
hier meine Lösung: klappt perfekt
(["HM_ZHR_Wohnzimmer:^control.*"])
(setreading DI_WZ_Licht HZ_Manual [HM_ZHR_Wohnzimmer:control:d]
)
In Wirklichkeit benutzt du im DOIF kein set magic, sondern die Funktionalität von DOIF (set magic wurde später angelehnt an die DOIF-Syntax in FHEM eingebaut).
Der Funktionsumfang von set magic ist kleiner und zum Teil anders als die DOIF-Syntax, daher bei DOIF immer zuerst die Commandref zu DOIF aufschlagen, denn diese wird bei DOIF als erstes benutzt.
Zitat von: Damian am 08 März 2019, 09:32:43
In Wirklichkeit benutzt du im DOIF kein set magic, sondern die Funktionalität von DOIF (set magic wurde später angelehnt an die DOIF-Syntax in FHEM eingebaut).
Der Funktionsumfang von set magic ist kleiner und zum Teil anders als die DOIF-Syntax, daher bei DOIF immer zuerst die Commandref zu DOIF aufschlagen, denn diese wird bei DOIF als erstes benutzt.
Das habe ich aber auch gemacht. U d leider hatte ich bisher nicht die Option gefunden, nachdem ich comandref und alles durchgearbeitet, da hatte ich den Hinweis irgendwie nicht gefunden...
Daher hatte ich schon mit dem Perl Ausdruck gearbeitet aber der wollte auch nicht wie ich will...
Wo wird dann setmagic genutzt?
Lg
Zitat von: kotaro am 08 März 2019, 10:02:48
Das habe ich aber auch gemacht. U d leider hatte ich bisher nicht die Option gefunden, nachdem ich comandref und alles durchgearbeitet, da hatte ich den Hinweis irgendwie nicht gefunden...
Daher hatte ich schon mit dem Perl Ausdruck gearbeitet aber der wollte auch nicht wie ich will...
Wo wird dann setmagic genutzt?
Lg
https://fhem.de/commandref_DE.html#DOIF_Filtern_nach_Zahlen
Richtig.
Diese hab ich auch gesehen, es sah für mich aber so aus, das es nur für die Abfrage eines DOIF oder DOELSE ist, nicht das dies für eine Set genutzt werden kann...
Vielleicht kann man das in der Standartdefinition am Anfang auch bei set hinschreiben, dann wäre das etwas klarer ^^
lg
Zitat von: kotaro am 09 März 2019, 08:25:10
Richtig.
Diese hab ich auch gesehen, es sah für mich aber so aus, das es nur für die Abfrage eines DOIF oder DOELSE ist, nicht das dies für eine Set genutzt werden kann...
Vielleicht kann man das in der Standartdefinition am Anfang auch bei set hinschreiben, dann wäre das etwas klarer ^^
lg
DOIF-Syntax gilt überall innerhalb eines DOIF (Bedingung, Ausführungsteil) es hat nichts mit set zu tun (funktioniert natürlich auch dort, wie sonst überall im DOIF)