Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Feiertage Adapter

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Feiertage Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      mikiline last edited by

      War ein Beispiel, da ich hier schon viel gelesen habe von anderen Usern.

      Wegen Bundesland usw…..

      Deshalb diese Homepage, da sind alle Kalender gleich aufgebaut zum einbinden in eine App (zum downloaden)

      Um viel mehr ging es hier eigentlich nicht 😉

      1 Reply Last reply Reply Quote 0
      • cash
        cash Most Active last edited by

        @pix:

        Ich werd mal was basteln.

        Gruß

        Pix

        Edit 28.04.2016: Hier die editierte Version mit Prüfung, ob KW gerade/ungerade und Ausgabe der Wochentags als Zahl (Mo = 1 bis So = 7)

        ! ````
        /* System Datum
        ! Skript erzeugt Variablen für Datum, Tag, Monat, Jahr, KW, Quartal
        ! erstellt: 25.02.2016 von pix
        28.04.2016 Prüft ob KW gerade oder ungerade
        Wochentag als Zahl (deutsches System: Mo = 1, So = 7)
        */
        ! createState('Kalender.Datum.Tag', {
        name: 'Kalender - aktueller Tag',
        type: 'number'
        });
        createState('Kalender.Datum.Monat', {
        name: 'Kalender - aktueller Monat',
        type: 'number'
        });
        createState('Kalender.Datum.Monatsname', {
        name: 'Kalender - aktueller Monatsname',
        type: 'string'
        });
        createState('Kalender.Datum.Jahr', {
        name: 'Kalender - aktuelles Jahr',
        type: 'number'
        });
        createState('Kalender.Datum.Kalenderwoche', {
        name: 'Kalender - aktuelle Kalenderwoche',
        type: 'number'
        });
        createState('Kalender.Datum.Kalenderwoche_Typ', {
        name: 'Kalender - aktuelle Kalenderwoche ist gerade (true) oder ungerade (false)',
        desc: 'Ist die KW gerade?',
        type: 'boolean'
        });
        createState('Kalender.Datum.Wochentag', {
        name: 'Kalender - aktueller Wochentag',
        type: 'string'
        });
        createState('Kalender.Datum.Wochentag_Zahl', {
        name: 'Kalender - aktueller Wochentag als Zahl (Mo = 1, So = 7)',
        type: 'number'
        });
        ! createState('Kalender.Datum.Quartal', {
        name: 'Kalender - aktuelles Quartal',
        type: 'number'
        });
        ! var idTag = 'Kalender.Datum.Tag',
        idWochentag = 'Kalender.Datum.Wochentag',
        idWochentagZahl = 'Kalender.Datum.Wochentag_Zahl',
        idMonat = 'Kalender.Datum.Monat',
        idMonatsname = 'Kalender.Datum.Monatsname',
        idJahr = 'Kalender.Datum.Jahr',
        idKW = 'Kalender.Datum.Kalenderwoche',
        idKWtyp = 'Kalender.Datum.Kalenderwoche_Typ',
        idQuartal = 'Kalender.Datum.Quartal';

        ! function leseDatum () {
        var jetzt = new Date();
        setState(idTag, zeit(jetzt).Tag);
        setState(idMonat, zeit(jetzt).Monat);
        var monatsname = ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'];
        setState(idMonatsname, monatsname[parseInt(zeit(jetzt).Monat)-1]);
        setState(idJahr, zeit(jetzt).Jahr);
        var kw = ermittleKW();
        setState(idKW, kw);
        var kwtyp = (kw % 2 === 0) ? true : false;
        setState(idKWtyp, kwtyp);
        var tagderwoche = ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'];
        setState(idWochentag, tagderwoche[zeit(jetzt).Wochentag]);
        var wochentagzahl = (zeit(jetzt).Wochentag > 0) ? zeit(jetzt).Wochentag : 7 ; // Wenn Tag nicht 0, dann Tag sonst 7
        setState(idWochentagZahl, wochentagzahl);
        var quartal = ermittleQuartal(jetzt);
        setState(idQuartal, quartal);
        log('Kalenderinformation zum heutigen Datum angelegt', 'debug');
        }
        ! function zeit (time) {
        // log(formatDate(time,"JJJJ.MM.TT SS:mm:ss"));
        jetzt = new Date(formatDate(time,"JJJJ.MM.TT SS:mm:ss"));
        var jahr = jetzt.getFullYear();
        var monat = (jetzt.getMonth()+1 < 10) ? '0' + (jetzt.getMonth()+1) : jetzt.getMonth()+1;
        var tag = (jetzt.getDate() < 10) ? '0' + jetzt.getDate() : jetzt.getDate();
        var wochentag = jetzt.getDay(); // startet am Sonntag mit 0
        var stunde = (jetzt.getHours() < 10) ? '0' + jetzt.getHours() : jetzt.getHours();
        var minute = (jetzt.getMinutes() < 10) ? '0' + jetzt.getMinutes() : jetzt.getMinutes();
        var sekunde = (jetzt.getSeconds() < 10) ? '0' + jetzt.getSeconds() : jetzt.getSeconds();
        return {
        'Jahr' : jahr,
        'Monat' : monat,
        'Tag' : tag,
        'Wochentag' : wochentag,
        'Stunde' : stunde,
        'Minute' : minute,
        'Sekunde' : sekunde
        };
        }
        ! function ermittleQuartal(time) {
        var z = new Date (time);
        var y = parseInt(zeit(z).Monat,10);
        var q = 0;
        switch (y) {
        case 0:
        case 1:
        case 2:
        q = 1;
        break;
        case 3:
        case 4:
        case 5:
        q = 2;
        break;
        case 6:
        case 7:
        case 8:
        q = 3;
        break;
        case 9:
        case 10:
        case 11:
        q = 4;
        break;
        default:
        q = 0;
        break;
        }
        return(q);
        }
        ! function ermittleKW() { // http://www.web-toolbox.net/webtoolbox/datum/code-kalenderwocheaktuell.htm
        var KWDatum = new Date();
        var DonnerstagDat = new Date(KWDatum.getTime() + (3-((KWDatum.getDay()+6) % 7)) * 86400000);
        var KWJahr = DonnerstagDat.getFullYear();
        var DonnerstagKW = new Date(new Date(KWJahr,0,4).getTime() + (3-((new Date(KWJahr,0,4).getDay()+6) % 7)) * 86400000);
        var KW = Math.floor(1.5 + (DonnerstagDat.getTime() - DonnerstagKW.getTime()) / 86400000/7);
        var kalenderwoche = (parseInt(KW,10) < 10) ? '0' + KW : KW;
        return(kalenderwoche); // wird als String übergeben, aber im Objekt als Zahl (ohne 0) gespeichert
        }
        ! leseDatum();
        schedule("0 0,12,18 * * *", leseDatum); // Mitternacht und zwei Backups
        ! ```` `

        Ich habe gerade mal das Script von der ersten Seiten bei mir eingefügt welches das Datum auseinandernimmt und dieses in Felder aufteilt.

        Beim ausführen kriege ich folgende Meldungen:

        0:12:42.038	[info]	javascript.0 Stop script script.js.Systemvariablen.Kalender
        10:12:42.127	[info]	javascript.0 Start javascript script.js.Systemvariablen.Kalender
        10:12:42.132	[warn]	javascript.0 at leseDatum (script.js.Systemvariablen.Kalender:64:5)
        10:12:42.134	[warn]	javascript.0 at script.js.Systemvariablen.Kalender:145:1
        10:12:42.138	[warn]	javascript.0 at leseDatum (script.js.Systemvariablen.Kalender:69:5)
        10:12:42.140	[warn]	javascript.0 at script.js.Systemvariablen.Kalender:145:1
        10:12:42.142	[info]	javascript.0 script.js.Systemvariablen.Kalender: registered 0 subscriptions and 1 schedule
        

        Die Felder sind alle richtig gefüllt. Kann ich das ignorieren?

        1 Reply Last reply Reply Quote 0
        • M
          maffi last edited by

          Hallo Zusammen,

          kann mir bitte jemand sagen, wie ich den Feiertagskalender in VIS einbinde? :oops:

          Gruß,

          Maffi

          1 Reply Last reply Reply Quote 0
          • R
            RappiRN Most Active last edited by

            Was genau willst du denn einbinden?

            Enrico

            1 Reply Last reply Reply Quote 0
            • eric2905
              eric2905 last edited by

              Die Doku und die Datenpunkte kennst Du?

              ==> https://github.com/Pix–-/ioBroker.feie ... /README.md

              Oder was genau ist Deine Frage?

              Gruß,

              Eric

              Von unterwegs getippert

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                Hallo Pix,

                nachdem heute morgen mein gesamtes Weckprogramm abgelaufen ist, wollte ich "irgendwie" die Feiertage mit einbinden.

                Nachdem ich bisher nur die Werte "Tage bis" und "Name" verwendet hatte war ich hocherfreut, dass es auch einen Wert "Feiertag heute" gibt, der für solche Zwecke nutzbar ist.

                Die Ernüchterung folgte auf dem Fuß.

                Leider sind auch "Feiertage" dabei, die keine echten Feiertage (arbeitsfrei) sind, die ich dann abwählen müsste.

                Andererseits finde ich die Anzeige dieser Tage auch sehr nützlich.

                Ich weiß, dass du im Moment noch viele andere Baustellen hast.

                Aber vielleicht könntest du meine "Feature-Requests" dann mit bearbeiten, wenn du diese Baustellen abarbeitest.

                • Aufteilung in arbeitsfrei Tage und sonstige Tage (oder zusätzliche Checkbox für arbeitsfrei)

                • schaffen einer Möglichkeit zum hinzufügen eigener "Feiertage" wie Hochzeitstag und Geburtstage

                Gruß

                Rainer

                1 Reply Last reply Reply Quote 0
                • R
                  RappiRN Most Active last edited by

                  Du kannst doch alternativ auch eine zweite Instanz erstellen, wo du nur die Feiertage abfragst, die für dich arbeitsfrei sind.

                  Ich habe ne zweite Instanz am Laufen, weil mir im letzten Jahr die Anzeige der "Feiertage" Heiligabend und 4. Advent nicht gleichzeitig möglich waren.

                  Enrico

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    Die Möglichkeit hatte ich auch überlegt, aber wieder verworfen, weil ich vermutete, dass keine multiplen Instanzen möglich sein würden.

                    Dann wäre das durchaus eine Lösung (für Punkt 1).

                    Danke

                    Rainer

                    1 Reply Last reply Reply Quote 0
                    • R
                      RappiRN Most Active last edited by

                      Punkt zwei sollte doch alternativ auch über den Kalender möglich sein, oder? So genau hab ich mir den noch gar nicht angesehen! :oops:

                      Enrico

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators last edited by

                        @RappiRN:

                        Punkt zwei sollte doch alternativ auch über den Kalender möglich sein `
                        ich bin ja auch wirklich doof.

                        Wollte gerade etwas antworten da fiel mir ein, dass ich das auch gedacht hatte, aber du wahrscheinlich etwas anderes meinst als ich.

                        ICH wollte es (eben nicht) über ical machen. DU meinst wahrscheinlich den fullCalendar???

                        Gruß

                        Rainer

                        1 Reply Last reply Reply Quote 0
                        • R
                          RappiRN Most Active last edited by

                          Genau, den (fullcalendar) habe ich gemeint! 😄

                          Enrico

                          1 Reply Last reply Reply Quote 0
                          • R
                            RappiRN Most Active last edited by

                            Habe gerade mal kurz nachgesehen, das wird wohl nix mit dem fullcalendar, da geht als Periode nur täglich und monatlich, da müsstest du noch den Wunsch an Bluefox weitergeben, dass du jährlich auch haben möchtest!

                            Enrico

                            1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators last edited by

                              und wieder schlechte Nachricht 😞
                              144_kalender.png
                              ganz abgesehen davon, dass der zum steuern von Datenpunkten (ID) gedacht ist, gibt es dort keine jährliche Wiederholung.

                              Gruß

                              Rainer

                              EDIT - Zeitüberschneidung 😉

                              1 Reply Last reply Reply Quote 0
                              • R
                                RappiRN Most Active last edited by

                                @Homoran:

                                ganz abgesehen davon, dass der zum steuern von Datenpunkten (ID) gedacht ist, gibt es `

                                Datenpunkte kannst du doch aber anlegen, oder? 😉

                                Hochzeitstag true/false usw. 😄

                                Enrico

                                Edit: Ich muss dir aber auch Recht geben, dass das ein schönes Feature für den Feiertage Adapter wäre, wenn man eigene Feiertage einarbeiten könnte!

                                1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators last edited by

                                  oder Datenpunkt Feiertag und befüllen mit "Hochzeitstag".

                                  Der sollte bei einstellung Umschalt evtl klappen.

                                  und 😄
                                  144_kalender_02.png
                                  vielleicht klappt das doch

                                  fehlt nur noch die Info Feiertag xxx in yyy Tagen, wie in Deutsche Feiertage

                                  Gruß

                                  Rainer

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    RappiRN Most Active last edited by

                                    @Homoran:

                                    fehlt nur noch die Info Feiertag xxx in yyy Tagen, wie in Deutsche Feiertage `

                                    Da bliebe dir momentan nur die Möglichkeit einer festen Erinnerung, die du z.B. 14 Tage vorher startest und dann per Script runterzählst. 🙂

                                    Enrico

                                    1 Reply Last reply Reply Quote 0
                                    • P
                                      pix last edited by

                                      Lieber Rainer,

                                      danke für Deine Anregung.@Homoran:

                                      Hallo Pix,

                                      nachdem heute morgen mein gesamtes Weckprogramm abgelaufen ist, wollte ich "irgendwie" die Feiertage mit einbinden.

                                      Nachdem ich bisher nur die Werte "Tage bis" und "Name" verwendet hatte war ich hocherfreut, dass es auch einen Wert "Feiertag heute" gibt, der für solche Zwecke nutzbar ist.

                                      Die Ernüchterung folgte auf dem Fuß.

                                      Leider sind auch "Feiertage" dabei, die keine echten Feiertage (arbeitsfrei) sind, die ich dann abwählen müsste.

                                      Andererseits finde ich die Anzeige dieser Tage auch sehr nützlich.

                                      Ich weiß, dass du im Moment noch viele andere Baustellen hast.

                                      Aber vielleicht könntest du meine "Feature-Requests" dann mit bearbeiten, wenn du diese Baustellen abarbeitest.

                                      • Aufteilung in arbeitsfrei Tage und sonstige Tage (oder zusätzliche Checkbox für arbeitsfrei)

                                      • schaffen einer Möglichkeit zum hinzufügen eigener "Feiertage" wie Hochzeitstag und Geburtstage

                                      Gruß

                                      Rainer `

                                      Ich fürchte, wir sind da nicht einer Meinung. Der Feiertag-Adapter zeigt allgemeine deutsche Feiertage und optional einige regionale Feiertage (oder ähnliche Tage, wie zB Rosenmontag). Der Adapter zeigt an, ob heute, morgen oder übermorgen ein Feiertag ist und wann der nächste Feiertag kommt. Steht ja alles in Doku und auf https://github.com/Pix–-/ioBroker.feiertage.

                                      Persönliche "Feiertage" oder Termine berücksichtige ich darum nicht, weil die Konfiguration dann ausufern würde. Ein User will nur einen Hochzeitstag, der andere einen Geburstag oder alle Geburtstage, der nächste die Heimspiele seiner Lieblingsmannschaft. Auch wenn der Adapter den Namen trägt, geht es nicht ums Feiern, sondern um die Anzeige der deutschen Feiertage. 😄 :lol:

                                      Ich empfehle die Datenpunkte des Adapters in ein Skript einzubinden, das dann auch zB aus dem Kalender/ical-Adapter Datenpunkte (events) berücksichtigt und schließlich alles auswertet und gezielt ausgibt, ob der User ausschlafen kann, seinen Gottesdienst-Anzug bügeln oder die Party kaufen muss.

                                      Es gibt ja das Heizungsskript von looxer, das auch bei Bedarf auf Daten des Adapters zugreift. Ich empfehle daher lieber ein Skript oder für Fleissige einen Adapter wie zum Beispiel iobroker.schichtdienst oder iobroker.borussiadortmund (zu bauen), um persönliche wiederkehrende Ereignisse zu integrieren.

                                      Lieben Gruß,

                                      Pix

                                      1 Reply Last reply Reply Quote 0
                                      • Homoran
                                        Homoran Global Moderator Administrators last edited by

                                        Hallo pix,
                                        @pix:

                                        Ich fürchte, wir sind da nicht einer Meinung. `
                                        Das sehe ich noch nicht einmal so. War nur ein Versuch 😉 Wäre halt bequem (für mich, keinesfalls für dich)

                                        Der Adapter heisst ja Deutsche Feiertage (nicht persönliche) und dann stand da noch was von Gauß und Lichtenberg, auch wenn die wahrscheinlich noch keinen Rosenmontag kannten.

                                        @pix:

                                        iobroker.borussiadortmund `
                                        Das muss es ja nun wirklich nicht sein 😉

                                        Gruß

                                        Rainer

                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          Rilly last edited by

                                          Hallo Leute, ein super Adapter. Ich hab den jetzt mal installiert und scheint gut zu funktionieren. Jetzt stellt sich mir die Frage wie ich die Werte in meine CCU mappe? Ich hab hier leider nix darüber gefunden. Falls mich jemand kurz erleuchten kann wäre ich sehr verbunden. 😉

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            RappiRN Most Active last edited by

                                            Du musst dir in der CCU Variablen erstellen, die einen Text (ich glaube Zeichenkette) enthalten können und dann per Script bei jeder Änderung die Änderung in die CCU Variable (hm-rpc-Adaptrer) übertragen.

                                            Enrico

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            879
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            27
                                            115
                                            20856
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo