MagicMirror² v2.12.0 is available! For more information about this release, check out this topic.

Calendar module: connecting to radicale server



  • Hi guys,

    I am fairly new to MM - so a warm hello to everyone 👋 - and just set up my raspberry pi 3 recently. No fancy stuff, just the default modules (clock, weather, forecast and calendar) and MMM-BackgroundSlideshow.

    Our family calendar is running on a radicale docker container which I’d like to connect. The calendar itself doesn’t require any auth to receive and is through the browser by the url downloadable. But the same url in the config doesn’t seem to work. I also have OSX, iOS and Android running against the radicale container with no problems.

    Also interesting even though I changed the fetchInterval to 600.000 the log still says that the fetcher is created with an interval of 300.000.

    My config is as follows:

    {
        module: "calendar",
        header: "Kalender",
        position: "top_left",
        fetchInterval: 600000,
        maximumEntries: 5,
        config: {
            calendars: [
                {
                    symbol: "calendar-check-o ",
                    dateFormat: "dd.MM.yyyy",
                    url: "https://url-to-ical-sevrer/",
                }
            ]
        }
    },
    

    Logfile shows:

    Dez 28 12:22:27 portugal systemd[1]: Stopping MagicMirror...
    Dez 28 12:22:27 portugal systemd[1]: Stopped MagicMirror.
    Dez 28 12:22:27 portugal systemd[1]: Started MagicMirror.
    Dez 28 12:22:29 portugal npm[13206]: > magicmirror@2.5.0 start /home/pi/MagicMirror
    Dez 28 12:22:29 portugal npm[13206]: > sh run-start.sh
    Dez 28 12:22:32 portugal npm[13206]: Starting MagicMirror: v2.5.0
    Dez 28 12:22:32 portugal npm[13206]: Loading config ...
    Dez 28 12:22:32 portugal npm[13206]: Loading module helpers ...
    Dez 28 12:22:32 portugal npm[13206]: No helper found for module: clock.
    Dez 28 12:22:33 portugal npm[13206]: Initializing new module helper ...
    Dez 28 12:22:33 portugal npm[13206]: Module helper loaded: calendar
    Dez 28 12:22:33 portugal npm[13206]: No helper found for module: currentweather.
    Dez 28 12:22:33 portugal npm[13206]: No helper found for module: weatherforecast.
    Dez 28 12:22:33 portugal npm[13206]: Initializing new module helper ...
    Dez 28 12:22:33 portugal npm[13206]: Module helper loaded: MMM-BackgroundSlideshow
    Dez 28 12:22:33 portugal npm[13206]: All module helpers loaded.
    Dez 28 12:22:33 portugal npm[13206]: Starting server on port 8080 ...
    Dez 28 12:22:33 portugal npm[13206]: You're using a full whitelist configuration to allow for all IPs
    Dez 28 12:22:33 portugal npm[13206]: Server started ...
    Dez 28 12:22:33 portugal npm[13206]: Connecting socket for: calendar
    Dez 28 12:22:33 portugal npm[13206]: Starting node helper for: calendar
    Dez 28 12:22:33 portugal npm[13206]: Connecting socket for: MMM-BackgroundSlideshow
    Dez 28 12:22:33 portugal npm[13206]: Sockets connected & modules started ...
    Dez 28 12:22:33 portugal npm[13206]: Launching application.
    Dez 28 12:22:36 portugal npm[13206]: Create new calendar fetcher for url: https://url-to-ical-server/ - Interval: 300000
    

    Does anyone has this kind of setup already running? Any advice would be appreciated 🙂

    Cheers,
    Marcus



  • So I got two steps further:

    First the easy fix for the fetchInterval. Those config parameter needs to go into the config section of course … doh 😊

        module: "calendar",
        header: "Kalender",
        position: "top_left",
        config: {
                fetchInterval: 600000,
                maximumEntries: 5,
                calendars: [
                {
                    symbol: "calendar-check-o ",
                    dateFormat: "dd.MM.yyyy",
                    url: "https://url-to-ical-sevrer/",
                }
            ]
        }
    },
    

    The problem, why the calendar couldn’t be fetched, is TLS related. I used the debug.js file which I found in the modules folder to trace down the error:

    Error "unable to verify the first certificate"

    The provided certificate is signed by let's encrypt - as a workaround I currently used: process.env.NODE_TLS_REJECT_UNAUTHORIZED = 0; I know that this is not the recommended way.

    I am running node version 9.11.2 - maybe someone has a working fix for that problem?


Log in to reply