FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Maui am 10 Juli 2018, 19:45:09

Titel: [gelöst] Im Reading mit Datum rechnen
Beitrag von: Maui am 10 Juli 2018, 19:45:09
Moin. Ich hab in einem HTTPMOD device ein Reading mit dem Wert für das letzte Update.
Ich würde gerne per userReading immer beim aktualisieren des Readings die aktuelle Zeit - readingZeit rechnen und das in Minuten im neuen Reading darstellen. Ich hab nur kein Plan wie  :-\
Das Reading mit Datum sieht so aus:
Tue, 10 Jul 2018 18:58:12 +0200
Titel: Antw:Im Reading mit Datum rechnen
Beitrag von: Ellert am 10 Juli 2018, 22:41:20
https://wiki.fhem.de/wiki/Zeitangaben,_rechnen_mit
Titel: Antw:Im Reading mit Datum rechnen
Beitrag von: Maui am 11 Juli 2018, 10:12:08
Danke. Der String war aber (denke ich) zu lästig für time_str2num.
Hab es dann per Sub und Date::Parse gelöst. Sicher nicht perfekt, aber läuft. Im Userreading dann einfach time() - ConvTime

sub ConvTime($)
{
  # Wed, 11 Jul 2018 08:35:45 +0200
  my @date;
  @date = strptime(@_);
  $date[5] += 1900;
  my $date_sec = timelocal(@date[0],@date[1],@date[2],@date[3],@date[4],@date[5]);
  return $date_sec;
}
Titel: Antw:[gelöst] Im Reading mit Datum rechnen
Beitrag von: Ellert am 11 Juli 2018, 10:27:36
ZitatDer String war aber (denke ich) zu lästig für time_str2num.
time_str2num ist für FHEM Zeitstempel gedacht.
Titel: Antw:[gelöst] Im Reading mit Datum rechnen
Beitrag von: Maui am 11 Juli 2018, 10:30:14
Gibt es denn etwas wie Date::Parse als "fertige" FHEM-Funktion? So wie es ja auch zb. ReadingsAge gibt. Dann muss ich nicht unnötig Overhead bei mir erschaffen