[Modul] Almanac

Da werden die Daten aus deiner library.json angezeigt. Und wenn ich auf die aktuelle Datei vom Repository schaue, dann steht dort Version 4.4 und ein Zeitstempel vom 1.1.22. Die musst du einfach noch aktualisieren.

Danke Niels, da ist ja richtig was daneben gegangen :slight_smile:

Ich könnte aber schwören das es im Entwicklerbereich schon mal anders angezeigt wurde - naja!

Fehler gefunden - alles gut!

Gruß Heiko

So, die minimal erweiterte Version ist jetzt auch als Stable v5.1.20220706 verfügbar!

Danke & Gruß
Heiko

Hallo pitti,

zunächst vielen Dank für das schöne Modul, das ich gerade teste.

Wäre es denkbar, die Möglichkeit zu implementieren, ics-Dateien einzulesen (etwa für Geburtstage, gerne aber auch für eigene Kategorien, die man definieren könnte)?

Viele Grüße…!

Hallo CarnivoreD,

freut mich wenn das Modul wieder einmal gefallen gefunden hat :+1:

Das Einlesen von ICS Dateien ist grundsätzlich kein Thema, da auch jetzt schon die Ferien und Feiertage so ins Modul kommen :slight_smile:

Konzeptionell finde ich es aber etwas schwierig. Ich sehe den Vorteil das man gerade bei Geburtstag, Hochzeit und Todestag das genau Datum angeben kann und das Modul den Rest macht, also ausrechnet der wievielte … es ist u.s.w Wie soll das bei einer ICS Datei funktionieren, da steht ja nicht der Geburtstermin drin sondern das jährliche Ereignis. Kann man machen, aber finde ich für die 3 Terminarten unschön.

Was ich mir schon vorstellen könnte - z.b. unter Verschiedenes oder eine freie Kategorie zu definieren und da eine ICS Datei zu importieren.
Da muss ich dann aber auch fragen, warum nimmt man nicht das iCAL Modul? Das kann da mit den Daten bestimmt viel mehr als mein Modul - habe es selber nicht im Einsatz, aber lese hier im Forum ab und zu queer und denke das wäre bestimmt optimaler.

Bin für konzeptionelle Vorschläge aber weiter offen :slight_smile:

Gruß Heiko

Hi Heiko,

Dein Modul würde ich deswegen gerne (ggf. auch) nutzen, weil es zum einen intuitiver erscheint und zum anderen die Abfrage einzelner Tage ermöglicht (ALMANAC_DateInfo). Diese Möglichkeit habe ich beim iCal-Modul so nicht gesehen.

Insbesondere bei vielen Geburtstagen würde es über den ics-Import einfacher, die Tage reinzubekommen, auch wenn bestimmte Infos so nicht zur Verfügung stehen.

Bei den Feiertagen ist es so, dass ich einen eigenen Feiertagskalender habe, der auch „persönliche“ Feiertage berücksichtigt.

Das wäre doch ein guter Kompromiss - zwei oder drei frei benennbare Kategorien wären prima, dann könnte man hier eigene Kalender (ob Geburtstage, Feiertage oder was auch immer) integrieren und die vordefinierten Kategorien könnten unverändert bleiben.

Noch ein Hinweis zu den Ferien: Bei der Abfrage ist die Info „IsVacation“ (true oder false) jeweils korrekt, während bei der Angabe der Dauer immer ein Ferientag zuviel ausgewiesen wird (ich habe das hier schon mal aufgegriffen…).

Viele Grüße, Götz

Noch eine Frage, da ich verzweifle:

In der Doku steht:

Folgende Informationen stehen als key => value Paare zur Verfügung…
WeekNumber int Kalenderwochennummer

Wenn ich z.B. die Kalenderwoche haben möchte, müsste dies doch gehen mit

$Info = ALMANAC_DateInfo(12345, $Unix);

echo $Info['WeekNumber'];

Da bekomme ich aber immer ein

Warning: Illegal string offset 'WeekNumber' in /var/lib/symcon/scripts/23456.ips.php on line 34

Könntest Du mir auf die Sprünge helfen?

VG…!

Kleiner Fehler, große Auswirkung!

DateInfo() liefert ein JSON-String als Antwort zurück - Du muss es erst in ein Array decodieren!!!

$json = ALMANAC_DateInfo(10440, time());
$info = json_decode($json, true);
echo $info['WeekNumber'];

Schönen Abend
Heiko

Prima - vielen Dank und auch einen schönen Abend!

Die Variablen wie „Ist Wochenende?“, „Ist Feiertag?“ oder „Ist Ferienzeit?“ werden ja immer zur gleichen Zeit aktualisiert. Ich habe hinter den einzelnen Variablen unterschiedliche Aktionen stehen, die am Wochenende anders reagieren als z.B. am Feiertag.
Am Tag der deutschen Einheit ist Wochenende auf false gegangen und Feiertag auf true. Es wurde aber wahrscheinlich der Feiertag zuerst abgearbeitet und dann das Wochenende. Somit kam die falsche Aktion.
Kann man die Reihenfolge irgendwie beeinflussen? Oder ist es ein allgemeines Thema von IPS, dass mehrere Variablen mit dem gleichen Trigger in unterschiedlicher Reihenfolge abgearbeitet werden?

