Read the statement by Michael Teeuw here.
MMM-CalDAV
-
https://github.com/MMRIZE/MMM-CalDAV/wiki
- Install
cd <Your MagicMirror directory>/modules git clone https://github.com/MMRIZE/MMM-CalDAV cd MMM-CalDAV npm install- There would be
.env(It would be hidden, so you should check it withls -alor equivalent for your environment/OS)
If not there, copy it from
env.examplecp env.example .env- Open your Synology Calendar. You can open it from your Synology Package Center Or installed app lists. Usually it will have
http(s)://<IP_OR_URL>:<PORT(5000 or 5001)>/?launchApp=SYNO.Cal.Applicationas URL so you can open it on the browser.
You will see something like this.
- Get the CadDAV account. Copy or memo the URL. Usually URL will have
http(s)://<IP_OR_URL>:<PORT_5000_OR_5001>/caldav/format.
-
Back to the terminal. Open the
.envfile with your favourite editor. Then, fulfil these lines.
-
Then configure the
MMM-CalDAVmodule and thecalendarmodule like this.
Carefully See the configuration of the
calendarmodule.- Then run the MagicMirror.
At the very first execution, some time would be needed for CalDAV calendars to be reflected on the screen. So, just stop the MagicMirror.
If CalDAV calendars would be success to be derived, the log will say something like this.
[2024-09-03 22:52:01.461] [LOG] [CALDAV] File: SYNOLOGY_test.ics is refreshed.And there be files to be hosted in the
servicedirectory like these;
I have two calendars,
My Calendarandtest, so there would be 2 hidden ics files generated,service/.SYNOLOGY_My_20Calendar.icsandservice/.SYNOLOGY_test.ics.But the real URL consumed by the
calendarmodule would behttp://localhost:8080/CALDAV/SYNOLOGY_test.ics, don’t be confused.- Rerun the MM again. Now on the screen, your hosting calendar will be served.
-
@MMRIZE said in MMM-CalDAV:
Hi thank you very much for the really fast supply.
the strange thing is that i configured it like you said. but if im running it the magicmirror it is showing me that the “Site is not reachable” (The Synology default page)
if im running MM just without the CALDAV Module it´s working.
I´m running the MM in Docker on the Synology.
-
@caw could you show me the capture of error message to know what happened?
-
@MMRIZE if i´m adding the
{ module :"MMM-CalDAV", config: { servers: [ { envPrefix: "SYNOLOGY_", serverUrl: "https://myownsynologyadress.de/caldav/", ], }, },following error occurs

-
@caw said in MMM-CalDAV:
following error occurs

???
I cannot understand the context. What did you do? The image seems like that something on the browser.Does your MagicMirror is executed on the Synology NAS with Docker?
-
@caw said in MMM-CalDAV:
{
module :“MMM-CalDAV”,
config: {
servers: [
{
envPrefix: “SYNOLOGY_”,
serverUrl: “https://myownsynologyadress.de/caldav/”,
],
},
},And you’ve missed a closing brace in your code.
{ module :"MMM-CalDAV", config: { servers: [ { envPrefix: "SYNOLOGY_", serverUrl: "https://myownsynologyadress.de/caldav/", }, // <-- HERE ], }, }, -
@MMRIZE yes the image is a screen from the browser. MM is running till i add the Caldav-Module. So i assume I missconfigured something. The missing bracket did not solve the problem in the log:
2024/09/04 15:33:13 stderr if (key?.startsWith(prefix)) {
2024/09/04 15:33:13 stderr [04.09.2024 15:33.13.728] [ERROR] /opt/magic_mirror/modules/MMM-CalDAV/node_helper.js:14
2024/09/04 15:33:13 stderr [04.09.2024 15:33.13.727] [ERROR] Whoops! There was an uncaught exception…
2024/09/04 15:33:13 stdout [04.09.2024 15:33.13.726] [LOG] No helper found for module: MMM-Carousel.
2024/09/04 15:33:13 stdout [04.09.2024 15:33.13.726] [LOG] No helper found for module: clock.
2024/09/04 15:33:13 stdout [04.09.2024 15:33.13.725] [LOG] Module helper loaded: updatenotification
2024/09/04 15:33:13 stderr at /opt/magic_mirror/js/app.js:166:6
2024/09/04 15:33:13 stderr at loadNextModule (/opt/magic_mirror/js/app.js:164:5)
2024/09/04 15:33:13 stdout [04.09.2024 15:33.13.725] [LOG] Initializing new module helper …
2024/09/04 15:33:13 stderr at loadModule (/opt/magic_mirror/js/app.js:126:19)
2024/09/04 15:33:13 stderr at require (internal/modules/cjs/helpers.js:74:18)
2024/09/04 15:33:13 stderr at Module.require (internal/modules/cjs/loader.js:887:19)
2024/09/04 15:33:13 stdout [04.09.2024 15:33.13.725] [LOG] No helper found for module: alert.
2024/09/04 15:33:13 stderr at Function.Module._load (internal/modules/cjs/loader.js:708:14)
2024/09/04 15:33:13 stderr at Module.load (internal/modules/cjs/loader.js:863:32)
2024/09/04 15:33:13 stdout [04.09.2024 15:33.13.724] [LOG] Loading module helpers …
2024/09/04 15:33:13 stderr at Object.Module._extensions…js (internal/modules/cjs/loader.js:1027:10)
2024/09/04 15:33:13 stderr at Module._compile (internal/modules/cjs/loader.js:963:27)
2024/09/04 15:33:13 stderr at wrapSafe (internal/modules/cjs/loader.js:915:16)
2024/09/04 15:33:13 stderr SyntaxError: Unexpected token ‘.’ -
@caw because you are running in server mode, the version of nodejs matters.
your version is way down level
the ?. syntax shown on line 14 is from the latest js version

-
@sdetweil thank you very much for the information - but now i have another problem to get it updated can you help me with this?
-
@caw what environment are you running?
-
@sdetweil im running the docker container on a Synology NAS
-
@caw what docker container?
-
@caw said in MMM-CalDAV:
https: means you have a certificate for that address and have configured MMM-Caldav to run in secure mode
is that true?
typically one uses mmm-caldav to read from the foreign calendar, and emit ics data for the local machine
and make it available thru a url request (which causes the MMM-Caldav module to provide the data live)
http://mmIP:mmPort/caldavor shorthand for this same system is (using the default mm port)
http://localhost:8080/caldavdepending on how MM is configured,
address: and ipWhitelist, by default it rejects ALL requests from OUTSIDE systems
so your loop back at - https://myownsynologyadress.de would be rejected…I use cloudflare to map outside requests to my systems thr a tunnel, so I have https (cert provided by cloudflare) and have reconfigured my MagicMirror to allow any incoming request
address: "0.0.0.0", ipWhitelist:[], -
@sdetweil im running the “container manager” on the nas and the container by bastilimbach installation guide by https://mariushosting.com/how-to-install-magicmirror-on-your-synology-nas/
-
@sdetweil i used ipv64 to receive a certificate - but for now i dont want to get any caldav from outside or do i missunderstand something?
-
@caw said in MMM-CalDAV:
bastilimbach
that image is 4 years old, so not running the latest node or MM…
the install doc https://docs.magicmirror.builders/getting-started/installation.html#alternative-installation-methods
references this docker image
https://gitlab.com/khassel/magicmirror -
@caw because the ics generated by MMM-Caldav is only needed on this same machine I would use
http://localhost:mmport/CALDAV
in the calendar module.
I am guessing your cert is connected to your internet IP address (ISP router)
which is then port forwarded to the MM machine…this is an external (from MM’s perspective) request
MM is configured (be default) to be a closed system on the wall, not allowing any external systems to request the MM page (external means outside the machine MM is running on)
-
@sdetweil i searched for a guide to get the Khassel container running on a Synology NAS but didn’t found anything about it. I tried it by my own but did not work. Do you have a clue how to get it on the Docker on a Synology NAS?
-
@caw my older 416j only has 512mb storage, not enough room to run docker things
but docker is docker. i thought he specified a compose or command line
see this
https://forum.magicmirror.builders/topic/18952/docker-install-on-synology-nas -
so i got the khassel image running and i think the calendars are found but i get an error:
[2024-09-05 22:42:56.488] [ERROR] Error: EACCES: permission denied, open ‘/opt/magic_mirror/modules/MMM-CalDAV/service/.SYNOLOGY_Familien_20Kalender.ics’
2024/09/05 22:42:56 stderr [2024-09-05 22:42:56.486] [ERROR] Whoops! There was an uncaught exception…do you have a clue how to fix this? im irritated by the “20” between Familien_20Kalender.ics thats no part of the calendar name…
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