ioBroker Forum


Nutzungsbedingungen |Datenschutzrichtlinie
Cloud |Dokumentation
Aktuelle Zeit: 24.01.2018, 04:41

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 72 Beiträge ]  Gehe zu Seite 1 2 3 4 Nächste
Autor Nachricht
 Betreff des Beitrags: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 01:50 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
Hallo,

nachdem ich hier am Skript gebastelt habe, war mir klar: Das muss jetzt endlich mein erster Adapter werden. :lol: Der macht also das gleiche wie das Skript. Zusätzlich berechnet er noch die Tage bis zum nächsten Feiertag. Ist nichts besonderes geworden, aber der ganze Kram mit Github und das Testen nehmen schon ganz schön Zeit in Anspruch. Also jetzt hab ich noch mehr Respekt vor den Entwicklern. :!:

Zum Adapter: Er zeigt an, wann mal wieder Feiertag ist. Die angelegten Datenpunkte sprechen für sich. Readme und Doku werden noch weiter verbessert.
Dateianhang:
Dateikommentar: Datenpunkte
Bildschirmfoto 2016-04-27 um 02.47.13.jpg
Bildschirmfoto 2016-04-27 um 02.47.13.jpg [ 16.74 KiB | 1580 mal betrachtet ]

Installation über Github-Pfad
https://github.com/Pix---/ioBroker.feiertage
über den dritten Button (Kofferanhänger oder Etikett) links oben im Admin/Adapter Reiter.

Kleiner Fehler bisher:
Beim Klick auf das Einstellungsfenster erscheint eine Fehlermeldung, dass die Einstellungsdatei nicht gefunden wurde. Da aber auch keine Einstellungen nötig sind, beeinträchtigt das nicht die Funktion des Adapters nicht.
Frage: Wie kriege ich das in den Griff? Wo liegt der Fehler?

Das Logo in der Adapterliste erscheint wohl erst, wenn der Adapter auch bei npm liegt.
Dank an Challenger aus dem Homematic-Forum für seine Iconsets. Habe mir eines aus dem Kalender-Satz ausgewählt.
Und Dank an paul53 für die Inspiration zu diesem Adapter. War schließlich ursprünglich sein Feiertags-Code.

Bitte testen, freue mich auch Rückmeldung.

Gruß
Pix

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 04:33 
Offline
guru
Benutzeravatar

Registriert: 23.03.2015, 18:41
Beiträge: 2435
Wohnort: Wuppertal
Hat sich bedankt: 41 Mal
Danksagung erhalten: 208 Mal
Klingt sehr interessant. Schaue ich mir heute Abend an!

Gruß,
Eric

_________________
-----------------------------------------------------------------------------------------------
Roses are red, violets are blue,
if I listen to heavy metal, my neighbours do too


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 07:10 
Offline
guru
Benutzeravatar

Registriert: 24.02.2015, 19:40
Beiträge: 2052
Hat sich bedankt: 96 Mal
Danksagung erhalten: 130 Mal
Top!

Schaue ich mir auch an und werde ihn mit Sicherheit nutzen. Danke Pix!

Und es freut mich, dass Du den Schritt gemacht hast ein Skript in einen Adapter zu giessen :)

Da kommt im Laufe der Zeit bestimmt noch mehr :mrgreen:

_________________
Intel NUC (NUC6i5SYH) -> ESXi 6 > VM Ubuntu 16.04 ioBroker (redis) > VM Ubuntu 16.04 mySQL
Slave: Pi 3 ohne SD (Boot USB SLC)
CCU2, hue 2, DS 1512+, WeMos, Harmony Hub, Alexa
Adapter: Fritzbox / Skripte: dynamic hue, Bluetooth Scanner, WIFFI-wz


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 07:14 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
ruhr70 hat geschrieben:
Da kommt im Laufe der Zeit bestimmt noch mehr :mrgreen:

Ja, davon kann man ausgehen. Bin jetzt angefixt :D

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 09:03 
Offline
professional
Benutzeravatar

Registriert: 14.09.2015, 05:51
Beiträge: 723
Hat sich bedankt: 41 Mal
Danksagung erhalten: 33 Mal
Nur zur Info: Der Feiertags-Adapter funktioniert bestens bei mir. :)

