Hallo,
fuer eine Anzeige auf dem in "CodeSchnipsel" gezeigten KindleDisplay hole ich mir div. readingsVal.
Leider stehen die Readings nun auf englisch dort. Kann ich die Readings irgendwie per sprintf oder was auch immer weiter bearbeiten?
So siet die Abfrage derzeit aus:
ReadingsVal("Mythz","pOpMode","0")
Zurueckgegeben wird hier jetzt beispielsweise "automatic" oder "setback" was ich gerne in "Automatik" oder "Absenkbetrieb" aendern wuerde.
Bin dankbar fuer Tips :)
Gruß
Markus
schonmal mit eventMap probiert?
Ansonsten musst Du die Konvertierung in eine Funktion in deiner 99_myUtils packen und für die Anzeige die Rückgabewerte dieser Funktion verwenden.
okay, ich hab jetzt meine erste myutils mehr, oder eher weniger erfolgreich erstellt... zwei fragen habe ich:
zum einen kommt beim speichern immer folgende meldung:
Undefined subroutine &main::myUtils_valuechanger_Initialize called at fhem.pl line 1986.
zum anderen: wie komme ich an status1 wieder ran?
ich brauche das ganze in einem "attr", aber mit
attr infodisplay_sz Expr18 { valuechanger ($status1()) }
funktionierts nicht...
package main;
use strict;
use warnings;
use POSIX;
sub
valuechanger
{
my $status1 = ReadingsVal("HomeStatusSwitch","state","0");
my $status2 = ReadingsVal("Mythz","pOpMode","0");
$status1 =~ s/on/Zuhause/;
$status1 =~ s/off/Abwesend/;
$status2 =~ s/automatic/Automatik/;
$status2 =~ s/setback/Absenkung/;
}
1;
danke,
markus
1. Nach dem Einfügen/Editieren der neuen Routine reload 99_myUtils.pm
(http://fhem.de/commandref.html#reload (http://fhem.de/commandref.html#reload)) ausführen.
2. Die Werte mit return
aus der Funktion zurückgeben (ggf. als Liste; siehe z.B. http://perldoc.perl.org/perlsub.html (http://perldoc.perl.org/perlsub.html))
Gruß,
Mario