Navigation

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

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    neuer Adapter webCal

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

      @dirkhe Es gibt 2 Einträge mit der betroffenen PLZ Ort Kombi, ich habe beide rauskopiert und die Daten durch [] ersetzt:

      BEGIN:VEVENT
      CREATED:20161211T100017Z
      DTEND;TZID=Europe/Berlin:20161226T210000
      DTSTAMP:20161211T100017Z
      DTSTART;TZID=Europe/Berlin:20161226T140000
      LAST-MODIFIED:20161211T100017Z
      LOCATION:[Strasse]\n[PLZ] [ORT]\nDeutschland
      SEQUENCE:0
      SUMMARY:[EVENT ABC]
      UID:86314248-827C-4045-9D99-A310BFCA0611
      X-APPLE-STRUCTURED-LOCATION;VALUE=URI;X-ADDRESS="[Strasse]
       \n[PLZ] [ORT]\nDeutschland";X-APPLE-ABUID=ab://Privat%20von%20Bernd";
       X-APPLE-RADIUS=0;X-APPLE-REFERENCEFRAME=1;X-TITLE=[Strasse]
      [PLZ] [ORT]
      Deutschland:geo:YY.297937,XX.043123
      END:VEVENT
      BEGIN:VEVENT
      DTEND;VALUE=DATE:20170402
      LAST-MODIFIED:20170327T091537Z
      UID:0F3C0D35-683A-41E6-86CA-4A76A1182CC2
      DTSTAMP:20170331T145915Z
      LOCATION:[Strasse]\n[PLZ] [ORT]\nDeutschland
      SEQUENCE:1
      SUMMARY:[EVENT XYZ]
      DTSTART;VALUE=DATE:20170401
      CREATED:20170130T201528Z
      X-APPLE-STRUCTURED-LOCATION;VALUE=URI;X-ADDRESS="[Strasse]
       \n[PLZ] [ORT]\nDeutschland";X-APPLE-ABUID=ab://Privat%20von%20Bernd";
       X-APPLE-REFERENCEFRAME=1;X-TITLE=[Strasse]
      [PLZ] [ORT]
      Deutschland:geo:YY.297937,XX.043123
      END:VEVENT
      
      D 3 Replies Last reply Reply Quote 0
      • D
        dirkhe Developer last edited by

        @markus-kufner aus sicht des adapters wüsste ich nicht, was man mit dem ort machen soll?

        Markus Kufner 1 Reply Last reply Reply Quote 0
        • D
          dirkhe Developer @michije last edited by

          @michije muss ich mir mal in ruhe anschauen, das parsen habe ich nicht seber programmiert, nutze da fertige bibliotheken.

          1 Reply Last reply Reply Quote 0
          • Markus Kufner
            Markus Kufner @dirkhe last edited by

            @dirkhe Ich würde gerne in den Termin einen Ort ins entsprechende Feld übertragen.
            Mein used case ist ein digitales Fahrtenbuch. Handy meldet an ioBroker wenn ich mich mit dem Fahrzeug verbinde oder trenne. Der ioBroker liest aus der Instanz für das Auto den Kilometerstand und die Lokation aus und schreibt dies wiederum in einen Kalender.

            1 Reply Last reply Reply Quote 0
            • D
              dirkhe Developer @michije last edited by dirkhe

              @michije schau mal hier,da ist ei online validator
              https://kewisch.github.io/ical.js/validator.html
              Sieht so aus, als wenn apple da gegen die norm arbeitet...
              Probiere da mal mit deinen echten daten rum, wenn du rausbekommst, was genau das problem ist, zb irgendein zeilenumbruch oder so, kann man ja vlt was fixen, im prinzip müsste das aber hier https://github.com/kewisch/ical.js gemeldet und gefixt werden

              Update
              In der tat manipuliere ich die daten vor der ausgabe ins log, indem ich whitespace entferne. Du müsstest also beim testen die original daten testen

              M 1 Reply Last reply Reply Quote 0
              • D
                dirkhe Developer @michije last edited by dirkhe

                das mit dem Ort muss ich mir anschauen. Im prinzip geht das ja am adapter vorbei, da müsste ich mir was überlegen, wie ich generisch beim addEvent weitere felder mit übertragen kann

                update:
                Ich denke,dass bekomme ich hin, mal schauen, ob ich am we zeit finde

                Markus Kufner 1 Reply Last reply Reply Quote 0
                • Markus Kufner
                  Markus Kufner @dirkhe last edited by

                  @dirkhe herzlichen Dank schon einmal dafür, dass du deine Zeit für mich investierst!

                  D 1 Reply Last reply Reply Quote 0
                  • M
                    michije @dirkhe last edited by michije

                    @dirkhe Da kommt genau der gleiche Fehler wie im ioBroker log 😕
                    Wenn das Problem scheint der Linebreak in X-TITLE zwischen Straße und PLZ zu sein:

                     X-APPLE-RADIUS=0;X-APPLE-REFERENCEFRAME=1;X-TITLE=[Strasse]
                    [PLZ] [ORT]
                    

                    Wenn ich den Line Break entferne, validiert er korrekt. Scheint also wirklich ein Apple Problem zu sein. Da die Events von 2016 und 2017 sind, werde ich die einfach raus löschen, dann müsste es auch im Adapter klappen.
                    Danke dir für die Hilfe 🙂

                    EDIT: Oh no, es tritt noch wesentlich öfter auf.. Dann weiß ich auch nicht wie ich das zum laufen bekommen soll 😕

                    D 2 Replies Last reply Reply Quote 0
                    • D
                      dirkhe Developer @michije last edited by

                      @michije ich kann mal versuchen, ob ich da was machen kann.

                      1 Reply Last reply Reply Quote 0
                      • D
                        dirkhe Developer @michije last edited by

                        @michije Versuche mal die 1.4.0, da habe mal ein fix eingebaut, wo er die Apple tags vor dem parsen löscht, sollte man auch im debug sehen

                        M 1 Reply Last reply Reply Quote 0
                        • D
                          dirkhe Developer @Markus Kufner last edited by

                          @markus-kufner Sollte mit der 1.4.0 jetzt gehen

                          Markus Kufner 1 Reply Last reply Reply Quote 0
                          • Markus Kufner
                            Markus Kufner @dirkhe last edited by

                            @dirkhe klappt. Herzlichen Dank!

                            1 Reply Last reply Reply Quote 0
                            • M
                              michije @dirkhe last edited by

                              Hi @dirkhe, ich konnte die neue Version erst jetzt testen, es kommt immer noch der gleiche Error in der Konsole wie zuvor leider, und ich sehe auch kein entsprechenden Debug Eintrag
                              bc382f06-f309-4b2f-a87c-4b7aced0dd16-image.png

                              D 1 Reply Last reply Reply Quote 0
                              • D
                                dirkhe Developer @michije last edited by

                                @michije wo ist denn die ausgabe parse calendar event. Die wird eigentlich im debug ausgegeben, dann wird sie optimiert und das auch nochmal ausgegeben.
                                Das log schicke mir doch mal. Wenn du daten änderst, ersetzte die mal nur durch xxxx oder so

                                1 Reply Last reply Reply Quote 0
                                • N
                                  nobbiman @dirkhe last edited by nobbiman

                                  @dirkhe Wenn ich hier die komplette Diskussion lese bin ich begeistert, da der Adapter genau das kann, was ich dringend suche. Leider scheitere ich noch an den Basics: Ich versuche seit Stunden, einen Google-Kalender mit dem Adapter zu verbinden. Kann ja eigentlich bei den wenigen (5) Eingaben in der Konfiguration der Instanz nicht so schwierig sein – dachte ich. Vielleicht habe ich ja auch nur ein Verständnisproblem!?
                                  WebCal-Instanzeinstellungen.jpg
                                  Der Reihe nach
                                  • Name – sollte doch sicher der Name des Google-Kalenders sein!?
                                  • authorization method – sollte „google“ sein, so vermute ich jedenfalls
                                  • Die Kalender URL wird offensichtlich nicht gebraucht
                                  • Der Nutzername auch nicht
                                  • Password/Secret: Das Passwort zu meinem Google-Account?
                                  • RefreshToken with calDAV Permission: woher bekomme ich den? Gibt auch der nachfolgende Screenshot nicht her oder ist es der Client-Schlüssel?
                                  • Die Client-ID kommt aus Google Auth Platform?
                                  OAuth.jpg
                                  So eingestellt, bekomme ich beim Test der Verbindung die Meldung „invalid_client“

                                  Wähle ich bei der „authorization method“ die Option „Herunterladen“ oder „Basic“, speichere die geladenen Einstellungen und teste die Konfiguration, erscheint der Fehler Error reading from URL "https://calendar.google.com/calendar/embed?src=54267ef3724XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXf10482ca89%40group.calendar.google.com&ctz=Europe%2FBerlin“: 401 obwohl ich den Kalender über diese Adresse im Browser aufrufen kann.
                                  Müsste ich denn im Google-Kalender den Nutzer WebCal nicht auch freischalten, wenn JA; mit welcher Adresse?
                                  Stelle ich in der Konfiguration "oauth" ein und teste, bekomme ich auch die Meldung "cannot find homeUrl"!
                                  Wo liegt denn nur mein Fehler?

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    dirkhe Developer @nobbiman last edited by dirkhe

                                    @nobbiman Leider ist es nicht so einfach, google anzubinden, ich habe da damals lange gebraucht, bis ich das hinbekommen habe. MIttlerweile nutzte ich selber keinen google kalender mehr, sondern nextcloud.
                                    Aber im Prinzip habe ich es hier dokumentiert, was man machen muss:
                                    https://github.com/dirkhe/ioBroker.webcal/blob/master/doc/google.md

                                    N 1 Reply Last reply Reply Quote 0
                                    • N
                                      nobbiman @dirkhe last edited by

                                      @dirkhe Ich hatte die verlinkte Erläuterung schon gesehen und nun nochmals Schritt für Schritt erneut nachvollzogen. Mit viel Sorgfalt hat es dann geklappt und ich habe eine Testverbindung aus dem Adapter heraus mit "access" quittiert bekommen.
                                      Ich ziehe meinen Hut für das Ermitteln der beschriebenen Vorgehensweise!
                                      Danke, da wäre ich nicht dahinter gekommen!

                                      1 Reply Last reply Reply Quote 0
                                      • N
                                        nic f. last edited by

                                        Hallo Zusammen, hab den Adapter heute in Betrieb genommen und ich verwende ihn, um in einem Google Kalender Termine per Script einzutragen.
                                        Klappt prima! Super Sache!

                                        nur eine Frage zu dem "add.Events"-Block - wie ist "color" zu verwenden? Ich habe schon einiges getestet, aber er ignoriert es. Im Google Kalender werden die Termine nur in Standardfarbe erstellt.

                                        Ist das überhaupt dafür gedacht? oder klappt es evtl im Google Kalender nicht?

                                        Vielen Dank!

                                        sendTo("webcal.0", "addEvents", {
                                        calendar: "smarthome",
                                        events: [
                                        {
                                        summary: "test2",
                                        description: "test add Event",
                                        location: "ort",
                                        color: "red",
                                        organizer: "ich",
                                        start: "12.1.25 23:00"
                                        }

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          dirkhe Developer last edited by

                                          @nic-f ich gebe das einfach an google weiter. Ich glaube du musst da eine id für die Farbe angeben, habe mir das nicht genauer angesehen. Am besten machst du im google kalender mal einträge in verschiedenen Farben und stellst den adapter mal auf debug, da solltest du den farbcode erkennen, vermute ich mal

                                          H 1 Reply Last reply Reply Quote 0
                                          • H
                                            HomeUser @dirkhe last edited by

                                            Hallo,
                                            erstmal vielen Dank für den Adapter, mit dem ich vermutlich den iCal ablösen werde, um auch Daten hinzufügen zu können!

                                            Allerdings bin ich bei meinen Versuchen heute beim Delete gescheitert.

                                            Ich verwende dieses Skript (die ID ist die _IDID aus dem JSON, welches ich empfangen habe):

                                            sendTo("webcal.0", "deleteEvents", {
                                                calendar: "SmartHome",
                                                events: [
                                                  {
                                                    id: 'd08b79c9-7c46-402f-86d1-cd96ddbca800'
                                                    //id: eventId
                                                  },	  
                                                  {
                                                    id: "failed test"
                                                  }
                                                ]
                                              },function(events){
                                                /* callback function 
                                            	   object events will be repeat from input, 
                                            	   with additional status or error field,   
                                            	*/
                                            	log(events);	
                                              })
                                            
                                            

                                            Aber leider bekomme ich immer folgendes Output:
                                            [
                                            { id: 'd08b79c9-7c46-402f-86d1-cd96ddbca800', error: 'Not Found' },
                                            { id: 'failed test', error: 'Not Found' }
                                            ]

                                            Was kann ich falsch machen?
                                            Welche ID muss ich nehmen?
                                            Welche ID muss ich eigentlich bei wiederkehrenden Terminen nehmen, um nicht die Serie sondern einen Einzeltermin zu löschen? Die ID scheint dort die gleiche zu sein an allen Tagen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            938
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            26
                                            305
                                            35459
                                            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