[Modul] Almanac

Hallo zusammen,

eigentlich gibt es das Modul schon länger und jetzt auch ein kleines Update (v2.0).

Das Modul ist eine Sammlung von verschiedenen Kalenderfunktionen, einige gibt es auch als separates Modul (Schulferien von Nall-chan & kronos). Dazu gibt es die Feiertage und ein paar einfache Datumsfunktion und die Berechnung der Arbeitstage im aktuellen Monat.

Hier die Liste der Funktionen:

  • Sind Ferien und welche
  • Feiertag oder nicht und wie heißt er
  • Der Tag des Jahres
  • Anzahl Tage im Monat
  • Arbeitstage im Monat
  • Schaltjahr oder nicht
  • Sommerzeit oder nicht
  • Wochenende oder nicht
  • Nummer der Kalenderwoche

Mit der neuen Version kann man sich die Daten auch für einen bestimmten Tag als assoziatives Array abholen.

Viel Spaß
Pitti

1 „Gefällt mir“

Hallo Pitti,

ich benutze schon seit einiger Zeit Dein Modul.
Wirklich praktisch…

Heute bin ich leider „unsanft“ geweckt worden da die Wochenende nicht richtig erkannt wurde.

16.05.2020 00:00:04 | 38433 | DEBUG   | VariableManager      | [Schulferien\Feiertag] = Kein Feiertag
16.05.2020 00:00:04 | 49874 | DEBUG   | VariableManager      | [Schulferien\Ist Feiertag?] = false
16.05.2020 00:00:04 | 28747 | DEBUG   | VariableManager      | [Schulferien\Ferien] = Keine Ferien
16.05.2020 00:00:04 | 48215 | DEBUG   | VariableManager      | [Schulferien\Ist Ferienzeit?] = false
16.05.2020 00:00:04 | 50712 | DEBUG   | VariableManager      | [Schulferien\Ist Sommerzeit?] = true
16.05.2020 00:00:04 | 14531 | DEBUG   | VariableManager      | [Schulferien\Ist Schaltjahr?] = true
16.05.2020 00:00:04 | 50237 | DEBUG   | VariableManager      | [Schulferien\Ist Wochenende?] = false
16.05.2020 00:00:04 | 27767 | DEBUG   | VariableManager      | [Schulferien\Kalenderwoche] = 20
16.05.2020 00:00:04 | 24662 | DEBUG   | VariableManager      | [Schulferien\Tage im Monat] = 31
16.05.2020 00:00:04 | 51656 | DEBUG   | VariableManager      | [Schulferien\Tag im Jahr] = 136
16.05.2020 00:00:04 | 20054 | DEBUG   | VariableManager      | [Schulferien\Arbeitstage im Monat] = 19

Wie man sieht wurde wohl gestern (Tag 136) zur Berechnung benutzt obwohl es schon der 16. war.
Hast Du eine Idee woran das liegt?

Wenn ich es jetzt ausführe passt alles…

Viele Grüße
Erik

Hi Erik,

das tut mir leid das Du unsaft geweckt wurdest.

Habe gerade bei mir geschaut - Tag 137 - alles gut. Sehr merkwürdig! Ich schaue es mir auf jeden Fall im Code nochmal an. Habe da absolut keine Ahnung woran das liegen kann.

Zeit auf dem Server passt aber, oder?

Gruß Heiko

Hallo Heiko,

kein Problem, in meinem Alter braucht man nicht mehr so viel Schlaf… :slight_smile:

An dem Rechner hängt eine DCF Uhr und die Uhrzeit wird stündlich abgeglichen.
Lt. Log gab es aber keine Abweichung.

Das ist das erste Mal das sowas passiert ist. Wirklich merkwürdig.
Das Einzige was ich diese Woche gemacht hatte war Symcon zu aktualisieren (bin im Beta Kanal)
Ich mache mir mal ein kleines Script um das zu überwachen.

Viele Grüße
Erik

Hallo Pitti, vielen Dank für das Bereitstellen des Moduls.

Installation klappt - leider scheitere ich bei der Anlage von Instanzen:

„Einrichten der Instanzen in IP-Symcon
Unter „Instanz hinzufügen“ ist das ‚Almanac‘-Modul (Alias: Kalender, Schulferien, Feiertage) unter dem Hersteller ‚(Sonstige)‘ aufgeführt.“

Da kann ich nichts finden - die „Sonstigen“ gibt es ja wohl auch nicht mehr…

Auch die Schnellsuche findet keinen passenen Eintrag.

Gibt es Tipps ? Oder hab ich was über sehen ?

Hi,

