Probleme mit $hour in Funktion

Begonnen von CoolTux, 19 Januar 2018, 17:16:21

Vorheriges Thema - Nächstes Thema

CoolTux

Genau den Thread hatte ich gesucht. Hatte das Thema auch verfolgt da ich es interessant fand. Hätte nicht gedacht das es mich auch trifft  ;D

Meinst du mit "Udo hat Recht" ich soll
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time());
Überall direkt in die Funktionen stecken? Hab ich kein Problem mit, wenn es hilft.

Oder soll ich gleich
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(gettimeofday());
Nehmen?
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

betateilchen

#16
Zitat von: CoolTux am 20 Januar 2018, 21:22:41
ich soll
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time());
Überall direkt in die Funktionen stecken? Hab ich kein Problem mit, wenn es hilft.

@CoolTux: was ist denn so schwer zu verstehen? Du füllst Deine Variablen bisher beim Laden des Moduls. Und das passiert eben nur ein einziges Mal. Danach sind FHEM die geladenen Funktionen aus der 99_xxxUtils.pm bekannt und können ausgeführt werden, aber der Code-Teil, in dem die Variablen befüllt wurden, wird nie wieder durchlaufen.

Du hast schlichtweg einen Fehler in Deinem Vorgehen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Oder auch: ja, localtime in die Funktion stecken. Und da localtime(gettimeofday()) aufrufen, weil time() kann (auf bestimmten Hardware?) ein paar ms hinter gettimeofday hinterherhinken, und InternalTimer (und damit alles was in FHEM nach Zeit gesteuert wird) verwendet gettimeofday().

betateilchen

Aber auch localtime() würde an der bisher verwendeten Stelle in der Datei nicht zum gewünschten Ergebnis führen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

CoolTux

Vielen Dank. Habe ich nun geändert und schaue mal wie gut das passt.


Grüße
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