Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. neuer Adapter webCal

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

neuer Adapter webCal

Scheduled Pinned Locked Moved Tester
306 Posts 27 Posters 61.0k Views 24 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N 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 Do not disturb
    D Do not disturb
    dirkhe
    Developer
    wrote on last edited by dirkhe
    #286

    @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
    0
    • D 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 Offline
      N Offline
      nobbiman
      wrote on last edited by
      #287

      @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
      0
      • N Offline
        N Offline
        nic f.
        wrote on last edited by
        #288

        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
        0
        • D Do not disturb
          D Do not disturb
          dirkhe
          Developer
          wrote on last edited by
          #289

          @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
          0
          • D dirkhe

            @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 Offline
            H Offline
            HomeUser
            wrote on last edited by
            #290

            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
            0
            • H HomeUser

              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 Do not disturb
              D Do not disturb
              dirkhe
              Developer
              wrote on last edited by
              #291

              @homeuser was für einen kalender hast du denn, google oder webcal?
              Im prinzip wrappe ich das nur auf die vorhandenen funktion. stell doch mal auf debug, vlt steht da dann auch mehr.

              H 1 Reply Last reply
              0
              • D dirkhe

                @homeuser was für einen kalender hast du denn, google oder webcal?
                Im prinzip wrappe ich das nur auf die vorhandenen funktion. stell doch mal auf debug, vlt steht da dann auch mehr.

                H Offline
                H Offline
                HomeUser
                wrote on last edited by
                #292

                @dirkhe Ich nutze den Kalender von Nextcloud.

                Mit debug habe ich probiert die relevanten Abschnitte aus dem Log zu extrahieren:

                2025-02-10 19:21:51.857 - silly: webcal.0 (275635) States system redis pmessage io.messagebox.system.adapter.webcal.0/io.messagebox.system.adapter.webcal.0:{"command":"deleteEvents","message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"from":"system.adapter.javascript.0","callback":{"message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"id":2077,"ack":false,"time":1739211711853},"_id":8937513}
                2025-02-10 19:21:51.858 - debug: webcal.0 (275635) {"command":"deleteEvents","message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"from":"system.adapter.javascript.0","callback":{"message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"id":2077,"ack":false,"time":1739211711853},"_id":8937513}
                2025-02-10 19:21:51.858 - debug: webcal.0 (275635) delete Events from SmartHome
                2025-02-10 19:21:54.309 - debug: webcal.0 (275635) fetching Calendar SmartHome
                2025-02-10 19:21:54.309 - silly: webcal.0 (275635) sendTo "deleteEvents" to system.adapter.javascript.0 from system.adapter.webcal.0
                2025-02-10 19:21:54.315 - info: javascript.0 (3266) script.js.common.Wallbox_Planner_V4: [
                { id: 'd08b79c9-7c46-402f-86d1-cd96ddbca800', error: 'Not Found' },
                { id: 'failed test', error: 'Not Found' }
                ]
                2025-02-10 19:21:56.779 - info: webcal.0 (275635) found 8 calendar objects
                2025-02-10 19:21:56.781 - debug: webcal.0 (275635) parse calendar data:
                ....
                2025-02-10 19:21:56.788 - debug: webcal.0 (275635) parse calendar data:
                BEGIN:VCALENDAR
                CALSCALE:GREGORIAN
                VERSION:2.0
                PRODID:-//IDN nextcloud.com//Calendar app 5.0.9//EN
                BEGIN:VEVENT
                CREATED:20250209T162558Z
                DTSTAMP:20250210T182012Z
                LAST-MODIFIED:20250210T182012Z
                SEQUENCE:7
                UID:d08b79c9-7c46-402f-86d1-cd96ddbca800
                DTSTART;TZID=Europe/Berlin:20250210T210000
                DTEND;TZID=Europe/Berlin:20250210T220000
                STATUS:CONFIRMED
                SUMMARY:Auto
                END:VEVENT
                BEGIN:VTIMEZONE
                TZID:Europe/Berlin
                BEGIN:DAYLIGHT
                TZOFFSETFROM:+0100
                TZOFFSETTO:+0200
                TZNAME:CEST
                DTSTART:19700329T020000
                RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
                END:DAYLIGHT
                BEGIN:STANDARD
                TZOFFSETFROM:+0200
                TZOFFSETTO:+0100
                TZNAME:CET
                DTSTART:19701025T030000
                RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
                END:STANDARD
                END:VTIMEZONE
                END:VCALENDAR
                
                
                D 1 Reply Last reply
                0
                • H HomeUser

                  @dirkhe Ich nutze den Kalender von Nextcloud.

                  Mit debug habe ich probiert die relevanten Abschnitte aus dem Log zu extrahieren:

                  2025-02-10 19:21:51.857 - silly: webcal.0 (275635) States system redis pmessage io.messagebox.system.adapter.webcal.0/io.messagebox.system.adapter.webcal.0:{"command":"deleteEvents","message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"from":"system.adapter.javascript.0","callback":{"message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"id":2077,"ack":false,"time":1739211711853},"_id":8937513}
                  2025-02-10 19:21:51.858 - debug: webcal.0 (275635) {"command":"deleteEvents","message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"from":"system.adapter.javascript.0","callback":{"message":{"calendar":"SmartHome","events":[{"id":"d08b79c9-7c46-402f-86d1-cd96ddbca800"},{"id":"failed test"}]},"id":2077,"ack":false,"time":1739211711853},"_id":8937513}
                  2025-02-10 19:21:51.858 - debug: webcal.0 (275635) delete Events from SmartHome
                  2025-02-10 19:21:54.309 - debug: webcal.0 (275635) fetching Calendar SmartHome
                  2025-02-10 19:21:54.309 - silly: webcal.0 (275635) sendTo "deleteEvents" to system.adapter.javascript.0 from system.adapter.webcal.0
                  2025-02-10 19:21:54.315 - info: javascript.0 (3266) script.js.common.Wallbox_Planner_V4: [
                  { id: 'd08b79c9-7c46-402f-86d1-cd96ddbca800', error: 'Not Found' },
                  { id: 'failed test', error: 'Not Found' }
                  ]
                  2025-02-10 19:21:56.779 - info: webcal.0 (275635) found 8 calendar objects
                  2025-02-10 19:21:56.781 - debug: webcal.0 (275635) parse calendar data:
                  ....
                  2025-02-10 19:21:56.788 - debug: webcal.0 (275635) parse calendar data:
                  BEGIN:VCALENDAR
                  CALSCALE:GREGORIAN
                  VERSION:2.0
                  PRODID:-//IDN nextcloud.com//Calendar app 5.0.9//EN
                  BEGIN:VEVENT
                  CREATED:20250209T162558Z
                  DTSTAMP:20250210T182012Z
                  LAST-MODIFIED:20250210T182012Z
                  SEQUENCE:7
                  UID:d08b79c9-7c46-402f-86d1-cd96ddbca800
                  DTSTART;TZID=Europe/Berlin:20250210T210000
                  DTEND;TZID=Europe/Berlin:20250210T220000
                  STATUS:CONFIRMED
                  SUMMARY:Auto
                  END:VEVENT
                  BEGIN:VTIMEZONE
                  TZID:Europe/Berlin
                  BEGIN:DAYLIGHT
                  TZOFFSETFROM:+0100
                  TZOFFSETTO:+0200
                  TZNAME:CEST
                  DTSTART:19700329T020000
                  RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
                  END:DAYLIGHT
                  BEGIN:STANDARD
                  TZOFFSETFROM:+0200
                  TZOFFSETTO:+0100
                  TZNAME:CET
                  DTSTART:19701025T030000
                  RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
                  END:STANDARD
                  END:VTIMEZONE
                  END:VCALENDAR
                  
                  
                  D Do not disturb
                  D Do not disturb
                  dirkhe
                  Developer
                  wrote on last edited by
                  #293

                  @homeuser ich hätte jetzt vermutet, dass die uuid korrekt ist, steht den im log keine antwort vom löschen? Ich müsste es jetzt auch mal testen, ich meine auch , dass mit nextcloud getestet zu haben, allerdings kein wiederkehrendes event

                  H 1 Reply Last reply
                  0
                  • D dirkhe

                    @homeuser ich hätte jetzt vermutet, dass die uuid korrekt ist, steht den im log keine antwort vom löschen? Ich müsste es jetzt auch mal testen, ich meine auch , dass mit nextcloud getestet zu haben, allerdings kein wiederkehrendes event

                    H Offline
                    H Offline
                    HomeUser
                    wrote on last edited by
                    #294

                    @dirkhe Wie müsste die Antwort vom Löschen im Log aussehen? Dann suche ich nochmal danach. Ich dachte, dass ich alle relevanten Meldungen im Ausschnitt drin gelassen habe. Vielleicht habe ich aber doch etwas übersehen.

                    D 1 Reply Last reply
                    0
                    • D Do not disturb
                      D Do not disturb
                      dirkhe
                      Developer
                      wrote on last edited by
                      #295

                      @homeuser hmmm aus meiner Sicht müsste das eigentlich funktionieren, nimmdoch mal den dummy eintrag weg

                      1 Reply Last reply
                      0
                      • H HomeUser

                        @dirkhe Wie müsste die Antwort vom Löschen im Log aussehen? Dann suche ich nochmal danach. Ich dachte, dass ich alle relevanten Meldungen im Ausschnitt drin gelassen habe. Vielleicht habe ich aber doch etwas übersehen.

                        D Do not disturb
                        D Do not disturb
                        dirkhe
                        Developer
                        wrote on last edited by
                        #296

                        @homeuser also ich habe es jetzt noch mal getestet, bei mir mit nextcloud klappt das Löschen.aber immer nur alles, einen einzelnen Termin einer serie habe ich nicht hinbekommen

                        H 1 Reply Last reply
                        0
                        • D dirkhe

                          @homeuser also ich habe es jetzt noch mal getestet, bei mir mit nextcloud klappt das Löschen.aber immer nur alles, einen einzelnen Termin einer serie habe ich nicht hinbekommen

                          H Offline
                          H Offline
                          HomeUser
                          wrote on last edited by
                          #297

                          @dirkhe
                          Endlich komme ich mal wieder dazu weiter zu testen.

                          Ich habe einen neuen Termin "test0815" angelegt und probiert die relevanten Ausschnitte aus dem Logfile zu selektieren:

                          2025-03-08 17:17:38.946 - debug: webcal.0 (353157) days for calendar-event({"start":"2025-03-08T19:00:00.000Z","end":"2025-03-08T20:00:00.000Z"}): {"0":{"id":"18f1009b-8657-4384-a10d-57c2bcec46da","date":"2025-03-08T19:00:00.000Z","startTime":"20:00","endTime":"21:00","calendarName":"SmartHome","summary":"test0815"}}
                          2025-03-08 17:17:38.947 - silly: webcal.0 (353157) days for event 'test': {"0":[{"id":"18f1009b-8657-4384-a10d-57c2bcec46da","date":"2025-03-08T19:00:00.000Z","startTime":"20:00","endTime":"21:00","calendarName":"SmartHome","summary":"test0815"}]}
                          2025-03-08 17:17:57.067 - silly: webcal.0 (353157) States system redis pmessage io.messagebox.system.adapter.webcal.0/io.messagebox.system.adapter.webcal.0:{"command":"deleteEvents","message":{"calendar":"SmartHome","events":[{"id":"18f1009b-8657-4384-a10d-57c2bcec46da"}]},"from":"system.adapter.javascript.0","callback":{"message":{"calendar":"SmartHome","events":[{"id":"18f1009b-8657-4384-a10d-57c2bcec46da"}]},"id":9782,"ack":false,"time":1741450677063},"_id":99600086}
                          2025-03-08 17:17:57.072 - debug: webcal.0 (353157) {"command":"deleteEvents","message":{"calendar":"SmartHome","events":[{"id":"18f1009b-8657-4384-a10d-57c2bcec46da"}]},"from":"system.adapter.javascript.0","callback":{"message":{"calendar":"SmartHome","events":[{"id":"18f1009b-8657-4384-a10d-57c2bcec46da"}]},"id":9782,"ack":false,"time":1741450677063},"_id":99600086}
                          2025-03-08 17:17:58.406 - info: javascript.0 (158033) script.js.common.Wallbox_Planner_V4: [ { id: '18f1009b-8657-4384-a10d-57c2bcec46da', error: 'Not Found' } ]
                          2025-03-08 17:18:01.155 - debug: webcal.0 (353157) days for calendar-event({"start":"2025-03-08T19:00:00.000Z","end":"2025-03-08T20:00:00.000Z"}): {"0":{"id":"18f1009b-8657-4384-a10d-57c2bcec46da","date":"2025-03-08T19:00:00.000Z","startTime":"20:00","endTime":"21:00","calendarName":"SmartHome","summary":"test0815"}}
                          2025-03-08 17:18:01.156 - silly: webcal.0 (353157) days for event 'test': {"0":[{"id":"18f1009b-8657-4384-a10d-57c2bcec46da","date":"2025-03-08T19:00:00.000Z","startTime":"20:00","endTime":"21:00","calendarName":"SmartHome","summary":"test0815"}]}
                          

                          Nehme ich irgendwie die falsche ID?
                          Gibt es bei dem Einstellungen des Adapters etwas zu beachten?
                          Oder bei den Einstellungen des Kalenders?

                          1 Reply Last reply
                          0
                          • D Do not disturb
                            D Do not disturb
                            dirkhe
                            Developer
                            wrote on last edited by
                            #298

                            @homeuser das wird irgendwie an deiner calender software liegen, bei mir mit nextcloud klappt das einwandfrei. vlt musst du Mal in dein Kalender log schauen?
                            Ich nutze da ja standard komponenten, die den caldav standard bedienen

                            H 1 Reply Last reply
                            0
                            • icebearI Offline
                              icebearI Offline
                              icebear
                              wrote on last edited by icebear
                              #299

                              @dirkhe

                              Ich hab jetzt auch deinen Adapter erfolgreich zum laufen gebracht, auch das erstellen und senden eines Testtermins mit dem Script aus dem war erfolgreich.

                              Da ich aber in JS nich so bewandert bin, wie müsste den ein Script ausehen, welches mir täglich um 09:00 einen Eintrag in meinem Google Kalender generiert aus den folgenden Daten (liegen alle als DP vor)

                              Ich würde gern folgendes im Kalender eintragen:

                              0_userdata.0.Eigene_Variablen.WP.Set.WWStartTime
                              

                              DP(string)

                              0_userdata.0.Eigene_Variablen.WP.Set.Betriebsart
                              

                              DP(string)

                              0_userdata.0.Eigene_Variablen.WP.Set.WW_Soll_Temp
                              

                              DP(number)

                              Termindauer soll immer auf 1(eine) Stunde eingestellt werden.

                              Event im Adapter heißt DHW Time

                              Wie müsste jetzt so ein Script aussehen?

                              D 1 Reply Last reply
                              0
                              • icebearI Offline
                                icebearI Offline
                                icebear
                                wrote on last edited by icebear
                                #300

                                @nic-f said in neuer Adapter webCal:

                                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.

                                Hier sind übrigens die Color-ID's von Google:

                                colorID.png

                                1 Reply Last reply
                                0
                                • icebearI icebear

                                  @dirkhe

                                  Ich hab jetzt auch deinen Adapter erfolgreich zum laufen gebracht, auch das erstellen und senden eines Testtermins mit dem Script aus dem war erfolgreich.

                                  Da ich aber in JS nich so bewandert bin, wie müsste den ein Script ausehen, welches mir täglich um 09:00 einen Eintrag in meinem Google Kalender generiert aus den folgenden Daten (liegen alle als DP vor)

                                  Ich würde gern folgendes im Kalender eintragen:

                                  0_userdata.0.Eigene_Variablen.WP.Set.WWStartTime
                                  

                                  DP(string)

                                  0_userdata.0.Eigene_Variablen.WP.Set.Betriebsart
                                  

                                  DP(string)

                                  0_userdata.0.Eigene_Variablen.WP.Set.WW_Soll_Temp
                                  

                                  DP(number)

                                  Termindauer soll immer auf 1(eine) Stunde eingestellt werden.

                                  Event im Adapter heißt DHW Time

                                  Wie müsste jetzt so ein Script aussehen?

                                  D Do not disturb
                                  D Do not disturb
                                  dirkhe
                                  Developer
                                  wrote on last edited by dirkhe
                                  #301

                                  @icebear was genau willst du denn eintragen?
                                  Also um 9 uhr willst du den eintrag erstellen, mit der zeit aus start? Und wo kommt die temperatur rein?
                                  Also im prinzip gibt es schedule, der dir das jeden tag um 9 uhr ausführt u d dann den code, der hier auf der Seite schon steht

                                  icebearI 1 Reply Last reply
                                  0
                                  • D dirkhe

                                    @icebear was genau willst du denn eintragen?
                                    Also um 9 uhr willst du den eintrag erstellen, mit der zeit aus start? Und wo kommt die temperatur rein?
                                    Also im prinzip gibt es schedule, der dir das jeden tag um 9 uhr ausführt u d dann den code, der hier auf der Seite schon steht

                                    icebearI Offline
                                    icebearI Offline
                                    icebear
                                    wrote on last edited by icebear
                                    #302

                                    @dirkhe

                                    Genau ich möchte per Schedule (täglich um 09:00 Uhr) die Startzeit aus dem DP der festlegt wann WW gemacht werden soll mit der Dauer von 1h eintragen. Mit dem Titel DHW Time.

                                    Also Startzeit z.B. aus dem DP 12:30, dann Endzeit vom Termin 13:30.

                                    Und dann, ich weiß ja nicht ob das geht als Subjekt (also als Termin Beschreibung/Inhalt) vom Termin, die Betriebsart (ausDP) und die WW-Temp (aus DP).

                                    Bei den Beispielen hab ich immer nur rausgelesen wie man die Startzeit vom Termin setzt, aber nicht wie ich die Dauer, oder die Endzeit mitgeben. Und wie geb ich die Color-ID mit ?

                                    Hier mal zwei Screenshots wo ich den Termin händisch erstellt habe, wie ich mir vorstelle wie das aussehen soll:

                                    calendar1.png

                                    calendar2.png

                                    Und noch eine Sache ist mir eingefallen, wie ändere ich einen Termin, z.B. die Startzeit?

                                    D 1 Reply Last reply
                                    0
                                    • icebearI icebear

                                      @dirkhe

                                      Genau ich möchte per Schedule (täglich um 09:00 Uhr) die Startzeit aus dem DP der festlegt wann WW gemacht werden soll mit der Dauer von 1h eintragen. Mit dem Titel DHW Time.

                                      Also Startzeit z.B. aus dem DP 12:30, dann Endzeit vom Termin 13:30.

                                      Und dann, ich weiß ja nicht ob das geht als Subjekt (also als Termin Beschreibung/Inhalt) vom Termin, die Betriebsart (ausDP) und die WW-Temp (aus DP).

                                      Bei den Beispielen hab ich immer nur rausgelesen wie man die Startzeit vom Termin setzt, aber nicht wie ich die Dauer, oder die Endzeit mitgeben. Und wie geb ich die Color-ID mit ?

                                      Hier mal zwei Screenshots wo ich den Termin händisch erstellt habe, wie ich mir vorstelle wie das aussehen soll:

                                      calendar1.png

                                      calendar2.png

                                      Und noch eine Sache ist mir eingefallen, wie ändere ich einen Termin, z.B. die Startzeit?

                                      D Do not disturb
                                      D Do not disturb
                                      dirkhe
                                      Developer
                                      wrote on last edited by
                                      #303

                                      @icebear Die update funktion habe ich ganz neu eingebaut, allerdings noch nicht für google, müsste ich dann noch machen.

                                      Also ohne, dass ich das jetzt getestet habe

                                          schedule({hour: 9, minute: 0}, function(){
                                      let starttime =  new 
                                      Date( getState("0_userdata.0.Eigene_Variablen.WP.Set.WWStartTime").val);
                                      let endtime = new Date(starttime.getTime() + 60 * 60000)
                                      
                                      sendTo("webcal.0", "addEvents", {
                                          calendar: "deinkalender",
                                          events: [
                                            {
                                              summary: "DHW Time",
                                              description: getState("0_userdata.0.Eigene_Variablen.WP.Betriebsart").val,
                                              color: "2",
                                              start: starttime.toLocaleString(),
                                              end: endtime.toLocaleString()
                                            }
                                          ]
                                        },function(events){
                                          /* callback function 
                                      	   object events will be repeat from input, 
                                      	   with additional status or error field, 
                                      	   also startDate and endDate are provided as Object data   
                                      	*/
                                      	log(events);	
                                        })
                                      }
                                      

                                      Ich weißnicht, was in deinem dp startzeit steht, das musst du natürlich in ein datum wandeln

                                      icebearI GrizzelbeeG 2 Replies Last reply
                                      0
                                      • D dirkhe

                                        @icebear Die update funktion habe ich ganz neu eingebaut, allerdings noch nicht für google, müsste ich dann noch machen.

                                        Also ohne, dass ich das jetzt getestet habe

                                            schedule({hour: 9, minute: 0}, function(){
                                        let starttime =  new 
                                        Date( getState("0_userdata.0.Eigene_Variablen.WP.Set.WWStartTime").val);
                                        let endtime = new Date(starttime.getTime() + 60 * 60000)
                                        
                                        sendTo("webcal.0", "addEvents", {
                                            calendar: "deinkalender",
                                            events: [
                                              {
                                                summary: "DHW Time",
                                                description: getState("0_userdata.0.Eigene_Variablen.WP.Betriebsart").val,
                                                color: "2",
                                                start: starttime.toLocaleString(),
                                                end: endtime.toLocaleString()
                                              }
                                            ]
                                          },function(events){
                                            /* callback function 
                                        	   object events will be repeat from input, 
                                        	   with additional status or error field, 
                                        	   also startDate and endDate are provided as Object data   
                                        	*/
                                        	log(events);	
                                          })
                                        }
                                        

                                        Ich weißnicht, was in deinem dp startzeit steht, das musst du natürlich in ein datum wandeln

                                        icebearI Offline
                                        icebearI Offline
                                        icebear
                                        wrote on last edited by icebear
                                        #304

                                        @dirkhe said in neuer Adapter webCal:

                                        Ich weißnicht, was in deinem dp startzeit steht, das musst du natürlich in ein datum wandeln

                                        Also ich hab das bei mir jetzt mal versucht zu testen, allerdings hat er mir das Script angemeckert, das da eine ) fehlt. Ich hab in Zeile 25 ganz am Ende noch eine ) eingefügt. Soweit so gut.

                                        Allerdings weiß ich nicht was das Script bei der "starttime" für einen Wert erwartet, ich hab so ziemlich alle Datums und Zeitkonvertierungen durch die ich kenne, aber das Script sagt jedesmal "Ungültiges Datum/ Zeitformat"

                                        Edit:
                                        Hat sich glaub ich erledigt, ich habs rausgefunden, jetzt teste ich mal weiter, das wird schon.

                                        1 Reply Last reply
                                        0
                                        • D dirkhe

                                          @homeuser das wird irgendwie an deiner calender software liegen, bei mir mit nextcloud klappt das einwandfrei. vlt musst du Mal in dein Kalender log schauen?
                                          Ich nutze da ja standard komponenten, die den caldav standard bedienen

                                          H Offline
                                          H Offline
                                          HomeUser
                                          wrote on last edited by
                                          #305

                                          Hallo @dirkhe
                                          hier wieder eine zeitverzögerte Antwort zu https://forum.iobroker.net/post/1256375.
                                          Neue Erkenntnisse auf meiner Seite:

                                          • Wenn ich den Kalendereintrag über den webcal Adapter anlege, kann ich ihn auch über delete löschen.
                                          • Sobald ich ihn in Nextcloud editiert habe (oder dort angelegt), klappt das Löschen nicht mehr ("not found").
                                          • Über den ical-Adapter habe ich den Eintrag mit mehr Details herauskopiert und einen Diff gemacht zwischen dem Eintrag vor/nach dem Bearbeiten in Nextcloud (nur die Description verlängert).
                                          • Nach dem Editieren hat auch dieser einmalige Eintrag eine Sequence-ID bekommen:
                                            cb5047d4-e3b2-4a45-90fc-73025b5b9067-image.png
                                            *...so weit hatte ich eine Theorie, aber manchmal geht das Löschen auch nach dem Editieren.

                                          Ergebnis so weit:

                                          • Anlegen über den Adapter --> Löschen geht
                                          • Anlegen über Adapter und Editieren in Nextcloud --> Löschen geht manchmal (noch kein System erkannt; meistens nicht)
                                          • Anlegen in Nextcloud --> Löschen geht nicht.
                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          349

                                          Online

                                          32.5k

                                          Users

                                          81.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe