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-CalendarExt2 not showing all events

    Scheduled Pinned Locked Moved Troubleshooting
    8 Posts 3 Posters 1.2k Views 3 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.
    • T Offline
      thebia42
      last edited by

      Recently I have noticed that MMM-CalendarExt2 stopped showing the events of all my configured calendars. Some calendars are read but ignored it seems. It used to work and then it stopped. And I can’t for the life of me figure out what’s wrong. I’ve already followed the hints here but that did not change anything or I got it wrong.

      This is my configuration

      		{
      			module: "MMM-CalendarExt2",
      			config: {
      				rotateInterval: 500*60,
      				defaultSet: {
      					view: {
      						hideOverflow: true,
      						filterPassedEvents: false,
      						dateFormat: "ddd DD.MM",
      						locale: "de-DE",
      						maxItems: 500,
      					},
      					calendar: {
      						maxItems: 500,
      						beforeDays: 7,
      						afterDays: 365,
      					}
      				},
      				calendars: [
      					{
      						name: "Ferien 2020",
      						url: "webcal://www.schulferien.org/xxx"
      					},
      					{
      						name: "Feiertage 2020",
      						url: "webcal://www.schulferien.org/xxx",
      					},
      					{
      						name: "itslearning 1",
      						url: "webcal://xxx",
      					},
      					{
      						name: "itslearning 2",
      						url: "webcal://xxx",
      					},
      					{
      						name: "Termine A",
      						url: "https://caldav.xxx/?export",
      						auth: {
      							method: "digest",
      							user: "",
      							pass: ""
      						}
      					},
      					{
      						name: "Müll",
      						url: "https://xxx",
      						icon: "bi-trash"
      					},
      					{
      						name: "Termine B",
      						url: "https://caldav.xxx/?export",
      						auth: {
      							method: "digest",
      							user: "",
      							pass: ""
      						}
      					},
      					{
      						name: "Termine C",
      						url: "https://caldav.xxx/?export",
      						auth: {
      							method: "digest",
      							user: "",
      							pass: ""
      						}
      					},
      					{
      						name: "Termine D",
      						url: "https://caldav.xxx/?export",
      						auth: {
      							method: "digest",
      							user: "",
      							pass: ""
      						}
      					},
      					{
      						name: "Termine E",
      						url: "https://caldav.xxx/?export",
      						auth: {
      							method: "digest",
      							user: "",
      							pass: ""
      						}
      					},
      					{
      						name: "Geburtstage",
      						url: "https://caldav.xxx/?export",
      						icon: "cil-birthday-cake",
      						auth: {
      							method: "digest",
      							user: "",
      							pass: ""
      						}
      					},
      				],
      				views: [
      					{
      						name: "upcoming_daily",
      						mode: "upcoming",
      						position: "top_left",
      						calendars: ["itslearning 1", "Termine A", "Termine B", "Termine C", "Termine D", "Termine E"],
      						slotCount: 5,
      						maxDays: 5,
      						slotSubTitle: "",
      						slotTitle: "Nächste Termine...",
      						useEventTimeRelative: false,
      					},
      					{
      						name: "daily_daily",
      						mode: "daily",
      						type: "row",
      						slotCount: 7,
      						position: "bottom_bar",
      						calendars: ["Feiertage 2020", "Termine A", "Termine B", "Termine C", "Termine D", "Termine E"],
      					},
      					{
      						name: "upcoming_school",
      						mode: "upcoming",
      						position: "top_left",
      						calendars: ["itslearning 1", "itslearning 2"],
      						slotCount: 5,
      						maxDays: 5,
      						slotSubTitle: "",
      						slotTitle: "Nächste Schultermine...",
      						useEventTimeRelative: false,
      					},
      					{
      						name: "daily_school",
      						mode: "daily",
      						type: "row",
      						slotCount: 7,
      						position: "bottom_bar",
      						calendars: ["Ferien 2020", "Feiertage 2020", "itslearning 1", "itslearning 2"],
      					},
      					{
      						name: "upcoming_yearly",
      						mode: "upcoming",
      						position: "top_left",
      						calendars: ["Geburtstage", "Müll"],
      						slotCount: 5,
      						maxDays: 5,
      						slotSubTitle: "",
      						slotTitle: "Nächste Termine...",
      						useEventTimeRelative: false,
      						transform: (event) => {
      							if (event.title.startsWith("Abfuhr: ")) {
      								event.title = event.title.replace("Abfuhr: ", "");
      							}
      							return event;
      						},
      					},
      					{
      						name: "daily_yearly",
      						mode: "daily",
      						type: "row",
      						slotCount: 7,
      						position: "bottom_bar",
      						calendars: ["Geburtstage", "Müll"],
      					},
      				],
      				scenes: [
      					{
      						name: "daily",
      						views: ["upcoming_daily", "daily_daily"],
      					},
      					{
      						name: "yearly",
      						views: ["upcoming_yearly", "daily_yearly"],
      					},
      					{
      						name: "school",
      						views: ["upcoming_school", "daily_school"],
      					}
      				],
      			},
      		},
      

      I’ve also noticed an error occuring when reading one of the calendars. I’ve double checked the url, it’s correct. This is the log:

      [2020-11-11 18:06:27.327] [LOG]    Starting MagicMirror: v2.13.0
      [2020-11-11 18:06:27.339] [LOG]    Loading config ...
      [2020-11-11 18:06:27.348] [LOG]    Loading module helpers ...
      [2020-11-11 18:06:27.351] [LOG]    No helper found for module: alert.
      [2020-11-11 18:06:27.430] [LOG]    Initializing new module helper ...
      [2020-11-11 18:06:27.431] [LOG]    Module helper loaded: updatenotification
      [2020-11-11 18:06:27.433] [LOG]    No helper found for module: clock.
      [2020-11-11 18:06:28.231] [LOG]    Initializing new module helper ...
      [2020-11-11 18:06:28.233] [LOG]    Module helper loaded: MMM-CalendarExt2
      [2020-11-11 18:06:28.234] [LOG]    All module helpers loaded.
      [2020-11-11 18:06:28.420] [LOG]    Starting server on port 8080 ...
      [2020-11-11 18:06:28.439] [LOG]    Server started ...
      [2020-11-11 18:06:28.440] [LOG]    Connecting socket for: updatenotification
      [2020-11-11 18:06:28.442] [LOG]    Connecting socket for: MMM-CalendarExt2
      [2020-11-11 18:06:28.443] [LOG]    Sockets connected & modules started ...
      [2020-11-11 18:06:33.523] [LOG]    Launching application.
      [2020-11-11 18:06:37.506] [INFO]   Checking git for module: MMM-CalendarExt2
      [2020-11-11 18:06:37.546] [LOG]    [CALEXT2] calendar:Ferien 2020 >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.548] [LOG]    URL :http://www.schulferien.org/xxx
      [2020-11-11 18:06:37.560] [LOG]    [CALEXT2] calendar:Feiertage 2020 >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.561] [LOG]    URL :http://www.schulferien.org/xxx
      [2020-11-11 18:06:37.565] [LOG]    [CALEXT2] calendar:itslearning 1 >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.566] [LOG]    URL :http://xxx
      [2020-11-11 18:06:37.568] [LOG]    [CALEXT2] calendar:itslearning 2 >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.569] [LOG]    URL :http://xxx
      [2020-11-11 18:06:37.571] [LOG]    [CALEXT2] calendar:Termine A >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.572] [LOG]    URL :https://xxx
      [2020-11-11 18:06:37.575] [LOG]    [CALEXT2] calendar:Müll >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.576] [LOG]    URL :https:/xxx
      [2020-11-11 18:06:37.579] [LOG]    [CALEXT2] calendar:Termine B >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.580] [LOG]    URL :https://xxx
      [2020-11-11 18:06:37.582] [LOG]    [CALEXT2] calendar:Termine C >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.583] [LOG]    URL :https://xxx
      [2020-11-11 18:06:37.584] [LOG]    [CALEXT2] calendar:Termine D >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.586] [LOG]    URL :https://xxx
      [2020-11-11 18:06:37.587] [LOG]    [CALEXT2] calendar:Termine E >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.588] [LOG]    URL :https://xxx
      [2020-11-11 18:06:37.590] [LOG]    [CALEXT2] calendar:Geburtstage >> Scanning start with interval:1800000
      [2020-11-11 18:06:37.591] [LOG]    URL :https://xxx
      [2020-11-11 18:06:38.049] [LOG]    [CALEXT2] calendar:itslearning 1 >> Scanned: 2, Selected: 2
      [2020-11-11 18:06:38.067] [LOG]    [CALEXT2] calendar:itslearning 2 >> Scanned: 4, Selected: 4
      [2020-11-11 18:06:38.178] [LOG]    [CALEXT2] calendar:Feiertage 2020 >> Scanned: 2, Selected: 2
      [2020-11-11 18:06:38.195] [LOG]    [CALEXT2] calendar:Ferien 2020 >> Scanned: 1, Selected: 1
      [2020-11-11 18:06:38.361] [LOG]    [CALEXT2] calendar:Termine A >> Scanned: 27, Selected: 27
      [2020-11-11 18:06:38.537] [LOG]    [CALEXT2] calendar:Termine B >> Scanned: 30, Selected: 30
      [2020-11-11 18:06:38.690] [LOG]    [CALEXT2] calendar:Geburtstage >> Scanned: 45, Selected: 45
      [2020-11-11 18:06:38.792] [LOG]    [CALEXT2] calendar:Termine C >> Scanned: 48, Selected: 48
      [2020-11-11 18:06:38.997] [LOG]    [CALEXT2] calendar:Termine D >> Scanned: 99, Selected: 99
      [2020-11-11 18:06:39.093] [LOG]    [CALEXT2] calendar:Termine E >> Scanned: 5, Selected: 5
      [2020-11-11 18:06:45.578] [LOG]    [CALEXT2] calendar:Müll >> invalid line (no token ";" or ":") "<!DOCTYPE html>"
      

      Any help or insights would be greatly appreciated. Alternatively - as I am new to node.js - any hints as to how I could debug the module (without using copious amounts of console.log statements) would also be appreciated.

      1 Reply Last reply Reply Quote 0
      • BKeyportB Online
        BKeyport Module Developer
        last edited by

        Sadly, with support being a minimum now due to Sean’s absence, I don’t think you’re gonna get too much support - Was it working before? when did it stop? DST change or randomly? is the ICS formatted to spec (there’s a lot of ‘junk’ to the spec, which results in calendars that work, but aren’t handled in the ICS handler for CX2)

        The "E" in "Javascript" stands for "Easy"

        1 Reply Last reply Reply Quote 0
        • T Offline
          thebia42
          last edited by

          Thank you for your answer.
          Yes, it was working. But I had fewer calendars. I can’t really pinpoint when it stopped working. Maybe with the addition of another calendar? The thing is, the calendar that I added has very few events so I didn’t see right away if it was working or not.
          Anyway, could you maybe point me in the right direction as to how I could debug the calendar? I am a developer but have no experience with node.js. I did try to debug the module by inserting console.log statements into the code but that was very cumbersome.
          I guess the ICS is formatted correctly. Most of the calendars are self hosted so I don’t see a reason why some would not be working. And all of the calendars work with different apps on mobiles.

          S 1 Reply Last reply Reply Quote 0
          • BKeyportB Online
            BKeyport Module Developer
            last edited by

            Sadly, I’m just dabbling myself - I have no idea how CX2 works in the slightest. One of the more experienced programmers might be able to help, say, @sdetweil or someone…

            The "E" in "Javascript" stands for "Easy"

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

              @BKeyport I can’t help. I have not looked at this modules workings

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

                @thebia42 I am guessing the Mull calendar has a badly formatted entry

                its just a text file when downloaded.
                I guess one line does not have the required ; or : tokens

                u should be able to use the grep command to find that line

                grep -v : filename | grep -v ;

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                1 Reply Last reply Reply Quote 0
                • T Offline
                  thebia42
                  last edited by

                  I’ll have a look at the data of the “Müll” calendar. What I don’t understand is that it works with any other program but maybe those programs are more lenient.
                  I’ve an idea how MMM-CalendarExt2 works but only together with MagicMirror not standalone in a development environment. But I guess I’ll figure that out eventually. Anyway, thanks for answering. If I find out anything I’ll come back here and post my findings. Maybe they’ll help somebody else one day.

                  1 Reply Last reply Reply Quote 0
                  • T Offline
                    thebia42
                    last edited by

                    After trying for hours to debug MagicMirror and modules inside and outside of MagicMirror I finally gave up and reinstalled MMM-CalendarExt2. Lo and behold everything is working again. So the next time something goes wrong I’ll just reinstall.

                    1 Reply Last reply Reply Quote 0
                    • 1 / 1
                    • 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