MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    Calendar not updating

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    95 Posts 4 Posters 62.8k Views 6 Watching
    Loading More Posts
    • 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.
    • M Offline
      matt216 @sdetweil
      last edited by

      @sdetweil

      pi@magicmirror:~/MagicMirror $ cat somefile.txt | grep calendar
      [02.01.2024 14:56.40.510] [LOG]   Module helper loaded: calendar
      [02.01.2024 14:56.42.557] [LOG]   Connecting socket for: calendar
      [02.01.2024 14:56.42.558] [LOG]   Starting node helper for: calendar
      [02.01.2024 14:56.46.986] [LOG]   Create new calendarfetcher for url: https://my.cal.url - Interval: 120000
      [02.01.2024 14:57.13.099] [INFO]  Calendar-Fetcher: Broadcasting 379 events from https://my.cal.url.
      [02.01.2024 14:59.23.139] [ERROR] Calendar Error. Could not fetch calendar:  https://my.cal.url TypeError: fetch failed
      
      
      M 1 Reply Last reply Reply Quote 0
      • M Offline
        matt216 @matt216
        last edited by

        @sdetweil

        [02.01.2024 14:59.23.139] [ERROR] Calendar Error. Could not fetch calendar:  https://my.cal.url TypeError: fetch failed
            at Object.fetch (node:internal/deps/undici/undici:11576:11)
            at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
          cause: ConnectTimeoutError: Connect Timeout Error
              at onConnectTimeout (node:internal/deps/undici/undici:8522:28)
              at node:internal/deps/undici/undici:8480:50
              at Immediate._onImmediate (node:internal/deps/undici/undici:8511:13)
              at process.processImmediate (node:internal/timers:476:21) {
            code: 'UND_ERR_CONNECT_TIMEOUT'
          }
        }
        

        Timeout…
        Let me know if the full somefile.txt by email is still wanted.

        S 1 Reply Last reply Reply Quote 0
        • S Offline
          sdetweil @matt216
          last edited by

          @matt216 no… not needed…

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          M 1 Reply Last reply Reply Quote 0
          • M Offline
            matt216 @sdetweil
            last edited by

            @sdetweil If I enter my calendar URL in to a web browser I can download the ics file fine, FYI

            S 2 Replies Last reply Reply Quote 0
            • S Offline
              sdetweil @matt216
              last edited by

              @matt216 yes, it was a momentary delay, which caused the timeout… trying to see why the catch() block didn’t

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • S Offline
                sdetweil @matt216
                last edited by sdetweil

                @matt216 can u try updating modules/default/calendar/calendarfetcher.js like this
                replace lines 58-84 with this . also added this to the issue

                		try {  /// new code here     // this will be the new line 58 
                
                		fetch(url, { headers: headers, agent: httpsAgent })
                			.then(NodeHelper.checkFetchStatus)
                			.then((response) => response.text())
                			.then((responseData) => {
                				let data = [];
                
                				try {
                					data = ical.parseICS(responseData);
                					Log.debug(`parsed data=${JSON.stringify(data)}`);
                					events = CalendarFetcherUtils.filterEvents(data, {
                						excludedEvents,
                						includePastEvents,
                						maximumEntries,
                						maximumNumberOfDays
                					});
                				} catch (error) {
                					fetchFailedCallback(this, error);
                					scheduleTimer();
                					return;
                				}
                				this.broadcastEvents();
                				scheduleTimer();
                			})
                			.catch((error) => {
                				fetchFailedCallback(this, error);
                				scheduleTimer();
                			});
                		}    // new code here =========
                		catch(error){
                                     console.error( "fetch for calendar url" +url + "failed error="+error.code);
                                    fetchFailedCallback(this, error);
                                    scheduleTimer();
                		}   // end new code ===== 
                

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                M 1 Reply Last reply Reply Quote 0
                • M Offline
                  matt216 @sdetweil
                  last edited by

                  @sdetweil Doesn’t like that - mirror won’t load. Got to pick up my little boy now, so reverted back (mirror loads ok again). Will try again and look at logs.

                  S M 2 Replies Last reply Reply Quote 0
                  • S Offline
                    sdetweil @matt216
                    last edited by sdetweil

                    @matt216 u are replacing the whole block, right…

                    replace lines 58-84 in original with that

                    lmk

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • M Offline
                      matt216 @matt216
                      last edited by

                      @sdetweil can you tell I’m not a developer…?!

                      Ok, I’ve replaced the whole block, then pm2 stop all, cd ~/MagicMirror, npm start…

                      Mirror starts but still no new calendar events are showing where I would expect to be. Interestingly I can see that edits to existing events that I’ve made are showing up on the mirror, so there is some communication. Just no new events are being picked up.

                      Thanks again,
                      Matt

                      M S 2 Replies Last reply Reply Quote 0
                      • M Offline
                        matt216 @matt216
                        last edited by

                        By existing and new events I mean with reference to the point I added the calendar server to the calendar module. That first initial sync (if that’s the right word) of the .ics file.

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 9
                        • 10
                        • 3 / 10
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy