FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: aski71 am 13 Mai 2020, 20:02:31

Titel: Bug: readingsGroups valueFormat mit regex bearbeiten
Beitrag von: aski71 am 13 Mai 2020, 20:02:31
Servus zusammen,

ich habe hier ein seltsames Verhalten.

Ich habe in einer ReadingsGroup valueFormat wiefolgt definiert, um das Format in einem Script bearbeiten zu können.

{ groupPlayersValueFormat($DEVICE,$READING,$VALUE);; }

Dann möchte ich bestimmte Werte mit regex bearbeiten:


if("$READING" eq "SlavePlayer") {
     # aus dem VALUE alle [ ] ' und Sonos_ raus schneiden:
     $newValue=$VALUE=~ s/[\[+\]+\x27+]|(Sonos_)/\0/rg;
     $newValue=$newValue=~ s/,/, /rg;
     return $newValue;
  } elsif ("$READING" eq "infoSummarize1") {
    # aus dem VALUE alle ' und <br> raus schneiden:
     $newValue=$VALUE=~ s/[\x27+]|(\x60br\x62)/\0/rg;
     return $newValue;
  }


Nun kriege ich leider folgende Ergebnisse:
Die eckigen Klammern sind immer weg. -> Haken dran, passt.

Klickt man den Floorplan an, oder die readingsGroup selber, werden die Hochkommata und auch die <br> angezeigt.
Lässt man den Floorplan oder die readingsGroup stehen und es erfolgt im Hintergrund ein automatisches Update eines der Readings, werden die Hochkommata ordnungsgemäß entfernt. Die <br> werden nicht entfernt, aber auch nicht angezeigt, sondern als Line Break interpretiert.

Hat jemand eine Idee, wie man das ordentlich zum Fliegen kriegt?
Titel: Antw:readingsGroups valueFormat mit regex bearbeiten
Beitrag von: aski71 am 13 Mai 2020, 21:17:12
Nach einigem Rumprobieren:
Es scheint tatsächlich so zu sein, dass beim ersten Aufruf der ReadingsGroup (direkt oder im Floorplan) die Funktion in valueFormat nicht durchlaufen wird.
Nur bei Updates der Readings....  :-\
Titel: Antw:Bug: readingsGroups valueFormat mit regex bearbeiten
Beitrag von: aski71 am 15 Mai 2020, 23:06:20
Hat niemand eine Lösung?