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.3k 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 Offline
        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 Offline
            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

                    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 / 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