Guten Abend, ich habe ein Device mit einem userreading, das Telefoneinträge enthält:
Readings anrufliste
--angerufen Nr 0 06.04.2017 13:26:13 08003309266 Dauer 0' 0'' Nr 1 06.04.2017 13:09:24 XXXXXXX Dauer 0' 23'' Nr 2 06.04.2017 12:51:07 XXXXXXX usw.
Dieses Reading möchte ich im Dashboard auswerten und zudem formatieren. Also habe ich gedacht
defmod TelefonListe readingsGroup Telefon:{ ReadingsVal("Telefon", "anrufliste", 0) }
weil ich perspektivisch sogar eine sub in 99_myutils.pm der Form
sub FormatiereTelefonliste($){
my $liste = $_[0];
$liste =~ s/Nr \d /<br>/g;
return $liste
anwenden will. Das geht aber nicht und ich finde den Fehler nicht. Hat jemand eine Idee?
Im def gibst du das reading an, also:
defmod TelefonListe readingsGroup Telefon:anrufliste
die Formatierung machst du mit valueFormat, also sowas:
attr TelefonListe valueFormat {formatiereTelefonliste($value)}
Danke, das klappt. Was ich nicht gewusst habe war, dass ich auf den Wert mit $VALUE (auch noch groß geschrieben) zugreifen kann. Gibt es eine Stelle, wo ich das hätte nachlesen können?
(Ich habe an anderer Stelle, bei SIGNALduino, so lange gebraucht, dass ich jetzt angefangen habe, den Wiki-Eintrag ordentlich zu gestalten. Ich bin eher der Wiki- als der Forumtyp...)
Readingsgroup ist in der (englischen) commandref und im wiki eigentlich recht ausführlich dokumentiert...
Setzt du den Thread noch auf "gelöst"?
Danke, habe ich gemacht. Es gibt aber ein neues Problem, da habe ich einen eigenen Thread aufgemacht, weil das nichts mit ReadingsGroup zu tun hat. Vielleicht hast Du eine Idee: https://forum.fhem.de/index.php/topic,70305.0.html