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.

    MMM-CalendarExt3

    Scheduled Pinned Locked Moved Utilities
    689 Posts 82 Posters 2.8m Views 86 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.
    • L Offline
      Lilleberg @MMRIZE
      last edited by

      @MMRIZE Tried adding this to the config, but still no result. The module broadcasts the events, but they wont show in the Ext3 module. Se attached image. I have removed the other calendars from the config, and only show the events from the Google Calendar module.20240312_183109.jpg

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

        @Lilleberg If possible, can you share the copy of your calendar? (And the final config file also) (eouia0819@gmail.com)
        Without the real data I couldn’t catch what really happened in yours.

        L N 2 Replies Last reply Reply Quote 0
        • L Offline
          Lilleberg @MMRIZE
          last edited by

          @MMRIZE I’m sending you an e-mail

          1 Reply Last reply Reply Quote 0
          • N Offline
            nicmoly @MMRIZE
            last edited by

            @MMRIZE Hi Im also having the exact same issue as @Lilleberg , I have however seen glimpses of this working as intended but it seems to be on a whim, either it restarts and works and then not again untill a further reboot or it just wont. I find it weird that using MMM-CalendarExt3Journal works perfect every time with similar settings. Any ideas on what may be going on? Weird thing is leaving the MMM running all the sudden it works like 20-30min later, so im wondering if theres some weirdness with how the data comes in from the GoogleCalendar module
            Heres my config for refrence:

            {
                		module: 'MMM-GoogleCalendar',
               			header: "My Google Private Cal",
              			position: "upper_third",
            			hiddenOnStartup: true,
             			config: {
            				broadcastEvents: true,
            				broadcastPastEvents: true,
            				calendars: [
            						{
            							symbol: "calendar-week",
            							calendarID: "***",
            							name: "1_cal", // <= RECOMMENDED to assign name
            							color: "yellow" // <= RECOMMENDED to assign color
            						},
            						{
            							symbol: "calendar-week",
            							calendarID: "***",
            							name: "2_cal", // <= RECOMMENDED to assign name
            							color: "red" // <= RECOMMENDED to assign color
            						},
            						{
            							symbol: "calendar-week",
            							calendarID: "en.canadian#holiday@group.v.calendar.google.com",
            							name: "holiday_cal", // <= RECOMMENDED to assign name
            							color: "green" // <= RECOMMENDED to assign color
            						},
            						
            				],
            			}
            		},
            		{
              			module: "MMM-CalendarExt3",
              			position: "lower_third",
            			title: "Family Calendar",
              			config: {
            				mode: "month",
            				instanceID: "I-calendar-month",
            				maxEventLines: 5,
            				firstDayOfWeek: 1,
            				preProcessor: (e) => {
            					if (e.start?.dateTime) {
            				  		e.startDate = new Date(e.start.dateTime).valueOf()
            					} else if (e.start?.date) {
            				  		e.startDate = new Date(`${e.start.date}T00:00:00`).valueOf()
            					}
            
            					if (e.end?.dateTime) {
            				  		e.endDate = new Date(e.end.dateTime).valueOf()
            					} else if (e.end?.date) {
            				  		e.endDate = new Date(`${e.end.date}T00:00:00`).valueOf()
            					}
            
            					e.title = e.summary
            					e.fullDayEvent = (e.start?.date) ? true : false
            					return e
            				},
              			}
            		},
            //		{
            //  			module: "MMM-CalendarExt3Journal",
            //  			position: "bottom_bar",
            //  			config: {
            //				height: '50vh',
            //   			 	width: '100%',
            //				//locale: 'en-GB',
            //				staticWeek: true,
            //				staticTime: true,
            //				hourLength: 14,
            //				beginHour:  8,
            //				preProcessor: (e) => {
            //					if (e.start?.dateTime) {
            //				  		e.startDate = new Date(e.start.dateTime).valueOf()
            //					} else if (e.start?.date) {
            //				  		e.startDate = new Date(`${e.start.date}T00:00:00`).valueOf()
            //					}
            //
            //					if (e.end?.dateTime) {
            //				  		e.endDate = new Date(e.end.dateTime).valueOf()
            //					} else if (e.end?.date) {
            //				  		e.endDate = new Date(`${e.end.date}T00:00:00`).valueOf()
            //					}
            //
            //					e.title = e.summary
            //					e.fullDayEvent = (e.start?.date) ? true : false
            //					return e
            //				}
            //  			}
            //		},
            
            M 1 Reply Last reply Reply Quote 0
            • M Offline
              MMRIZE @nicmoly
              last edited by

              @nicmoly
              Usually, your symptom happens by insufficient waitFetch. Give it more. (By default it would be 5_000 ms. Give it more like 10_000)

              1 Reply Last reply Reply Quote 0
              • B Offline
                bobbylx
                last edited by

                Had an issue with my monitor so I took that opportunity to reload Pi OS and MM. Unfortunately, I goofed and flashed over my config and css backups. So I’m starting fresh.

                That went fine but I cannot figure out why my calendar is not loading. My MM loads in Midori, I get my date/time in the upper left but the rest of the page is blank, no config warnings or empty boxes, just a completely black page. Config check shows no issues. Can someone look at my config.js real quick and see if I’m missing something? I have not touched any other files at this point, I was just trying to get the calendar to load before I start really customizing.

                let config = {
                        address: "localhost",   // Address to listen on, can be:
                                                                        // - "localhost", "127.0.0.1", "::1" to listen on loopback interface
                                                                        // - another specific IPv4/6 to listen on a specific interface
                                                                        // - "0.0.0.0", "::" to listen on any interface
                                                                        // Default, when address config is left out or empty, is "localhost"
                        port: 8080,
                        basePath: "/",  // The URL path where MagicMirror² is hosted. If you are using a Reverse proxy
                                                                                        // you must set the sub path here. basePath must end with a /
                        ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"],  // Set [] to allow all IP addresses
                                                                                        // or add a specific IPv4 of 192.168.1.5 :
                                                                                        // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
                                                                                        // or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
                                                                                        // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
                
                        useHttps: false,                        // Support HTTPS or not, default "false" will use HTTP
                        httpsPrivateKey: "",    // HTTPS private key path, only require when useHttps is true
                        httpsCertificate: "",   // HTTPS Certificate path, only require when useHttps is true
                
                        language: "en",
                        locale: "en-US",
                        logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging
                        timeFormat: 24,
                        units: "metric",
                
                        modules: [
                                {
                                        module: "alert",
                                },
                                {
                                        module: "updatenotification",
                                        position: "top_bar"
                                },
                                {
                                        module: "clock",
                                        position: "top_left"
                                },
                                {
                                        module: "calendar",
                                        header: "US Holidays",
                                        position: "",
                                        config: {
                                                calendars: [
                                                        {
                                                                fetchInterval: 7 * 24 * 60 * 60 * 1000,
                                                                symbol: "calendar-check",
                                                                url: "https://ics.calendarlabs.com/76/mm3137/US_Holidays.ics"
                                                        }
                                                ]
                                        }
                                },
                                {
                                        module: "compliments",
                                        position: ""
                                },
                                {
                                        module: "weather",
                                        position: "top_right",
                                        config: {
                                                weatherProvider: "openweathermap",
                                                type: "current",
                                                location: "New York",
                                                locationID: "5128581", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
                                                apiKey: "YOUR_OPENWEATHER_API_KEY"
                                        }
                                },
                                {
                                        module: "weather",
                                        position: "top_right",
                                        header: "Weather Forecast",
                                        config: {
                                                weatherProvider: "openweathermap",
                                                type: "forecast",
                                                location: "New York",
                                                locationID: "5128581", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city
                                                apiKey: "YOUR_OPENWEATHER_API_KEY"
                                        }
                                },
                                        {
                                          module: "calendar",
                                          position: "",
                                          config: {
                                            broadcastPastEvents: true, // <= IMPORTANT to see past events
                                            calendars: [
                                              {
                                                url: "webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics",
                                                name: "us_holiday", // <= RECOMMENDED to assign name
                                                color: "red" // <= RECOMMENDED to assign color
                                                }
                                        ]
                                        }
                                      },
                                        {
                                          module: "MMM-CalendarExt3",
                                          position: "bottom_bar",
                                           title: "",
                                           config: {
                                            mode: "month",
                                            instanceId: "basicCalendar",
                                            locale: 'en-EN',
                                            maxEventLines: 5,
                                            firstDayOfWeek: 1,
                                            calendarSet: ['us_holiday'],
                                          }
                                },
                        ]
                };
                
                
                
                S M 2 Replies Last reply Reply Quote 0
                • S Offline
                  sdetweil @bobbylx
                  last edited by

                  @bobbylx said in MMM-CalendarExt3:

                                      module: "compliments",
                                      position: ""
                  

                  must be a valid position if specified…

                  you can disable a module by adding

                  disabled: true,
                  

                  after the module: line

                  you can also comment out the position
                  // position:“…”

                  this would be how you use the default calendar with Ext3…
                  it would work, but not be shown

                  backup, backup, backup…
                  see my scripts, backup to private repo on github… restore from there
                  versionable…
                  3 tiny files… and any keyfiles/token files…
                  https://github.com/sdetweil/MagicMirror-backup-restore

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  B 1 Reply Last reply Reply Quote 0
                  • M Offline
                    MMRIZE @bobbylx
                    last edited by

                    @bobbylx
                    CX3* series may not work on MIDORI, sorry. It’s too old browser, doesn’t support advanced modern JavaScript technologies.

                    1 Reply Last reply Reply Quote 0
                    • B Offline
                      bobbylx @sdetweil
                      last edited by

                      @sdetweil said in MMM-CalendarExt3:

                      @bobbylx said in MMM-CalendarExt3:

                                          module: "compliments",
                                          position: ""
                      

                      must be a valid position if specified…

                      you can disable a module by adding

                      disabled: true,
                      

                      after the module: line

                      you can also comment out the position
                      // position:“…”

                      this would be how you use the default calendar with Ext3…
                      it would work, but not be shown

                      backup, backup, backup…
                      see my scripts, backup to private repo on github… restore from there
                      versionable…
                      3 tiny files… and any keyfiles/token files…
                      https://github.com/sdetweil/MagicMirror-backup-restore

                      Thanks, just made that change, found a couple more that needed attention. I also checked my history in this thread, I’ve posted my config before asking other questions so I was able to borrow some lines. Getting close now.

                      @MMRIZE said in MMM-CalendarExt3:

                      @bobbylx
                      CX3* series may not work on MIDORI, sorry. It’s too old browser, doesn’t support advanced modern JavaScript technologies.

                      I had been using it with Midori until just a few days ago when I decided to reload. It wasn’t fast or always the best, but I’m using a Pi zero W so limited on browsers right now. I’ll be picking up a Pi 3 or 4 soon then I’ll do this all over again.

                      1 Reply Last reply Reply Quote 0
                      • A Offline
                        aymen_a22
                        last edited by

                        Unsure why, but I keep getting this error message.

                        Is anyone able to assist if possible please?

                        Warning: vkCreateInstance: Found no drivers!
                        Warning: vkCreateInstance failed with VK_ERROR_INCOMPATIBLE_DRIVER
                        at CheckVkSuccessImpl (…/…/third_party/dawn/src/dawn/native/vulkan/VulkanError.cpp:88)
                        at CreateVkInstance (…/…/third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:458)
                        at Initialize (…/…/third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:344)
                        at Create (…/…/third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:266)
                        at operator() (…/…/third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:521)

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

                          @aymen_a22 bug in electron , nothing we can do… ignore it

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

                          1 Reply Last reply Reply Quote 0
                          • P Offline
                            princemaxwell
                            last edited by

                            Hello together,
                            i have configured 8 calendars in the default calendar module. Three of them are from “i.cal.to” and five are my public iCloudcalendars.

                            The default calendar app is loading them without errors, but MMM-CalendarExt3 has problems to view the iCloud entries.

                            The mm-error.log shows:

                            [19.03.2024 21:24.43.184] [ERROR] Calendar Error. Could not fetch calendar:  https://p63-caldav.icloud.com/published/2/MTA... TypeError: fetch failed
                                at Object.fetch (node:internal/deps/undici/undici:11576:11) {
                              cause: SocketError: other side closed
                                  at TLSSocket.onSocketEnd (node:internal/deps/undici/undici:9790:26)
                                  at TLSSocket.emit (node:events:526:35)
                                  at endReadableNT (node:internal/streams/readable:1359:12)
                                  at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
                                code: 'UND_ERR_SOCKET',
                                socket: {
                                  localAddress: '10.0.0.20',
                                  localPort: 37214,
                                  remoteAddress: undefined,
                                  remotePort: undefined,
                                  remoteFamily: undefined,
                                  timeout: undefined,
                                  bytesWritten: 639,
                                  bytesRead: 143898
                                }
                              }
                            }
                            

                            while the mm-out.log shows:

                            [19.03.2024 21:23.35.168] [INFO]  Calendar-Fetcher: Broadcasting 5 events from https://p63-caldav.icloud.com/published/2/MTA....
                            [19.03.2024 21:23.35.332] [INFO]  updatenotification: You are using pm2 with MagicMirror
                            [19.03.2024 21:23.35.333] [INFO]  Checking git for module: MMM-soccer
                            [19.03.2024 21:23.35.462] [INFO]  Checking git for module: MMM-Planetarium
                            [19.03.2024 21:23.35.591] [INFO]  Checking git for module: MMM-Globe2
                            [19.03.2024 21:23.36.450] [INFO]  Calendar-Fetcher: Broadcasting 0 events from https://p63-caldav.icloud.com/published/2/MTA....
                            [19.03.2024 21:23.36.513] [INFO]  Checking git for module: MagicMirror
                            [19.03.2024 21:23.36.963] [INFO]  Newsfeed-Fetcher: Broadcasting 30 items.
                            [19.03.2024 21:23.37.049] [INFO]  Newsfeed-Fetcher: Broadcasting 100 items.
                            [19.03.2024 21:23.37.825] [INFO]  Calendar-Fetcher: Broadcasting 7 events from https://p63-caldav.icloud.com/published/2/MTA....
                            [19.03.2024 21:24.03.308] [INFO]  Calendar-Fetcher: Broadcasting 8 events from https://p63-caldav.icloud.com/published/2/MTA....
                            [19.03.2024 21:24.43.055] [INFO]  Calendar-Fetcher: Broadcasting 10 events from https://p29-caldav.icloud.com/published/2/ODA....
                            [19.03.2024 21:24.43.503] [INFO]  Calendar-Fetcher: Broadcasting 1 events from https://i.cal.to/ical/77/....
                            [19.03.2024 21:24.43.754] [INFO]  Calendar-Fetcher: Broadcasting 5 events from https://i.cal.to/ical/3/....
                            [19.03.2024 21:24.43.781] [INFO]  Calendar-Fetcher: Broadcasting 2 events from https://i.cal.to/ical/61/....
                            [19.03.2024 21:24.44.853] [INFO]  Calendar-Fetcher: Broadcasting 0 events from https://p63-caldav.icloud.com/published/2/MTA....
                            [19.03.2024 21:24.45.665] [INFO]  Calendar-Fetcher: Broadcasting 7 events from https://p63-caldav.icloud.com/published/2/MTA....
                            [19.03.2024 21:25.10.627] [INFO]  Calendar-Fetcher: Broadcasting 8 events from https://p63-caldav.icloud.com/published/2/MTA....
                            

                            I have increased the waitFetch, but it didn’t help.

                            		{
                            			module: "MMM-CalendarExt3",
                            			position: "middle_center",
                            			waitFetch: 32000,
                            			disabled: false,
                            		},
                            

                            Can someone help me?

                            Max

                            S M 3 Replies Last reply Reply Quote 0
                            • S Offline
                              sdetweil @princemaxwell
                              last edited by

                              @princemaxwell the error log says problem w the default calendar as ext3 gets it’s events there

                              Sam

                              How to add modules

                              learning how to use browser developers window for css changes

                              P 1 Reply Last reply Reply Quote 0
                              • P Offline
                                princemaxwell @sdetweil
                                last edited by

                                @sdetweil when i disable the MMM-CalendarExt3 module, the errors are gone.

                                All calendars are working fine and loading quickly in default calendar module.

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

                                  @princemaxwell
                                  CX3 doesn’t connect or fetch calendar server. That error probably has been caused by default calendar module.

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

                                    @princemaxwell
                                    CX3*s do not use nodeJS at all, so they are not related to your error messages. The modules are executed on the browser level, not on the server-side node environment, so they could not affect server-side processes like calendar fetching.
                                    Your error message (UND_ERR_SOCKET) is caused by the undici node module; it may be used inside of the default calendar module to connect through HTTP/1.1. That error usually happens when the connection is closed by long waits or prior preemption.
                                    There is a weird thing. As far as I know, the default calendar module depends on node-ical, which uses axios instead of undici. So I wonder why and from where this error message comes.

                                    To make things simple clearly;

                                    1. Backup your current config.js in the safe area.
                                    2. Create a new config.js, and remove all other not-releated modules like MMM-Planetarium, MMM-soccer, … Leave only clock, calendar and MMM-CalendarExt3 modules.
                                    3. Begin with one or two calendars, not all the calendars.
                                    4. Try to execute MM again, and let’s see what happens.
                                    5. After confirmation that a small qty of calendars has no issue, add more calendars.
                                    6. After confirmation that there is no issue with the calendars, try adding more modules one by one.

                                    (A possible reason, I guess, is that your modules are racing to use the network/dest-server severely. For example, your calendars look being rescanned every minutes. You may need to rearrange the interval of the schedule.)

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

                                      @MMRIZE calendar uses built in fetch to get the ics file. we do not have node-ical fetch it for us ( the prior ical lib did not provide fetch)

                                      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
                                        MMRIZE @sdetweil
                                        last edited by

                                        @sdetweil said in MMM-CalendarExt3:

                                        @MMRIZE calendar uses built in fetch to get the ics file. we do not have node-ical fetch it for us ( the prior ical lib did not provide fetch)

                                        If so, this is really weird where the undici module is used.

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

                                          @MMRIZE undici is the implementation code of fetch

                                          Sam

                                          How to add modules

                                          learning how to use browser developers window for css changes

                                          1 Reply Last reply Reply Quote 0
                                          • P Offline
                                            princemaxwell @MMRIZE
                                            last edited by

                                            @MMRIZE
                                            Thanks for your answer.

                                            I cleaned up my config.js and only had following modules in it:

                                            • alert
                                            • updatenotification
                                            • clock
                                            • calendar
                                            • MMM-CalendarExt3

                                            No matter how many calendars I have activated, the default calendar loads all entries quite quickly, although you can notice that the “large” calendars with many entries took a few seconds to load (sometimes up to 20-30 seconds).

                                            Nevertheless, I deleted the fetchInterval (31000) in the default calendar, so the default value of 300000 is now active.

                                            After the default calendar displayed all entries, it took at least another 10 minutes for them to appear in the MMM-CalendarExt3.

                                            Why is this taking so long? They are sent to MMM-CalendarExt3 via “broadcastEvents” or what?

                                            I took a look at the sizes of my calendar:

                                            • Calendar 1: 1,068,804 bytes
                                            • Calendar 2: 697,796 bytes
                                            • Calendar 3: 398,683 bytes
                                            • Calendar 4: 150,176 bytes
                                            • Calendar 5: 73,128 bytes
                                            • Calendar 6: 70,476 bytes
                                            • Calendar 7: 23,940 bytes
                                            • Calendar 8: 17,221 bytes

                                            Calendars 6-8 are displayed relatively quickly in MMM-CalendarExt3, calendar 5 a little later. The others require the previously mentioned 5-10 minutes.

                                            Could it have something to do with size?

                                            S M 2 Replies Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 23
                                            • 24
                                            • 25
                                            • 26
                                            • 27
                                            • 34
                                            • 35
                                            • 25 / 35
                                            • 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