Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Anregungen - Wünsche - Verbesserungsvorschläge
    5. Über iCal Termin in Google-Kalender eintragen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Über iCal Termin in Google-Kalender eintragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active @nobbiman last edited by bahnuhr

      @nobbiman sagte in Über iCal Termin in Google-Kalender eintragen:

      const end = new Date(now.getTime() + 30 * 60000); // 30 Minuten später

      probier mal so:

      const end = now.getTime() + (30*60000);
      

      @nobbiman sagte in Über iCal Termin in Google-Kalender eintragen:

      Ein Script zum Termineintrag habe ich auch schon erstellt

      zeig doch mal.

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

        @nobbiman zum einem musst du nicht stop, sondern end übergeben. Dan darst du nicht mitten im json objekr jacascript code schreiben

        
        const now = new Date(); 
        const end = new Date(now.getTime() + 30 * 60000); // 30 Minuten später
        
        sendTo("webcal.0", "addEvents", {
            calendar: "PVOffset",
            events: 
              {
                summary: "+2,0 EG Wohnzimmer",
                description: "",
                location: "xy",
                color: "red",
                organizer: "ich",
                start: { dateTime: now.toISOString() },
                end: { dateTime: end.toISOString() }
              }
              
            ]
          },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);	
          })
        
        
        N 1 Reply Last reply Reply Quote 0
        • N
          nobbiman @bahnuhr last edited by nobbiman

          @bahnuhr
          Klappt leider immer noch nicht, die Fehlermeldung ist immer noch die gleiche!

          • zeig doch mal
          sendTo("webcal.0", "addEvents", {
              calendar: "PVOffset",
              events: [
                {
                  summary: "+3,0 EG Wohnzimmer",
                  description: "",
                  location: "xy",
                  color: "red",
                  organizer: "ich",
                  start: "19.1.25 16:00",
                  end: "19.1.25 16:30"
                }
                
              ]
            },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);	
            })
          

          So hatte es geklappt!

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

            @dirkhe sagte in Über iCal Termin in Google-Kalender eintragen:

            const now = new Date();

            const now = new Date(); 
            
            const end = new Date(now.getTime() + 30 * 60000); // 30 Minuten später
            
             
            
            sendTo("webcal.0", "addEvents", {
            
                calendar: "PVOffset",
            
                events: 
            
                  {
            
                    summary: "+2,0 EG Wohnzimmer",
            
                    description: "",
            
                    location: "xy",
            
                    color: "red",
            
                    organizer: "ich",
            
                    start: { dateTime: now.toISOString() },
            
                    end: { dateTime: end.toISOString() }
            
                  }
            
                  
            
                ]
            
              },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);	
            
              })
            

            Fehler:
            javascript.0 17:44:54.611 error script.js.Offset-Script compile failed: at script.js.Offset-Script: 34 (! nachträglich geändert)

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

              @nobbiman da fehlt die öffnende eckige klammer bei events. Das zeigt dir doch der scripteditor an, dass das falsch ist?
              War bei mir aber schon falsch, aber ich sitzte hier am tablet...

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

                @dirkhe Hab Geduld mit mir, ich habe keine Ahnung von Javascript und sehe das nicht auf Anhieb. Nun habe ich so geändert, aber es kommt ein timeout-Fehler, wahrscheinlich ist die Klammer falsch positioniert!?

                const now = new Date(); 
                
                const end = new Date(now.getTime() + 30 * 60000); // 30 Minuten später
                
                 
                
                sendTo("webcal.0", "addEvents", {
                
                    calendar: "PVOffset",
                
                    events: 
                [
                
                      {
                
                        summary: "+2,0 EG Wohnzimmer",
                
                        description: "",
                
                        location: "xy",
                
                        color: "red",
                
                        organizer: "ich",
                
                        start: { dateTime: now.toISOString() },
                
                        end: { dateTime: end.toISOString() }
                
                      }
                
                      
                
                    ]
                
                  },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);	
                
                  })
                
                D 1 Reply Last reply Reply Quote 0
                • D
                  dirkhe Developer @nobbiman last edited by

                  @nobbiman warte mal, muss an den pc gehen

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

                    @dirkhe sagte in Über iCal Termin in Google-Kalender eintragen:

                    @nobbiman warte mal, muss an den pc gehen

                    Ich habe Zeit

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

                      @nobbiman probiere mal so

                      const now = new Date();
                      const end = new Date(now.getTime() + 30 * 60000); // 30 Minuten später
                      
                      sendTo("webcal.0", "addEvents", {
                          calendar: "PVOffset",
                          events: [
                              {
                                  summary: "+2,0 EG Wohnzimmer",
                                  description: "",
                                  location: "xy",
                                  color: "red",
                                  organizer: "ich",
                                  start: now.toISOString(),
                                  end: end.toISOString()
                              }
                          ]
                      }, function (events) {
                          log(events);
                      })
                      
                      N 1 Reply Last reply Reply Quote 0
                      • N
                        nobbiman @dirkhe last edited by

                        @dirkhe sagte in Über iCal Termin in Google-Kalender eintragen:

                        const now = new Date();

                        Jetzt keine Fehlermeldung mehr, aber das Event liegt im Kalender 1h früher! Ich dachte mit dem ISOString() würde das passen!?

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

                          @nobbiman probiere mal toLocaleString()

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

                            @dirkhe sagte in Über iCal Termin in Google-Kalender eintragen:

                            toLocaleString

                            Super, ich bin am Ziel und belästige euch und dich besonders nicht weiter, Danke für die Unterstützung!

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

                              @nobbiman Alles gut, ist keine Belästigung. Nur so kann man was lernen...
                              Ist halt vom Sofa aus schwer mit dem Tablet....

                              Viel Spass mit dem Adapter.

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

                                @dirkhe Ich könnte heulen, dachte ich noch es wäre geschafft. Jetzt wo die Auslösebedingungen (Sonne) erfüllt sind, sehe ich keinen Termineintrag in meinem Google-Kalender, obwohl das Script lt. Log (manuell, heißt zunächst nicht über Blockly) ausgelöst wurde.

                                	script.js.WZ-FBH-Offset: [ { summary: '+2.1 EG Wohnzimmer', description: '', location: 'xy', color: 'red', organizer: 'ich', start: '04/03/2025, 10:29:41', end: '04/03/2025, 11:29:41', startDate: { year: 2025, month: 4, day: 3, hour: 10, minute: 29, second: 0, isDate: false }, endDate: { year: 2025, month: 4, day: 3, hour: 11, minute: 29, second: 0, isDate: false }, status: 'Erfolgreich hinzugefügt' } ]
                                

                                Was bedeutet im Log jeweils "isDate: false }", führt der Hinweis zur Lösung?
                                Keine Reaktion im Kalender.
                                Das Script ist wie folgt angelegt

                                const now = new Date();
                                
                                const end = new Date(now.getTime() + 60 * 60000); // 60 Minuten später
                                
                                sendTo("webcal.0", "addEvents", {
                                
                                    calendar: "PVOffset",
                                
                                    events: [
                                
                                        {
                                
                                            summary: "+2.1 EG Wohnzimmer",
                                
                                            description: "",
                                
                                            location: "xy",
                                
                                            color: "red",
                                
                                            organizer: "ich",
                                
                                            start: now.toLocaleString(),
                                
                                            end: end.toLocaleString()
                                
                                        }
                                
                                    ]
                                
                                }, function (events) {
                                
                                    log(events);
                                
                                })
                                

                                Es ist in Blockly wie folgt eingebunden
                                Blockly.jpg
                                Da ich ein Mail erhalte, sind m.E. die (Test-)Bedingungen (in Blockly darüber) erfüllt, ein Eintrag im Kalender will aber nicht gelingen.
                                Die WebCal-Einstellungen sehen wie folgt aus:
                                WebCal1.jpg
                                WebCal2.jpg
                                WebCal3.jpg
                                Was habe ich mir denn da verbaut, ich finde den Fehler einfach nicht, kann jemand helfen?

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

                                  @nobbiman also der google calender hat ja success zurückgeliefert, schau mal in den april..
                                  Was hasg du denn für eine locale eingestellt, sieht amerikanisch aus, siehst du im logeintrag oben mit 03/04/2025 würde in der schreibweise 4.3.25 heissen
                                  Isdate war, meine ich, ganztägig, also ohne Uhrzeit

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

                                    @dirkhe Tatsächlich, im April finde ich die Eintragungen. Auf der Suche nach dem Eintrag für "locale" bin
                                    ich in der Konfiguration des RasPi fündig geworden. Eingestellt war dort "en_GB.UTF-8", korrekt ist "de_DE.UTF-8"! Wie die falsche EInstellung zustande kam ist mir ein Rätsel, da ich am Tag zuvor noch korrekte Datumseinträge hatte und ich in der rasPi-config keine Veränderungen vorgenommen habe.
                                    Nach erneutem Test kann ich nun den Fehler als beseitigt melden.
                                    Danke für deinen wichtigen Hinweis.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    967
                                    Online

                                    31.6k
                                    Users

                                    79.6k
                                    Topics

                                    1.3m
                                    Posts

                                    5
                                    24
                                    878
                                    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