Ich verwende folgenden Code um die Kalenderwoche zu ermitteln
my ($sec,$min,$hour,$dayn,$month,$year,$wday,$yday,$isdst) = localtime(time);
my $donthisweek = $yday+5-$wday;
my $donfirst = ($donthisweek % 7) + 1;
my $kw = floor(($donthisweek - $donfirst)/7);
$kw += ($wday == 0) ? 0:1;
Bis Ende letzten Jahres hat das soweit funktioniert. Allerdings hat der Jahreswechsel mit KW0 begonnen (aktuell bin ich KW4 statt 5).
Wie kann ich das Problem am einfachsten lösen ?
Hab's auch gerade mal ausprobiert und bekomme die "19" angezeigt, obwohl wir bereits die KW 20 haben. Meine Perl-Kenntnisse reichen leider nicht um das zu fixen.
Gibt's vielleicht einen Profi der sich das Problem annehmen kann?
Danke und viele Grüße
Klaus
Falls du DOIF benutzen solltest, kannst du dort in der Bedingung die Variable $week abfragen. Sie beinhaltet aktuell den Wert 20.
Hier (https://forum.fhem.de/index.php/topic,37427.msg682632.html#msg682632) gibt es noch eine Lösung, die endlich alle Fallstricke der autarken KW- Bestimmung innerhalb FHEM erschlagen sollte.
Gruß
Frank