Viele Grüße
Marco

_________________
CCU2-CuxD&Cul868MHz, 44xHM Geräte, 20xMAX Fenstersensoren.Acer Revo mit IoBroker, Tablet Captiva 9,7 SFHD. SMA SB2.5,STP7000TL20,SMA Energy Meter, Echo, Harmony, JeeLink868, Arduino 433MHz, MaxtoxCUL868,MilightEasyLED,Hue


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 09:51 
Offline
professional

Registriert: 22.06.2015, 17:22
Beiträge: 158
Hat sich bedankt: 2 Mal
Danksagung erhalten: 4 Mal
hallo pix
Adapter funktioniert :D
meine Frage wo kann ich einstellen welches Bundesland ?

Vielen Dank für deinen Einsatz hier im Forum :!: :!: :!:


Gruß Stephan


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 10:00 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
Hallo stephan,
stephan61 hat geschrieben:
meine Frage wo kann ich einstellen welches Bundesland

guter Punkt. Kommt auf die Todo Liste. Alternativ könnte ich auch ein Opt-in für nicht bundesweite katholische Feiertage machen. :roll: Ach nee, Protestanten haben ja auch einen eigenen Feiertag (Reformationstag).
Ausserdem ist geplant, einzelne besondere Tage wie Heiligabend, Rosenmontag, Faschingsdienstag, etc. die zwar keine Feiertage sind (schon gar nicht bundesweit), aber für viele einen ähnlichen Status haben, auch zu verarbeiten. In den Einstellungen soll die Reaktion auf diese Tage aber auch ein/ausgeschaltet werden können. Das dauert aber noch.

Gruß
Pix

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 10:42 
Offline
guru

Registriert: 10.08.2014, 19:15
Beiträge: 1177
Hat sich bedankt: 42 Mal
Danksagung erhalten: 88 Mal
Hallo Pix

Glückwunsch zum ersten Adapter.
Darf ich Erweiterungswünsche anbringen?

Zur Zeit laufen bei mir CCU-Scripte zum ähnlichen Thema.
Benutzt werden die bei mir für die Heizung-, Rolladen- und Lichtsteuerung.

Dabei sind bei mir die Zustände "Frei_Morgen" und "Frei_Heute" wichtig.
Bei "Frei_Heute" gehn z.B. die Rolladen im Schlafzimmer später hoch und die Heizung schaltet später ein usw.

Diese zwei Zustände setzte ich mit Hilfe von ScriptGUI aus den SV'S der Scripte.

Wenn Dein Adapter einige weitere Werte liefern würde, hätte man noch noch eine Anlaufstelle.

Es wäre schön, wenn Dein Adapter noch den Wochentag als Nummer liefern würde.
1=Montag.....7=Sonntag

Bei mir sieht das dann so aus.
Wenn Wochentag 5 oder 6 dann Wochenende_Morgen
Wenn Wochentag 6 oder 7 dann Wochenende_Heute

Wenn Feiertag_Morgen oder Wochenende_Morgen dann Frei_Morgen
Wenn Feiertag_Heute oder Wochenende_Heute dann Frei_Heute

Mit den Wochentagen kann sich jeder seine freien Tage gestalten.
Einige müssen Samstags(6) arbeiten und haben dafür Montags(1) frei usw.

Für Schichtarbeiter wäre es eventuell noch schön wenn Dein Adapter die Wochennummer (KW) liefern würde.
Wochennummer als Zahl
Wochennummer_grade_ungrade true/false

Grüße

_________________
Rantanplan
CCU2 (2.29.18) * ioBroker.vis
ioBrocker auf Win10/64 bit Enterprise (VM)
Scripten mit Blockly


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 17:25 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
Hallo rantanplan,

ehrlich gesagt, habe ich an diese Features auch schon gedacht. Aber für den ersten Adapter unter diesem Oberbegriff wollte ichs erstmal dabei belassen.

Ich würde eher einen zweiten Adapter zB iobroker.datuminfo erstellen, der die Daten zum Tag/Woche/Monat/Qurtal liefert.