Ja, von der Abarbeitung wird Feiertag vor Wochenende geschrieben.

Man kann natürlich die Reihenfolge im Modul ändern, aber dann möchten vielleicht andere es genau anders haben?!?

Was ich gern tun kann - hier die „Schreib“-Reihenfolge veröffentlichen.

ABER - ein Problem bleibt => es gibt keine Möglichkeit alle Variablen gleichzeitig zu schreiben. Selbst wenn - wie soll IPS drauf reagieren? Absolut gleichzeitig werden die Aktionen dann auch nicht abgearbeitet.

Vielleicht gibt es ja auch etwas was ich nicht kenne in IPS :loveips:

Gruß Heiko

Die Reihenfolge würde mir schon helfen, da kann ich bei den Aktionen mit weiteren Bedingungen die Rangfolge beeinflussen. Gern auch als PN.

Hier die Schreibreihenfolge:

  1. Public Holidays
  • $this->SetValueString(‚Holiday‘, …);
  • $this->SetValueBoolean(‚IsHoliday‘, …);
  1. School Vacations
  • $this->SetValueString(‚Vacation‘, …);
  • $this->SetValueBoolean(‚IsVacation‘, …);
  1. Festive Days
  • $this->SetValueString(‚Festive‘, …);
  • $this->SetValueBoolean(‚IsFestive‘, …);
  1. General Date Info
  • $this->SetValueBoolean(‚IsSummer‘, …);
  • $this->SetValueBoolean(‚IsLeapyear‘, …);
  • $this->SetValueBoolean(‚IsWeekend‘, …);
  • $this->SetValueInteger(‚WeekDay‘, …);
  • $this->SetValueInteger(‚WeekNumber‘, …);
  • $this->SetValueInteger(‚DaysInMonth‘, …);
  • $this->SetValueInteger(‚DayOfYear‘, …);
  • $this->SetValueInteger(‚WorkingDays‘, …);
  • $this->SetValueString(‚Season‘, …);
  1. Birthdays
  • $this->SetValueString(‚Birthday‘, …);
  • $this->SetValueBoolean(‚IsBirthday‘, …);
  1. Wedding days
  • $this->SetValueString(‚Weddingday‘, …);
  • $this->SetValueBoolean(‚IsWeddingday‘, …);
  1. Death days
  • $this->SetValueString(‚Deathday‘, …);
  • $this->SetValueBoolean(‚IsDeathday‘, …);
  1. Eclipse event
  • $this->SetValueBoolean(‚IsEclipse‘, …);
  • $this->SetValueString(‚Eclipse‘, …);
  1. Moonphase event
  • $this->SetValueBoolean(‚IsMoonphase‘, …);
  • $this->SetValueString(‚Moonphase‘, …);
  1. Quote of the day
  • $this->SetValueString(‚QuoteOfTheDay‘, …);

Bei Fragen einfach nochmal melden!

Danke! Wenn ich jetzt die Reihenfolge weiß, kann ich die Aktionen und weiteren Bedingungen darauf definieren. Die nächste Probe ist der 31.10., ein Feiertag gleich nach dem Wochenende.

1 „Gefällt mir“

Hallo,

ich nutze dein Modul auch schon eine Weile und lasse mit täglich das Zitat des Tages auf dem GoogleAssistent ansagen :smile:

Eine Frage hab ich aber:

Ich habe einige Geburtstage eingetragen und möchte mir diese als Benachichtigung im Webfront anzeigen lassen. Nur leider bekomme ich keine Nachricht.

Woran kann das liegen?


Hi,

sieht eigentlich gut aus - solltest 17:51:55 eine Benachrichtigung bekommen … also aufs Handy!

Klappen denn andere Benachrichtigungen?

Gruß Heiko

Löst leider nichts aus. Muss ich vielleicht ein Ereignis setzen? Vaiablen werden geschrieben, das funktioniert.

Okay, aber bekommst Du von anderen Modulen oder Scripten Meldungen aufs Handy?

Also ist die Instanz „webfront“ für Mobile konfiguriert und am Handy auch eingerichtet

Cruz Heiko

Jetzt ging es, Meldung eingestellt für 7.00 Uhr, 7 min später bekam ich die Meldung. Vielleicht darf das Smartphone nicht im Standby sein.

Moin,

schon mal gut - wie das mit dem Handy sein muss weiß ich nicht :slight_smile:

Aber 2 Sachen kannst Du bitte mal checken:

1.) am Handy auf Nachrichten gehen und schauen ob da welche angezeigt werden - sollte eigentlich ein History drin sein!

2.) wie sehen Deine Timer-Infos aus (Beispiel von mir anbei)

Gruß Heiko