Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS 19001928 Müllabfuhrtermine per ics abrufen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    LBS 19001928 Müllabfuhrtermine per ics abrufen

    Aus aktuellem Anlass hab ich ein Baustein gebastelt. Dieser erstellt automatisch die Abfuhrtermine-Datei für 19000180.

    https://service.knx-user-forum.de/?c...ad&id=19001928

    Die Müllabfuhrtermine werden über die AWSH-Webseite abgefragt und automatisch in einer Datei abgelegt, damit der Baustein 19000180 die Daten auswerten kann.

    Die URL muss manuell erstellt und auch angepasst werden. Anbei ein Beispiel anhand der AWSH

    Variante A) Die generierung ist über GET-Parameter

    1) Webseite der AWSH aufrufen:

    https://www.awsh.de/service/abfuhrtermine/

    2) Ort + Straße auswählen.

    3) Die Optionen auswählen

    Restabfall 2W
    Bioabfall 2W
    Wertstoff 2W
    Papiertonne monatlich

    Tannenbaum

    4) Den Link "Als Kalenderdatei (.ics) herunterladen" kopieren und als E2 an diesen Baustein übergeben.

    Die jeweiligen Filter sind in der ICS-Datei aufgeführt. Hier kann man entweder die ICS-Datei vorher per Text-Editor öffnen und sich die Schlüsselwörter der jeweiligen Kalender
    raussuchen oder man gib als TS1-Filter erstmal den String "test" ein. Anschliessend öffnet man die Log und übernimmt die möglichen Kombinationen.


    Variante B) Die Parameter werden per POST übermittelt. Hier bleibt leider nichts anderes übrig, als die ICS-Datei herunterzuladen und als Datei einzubinden.

    Variante B.1) Es gibt mehere Dateien, die heruntergeladen werden müssen, das ist aktuell beim WZV (www.wzv.de) der Fall. Hier muss man die Dateien zuerst zu einer Datei zusammenkopieren.

    Unter Linux geht es folgendermassen:

    1) Ordner anlegen und die Dateien dort reinkopieren
    2) die Shell öffnen und in das jeweilige Verzeichnis wechseln
    3) mittels cat * > neue.ics alle Dateien zusammenfügen.

    Alternativ diesen merger verwenden (oder nach "ics merger online" suchen)

    https://michaelion.net/icsMerge/

    Leere TSx-Filter werden ignoriert.


    E1 = Trigger jährlich setzen
    E2 = Url wie oben beschrieben
    E3 = Zeitzone

    E4 = 3 zum testen

    E5 = Summary-Keywort. In der Regel sollte hier der default-Wert "SUMMARY" passen.

    Es gibt aber auch Anbieter, die das Summary-Feld mit einer Sprachdefinition ergänzen, wie z.B:
    Code:
    UID:8e039d1b-c0d4-4509-a9e1-f6d037f32a34
    DTSTAMP:20200104T205823Z
    SUMMARY;LANGUAGE=de:Schadstoffmobil in Ihrer Nähe
    DTSTART:20201111T060000Z
    Hier muss dann "SUMMARY;LANGUAGE=de" als E5 eingetragen werden.

    Hierzu die ics-Datei per Texteditor öffnen und nach Summary suchen.

    E6 = Datei, die von 19000180 verarbeitet wird. Bitte inkl. vollem Pfad, bsp: /usr/local/edomi/www/termine.txt

    E10..E14 = Die Felder, die benötigt werden als Filter setzen. Es muss mindestens 1 Filter gesetzt sein, leere Felder werden ignoriert.

    A1 = 1, wenn die Datei erstellt werden konnte, ansonsten 0
    Zuletzt geändert von sipiyou; 18.01.2020, 17:05.

    #2
    Find ich gut.

    Wenn ich ein bisschen mehr PHP könnte würde ich das auch für Köln umsetzten.
    Da gibts ne offene APi

    https://technikkram.net/2018/03/wann...eber-homematic


    Guten Rutsch euch allen!

    LG
    Zuletzt geändert von trollmar; 31.12.2019, 18:50.
    Jean-Luc Picard: "Things are only impossible until they are not."

    Kommentar


      #3
      Frohes Neues

      Ich hatte erst überlegt, ob ich die ics Daten auslese, hab mich aber für json entschieden. Hab jetzt doch zurückgerundert und den Baustein umgeändert.
      Der liest jetzt die ics-Daten aus und verarbeitet diese.

      Lad dir bitte die v0.3 herunter und gib bescheid, ob es bei dir funktioniert.

      Feedbacks von anderen sind natürlich auch willkommen.

      Kommentar


        #4
        Leider ist der Baustein nix für mich.
        Ich benötige es für Köln ;-)

        LG in den Norden.

        Jean-Luc Picard: "Things are only impossible until they are not."

        Kommentar


          #5
          Du wirst staunen, aber auch Köln hat ein ics-Feed.

          https://www.awbkoeln.de/abfuhrkalender/

          Dann tippst du deine Adresse inkl. Straßennummer ein, anschliessend erschinen paar Links, was für diesen Baustein interessant ist ist "Termine als ics herunterladen".

          Deshalb ich ich das Teil auf ics umgebaut - abgesehn von der langen Weile...

          /edit: die ics scheint es für diverse Städe zu geben. Einfach mal google fragen, dann kommt man zum ics. Einige bieten die Daten nur für 6 Monate an, dann muss der Trigger entsprechend gesetzt werden.
          Zuletzt geändert von sipiyou; 01.01.2020, 16:05.

          Kommentar


            #6
            Danke fuer die Muehe Funktioniert fuer den Schwalm-Eder-Kreis ebenfalls.

            Kommentar


              #7
              Zitat von sipiyou Beitrag anzeigen
              Du wirst staunen, aber auch Köln hat ein ics-Feed.

              https://www.awbkoeln.de/abfuhrkalender/

              Dann tippst du deine Adresse inkl. Straßennummer ein, anschliessend erschinen paar Links, was für diesen Baustein interessant ist ist "Termine als ics herunterladen".

              Deshalb ich ich das Teil auf ics umgebaut - abgesehn von der langen Weile...

              /edit: die ics scheint es für diverse Städe zu geben. Einfach mal google fragen, dann kommt man zum ics. Einige bieten die Daten nur für 6 Monate an, dann muss der Trigger entsprechend gesetzt werden.
              Hi,

              danke.
              Aber ich sehe nicht wie der TS Filter da funktioniert.
              In Köln kann man keine TS Filter anwenden.
              Oder stehe ich gerade auf dem Schlauch

              EDIT:
              versuche mal im anderen Thread die JSON aus Köln zu verarbeiten.
              https://knx-user-forum.de/forum/proj...zu-extrahieren
              Zuletzt geändert von trollmar; 01.01.2020, 17:04.
              Jean-Luc Picard: "Things are only impossible until they are not."

              Kommentar


                #8
                Ja, du stehst ziemlich auf dem Schlauch.

                Wenn du den Baustein wie oben beschrieben eingebunden hast, dann erhälst du in der Log folgenden Eintrag. Die Werte sind durch ";" getrennt:

                Bio (braun), Wertstoff (gelb) AWB Köln;Restmüll (grau) AWB Köln;Papier (blau) AWB Köln;Bio (braun) AWB Köln;Wertstoff (gelb) AWB Köln

                D.h. du hast folgende Filter, die du in Köln verwenden kannst:

                Bio (braun), Wertstoff (gelb) AWB Köln
                Restmüll (grau) AWB Köln
                Papier (blau) AWB Köln
                Bio (braun) AWB Köln
                Wertstoff (gelb) AWB Köln

                D.h. wenn du bei TS1 Restmüll hast, dann ist dein TS-1 Filter

                Restmüll (grau) AWB Köln

                usw.

                Wie es hier aussieht scheinen die Kölner im Export eine Besonderheit zu haben, wenn Bio und Werstoff am gleichen Tag abgeholt werden, deshalb gibt es hier den Eintrag

                Bio (braun), Wertstoff (gelb) AWB Köln

                Kommentar


                  #9
                  Zitat von sipiyou Beitrag anzeigen
                  Ja, du stehst ziemlich auf dem Schlauch.

                  Wenn du den Baustein wie oben beschrieben eingebunden hast, dann erhälst du in der Log folgenden Eintrag. Die Werte sind durch ";" getrennt:

                  Bio (braun), Wertstoff (gelb) AWB Köln;Restmüll (grau) AWB Köln;Papier (blau) AWB Köln;Bio (braun) AWB Köln;Wertstoff (gelb) AWB Köln

                  D.h. du hast folgende Filter, die du in Köln verwenden kannst:

                  Bio (braun), Wertstoff (gelb) AWB Köln
                  Restmüll (grau) AWB Köln
                  Papier (blau) AWB Köln
                  Bio (braun) AWB Köln
                  Wertstoff (gelb) AWB Köln

                  D.h. wenn du bei TS1 Restmüll hast, dann ist dein TS-1 Filter

                  Restmüll (grau) AWB Köln

                  usw.

                  Wie es hier aussieht scheinen die Kölner im Export eine Besonderheit zu haben, wenn Bio und Werstoff am gleichen Tag abgeholt werden, deshalb gibt es hier den Eintrag

                  Bio (braun), Wertstoff (gelb) AWB Köln
                  Das muss der Kater sein ;-)

                  ..im ersten Versuch hat das schonmal geklappt.

                  die letzten zwei Jahre habe ich immer ein TXT per Hand erstellt.

                  Sehr geil ..DANKE!!!


                  Jean-Luc Picard: "Things are only impossible until they are not."

                  Kommentar


                    #10
                    @trollmar: Sehr schön. Ja, ich hatte überlegt, ob ich das per Hand eintippe, aber automatisch ist bequemer

                    Ich denke langfristig wird es bei ics die wenigsten Probleme geben, weil das Format definiert ist, während json sonst wie ausgelegt werden kann.

                    Bei ics muss man hin und wieder schauen, ob sich die URL und die Bezeichnungen geändert haben.

                    Hast du das mit dem Bio und Wertstoff-Termin geprüft ? Ich werd die Tage nochmal den Baustein erweitern, damit solche Termine richtig abgelegt werden, sprich:

                    TS1-Filter = Restmüll (grau) AWB Köln
                    TS2-Filter = Bio (braun) AWB Köln|||Bio (braun), Wertstoff (gelb) AWB Köln
                    TS3-Filter = Wertstoff (gelb) AWB Köln|||Bio (braun), Wertstoff (gelb) AWB Köln

                    Dann sollte der Baustein auch ersteinmal final sein.

                    Kommentar


                      #11
                      Zitat von sipiyou Beitrag anzeigen

                      Wie es hier aussieht scheinen die Kölner im Export eine Besonderheit zu haben, wenn Bio und Werstoff am gleichen Tag abgeholt werden, deshalb gibt es hier den Eintrag

                      Bio (braun), Wertstoff (gelb) AWB Köln


                      Hi,
                      ja das stimmt.
                      Das hängt auch von der Straße ab was eventuell am gleichen Datum abgeholt wird.

                      Im JSON ist das nicht so. Da gibt es dann zwei Einträge.
                      Nur dein alter LBS 0.2 kann ja nicht für Köln JSON funktionieren.

                      Solange die bei mir das nicht ändern ist es ja kein Problem den String zu setzten.
                      Jean-Luc Picard: "Things are only impossible until they are not."

                      Kommentar


                        #12
                        Zitat von sipiyou Beitrag anzeigen
                        @trollmar: Sehr schön. Ja, ich hatte überlegt, ob ich das per Hand eintippe, aber automatisch ist bequemer

                        Ich denke langfristig wird es bei ics die wenigsten Probleme geben, weil das Format definiert ist, während json sonst wie ausgelegt werden kann.

                        Bei ics muss man hin und wieder schauen, ob sich die URL und die Bezeichnungen geändert haben.

                        Hast du das mit dem Bio und Wertstoff-Termin geprüft ? Ich werd die Tage nochmal den Baustein erweitern, damit solche Termine richtig abgelegt werden, sprich:

                        TS1-Filter = Restmüll (grau) AWB Köln
                        TS2-Filter = Bio (braun) AWB Köln|||Bio (braun), Wertstoff (gelb) AWB Köln
                        TS3-Filter = Wertstoff (gelb) AWB Köln|||Bio (braun), Wertstoff (gelb) AWB Köln

                        Dann sollte der Baustein auch ersteinmal final sein.

                        Ja das wäre super wenn du da nochmal kombi's schaffen kannst.

                        Das mit der Hand am Anfang des Jahres war immer nervig!

                        Ich danke dir sehr
                        Jean-Luc Picard: "Things are only impossible until they are not."

                        Kommentar


                          #13
                          Hallo. Ein sehr schöner Baustein. Leider funktioniert bei mir die Auswerung nicht. Gebe ich den eingetragenen link im Browser ein, wird der Kalender heruntergeladen. Im der log steht allerdings nur TS1=,TS2=,TS3=,TS3=,TS5=. Ich habe die Filter richtig gesetzt. Gebe ich bei Filter 1 den Wert "test" ein, bekomme ich nur TS1= angezeigt.
                          Bild 2.jpg
                          Bild 3.jpg
                          Was mache ich falsch ?

                          Kommentar


                            #14
                            Um das sagen zu können müsstes du einen Auszug aus der originalen ics posten.
                            Auch debug Level höher setzen.

                            Lg
                            Jean-Luc Picard: "Things are only impossible until they are not."

                            Kommentar


                              #15
                              Ich würde den LBS gerne verwenden wollen und frage mich, ob das möglich ist.

                              Nervig ist, dass man auf einen Button drückt zum Download der ICS-Datei. Dann lädt er es runter und als URL steht dann leider "about:blank" drin. Auf dem Button kann man natürlich auch nicht den Link kopieren.

                              Aber sagen wir mal, es funktioniert. Dann ist da das Problem, dass die Stadtreinigung die Termine falsch einträgt. Diese sind nämlich immer einen Tag vorher. Dann heißt es, dass morgen früh ab 6 Uhr abgeholt wird. Wäre da eine Termin-Verschiebung möglich für jeden Termin um einen Tag? Oder ist das nicht so leicht möglich? Immerhin muss man ja eigentlich nur die Daten kopieren, wenn sie denn stimmen.

                              Die Stadtreinigung Hamburg schafft es aber nicht einmal die Daten richtig einzutragen. Man bekommt immer 6 Monate im Voraus, ausgehend vom Datum der Abfrage. Nun ändern sie für die Papiertonne den Termin von Mo auf Di ab dem 06.01.2020 und verweisen dann lapidar darauf, dass die Termine vom Abfuhrkalender aus technischen Gründen auch erst ab dem 06.01 berücksichtigt werden. Dadurch stimmen meine Daten natürlich bei mir nicht mehr. Irgendwie nervig das ganze.

                              Ist das irgendwie möglich, mit einfacher Anpassung den LBS nutzen zu können?

                              Viele Grüße
                              Nils

                              Kommentar

                              Lädt...
                              X