Zur Zeit mache ich das mit einem Skript:
Spoiler: Show hidden text
Code:
/* System Datum

Skript erzeugt Variablen für Datum, Tag, Monat, Jahr, KW, Quartal

erstellt: 25.02.2016 von pix

*/

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.Wochentag', {
    name: 'Kalender - aktueller Wochentag',
    type: 'string'
});
createState('Kalender.Datum.Quartal', {
    name: 'Kalender - aktuelles Quartal',
    type: 'number'
});


var idTag =        'Kalender.Datum.Tag',
    idWochentag =  'Kalender.Datum.Wochentag',
    idMonat =      'Kalender.Datum.Monat',
    idMonatsname = 'Kalender.Datum.Monatsname',
    idJahr =       'Kalender.Datum.Jahr',
    idKW =         'Kalender.Datum.Kalenderwoche',
    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 tagderwoche = ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'];
    setState(idWochentag, tagderwoche[zeit(jetzt).Wochentag]);
    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


Da könnte man noch schön Datenpunkte anlegen, wie Wochentag in Kurzschreibweise (Mo, Di, Mi, ...), Langschreibweise, englische Schreibweise, Monat ausgeschrieben, 3-Buchstaben (JAN, FEB, MÄR, ...), etc. Dazu allerlei Kombinationen. Das lässt sich in VIS sicher gebrauchen. Ich selbst nutze noch die bindings in VIS. "25.12.2015, heute ist 1. Weihnachtsfeiertag, morgen ist 2. Weihnachtsfeiertag".

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)
Spoiler: Show hidden text
Code:
/* 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

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Zuletzt geändert von pix am 28.04.2016, 10:55, insgesamt 4-mal geändert.

Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 19:03 
Offline
guru

Registriert: 10.08.2014, 19:15
Beiträge: 1177
Hat sich bedankt: 42 Mal
Danksagung erhalten: 88 Mal
Hallo Pix

Danke für die schnelle Antwort.

So wie ich Dein Script lese ist ja alles drin.
Außer Datenpunke wie "KW ungrade" und "Feiertag Heute/Morgen" :D :D :D

Grüße

_________________
Rantanplan
CCU2 (2.29.18) * ioBroker.vis
ioBrocker auf Win10/64 bit Enterprise (VM)
Scripten mit Blockly


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 27.04.2016, 19:33 
Offline
guru
Benutzeravatar

Registriert: 23.03.2015, 18:41
Beiträge: 2435
Wohnort: Wuppertal
Hat sich bedankt: 41 Mal
Danksagung erhalten: 208 Mal
Adapter ist installiert und läuft.
Die Anzeige in VIS ist schon angepasst.

Jetzt mal ein paar Tage laufen lassen..
Sieht aber schon sehr gut aus!

Gruß,
Eric

_________________
-----------------------------------------------------------------------------------------------
Roses are red, violets are blue,
if I listen to heavy metal, my neighbours do too


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 28.04.2016, 10:43 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
Hallo rantanplan,
rantanplan hat geschrieben:
alles drin.
Außer Datenpunke wie "KW ungrade" und "Feiertag Heute/Morgen" :D :D :D

ein paar Zeilen Code, jetzt wird der Type der KW mit ausgegeben:

Kalenderwoche_Typ: false = ungerade/ true = gerade

Skript oben geändert bzw. an den obigen Post angehängt.
Feiertage heute/morgen/übermorgen/Tabe bis Feiertag und jeweils die Namen des Feiertags gibts ja jetzt im Adapter :D

Gruß
Pix

EDIT: Hatte die Wochentage als Zahl vergessen, sind jetzt auch drin (mo = 1 bis so = 7);

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Zuletzt geändert von pix am 28.04.2016, 10:57, insgesamt 2-mal geändert.

Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 28.04.2016, 10:47 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
Hallo Eric,
eric2905 hat geschrieben:
Adapter ist installiert und läuft.
Die Anzeige in VIS ist schon angepasst.

Jetzt mal ein paar Tage laufen lassen..
Sieht aber schon sehr gut aus!

Gruß,
Eric

danke fürs Testen. Ich denke, bis mindestens nach Fronleichnam (Ende Mai) sollte ich warten mit Updates und Entwicklungen. Bis dahin sind noch vier Feiertage (1.Mai, Pfingstsonntag, Pfingstmontag, Fronleichnam) zum ausgiebig Testen. Ich muss nur das Problem mit der Installationsdatei noch in den Griff kriegen und weiß nicht wie :oops:

Gruß
Pix

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 28.04.2016, 21:14 
Offline
Site Admin
Benutzeravatar

Registriert: 13.07.2014, 14:42
Beiträge: 7653
Hat sich bedankt: 287 Mal
Danksagung erhalten: 801 Mal
pix hat geschrieben:
Hallo,

nachdem ich hier am Skript gebastelt habe, war mir klar: Das muss jetzt endlich mein erster Adapter werden. :lol: Der macht also das gleiche wie das Skript. Zusätzlich berechnet er noch die Tage bis zum nächsten Feiertag. Ist nichts besonderes geworden, aber der ganze Kram mit Github und das Testen nehmen schon ganz schön Zeit in Anspruch. Also jetzt hab ich noch mehr Respekt vor den Entwicklern. :!:

Zum Adapter: Er zeigt an, wann mal wieder Feiertag ist. Die angelegten Datenpunkte sprechen für sich. Readme und Doku werden noch weiter verbessert.
Dateianhang:
Bildschirmfoto 2016-04-27 um 02.47.13.jpg

Installation über Github-Pfad
https://github.com/Pix---/ioBroker.feiertage
über den dritten Button (Kofferanhänger oder Etikett) links oben im Admin/Adapter Reiter.

Kleiner Fehler bisher:
Beim Klick auf das Einstellungsfenster erscheint eine Fehlermeldung, dass die Einstellungsdatei nicht gefunden wurde. Da aber auch keine Einstellungen nötig sind, beeinträchtigt das nicht die Funktion des Adapters nicht.
Frage: Wie kriege ich das in den Griff? Wo liegt der Fehler?

Das Logo in der Adapterliste erscheint wohl erst, wenn der Adapter auch bei npm liegt.
Dank an Challenger aus dem Homematic-Forum für seine Iconsets. Habe mir eines aus dem Kalender-Satz ausgewählt.
Und Dank an paul53 für die Inspiration zu diesem Adapter. War schließlich ursprünglich sein Feiertags-Code.

Bitte testen, freue mich auch Rückmeldung.

Gruß
Pix

Auch mein Glückwunsch zum ersten Adapter. Das ist doch nicht so kompliziert? ;)

Es gibt zwei Möglichkeiten, wie man eine Konfigseite fixen kann:
- in io-package.json (https://github.com/ioBroker/ioBroker/bl ... md#adapter) eine Option "noConfig: true" setzen.
- eine dummy Seite admin/index.html erzeugen.

Aber ich denke, dass du Konfig auf jeden Fall brauchst:
- um Bundesland auszuwählen
- um eigene FeierTage einfügen zu können.

Gut dass du dein Adapter "Feiertage" genannt hast, obwohl ich da sofort an universellen Adapter gedacht habe (mit export aus csv und Editor-Funktion)

Es gibt doch nicht nur Deutschland auf der Welt :)


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 28.04.2016, 21:36 
Offline
guru

Registriert: 10.08.2014, 19:15
Beiträge: 1177
Hat sich bedankt: 42 Mal
Danksagung erhalten: 88 Mal
Bluefox hat geschrieben:
Gut dass du dein Adapter "Feiertage" genannt hast ist gut, obwohl ich da sofort an universellen Adapter gedacht habe (mit export aus csv und Editor-Funktion)

Es gibt doch nicht nur Deutschland auf der Welt :)


Na, wenn das kein Wink mit dem Zaunpfahl ist :D :D :D

Und eine echte Herausforderung, die Bluefox Dir auch zutraut!
Also einmal Schlucken, ein Stossgebet (wohin auch immer) und los :D
WIR glauben an Dich :!:

Grüße

PS. Mit "export aus csv" meinte Bluefox, glaub ich, "import aus csv"

_________________
Rantanplan
CCU2 (2.29.18) * ioBroker.vis
ioBrocker auf Win10/64 bit Enterprise (VM)
Scripten mit Blockly


Nach oben
   
 Betreff des Beitrags: Feiertage Adapter
BeitragVerfasst: 29.04.2016, 16:53 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
Hallo Bluefox,
Bluefox hat geschrieben:
pix hat geschrieben:
Hallo,

Es gibt zwei Möglichkeiten, wie man eine Konfigseite fixen kann:
- in io-package.json (https://github.com/ioBroker/ioBroker/bl ... md#adapter) eine Option "noConfig: true" setzen.
- eine dummy Seite admin/index.html erzeugen.

ich habe das Problem noch nicht bewältigt.

Dateianhang:
Bildschirmfoto 2016-04-29 um 17.54.02.jpg
Bildschirmfoto 2016-04-29 um 17.54.02.jpg [ 51.16 KiB | 1322 mal betrachtet ]

Ich habe im Admin Ordner eine index.html angelegt. Darin werden die Feiertage jetzt als Checkbox abgefragt.
Die io-package.json ist auch angelegt. Darin "noConfig: false", da ja jetzt die Feiertage ausgewählt werden können. Das kann jetzt jeder selbst machen, das hat dann nix mehr mit Bundesländern zu tun.

Im Script feiertage.js werden die Values der Checkboxes abgefragt. Doch im Log erscheinen Fehler, dass die id's der Checkboxes nicht bekannt seien (zB "enabled_heiligabend"). Sind die Funktion load/save in der admin/index.html korrekt? Kannst du nachsehen?

https://github.com/Pix---/ioBroker.feiertage

An alle: die derzeitige Version 0.0.5 auf Github funktioniert nicht korrekt. Bitte bei 0.0.4 bleiben.

Gruß
Pix

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Zuletzt geändert von pix am 29.04.2016, 16:53, insgesamt 1-mal geändert.

Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 29.04.2016, 17:32 
Offline
guru
Benutzeravatar

Registriert: 23.03.2015, 18:41
Beiträge: 2435
Wohnort: Wuppertal
Hat sich bedankt: 41 Mal
Danksagung erhalten: 208 Mal
pix hat geschrieben:
An alle: die derzeitige Version 0.0.5 auf Github funktioniert nicht korrekt. Bitte bei 0.0.3 bleiben.

Ääääh, im Admin wird mir die Version 0.0.4 angezeigt ... muss ich jetzt Angst haben? :lol:

Dateianhang:
Feiertage.png
Feiertage.png [ 9.25 KiB | 1318 mal betrachtet ]

Gruß,
Eric

_________________
-----------------------------------------------------------------------------------------------
Roses are red, violets are blue,
if I listen to heavy metal, my neighbours do too


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 29.04.2016, 17:34 
Offline
guru

Registriert: 04.11.2014, 17:49
Beiträge: 2456
Hat sich bedankt: 147 Mal
Danksagung erhalten: 268 Mal
Nein. Alles gut. Meinte die 4er. Ändere das im Vorigen Post.

Nur nicht updaten, bevor ich es hier bekannt gebe.

Pix


Gesendet mit Tapatalk

_________________
Mac mini (OS X 10.12.6, node v6.12.2, npm v4.6.1), Redis, InfluxDB, VIS via iOS; gesteuerte Systeme: Homematic CCU2, Homepilot, Roomba, Sonos, XEOMA auf Odroid XU4; Adapter: feiertage, tvspielfilm, rtv, solarwetter, tankerkoenig, homepilot, epson_stylus_px830


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 29.04.2016, 17:53 
Offline
professional

Registriert: 24.12.2015, 11:14
Beiträge: 236
Hat sich bedankt: 12 Mal
Danksagung erhalten: 3 Mal
pix ist so im "Wahn" und im Kopf schon Versionen vor uns.
Klasse gemacht pix.

Gruß
Tino

_________________
BananaPi / Jessie / ioBroker deinstalliert, keine Upgradesicherheit


Nach oben
   
 Betreff des Beitrags: Re: Feiertage Adapter
BeitragVerfasst: 29.04.2016, 20:39 
Offline
professional

Registriert: 28.04.2015, 20:46
Beiträge: 407
Hat sich bedankt: 2 Mal
Danksagung erhalten: 6 Mal
Hey, cooler Adapter.
wären österreichische Feiertage auch machbar :mrgreen:


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 72 Beiträge ]  Gehe zu Seite 1 2 3 4 Nächste

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu Forum:  
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de