Userreading Zeitdifferenz in Minuten

Begonnen von stefan-dd, 08 November 2020, 10:45:08

Vorheriges Thema - Nächstes Thema

CoolTux

Poste bitte einmal die ganze myUtils und dann korrigieren wir zusammen. Da ist einiges.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

stefan-dd

#16
Jetzt funktioniert es, wie es soll:

sub VVOtime($$)
{
use Date::Parse;
        my ($device,$reading) = @_;
my $t1 = time();
my $t2 = ( Date::Parse::str2time(POSIX::strftime("%D",localtime(time())) . ' ' . ReadingsVal("$device","$reading",'00:00:00')) > $t1
? Date::Parse::str2time(POSIX::strftime("%D",localtime(time())) . ' ' . ReadingsVal("$device","$reading",'00:00:00'))
: Date::Parse::str2time(POSIX::strftime("%D",localtime(time())) . ' ' . ReadingsVal("$device","$reading",'00:00:00')) + 86400 );
return int(($t2-$t1)/60)
}


Der Code funktioniert. Hat aber noch ein kleines Problem.
Wenn die aktuelle Zeit, gleich der Abfahrtszeit ist, wenn 0 angezeigt werden sollte, wird 1440 Minuten angezeigt.
Wo kann man da noch was anpassen?