Timestamp aller Readings formatieren

Begonnen von choetzu, 06 Juli 2019, 21:13:09

Vorheriges Thema - Nächstes Thema

choetzu

Guten Abend,

ich habe eine Frage. Wie kann ich die Timestamps sämtlicher Readings im FHEM formatieren. Und das auch für ReadingsGroup.

Jetzt ist das Format wie folgt:
2019-07-06 21:06:08

Ich möchte aber überall:
Sa, 6. Juli 2019 21:06:08

Beim "stateFormat" konnt ich dies dank einem sub im myUtils machen. Doch wie kann ich das generell anwenden?

sub timestampLONG($) {
my ($device) = @_;
my @days = qw/So Mo Di Mi Do Fr Sa/;
  my @month = qw/Jan Feb Mar Apr May Jun Jul Aug Sep Okt Nov Dec/;
  ReadingsTimestamp($device,"state","") =~ /^20(\d+)-(\d+)-(\d+)\s(\d+:\d+):(\d+)$/;
  my $wday = $days[(localtime(timelocal(0,0,0,$3,$2-1,$1-1900)))[6]];
  my $month = $month[(localtime(timelocal(0,0,0,$3,$2-1,$1-1900)))[6]];
  return "$wday, $3. $month $1, $4";
}

sub timestampSHORT($) {
my ($device) = @_;
my @days = qw/So Mo Di Mi Do Fr Sa/;
  my @month = qw/Jan Feb Mar Apr May Jun Jul Aug Sep Okt Nov Dec/;
  ReadingsTimestamp($device,"state","") =~ /^20(\d+)-(\d+)-(\d+)\s(\d+:\d+):(\d+)$/;
  my $wday = $days[(localtime(timelocal(0,0,0,$3,$2-1,$1-1900)))[6]];
  my $month = $month[(localtime(timelocal(0,0,0,$3,$2-1,$1-1900)))[6]];
  return "$wday:$4";
}


Danke für Eure Hilfe.
Lg c
Raspi3, EnOcean, Zwave, Homematic