Autor Thema: readingsVal mit myUtils weiter bearbeiten  (Gelesen 2203 mal)

Offline micomat

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1482
  • Alle redem vom WAF - das ist Männerdiskriminierung
readingsVal mit myUtils weiter bearbeiten
« am: 20 September 2014, 09:05:40 »
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
« Letzte Änderung: 21 September 2014, 20:59:25 von micomat »
Synology DS218+ with fhem in docker, 4x RasPi as ser2net, CUL433+868, IT, 2x EGPM2LAN, THZ/LWZ, FB_Callmonitor, 3x HMS100TF, HMLAN, 4x HM-LC-Sw1PBU-FM, 1x HM-WDS30-T-O, 2x TX3-TH, Pushover
2x USB-IR-SML-Head, SONOS, GHoma, MBus, THZ via Ser2net and SMA Inverter via LAN for pvoutput.org

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16129
  • s/fhem\.cfg/configDB/g
Antw:readingsVal mit sprintf weiter bearbeiten
« Antwort #1 am: 20 September 2014, 10:22:58 »
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.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.

Offline micomat

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1482
  • Alle redem vom WAF - das ist Männerdiskriminierung
Antw:readingsVal mit sprintf weiter bearbeiten
« Antwort #2 am: 21 September 2014, 20:22:11 »
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
Synology DS218+ with fhem in docker, 4x RasPi as ser2net, CUL433+868, IT, 2x EGPM2LAN, THZ/LWZ, FB_Callmonitor, 3x HMS100TF, HMLAN, 4x HM-LC-Sw1PBU-FM, 1x HM-WDS30-T-O, 2x TX3-TH, Pushover
2x USB-IR-SML-Head, SONOS, GHoma, MBus, THZ via Ser2net and SMA Inverter via LAN for pvoutput.org

Offline Mario67

  • Full Member
  • ***
  • Beiträge: 161
Antw:readingsVal mit myUtils weiter bearbeiten
« Antwort #3 am: 22 September 2014, 14:54:12 »
1. Nach dem Einfügen/Editieren der neuen Routine reload 99_myUtils.pm (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)

Gruß,
Mario
FHEM 5.7 auf Raspberry Pi 2 mit CUL868
FS20 ST, FS20 AS4-3, FS20 SU-2, FS20 DF, 1-Wire + RS-232: AB Electronics Com Pi RS232, Brandmelder + Fenster: AB Electronics IO Pi 32
BUDERUS GB142 über EMS/AVR-NET-IO, WESTAFLEX WAC250 über RS232, MySensors
mit fhem.cfg & includes glücklich