Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Ical Setzen eines Events

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

Ical Setzen eines Events

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
159 Beiträge 32 Kommentatoren 29.8k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    mikiline
    schrieb am zuletzt editiert von
    #150

    Ja die setzt einfach den Wert auf 14 Tage und wird in der Nacht wieder auf den nächsten richtigen Müllabholtag überschrieben. Das ist, da ich die Signalbilder verwende am Tag "0" (an dem der Müll abgeholt wird)…...Dann blinkt dies nicht den ganzen Tag ;)

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      Marc1970
      schrieb am zuletzt editiert von
      #151

      @ pix

      Hallo, ich habe erfolgreich dein Müllscript im Einsatz:

      /* Kalenderevent in der Zukunft suchen

      sucht im iCal Adapter nach events, die noch kommen

      http://forum.iobroker.net/viewtopic.php … 9ce#p34975

      20.09.2016 erstellt von pix

      */

      tolle Arbeit.

      Ich habe es auch schon mehrmals für andere Abfragen (heute, morgen) genutzt,

      nun meine Frage:

      Ist es möglich auch Termine von gestern abzufragen und was müßte dafür im Script geändert werden?

      MfG Marc

      <u>Hat sich erledigt, hab es anders gelöst….</u>

      Gruß Marc

      Und denkt immer daran, blau ist rot und Plus ist Minus…

      1 Antwort Letzte Antwort
      0
      • W Offline
        W Offline
        w00dy
        schrieb am zuletzt editiert von w00dy
        #152

        Hallo,

        ich versuche schon seit Tagen den Fehler zu finden, ich hoffe ihr könnt mir helfen.

        Ich habe das Script oben von @mikiline angepasst und den Shedule vorerst zum Testen mit "* * * * *" gespeichert.

        Im neuen Ordner "muell" werden mir die Tonnen auch angezeigt, aber die Werte bleiben immer auf "0", bzw. es wird nichts angezeigt.

        In ical ist "Ersetze Datum mit Worten" angehakt und Ereignisse sind auch genug vorhanden.

        Das Log vom Script:

        17:15:00.556	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: -1
        17:15:00.556	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist:
        17:15:00.556	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 0
        17:15:00.556	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 0
        17:15:00.556	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: , ,
        17:15:00.556	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 17:15:00 GMT+0200 (CEST)
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: NaN
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 33
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: Übermorgen
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 0
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 0
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Übermorgen , Übermorgen , Übermorgen
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 17:15:00 GMT+0200 (CEST)
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: NaN
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: -1
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist:
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 0
        17:15:00.557	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 0
        17:15:00.558	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: , ,
        17:15:00.558	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 17:15:00 GMT+0200 (CEST)
        17:15:00.558	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
        17:15:00.558	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
        17:15:00.558	[info]	javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: NaN
        

        Mein angepasstes Script:

        // Anlegen JS State für VIS
        //HIER ANPASSEN!!!!!!!!!!!!!!!!!!!!!
        createState('javascript.0.muell.restabfall', 0);   //. gelb, blau usw entsprechend erstellen
        createState('javascript.0.muell.gelbersack', 0);   //. gelb, blau usw entsprechend erstellen
        createState('javascript.0.muell.altpapier', 0);   //. gelb, blau usw entsprechend erstellen
        createState('javascript.0.muell.papierholsammlung', 0);   //. gelb, blau usw entsprechend erstellen
        createState('javascript.0.muell.bioabfall', 0);   //. gelb, blau usw entsprechend erstellen
        
        schedule("* * * * *", function () {
        // TESTSKRIPT FÜR NOXX
        
        // Annahme ist, dass jede Müllart mindestens einmal im Monat abgeholt wird. Nicht getestet und eventuell problematisch ist es, wenn Müll seltener abgeholt wird.
        
        debug = true;
        
        // Suchvariablen
        //HIER ANPASSEN!!!!!!!!!!!!!!!!!!!!!
        var restabfall= "Restm";     // weitere Varialben für die anderen Müllsorten eintragen
        var gelbersack= "Gelber";     // weitere Varialben für die anderen Müllsorten eintragen
        var altpapier= "Papier";     // weitere Varialben für die anderen Müllsorten eintragen
        var bioabfall= "Bio";     // weitere Varialben für die anderen Müllsorten eintragen
        var papierholsammlung= "Papier Hol";     // weitere Varialben für die anderen Müllsorten eintragen
        
        // Kalender auslesen (HTML Format)
        
            // **************************************************************************************            
            // Termine auswerten aus html. Bereinigung der HTML Tags und Konvertierung in Plain Text
            // **************************************************************************************
            //HIER den ical ANPASSEN!!!!!!!!!!!!!!!!!!!!!
                var inhalt = getState("ical.0.data.html"/*HTML iCal table*/);           // an deinen eigenen Kalender anpassen
                var inhaltString = inhalt.val.toString();
                var inhaltStringReplace = inhaltString;
                var inhaltStringText;
                var i_search;
        
                // remove all inside SCRIPT and STYLE tags
                inhaltStringReplace=inhaltStringReplace.replace(/<script.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/script>/gi, "");
                inhaltStringReplace=inhaltStringReplace.replace(/<style.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/style>/gi, "");
        
                // remove BR tags
                inhaltStringReplace=inhaltStringReplace.replace(/
        /gi, "");
                inhaltStringReplace=inhaltStringReplace.replace(/<br\s\>/gi, "");
                inhaltStringReplace=inhaltStringReplace.replace(/<br\>/gi, "");
        
                // remove all else
                inhaltStringReplace=inhaltStringReplace.replace(/<(?:.|\s)*?>/g, "");
        
                // get rid of html-encoded characters:
                inhaltStringReplace=inhaltStringReplace.replace(/ /gi," ");
                inhaltStringReplace=inhaltStringReplace.replace(/&/gi,"&");
                inhaltStringReplace=inhaltStringReplace.replace(/"/gi,'"');
                inhaltStringReplace=inhaltStringReplace.replace(/</gi,'<');
                inhaltStringReplace=inhaltStringReplace.replace(/>/gi,'>');    
        
                if(debug) log(inhaltStringReplace);
        
                //HIER welche States gewünscht sind ANPASSEN!!!!!!!!!!!!!!!!!!!!!
                setState('javascript.0.muell.restabfall', getPos(restabfall));
                setState('javascript.0.muell.gelbersack', getPos(gelbersack));
                setState('javascript.0.muell.altpapier', getPos(altpapier));
                setState('javascript.0.muell.bioabfall', getPos(bioabfall));
                setState('javascript.0.muell.papierholsammlung', getPos(papierholsammlung));
        
        // n-ten Treffer finden
        
                function nthIndex(str, pat, n){
                var L= str.length, i= -1;
                while(n-- && i++ <l){ i="str.indexOf(pat," i);/if/(i/</0)/break;/}/i_search="i;" funktion/zum/tage/im/monat/zählen/function/daysinmonth(month,/year)/{/return/new/date(year,/month,/0).getdate();/position/bestimmen/getpos(pos_welche_tonne)/var/pos="inhaltStringReplace.indexOf(pos_welche_tonne," 1);/if(debug)/log("pos/ist:/"+pos);/inhaltstringtext="inhaltStringReplace.substring((pos-13),pos-1);" log("datum/"+inhaltstringtext);/nthindex(inhaltstringtext,/".",/t_m="inhaltStringText.slice(0," i_search);/pos1="i_search+1;" log("pos1:/"/+pos1/);/2);/m_m="inhaltStringText.slice(pos1," pos2="i_search+1;" log("pos2:/+pos2/j_m="inhaltStringText.slice(pos2," inhaltstringtext.len/log(t_m/+"/,/+m_m/+j_m);/datum/heute/ermitteln/today="new" date();/log(today);/tag/t="today.getDate();" m="today.getMonth()+1;" jahr/j="today.getFullYear();" "+t+m+j);/berechnung/tagesdifferenzen/diff="0;" dim="DaysInMonth(m," j);/des/aktuellen/monats/log("tage/aktueller/monat:/"+dim);/if(j_m="">j || m_m > m) { // Prüfung: Jahr_Müll größer als aktuelles Jahr? Relevant bei Jahreswechsel ODEr Monat Müll größer aktueller Monat?
        
                    diff = parseInt(dim) - parseInt(t) + parseInt(t_m);          
                }
                else diff = parseInt(t_m) - parseInt(t);
        
                  if(debug) log("Tage bis zum nächsten Müll: "+diff);
        
                  return diff;
            }
        });</l){></br\></br\s\></style.*></script.*>
        

        Habe ich doch irgendwo was übersehen?

        <size size="150">EDIT:

        Sorry, habe ein paar Eingabefehler gemacht. Werde alt, muss mir unbedingt ne Brille zulegen. Altpapier und Restabfall wird jetzt angezeigt, Gelber Sack und Bio noch nicht. Den Fehler finde ich hoffentlich auch noch…</size>

        LG,
        w00dy

        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          mikiline
          schrieb am zuletzt editiert von
          #153

          "Ersetze Datum mit Worten" muss nicht angehakt sein und es brauch für das Skript auch keine Ereignisse

          Die Suchworte müssen natürlich auch genau so im Kalender vorhanden sein!

          Such mal nur nach "bio" dann sollte dort auch was angezeigt werden, denn das Wort "abfall" kommt bei dir auch in restabfall vor ;)

          Dann evtl auch nur nach "gelb" oder "gelber" suchen…..

          Solltest Du in der ical Instanz auch nur z.B 5 Tage bei "Tagesvorschau" eingestellt haben, kann er auch keinen Termin finden der erst in 7 Tagen stattfindet. Dort kannst z.B 31 Tage einstellen
          2678_ical.png

          1 Antwort Letzte Antwort
          0
          • W Offline
            W Offline
            w00dy
            schrieb am zuletzt editiert von w00dy
            #154

            Hallo @mikiline, danke für deine Hilfe!

            Habe die Suchvorgaben mal geändert, aber Bioabfall und Gelber Sack werden einfach nicht angezeigt, obwohl diese im Kalender vorhanden sind.

            Die Vorschau in ical ist auf 31 Tage eingestellt.

            Hier mal die VIS-Ausgabe zu den nächsten Müll-Terminen:

            ! ```
            <code>[code]Heute Gelber Sack
            Übermorgen Bioabfall Braune Tonne
            31.10.2018 Restabfall Graue Tonne
            05.11.2018 Gelber Sack
            07.11.2018 Bioabfall Braune Tonne
            09.11.2018 Altpapier Grüne Tonne
            14.11.2018 Restabfall Graue Tonne
            19.11.2018 Gelber Sack
            21.11.2018 Bioabfall Braune Tonne[/code]</code>

            
            Mein aktuelles Script:
            
            >! ````
            // Anlegen JS State für VIS
            //HIER ANPASSEN!!!!!!!!!!!!!!!!!!!!!
            createState('javascript.0.muell.restabfall', 0);   //. gelb, blau usw entsprechend erstellen
            createState('javascript.0.muell.gelbersack', 0);   //. gelb, blau usw entsprechend erstellen
            createState('javascript.0.muell.altpapier', 0);   //. gelb, blau usw entsprechend erstellen
            createState('javascript.0.muell.bioabfall', 0);   //. gelb, blau usw entsprechend erstellen
            >! schedule("* * * * *", function () {
            // TESTSKRIPT FÜR NOXX
            >! // Annahme ist, dass jede Müllart mindestens einmal im Monat abgeholt wird. Nicht getestet und eventuell problematisch ist es, wenn Müll seltener abgeholt wird.
            >! debug = true;
            >! // Suchvariablen
            //HIER ANPASSEN!!!!!!!!!!!!!!!!!!!!!
            var restabfall= "Rest";     // weitere Varialben für die anderen Müllsorten eintragen
            var gelbersack= "Gelb";     // weitere Varialben für die anderen Müllsorten eintragen
            var altpapier= "Alt";     // weitere Varialben für die anderen Müllsorten eintragen
            var bioabfall= "Bio";     // weitere Varialben für die anderen Müllsorten eintragen
            >! // Kalender auslesen (HTML Format)
            >!     // **************************************************************************************            
                // Termine auswerten aus html. Bereinigung der HTML Tags und Konvertierung in Plain Text
                // **************************************************************************************
                //HIER den ical ANPASSEN!!!!!!!!!!!!!!!!!!!!!
                    var inhalt = getState("ical.0.data.html"/*HTML iCal table*/);           // an deinen eigenen Kalender anpassen
                    var inhaltString = inhalt.val.toString();
                    var inhaltStringReplace = inhaltString;
                    var inhaltStringText;
                    var i_search;
            
                    // remove all inside SCRIPT and STYLE tags
                    inhaltStringReplace=inhaltStringReplace.replace(/<script.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/script>/gi, "");
                    inhaltStringReplace=inhaltStringReplace.replace(/<style.*>[\w\W]{1,}(.*?)[\w\W]{1,}<\/style>/gi, "");
            
                    // remove BR tags
                    inhaltStringReplace=inhaltStringReplace.replace(/
            /gi, "");
                    inhaltStringReplace=inhaltStringReplace.replace(/<br\s\>/gi, "");
                    inhaltStringReplace=inhaltStringReplace.replace(/<br\>/gi, "");
            
                    // remove all else
                    inhaltStringReplace=inhaltStringReplace.replace(/<(?:.|\s)*?>/g, "");
            
                    // get rid of html-encoded characters:
                    inhaltStringReplace=inhaltStringReplace.replace(/ /gi," ");
                    inhaltStringReplace=inhaltStringReplace.replace(/&/gi,"&");
                    inhaltStringReplace=inhaltStringReplace.replace(/"/gi,'"');
                    inhaltStringReplace=inhaltStringReplace.replace(/</gi,'<');
                    inhaltStringReplace=inhaltStringReplace.replace(/>/gi,'>');    
            
                    if(debug) log(inhaltStringReplace);
            
                    //HIER welche States gewünscht sind ANPASSEN!!!!!!!!!!!!!!!!!!!!!
                    setState('javascript.0.muell.restabfall', getPos(restabfall));
                    setState('javascript.0.muell.gelbersack', getPos(gelbersack));
                    setState('javascript.0.muell.altpapier', getPos(altpapier));
                    setState('javascript.0.muell.bioabfall', getPos(bioabfall));
            >! // n-ten Treffer finden
            >!         function nthIndex(str, pat, n){
                    var L= str.length, i= -1;
                    while(n-- && i++ <l){ i="str.indexOf(pat," i);/if/(i/</0)/break;/}/i_search="i;" funktion/zum/tage/im/monat/zählen/function/daysinmonth(month,/year)/{/return/new/date(year,/month,/0).getdate();/position/bestimmen/getpos(pos_welche_tonne)/var/pos="inhaltStringReplace.indexOf(pos_welche_tonne," 1);/if(debug)/log("pos/ist:/"+pos);/inhaltstringtext="inhaltStringReplace.substring((pos-13),pos-1);" log("datum/"+inhaltstringtext);/nthindex(inhaltstringtext,/".",/t_m="inhaltStringText.slice(0," i_search);/pos1="i_search+1;" log("pos1:/"/+pos1/);/2);/m_m="inhaltStringText.slice(pos1," pos2="i_search+1;" log("pos2:/+pos2/j_m="inhaltStringText.slice(pos2," inhaltstringtext.len/log(t_m/+"/,/+m_m/+j_m);/datum/heute/ermitteln/today="new" date();/log(today);/tag/t="today.getDate();" m="today.getMonth()+1;" jahr/j="today.getFullYear();" "+t+m+j);/berechnung/tagesdifferenzen/diff="0;" dim="DaysInMonth(m," j);/des/aktuellen/monats/log("tage/aktueller/monat:/"+dim);/if(j_m="">j || m_m > m) { // Prüfung: Jahr_Müll größer als aktuelles Jahr? Relevant bei Jahreswechsel ODEr Monat Müll größer aktueller Monat?
            
                        diff = parseInt(dim) - parseInt(t) + parseInt(t_m);          
                    }
                    else diff = parseInt(t_m) - parseInt(t);
            
                      if(debug) log("Tage bis zum nächsten Müll: "+diff);
            
                      return diff;
                }
            });</l){></br\></br\s\></style.*></script.*>
            

            Und hier ein aktueller Log vom Script:

            ! ````
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Heute Gelber Sack Übermorgen Bioabfall Braune Tonne 31.10.2018 Restabfall Graue Tonne 05.11.2018 Gelber Sack 07.11.2018 Bioabfall Braune Tonne 09.11.2018 Altpapier Grüne Tonne 14.11.2018 Restabfall Graue Tonne 19.11.2018 Gelber Sack 21.11.2018 Bioabfall Braune Tonne
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 69
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: 31.10.2018
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 3
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 6
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: 31 , 10 , 2018
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.165 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: 9
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 8
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: Heute
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 0
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 0
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Heute , Heute , Heute
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.166 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: NaN
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 166
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: 09.11.2018
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 3
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 6
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: 09 , 11 , 2018
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: 18
            18:28:00.167 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 33
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: Übermorgen
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 0
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 0
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Übermorgen , Übermorgen , Übermorgen
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.168 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: NaN
            18:28:00.987 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Heute Gelber Sack Übermorgen Bioabfall Braune Tonne 31.10.2018 Restabfall Graue Tonne 05.11.2018 Gelber Sack 07.11.2018 Bioabfall Braune Tonne 09.11.2018 Altpapier Grüne Tonne 14.11.2018 Restabfall Graue Tonne 19.11.2018 Gelber Sack 21.11.2018 Bioabfall Braune Tonne
            18:28:00.988 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 69
            18:28:00.988 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: 31.10.2018
            18:28:00.988 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 3
            18:28:00.988 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 6
            18:28:00.988 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: 31 , 10 , 2018
            18:28:00.989 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: 9
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 8
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: Heute
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 0
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 0
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Heute , Heute , Heute
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.990 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: NaN
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 166
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: 09.11.2018
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 3
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 6
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: 09 , 11 , 2018
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.991 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.992 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.998 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: 18
            18:28:00.998 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos ist: 33
            18:28:00.998 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum ist: Übermorgen
            18:28:00.998 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos1: 0
            18:28:00.998 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: pos2: 0
            18:28:00.999 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Übermorgen , Übermorgen , Übermorgen
            18:28:00.999 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Mon Oct 22 2018 18:28:00 GMT+0200 (CEST)
            18:28:00.999 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Datum heute ist: 22102018
            18:28:00.999 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage aktueller Monat: 31
            18:28:00.999 [info] javascript.0 script.js.Müll-Kalendertermine_vorzeitig_anzeigen: Tage bis zum nächsten Müll: NaN

            
            Hast du evtl. noch ne Idee was ich falsch gemacht haben könnte?
            
            
            [6677_objekte.jpeg](/assets/uploads/files/6677_objekte.jpeg)

            LG,
            w00dy

            1 Antwort Letzte Antwort
            0
            • M Offline
              M Offline
              mikiline
              schrieb am zuletzt editiert von
              #155

              Adapterversion 1.6.5 installiert? Sonst fällt mir auf die Schnelle nichts ein

              Mal iobroker Objekt Seite aktualisieren…..hatte auch schon mal das keine Werte angezeigt werden in der Übersicht.

              1 Antwort Letzte Antwort
              0
              • W Offline
                W Offline
                w00dy
                schrieb am zuletzt editiert von
                #156

                Hallo mikiline,

                ich habe jetzt ical von 1.6.1 auf 1.6.5 aktualisiert.

                Jetzt wird auch Bio gefunden :) , aber der gelbe Sack noch nicht :cry:

                Eine neue ical-Instanz ändert das Prob. auch nicht.

                Werde mit den Suchparametern noch etwas testen, vlt. liegt`s daran.

                Vielen Dank für deine Hilfe!

                LG,
                w00dy

                1 Antwort Letzte Antwort
                0
                • opossumO Offline
                  opossumO Offline
                  opossum
                  schrieb am zuletzt editiert von
                  #157

                  Hallo,

                  wäre vielleicht jemand so nett und exportiert sein "Müllscript" bitte in eine Textdatei und hängt die hier an. Mit dem Codekopieren geht das hier einfach nicht mehr. Habe versucht, das hier mehrmals zu kopieren. Anscheinend ist das Script durch die Migration komplett unbrauchbar geworden. Ich würde das gern bei mir einsetzen, aber der Scripteditor meckert immer die Zeile 58 des Scripts bei mir an. Er kann also das Script nicht sauber durchkompilieren. Ich würde mir dann die Textdatei mit Ultraedit öffnen und dann von da erneut in den Scripteditor kopieren.
                  Danke für die Bemühungen.
                  viele Grüße
                  Egbert

                  https://schlepper-petersdorf.jimdofree.com/

                  sigi234S 1 Antwort Letzte Antwort
                  0
                  • opossumO opossum

                    Hallo,

                    wäre vielleicht jemand so nett und exportiert sein "Müllscript" bitte in eine Textdatei und hängt die hier an. Mit dem Codekopieren geht das hier einfach nicht mehr. Habe versucht, das hier mehrmals zu kopieren. Anscheinend ist das Script durch die Migration komplett unbrauchbar geworden. Ich würde das gern bei mir einsetzen, aber der Scripteditor meckert immer die Zeile 58 des Scripts bei mir an. Er kann also das Script nicht sauber durchkompilieren. Ich würde mir dann die Textdatei mit Ultraedit öffnen und dann von da erneut in den Scripteditor kopieren.
                    Danke für die Bemühungen.
                    viele Grüße
                    Egbert

                    sigi234S Online
                    sigi234S Online
                    sigi234
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #158

                    @opossum

                    // Skript basiered auf JoJ123's Müllskript und Pix' Regenskript
                    // v 0.1, tempestas 21.12.2018
                    // Voraussetzung: ical 1.7
                    
                    
                    // Anleitung: 
                    /*
                    
                    1) im ical Adapter die Ereignisse definieren, die gesucht werden sollen (z.B. Restabfall)
                    
                    2) const PFAD auf euren ical Adapter anpassen (0, oder 1, zwei...)
                    
                    3) im Bereich EINTRAEGE vor den Doppelpunkten die Ereignisse analog des ical Ereginis eintragen. 
                    ACHTUNG: ES DÜRFEN HIER KEINE FREIZEICHEN GENUTZT WERDEN; ICAL MACHT AUS "Gelber Sack" ALS EREIGNIS DATENPUNKT "GelberSack"
                    daher muss hier dann "GelberSack" eingetragen werden
                    
                    hinter den Doppelpunkten wird der Pfad angegeben, in dem die Datenpunkte für die Tage bis zum jeweiligen Müll gespeichert werden.
                    Davor wird dann noch die Javascript Instanz gesetzt, in der ihr das Skript startet.
                    Gesamtpfad dann also z.B. "javascript.0.muell.restmuell" 
                    
                    
                    Hinweis: das Skript kann für alle Arten von Events genutzt werden, daher hier auf dne Begriff "Muell" verzichtet.
                    
                    
                    
                    */
                    
                    debug = true;
                    
                    const PFAD = "ical.2.events.";
                    const EINTRAEGE = {                       
                        "Restmüll": 'muell.restmuell',
                        "Altpapier": 'muell.altpapier',
                        "Biotonne": 'muell.biotonne',
                        "GelberSack": 'muell.gelbersack'
                    };
                    
                    
                    
                    
                    
                    //States anlegen
                    
                    Object.keys(EINTRAEGE).forEach(key => {
                        createState(EINTRAEGE[key], -1);
                        if (debug) log("State "+EINTRAEGE[key] +" angelegt");
                    });
                    
                    createState("muell.next");  // state, in den der kleinste Wert geschrieben wird, falls man z.B. auf einer Hauptübersicht immer nur den Wert bis zum nächsten Event (egal welches) sehen möchte)
                    var idNext = "muell.next";
                    
                    function check() {
                    
                        var i;
                        var min =90;  // maximale Vorschau der Tage im ical ist 90, von dort aus suchen wir den kleinsten Wert
                    
                        Object.keys(EINTRAEGE).forEach(eintrag => {
                            
                            // erst prüfen, ob event heute vorliegt
                            
                            if ( getState(PFAD + 0 +".today." + eintrag).val === true) {   // Pfad weicht von den anderen Tagen ab!
                            setState(EINTRAEGE[eintrag], 0);
                            min = 0;
                            if(debug) log(eintrag + " wird heute abgeholt");
                            }
                            
                            // falls nicht, weiter schauen, wann es kommt
                           
                            else {
                        
                                for (i=1 ; i<90;i++) {                       // heute (0) wird separat geprüft, da dort ein andere Pfad zum Tragen kommt; max 90 Tage Vorschau 
                                    if ( getState(PFAD + i +"." + eintrag).val === true) {
                                    setState(EINTRAEGE[eintrag], i);
                                    if (i < min) min = i;
                                    if(debug) log(eintrag + " in "+i +" Tagen");
                                    break;              // beim ersten gefundenen Eitnrag wird unterbrochen, da ja der nächste Termin gesucht wird
                                    }
                                    
                                }   
                            }    
                        });
                    
                        // kleinsten Wert in next - State schreiben
                        
                        if(debug) log("Der nächste Müll ist in "+min +" Tagen");
                        setState(idNext, min);
                    
                    }
                    
                    // Bei Start
                    
                    setTimeout(check, 5000);   // 5 Sekunde warten, um beim erstmaligen Start Fehler zu vermeiden, die aus nicht existierenden States resultieren
                    
                    // Zeitplan
                    schedule('15 4 * * *', () => check() );   // Täglich 4.15h
                    

                    Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                    Immer Daten sichern!

                    1 Antwort Letzte Antwort
                    0
                    • opossumO Offline
                      opossumO Offline
                      opossum
                      schrieb am zuletzt editiert von
                      #159

                      Hallo,

                      vielen Dank, bin jetzt einen Schritt weiter. Das Script lässt sich kompilieren und läuft durch.

                      Vielen Dank @sigi234 sigi

                      https://schlepper-petersdorf.jimdofree.com/

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      402

                      Online

                      32.4k

                      Benutzer

                      81.4k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe