NEWS
Test adapter public-holidays v0.0.x
-
Aktuelle Test Version v0.0.2 Veröffentlichungsdatum 2024-10-24 Github Link https://github.com/Jey-Cee/ioBroker.public-holidays Kann von npm installiert werden.
Im Zuge unserer Responsive Design Initiative, habe ich mir den Feiertage Adapter angeschaut. Das Ziel war zu Prüfen ob und mit welchem Aufwand die Konfiguration nach JSONConfig Migriert werden kann.
Neben der Tatsache das eine Migration Überraschend Komplex wäre, sind mir auch andere Punkte aufgefallen.
Darunter:- Es lässt sich nicht nach Ländern Auswählen
- Erweiterung mit weiteren Feiertagen und für andere Länder nur Umständlich möglich
- es werden die selben Objekte zwei mal angelegt nur um mehrere Sprachen an zu bieten
- Adapter hat einen deutschen Namen Bietet aber international Feiertage an, darunter für Italien
Eine neu Entwicklung war gar nicht der Plan, aber es hat mich gepackt.
Der Ansatz vom neuen Adapter ist vor allem Internationalisierung und leichtere Erweiterung um neue Feiertage.
Momentan ist das ein Alpha Test, weswegen auch nur Deutsche Feiertage drin sind.
In erster Linie geht es jetzt darum zu Testen ob die Feiertage richtig berechnet werden und nach und nach um neue Feiertage zu erweitern.
Wenn sich jemand daran beteiligen möchte Feiertage in den Adapter auf zu nehmen, freue ich mich sehr.
Am einfachsten ist es wenn dafür das Datenmodel genommen wird und entsprechend befüllt wird. Bitte auch dazu schreiben in Welchem Land. Falls etwas unklar ist Fragen oder leer lassen und einen Link zur Erklärung des Feiertages.Das Datenmodel für die Feiertage sieht folgendermaßen aus:
{ "id": "mothersDay", "name": "Muttertag", // Der Name des Feiertags in der Sprache des jeweiligen landes "type": "calendar", // religion, political oder calendar "date": null, // Datum des Feiertags, wenn es sich um ein festes Datum handelt; Format: MM-DD "states": "Alle", // Bundesländer (oder z.B. die Kantone in der Schweiz) in den der Tag gilt "ruleType": "weekdayInMonth", // fixed, easter oder weekdayInMonth; Die Regel nach der ein Feiertag berechnet wird falls nötig. "offsetDay": null, // Anzahl Tage vor oder nach einem bestimmten Tag "referenceHoliday": null, // Feiertag von dem aus die Berechnung anhand des offsetDays durchgeführt wird "weekdayInMonth": { // Zusätzliche informationen für den ruleType weekdayInMonth "weekday": 0, // Wochentag 0-6 (Sonntag - Samstag) "week": 2, // Die x-te Woche im Monat "month": 5 // Der Monat in dem der Feiertag ist }, "enabled": true }
-
@jey-cee sagte in Test adapter public-holidays v0.0.x:
Wenn sich jemand daran beteiligen möchte Feiertage in den Adapter auf zu nehmen, freue ich mich sehr.
Österreich
{ "id": "Staatsfeiertag", "name": "Staatsfeiertag", // Der Name des Feiertags in der Sprache des jeweiligen landes "type": "political", // religion, political oder calendar "date": 05-01, // Datum des Feiertags, wenn es sich um ein festes Datum handelt; Format: MM-DD "states": "Alle", // Bundesländer (oder z.B. die Kantone in der Schweiz) in den der Tag gilt "ruleType": "fixed", // fixed, easter oder weekdayInMonth; Die Regel nach der ein Feiertag berechnet wird falls nötig. "offsetDay": null, // Anzahl Tage vor oder nach einem bestimmten Tag "referenceHoliday": null, // Feiertag von dem aus die Berechnung anhand des offsetDays durchgeführt wird "weekdayInMonth": { // Zusätzliche informationen für den ruleType weekdayInMonth "weekday": null, // Wochentag 0-6 (Sonntag - Samstag) "week": null, // Die x-te Woche im Monat "month": 5 // Der Monat in dem der Feiertag ist }, "enabled": true } { "id": "Maria-Himmelfahrt", "name": "Maria-Himmelfahrt", // Der Name des Feiertags in der Sprache des jeweiligen landes "type": "religion", // religion, political oder calendar "date": 08-15, // Datum des Feiertags, wenn es sich um ein festes Datum handelt; Format: MM-DD "states": "Alle", // Bundesländer (oder z.B. die Kantone in der Schweiz) in den der Tag gilt "ruleType": "fixed", // fixed, easter oder weekdayInMonth; Die Regel nach der ein Feiertag berechnet wird falls nötig. "offsetDay": null, // Anzahl Tage vor oder nach einem bestimmten Tag "referenceHoliday": null, // Feiertag von dem aus die Berechnung anhand des offsetDays durchgeführt wird "weekdayInMonth": { // Zusätzliche informationen für den ruleType weekdayInMonth "weekday": null, // Wochentag 0-6 (Sonntag - Samstag) "week": null, // Die x-te Woche im Monat "month": 8 // Der Monat in dem der Feiertag ist }, "enabled": true } { "id": "Nationalfeiertag", "name": "Nationalfeiertag", // Der Name des Feiertags in der Sprache des jeweiligen landes "type": "political", // religion, political oder calendar "date": 10-26, // Datum des Feiertags, wenn es sich um ein festes Datum handelt; Format: MM-DD "states": "Alle", // Bundesländer (oder z.B. die Kantone in der Schweiz) in den der Tag gilt "ruleType": "fixed", // fixed, easter oder weekdayInMonth; Die Regel nach der ein Feiertag berechnet wird falls nötig. "offsetDay": null, // Anzahl Tage vor oder nach einem bestimmten Tag "referenceHoliday": null, // Feiertag von dem aus die Berechnung anhand des offsetDays durchgeführt wird "weekdayInMonth": { // Zusätzliche informationen für den ruleType weekdayInMonth "weekday": null, // Wochentag 0-6 (Sonntag - Samstag) "week": null, // Die x-te Woche im Monat "month": 10 // Der Monat in dem der Feiertag ist }, "enabled": true }
die religiösen Feiertage müssten mit Deutschland ziemlich gleich sein. Das check ich heute noch.
-
Hallo, sollten da nicht Daten kommen?
admin.0 2024-10-24 19:23:09.134 warn public-holidays has an invalid jsonConfig: [{"instancePath":"/items/_hitSave","schemaPath":"#/properties/items/patternProperties/%5E.%2B/allOf/37/then/additionalProperties","keyword":"additionalProperties","params":{"additionalProperty":"onChange"},"message":"must NOT have additional properties"},{"instancePath":"","schemaPath":"#/if","keyword":"if","params":{"failingKeyword":"else"},"message":"must match \"else\" schema"}] admin.0 2024-10-24 19:23:06.331 info ==> Connected system.user.admin from ::1 admin.0 2024-10-24 19:23:06.094 info <== Disconnect system.user.admin from ::1 admin host.SmartHome 2024-10-24 19:23:00.707 info instance system.adapter.public-holidays.0 terminated with code 0 (NO_ERROR)
Edit:
Betriebssystem:Windows
RAM:15.9 GB
Node.js:v20.18.0
NPM:10.8.2
Admin: 7.2.6
JS-Controller: 7.0.1 -
-
Möchte ich 2 Länder muss ich 2 Instanzen anlegen?
-
@sigi234 Ja das erfordert eine zweite Instanz
-
@jey-cee sagte in Test adapter public-holidays v0.0.x:
@sigi234 Ja das erfordert eine zweite Instanz
Ok, cool wäre noch eine Übersicht als Json-Table für das aktuelle Jahr
-
Du hast Anfang des Jahres mitgeteilt dass ALLE deine Adapter in Zukunft kostenpflichtig sein werden (https://forum.iobroker.net/topic/72081/zahltag) und zeitnahe den existierenden NET-TOOLS Adapter kostenpflichtig gemacht.
Ich möchte hier keine Diskussion lostreten ob nun Adapter etwas kosten dürfen oder nicht - dazu wurde schon alles geschrieben und der Status Quo ist m.E. in Ordnung.
Bitte nur um eine eindeutige Klarstellung deinerseits bezüglich deines neuen Adapters public-holidays.:Wird der Adapter public-holidays auch in Zukunft kostenfrei sein - oder kannst / willst du nicht ausschließen dass du hier ebenfalls später eine gebührenpflicht einführst ?
Gemäß deinem Posten von Jänner, würde er ja kostenpflichtzig sein / werden.
User haben m.E. das Recht diese Information rechtzeitig zu erfahren.
-
@mcm1957 ich habe nicht den Plan ihn Kostenpflichtig zu machen.Wenn es nach mir geht soll er den Feiertags Adapter Vollständig ablösen und in die Community Überführt werden.
Was dann schlußendlich mit dem Adapter passiert hängt davon ab, was beim nächsten Meeting bzgl. Des Feiertags Adapter raus kommt.
-
@jey-cee
Danke für die Klarstellung. Und DANKE für deinen Einsatz und dass du dich des Adapters annimmst.