Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Vorstellung] Meine zweite Visualisierung

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorstellung] Meine zweite Visualisierung

    This topic has been deleted. Only users with topic management privileges can see it.
    • Röstkartoffel
      Röstkartoffel @slemy last edited by

      @slemy

      Ich habe zwei iCal-Instanzen angelegt. Einen für die normalen Termine mit der aktivierten Checkbox "ersetze Datum mit Worten" und den für den Müllkalender mit der deaktivierten Checkbox, also mit dem richtigen Datum.

      Und dein Bild bitte etwas größer oder eine bessere Auflösung.

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

        Klickt das Bild doch an... dann wird es doch größer.

        Negalein 1 Reply Last reply Reply Quote 0
        • S
          slemy @Negalein last edited by

          @Negalein ist ja groß

          Negalein 1 Reply Last reply Reply Quote 0
          • Negalein
            Negalein Global Moderator @wendy2702 last edited by Negalein

            @wendy2702 sagte in [Vorstellung] Meine zweite Visualisierung:

            Klickt das Bild doch an... dann wird es doch größer.

            Ja, jetzt schon.
            Nachdem er es geändert hat!

            1 Reply Last reply Reply Quote 0
            • Röstkartoffel
              Röstkartoffel last edited by

              JA, nun ist es lesbar.

              Alle Events sind auf "false". Stimmen denn die Event-Einträge auch so mit deinem Kalender überein?

              S 1 Reply Last reply Reply Quote 0
              • Negalein
                Negalein Global Moderator @slemy last edited by

                @slemy sagte in [Vorstellung] Meine zweite Visualisierung:

                @Negalein ist ja groß

                wie schon gesagt. Zuerst hattest du ein sehr kleines!
                Hast es im Nachhinein ausgetauscht!

                1 Reply Last reply Reply Quote 0
                • S
                  slemy @Röstkartoffel last edited by slemy

                  @Röstkartoffel
                  wie meinst du ob die Events mit Kalender übereinstimmen ? von Name her ?

                  Edit:
                  9.png

                  1 Reply Last reply Reply Quote 0
                  • Röstkartoffel
                    Röstkartoffel last edited by Röstkartoffel

                    Richtig erkannt.
                    Restmüll (Kalender) und Restabfall (Events) stehen bei dir. Das passt nicht zusammen.
                    Bitte ändere mal den Eintrag im Event-Reiter auf Restmüll.

                    S Röstkartoffel 2 Replies Last reply Reply Quote 0
                    • S
                      slemy @Röstkartoffel last edited by

                      @Röstkartoffel keine Besserung .

                      10.png

                      1 Reply Last reply Reply Quote 0
                      • Röstkartoffel
                        Röstkartoffel @Röstkartoffel last edited by

                        @Röstkartoffel sagte in [Vorstellung] Meine zweite Visualisierung:

                        Richtig erkannt.
                        Restmüll (Kalender) und Restabfall (Events) stehen bei dir. Das passt nicht zusammen.
                        Bitte ändere mal den Eintrag im Event-Reiter auf Restmüll.

                        Nur "Restmüll" bei Events eintragen. Das reicht, da der Adapter schon auf dieses Wort reagiert.
                        Und wie ich schon schrieb, darf imho die Checkbox "ersetze Datum mit Worten" nicht aktiviert sein.

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          slemy @Röstkartoffel last edited by

                          @Röstkartoffel
                          Ich geb auf, komme nicht weiter.Versuche später nochmal.

                          Röstkartoffel Negalein 2 Replies Last reply Reply Quote 0
                          • Röstkartoffel
                            Röstkartoffel @slemy last edited by

                            @slemy sagte in [Vorstellung] Meine zweite Visualisierung:

                            @Röstkartoffel
                            Ich geb auf, komme nicht weiter.Versuche später nochmal.

                            Aufgeben gilt nicht, Pause machen dagegen schon.
                            Wir kriegen das hin.

                            Zuerst muss dein iCal die Events richtig erkennen / lesen und die Datenpunkte eintragen. Dann erst geht es mit dem Skript weiter. Immer einen Schritt nach dem anderen, dann läufts.

                            Röstkartoffel 1 Reply Last reply Reply Quote 0
                            • Negalein
                              Negalein Global Moderator @slemy last edited by

                              @slemy sagte in [Vorstellung] Meine zweite Visualisierung:

                              @Röstkartoffel
                              Ich geb auf, komme nicht weiter.Versuche später nochmal.

                              schick später mal Screenshots von allen Schritten die du machst.
                              ICAL, Script, Kalender

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                slemy @Negalein last edited by

                                @Negalein

                                So, egal was ich mache kommt immer das gleiche raus .

                                VIS.png

                                kalender.png ical-adapter-events.png ical-adapter-calender.png ical-adapter.png

                                Skript !

                                // Skript basiered auf JoJ123's Müllskript und Pix' Regenskript
                                // v 0.1, tempestas 21.12.2018
                                // Voraussetzung: ical 1.7
                                 
                                 
                                // Anleitung: 
                                /*
                                {1}
                                1) im ical Adapter die Ereignisse definieren, die gesucht werden sollen (z.B. Restabfall)
                                {1}
                                2) const PFAD auf euren ical Adapter anpassen (0, oder 1, zwei...)
                                {1}
                                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
                                {1}
                                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" 
                                {1}
                                {1}
                                Hinweis: das Skript kann für alle Arten von Events genutzt werden, daher hier auf dne Begriff "Muell" verzichtet.
                                {1}
                                {1}
                                {1}
                                */
                                 
                                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
                                
                                
                                1 Reply Last reply Reply Quote 0
                                • opossum
                                  opossum last edited by opossum

                                  Hallo,

                                  in Deinem Script hast Du nicht die Einträge genommen, wie in Deinem Kalender:

                                  Im Kalender steht z.B.: Restmüll 2-wöchentlich, im Script "Restmüll", das geht irgendwie nicht zusammen.

                                  Bei mir sieht das so aus:

                                  Kalender: 23cdcfb7-51cf-422d-a448-2755fa6428c2-image.png
                                  Einstellungen zu ical: 6692a669-fdaa-405b-a63c-d482e5e62e69-image.png

                                  Script: 04f60057-f832-44d6-bb3c-0f17ddd6b238-image.png

                                  Adapter JavaScript: 9d46c75a-ffac-48c9-92c7-d6769d767542-image.png

                                  Die Bezeichnung im Script muss wohl exakt mit denen des Kalenders übereinstimmen, allerdings ohne Leerzeichen. Bei mir gibt es keine Biotonne bzw. wir kompostieren, daher Biotonne deaktiviert im Script, im Adapter bei Biotonne dann -1.

                                  Hier mein Script, was bei mir klaglos läuft.
                                  muellscript_als_utf8_ohne_BOM.txt

                                  Sieht dann bei mir so aus:
                                  acf5a777-32e1-45e5-9620-fd45c00f10b8-image.png

                                  Bitte beachten beim Eintragen der Müllarten im Script:

                                  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

                                  Bei Dir würde aus dem Kalendereintrag: Restmüll 2-wöchentlich Restmüll2-wöchentlich werden, ohne Leerzeichen.

                                  Gruß
                                  Egbert

                                  S 2 Replies Last reply Reply Quote 0
                                  • S
                                    slemy @opossum last edited by

                                    @opossum
                                    THX, Ich fange nochmal von vorne an und melde mich dann wieder .

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

                                      Hallo, @slemy ,

                                      ich würde in Deinem Script mal eine Müllart richtig anpassen und schauen, ob dann was ankommt.

                                      Gruß
                                      opossum

                                      S 1 Reply Last reply Reply Quote 0
                                      • S
                                        slemy @opossum last edited by slemy

                                        @opossum
                                        Alles klar, ich benutze https://www.awb-es.de/abfuhr/abfuhrtermine/__Abfuhrtermine-suchen.html?city=Leinfelden-Echterdingen&street=Viehweg
                                        da sind schon alles eingetragen, auf iCloud Kalender manuel zu editieren ist ne menge arbeit , hab noch keine Möglichkeit gefunden wie ich zb.
                                        Restmüll 2-wöchentlich überall löschen und aus Restmüll 4-wöchentlich nur Restmüll zu machen

                                        Edit:
                                        hab mal so versucht
                                        const PFAD = "ical.2.events.";
                                        const EINTRAEGE = {
                                        "Restmüll 4-wöchentlich": 'muell.restmuell',
                                        "Papiertonne": 'muell.altpapier',
                                        "Biotonne": 'muell.biotonne',
                                        "Gelbe/r Sack/Tonne": 'muell.gelbersack'
                                        };

                                        geht auch nicht

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

                                          @slemy sagte in [Vorstellung] Meine zweite Visualisierung:

                                          "Restmüll 4-wöchentlich": 'muell.restmuell',

                                          Du hast da aber noch ein Leerzeichen drin: Restmüll 4-wöchentlich, das Leerzeichen vor der 4 bitte mal wegnehmen.
                                          Auch bei Gelbe/r Sack/Tonne steht vor dem Sack 😂 😂 noch ein Leerzeichen?

                                          Was steht denn im Log um 04.15 drin? Bei mir sieht das so aus:

                                          2019-03-06 04:15:00.008 - info: javascript.0 script.js.common.muell: LeerungSchwarzeTonne in 8 Tagen
                                          2019-03-06 04:15:00.009 - info: javascript.0 script.js.common.muell: LeerungBlaueTonne in 16 Tagen
                                          2019-03-06 04:15:00.009 - info: javascript.0 script.js.common.muell: LeerungGelbeTonne in 7 Tagen
                                          2019-03-06 04:15:00.009 - info: javascript.0 script.js.common.muell: Der nächste Müll ist in 7 Tagen

                                          Noch ein Punkt:
                                          CRON für ICAL ist gesetzt?
                                          c28ce55b-5034-48c8-a272-0939ea5a31ed-image.png

                                          Dann fiele mir nur noch ein: Umlaute im Kalender, bei mir sind keine, muss aber kein Problem sein.
                                          Gruß
                                          opossum

                                          S 1 Reply Last reply Reply Quote 0
                                          • S
                                            slemy @opossum last edited by slemy

                                            @opossum Cron für ICAL ist gesetzt auf 0,30 * * * *

                                            Mein Log wird so lang das mein Raspberry neu startet oder der hängt ne weile .
                                            Ich mach Morgen wieder neu, und schaue wie ich ein saubere Kalender bekomme, ohne Leerzeichen kürzere Namen etc.
                                            THX erstmal .

                                            Gruß
                                            Robert

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            642
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            template vis
                                            148
                                            1324
                                            461709
                                            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