also wenn ich bei mir im Schnellfinder ‘kal’ eintippe findet er “Jahreskalender” und das ist das Modul!

Gruß Heiko

Gesendet von iPad mit Tapatalk

Besten Dank für´s auf die Spur helfen.

Ich habe nach dem Namen laut Modul-Shop „Almanac“ gesucht… denn dort steht nirgends auf der Übersichtsseite „Instanz als Jahreskalender zu finden“…

Jetzt passt es. Danke.

Habe es jetzt auch nochmal getestet, Du hast Recht mit dem Modulnamen „Almanac“ findet man es leider nicht :frowning: Hätte auch gedacht das man es unter diesem Namen finden kann.

Aber über alle Aliase (Jahreskalender, Kalender, Schulferien, Feiertag) kann man das Modul finden.

Danke für den Hinweis - werde die Doku beim nächsten Update anpassen!

Gruß Heiko

Hallo liebe Zeitreisende,

kurz vor dem Wochenende noch eine neue BETA für das Jahreskalender (Almanac) Modul :slight_smile:

Was ist neu:

[ul]
[li]Umstellung auf schulferien.org als Datenquelle!
[/li][/ul]

Warum das Ganze:

[ul]
[li]Jetzt können auch die österreichischen und schweizer Symcon-Freunde es nutzen :loveips:
[/li][/ul]

Hier der CHANGLOG (v3.0.20210103):

[ul]
[li]NEU: Ermittlung der Ferien und Feiertage für DE, AT und CH
[/li][li]NEU: Umstellung der Datenlieferung auf schulferien.org
[/li][li]FIX: Name des Feiertages nicht korrekt gespeichert
[/li][li]FIX: Vereinheitlichungen der Libs
[/li][/ul]

Ich würde mich freuen wenn es viele Leute übers Wochenende testen würden dann kann ich bei Problemen gleich reagieren!

Gruß Heiko

Moin,

wie es aussieht hat schulferien.org den Zugang zum Abrufen der Kalender geschützt :frowning:
Muss jetzt schauen wie man das löst!
Melde mich zeitnah wieder!

Gruß Heiko

Hi zusammen,

ich habe gerade eine neue Beta Version online gestellt. Ob und wie lange der Quickfix hält kann ich noch nicht sagen, aber ich werde nochmal den Datenlieferanten wechseln. Kann mir auch vorstellen das demnächst selber zu liefern und auf Drittanbieter zu verzichten :wink:

Baue generell noch einiges am Modul dazu - da macht das dann auch nix mehr :smiley:

Gruß Heiko

Hallo zusammen,

zu Valentinstag :smiling_face_with_three_hearts: ein kleines GROSSES Geschenk/Update :loveips:

Nachdem der Abruf von Schulferien und Feiertagen für 3 Länder an Komplexität und Schwierigkeit gestiegen ist, habe ich mich entschlossen selber die Daten aufzubereiten und für das Modul zur Verfügung zu stellen. Das ganze ist mit HUGO (Static Site Generator) und Netlify (CDN) umgesetzt und sollte so für die entsprechende Geschwindigkeit sorgen.

Und weil man ja gerade dabei war - habe ich gleich noch eine Unterstützung für verschiedenste Festtage (Liste ist bestimmt noch nicht vollständig) dazu gepackt. Die Liste kann ich auch gern hier veröffentlichen wenn gewünscht. Ist bestimmt noch nicht das Ende der Fahnenstange, aber ein Anfang :wink:

Persönlich bin ich happy über die Möglichkeit alle Geburtstage, Hochzeitstage und Todestage in der Familie, Freunde und Bekannte zu verwalten. Grundsätzlich kann man den Mechanismus auch für andere feste Ereignisse nutzen - steht jedem frei :wink:

Hier mal das Changelog von v4.0.20210214 [BETA]

  • NEU: Eigener Webservice (JSON-API) für Ferien und Feiertage in DE, AT und CH (aktuell 2015 - 2022)
  • NEU: Ermittlung von verschiedensten religiösen und weltlichen Festtagen
  • NEU: Ermittlung der aktuellen Jahreszeit („Frühling“, „Sommer“, „Herbst“ oder „Winter“)
  • NEU: Verwaltung und Meldung von Geburtstagen (Liste)
  • NEU: Verwaltung und Meldung von Hochzeitstagen (Liste)
  • NEU: Verwaltung und Meldung von Todesstagen (Liste)
  • NEU: Import & Export Funktionalität für Geburts-, Hochzeits- und Todestage
  • FIX: Struktur „DateInfo“ erweitert und Teile umbenannt
  • FIX: Modul Aliase auf Jahreskalender und Almanach geändert

HINWEIS: wer das mit den Listen ausprobieren möchte - nutzt die Export (bzw. Import) Möglichkeit. Beim Entwickeln musste ich oft die Listen nochmal eingaben und auf Dauer macht das keinen Spaß :banghead: (also falls die Stabilität vom Modul noch nicht gut genug ist - Beta)

Viel Spaß und wie immer … freue mich auf Feedback (auch im Positiv-Fall)
Heiko

1 „Gefällt mir“

Hallo Heiko,

vielen Dank für die Anpassung. Ich hätte noch einen Wunsch, da ich als Anzeige IPSView verwende.

Könntest Du alle Ausgaben zusätzlich in Variablen schreiben. So wie bei Festtag → Ist Festtag? und Festtag (Bezeichnung) auch für Geburtstage, Hochzeitstage, Todestage und mit dem Text der „Textmitteilung“.

Wie ermittelst Du die Festtage? Schön wäre, wenn man diese auch selbst konfigurieren könnte. So könnten noch andere persönliche oder regionale Festtage mit einbezogen werden. Auch braucht eventuell nicht jeder alle automatisch generierten Festtage.

Und zuletzt :wink: könntest Du bei aktuellen Ferien, die Zeiten (von/bis) mit in eine Variable schreiben?

LG
Tom

Hallo Tom,

toll, erste Rückmeldung :slight_smile:

Ja, aber wie soll es aussehen wenn mehrere Leute an einem Tag Geburtstag haben? Komma, Semikolon, Tab, LineBreak separiert? Da ich das alles nicht so schön fand habe ich mich für die Meldungsvariante entschieden. Man kan auch das Meldungsscript durch ein eigenes ersetzen und die Meldungen andersweitig verarbeiten :wink:

Die meisten Festtage haben irgendein Bezug zu Irgendwas (Ostern, 2 Dienstag im 2 Monat, 4 Wochen vor Weihnachten oder was weiß der Teufel), deshalb ist es nicht so einfach die selbst zu konfigurieren. Die Berechnung basiert auf entsprechende Logiken. Drüber nachgedacht hatte ich auch schon, aber aus den besagten Gründen noch nicht angeboten. Mache mir da aber schon so meine Gedanken und möchte gern in den nächsten Versionen sowas anbieten!

Das wäre grundsätzlich relativ einfach. Würde ich dann konfigurierbar machen, also wer es mit möchte muss es einschalten. Es gibt aber eine kleine Ungenauigkeit, d.h. manchmal gibt es Ferien die aus 2 Zeitabschnitten bestehen, z.B. die Herbstferien 2021 in Bayern sind Di 02.11. - Fr 05.11.+Mi 17.11., dann würde ich nur den Zeitraum anzeigen können in dem der aktuelle Tag gerade liegt, wenn das okay für dich wäre - fein!

Gruß Heiko

Das würde ich auch für die anderen Daten (Geburtstage, …) gut finden, da ich nur IPSview nutze und die Werte so nicht verwenden kann.

Eventuell kannst du direkt etwas einplanen, womit die Gestaltung ein wenig möglich ist, also z.B. vor und nach Zeile-Feld oder auch zwischen den beiden Felder für HTML.

Habe ich auch schon überlegt. Eventuell mit Komma getrennt, so könnte man das so ausgeben oder auch wieder auseinandernehmen.

Wenn Du da ein gutes Beispiel hättest… :wink:

Wäre super. Eventuell könntest Du diese generierte Übersicht in eine Formularausgabe schreiben und diese Termine dann dort an- und abwählbar machen. Frag mich jetzt aber nicht wie und ob das geht :-)).

Ich denke das reicht aus. Bei mir jedenfalls.

Und dann noch… Ist morgen Feiertag? :,) als Variable für die Rollläden.

Tom

Da ich kein IPSView habe - macht doch mal ein konkreten Vorschlag oder sogar was konfigurierbares :wink:

Gruß Heiko

Daher habe ich mir oben die einzelnen Variablen dazu gewünscht.

Tom

Absolut ungern, der Timer ist ja ganz kurz nach Mitternacht und sollte so für die tägliche Steuerung der Rolläden ausreichen, oder?

Das zielt auf die Steuerung am Abend des Tages. Wenn morgen = Feiertag, dann bleiben die Rollläden länger auf (als Beispiel). Kann sicher auch für andre Dinge genutzt werden. Aber war nur ein Wunsch :wink: wenn das nicht mit ins Modul passt ist es auch kein Problem.

Tom