Read the statement by Michael Teeuw here.
MMM-Calendar always shows 23:59 if showEndTime: True
-
@sdetweil
As I wondered if the format of an 3-weekly event in ical has an issue, I set up a 3-weekly event in Google calendar and compared the files:BEGIN:VEVENT DTSTART;VALUE=DATE:20201005 DTEND;VALUE=DATE:20201006 RRULE:FREQ=WEEKLY;INTERVAL=3;BYDAY=MO DTSTAMP:20201005T195008Z UID:835F136F-35A4-44C6-AA16-481F02E5A2D1 CREATED:20201005T120626Z DESCRIPTION: LAST-MODIFIED:20201005T120626Z LOCATION: SEQUENCE:0 STATUS:CONFIRMED SUMMARY:3-weekly whole day test TRANSP:OPAQUE END:VEVENT
Event has been set to 5th of October and DTEND is also one day later than DTSTART for a whole-day-event and it also shows a BYDAY, that means it’s absolutely identical to the ical file…
-
@SwissChemist like I said, bug in the repeating rule processor, RRULE. not our code.
Remove the byday, or the second day
-
@sdetweil
Sorry for asking:
If I would import a calendar file from a text file, it would be easy to do the correction (change DTEND or remove BYDAY) in any text editor.
But how to proceed if I directly import data from *.ics link? Is there any ‘hack’ I could apply?
Thanks very much for your patience… All other data are really great now! And somehow I rely on a 3-weekly whole day, as we use to have 3-week iterations in our SCRUM process… -
@SwissChemist you could create a batch script, run off cron, or started w pm2 (and use sleep to wait)
curl to download the ics,
sed to fix the file,
and put it into the calendar module folder, and
config mm to use it from there -
@sdetweil
Thanks very much for your help! I highly appreciate it! -
@SwissChemist my pleasure… here is how I config MM to use your file
(note my mm is on a different port)calendars: [ { url: "http://localhost:8090/modules/default/calendar/school-timetable.ics" } ]
-
@sdetweil
Thanks for the example. Looks like a next project for me… :thumbs_up: -
could look something like this
#!/bin/bash fn=somecal.ics while true do # get the file from server curl -sL url_of_remote_ics >$fn # remove the trailing byday=??(end of line), file inline, so changed sed -i -e "s/;BYDAY=.*$//g" $fn # copy the modified file to the calendar folder cp $fn ~/MagicMirror/modules/default/calendar # sleep til next cycle sleep ??? (seconds til next curl) done
have to make this executable with chmod +x script_filename
then
pm2 start script_filename
pm2 saveif you use a json config file ui can give a pretty name of the script… see the installers/pm2_magicmirror.json
pm2 start jsonfile
pm2 save -
@SwissChemist I submitted this issue to the RRULE repo
https://github.com/jakubroztocil/rrule/issues/426 -
@sdetweil
Wow, thank you so much for your great support!