Read the statement by Michael Teeuw here.
Default calendar and Nextcloud CalDav
-
@BasicUser ok, i put my ics in the default/calendar folder and this works
url:"http://localhost:8080/modules/default/calendar/foo.ics"
so, you were more close than me
-
@sdetweil hmm
{ symbol: "calendar", url: "http://localhost:8080/modules/default/calendar/personal.ics", user: "USER", pass: "PASSW", method: "basic", }
It is saying “No upcoming events” still. I put a test event for tomorrow so that I know there should be one.
I ran
pm2 logs --lines=150 | grep calendar
0|mm | [2020-08-19 17:47:12.740] [LOG] Connecting socket for: calendar 0|mm | [2020-08-19 17:47:12.744] [LOG] Starting node helper for: calendar 0|mm | [2020-08-19 17:47:23.028] [LOG] Create new calendar fetcher for url: https://nextcloud.MYDOMAIN.xyz/remote.php/dav/calendars/USER/personal/ - Interval: 300000 0|mm | [2020-08-19 17:50:06.402] [LOG] Module helper loaded: calendar 0|mm | [2020-08-19 17:50:08.524] [LOG] Connecting socket for: calendar 0|mm | [2020-08-19 17:50:08.528] [LOG] Starting node helper for: calendar 0|mm | [2020-08-19 17:50:19.043] [LOG] Create new calendar fetcher for url: https://nextcloud.MYDOMAIN.xyz/remote.php/dav/calendars/USER/personal/ - Interval: 300000 0|mm | [2020-08-19 17:50:19.152] [LOG] Create new calendar fetcher for url: http://localhost:8080/modules/calendar/personal.ics - Interval: 300000 0|mm | [2020-08-19 17:52:41.135] [LOG] Module helper loaded: calendar 0|mm | [2020-08-19 17:52:43.207] [LOG] Connecting socket for: calendar 0|mm | [2020-08-19 17:52:43.210] [LOG] Starting node helper for: calendar 0|mm | [2020-08-19 17:52:53.215] [LOG] Create new calendar fetcher for url: https://nextcloud.MYDOMAIN.xyz/remote.php/dav/calendars/USER/personal/ - Interval: 300000 0|mm | [2020-08-19 17:52:53.278] [LOG] Create new calendar fetcher for url: http://localhost:8080/modules/calendar/personal.ics - Interval: 300000 0|mm | [2020-08-19 17:55:50.824] [LOG] Module helper loaded: calendar 0|mm | [2020-08-19 17:55:53.057] [LOG] Connecting socket for: calendar 0|mm | [2020-08-19 17:55:53.060] [LOG] Starting node helper for: calendar 0|mm | [2020-08-19 17:56:03.286] [LOG] Create new calendar fetcher for url: https://nextcloud.MYDOMAIN.xyz/remote.php/dav/calendars/USER/personal/ - Interval: 300000 0|mm | [2020-08-19 17:56:03.364] [LOG] Create new calendar fetcher for url: http://localhost:8080/modules/default/calendar/personal.ics - Interval: 300000
edit:
more recent logs0|mm | Use existing calendar fetcher for url: http://localhost:8080/modules/default/calendar/personal.ics 0|mm | [2020-08-19 18:06:02.407] [INFO] Calendar-Fetcher: Broadcasting 0 events. 0|mm | [2020-08-19 18:06:02.559] [INFO] 0|mm | Calendar-Fetcher: Broadcasting 0 events. 0|mm | [2020-08-19 18:06:02.608] [INFO] 0|mm | Calendar-Fetcher: Broadcasting 0 events. 0|mm | [2020-08-19 18:06:14.339] [INFO] 0|mm | Calendar-Fetcher: Broadcasting 0 events.
EDIT2: It is working now, my downloaded ics file was bad apparently. I redownloaded it and now it is working as expected, I think.
-
@BasicUser cool… thx for the feedback
-
@sdetweil This might just be my ignorance but I have added an item to my calendar after it was working to see if it would pull the new event. To my dismay it has not pulled the newest item. Are ICS files static or do they update dynamically?
edit: final edit.
{ symbol: "calendar", url: "https://nextcloud.MYDOMAIN.xyz/remote.php/dav/calendars/USER/personal/?export", user: "USER", pass: "PASSW", method: "basic", },
updated my config file to this and it is now working as expected. no idea why it wasnt before but i probably had something typed out incorrectly. thanks for the help
-
@BasicUser are you ok? can’t quite tell.
different cal.providers push updates at different times, and mm polls the calendar per the config
-
@sdetweil lol yes, all is working. it wasn’t updating when I downloaded the ics file and moved it to /default/calendar. I changed it to what I have in my most recent comment and that is working without issue.
-
-
@BasicUser I use calendar also with nextcloud.
I have not found a solution without writing my credantials in plain text but as here (only the calendars-part) it works:calendars: [ { symbol: "grin", color: "#FFAA00", url: "https://USER:PASSWORD@DOMAIN.TLD/nextcloud/remote.php/dav/calendars/CALENDAR-NAME/pers%c3%b6nlich?export" },
Change the capital into your needs
The link without the credentials you will get in nextcloud in Calendar-app behind the related calendar, pressing 3 dots and copy privat link.
Hope that will help.
-
I’m still struggeling. I have tried several versions of the url and with credentials in the url or as a parameter, nothing works and the MagicMirror shows: loading calendar…
The weird thing is that the URL itself works like a charm as long as I post it in a web browser. I do get an .ics file immediately.
So maybe if the url is correct, I do need to change some settings in nextcloud?
For example has the calendar to be public?My current working (in browser only) version is:
calendars: [ { symbol: "calendar-check", url: "https://USERNAME:PASSWORD@DOMAIN/remote.php/dav/calendars/USERNAME/persoenlich/?export", } ]
Any help?
-