michael-maltsev / cheese-fork

A scheduling helper web application for Technion students
https://cheesefork.cf
GNU General Public License v3.0
50 stars 13 forks source link

Add a refresh interval or TTL to the ics files #13

Closed NeatNit closed 4 years ago

NeatNit commented 4 years ago

Loving the new hosted ICS support!

However, I'm having trouble getting my client (Outlook) to update from the server. I did some looking around, and the ICS file should have X-PUBLISHED-TTL:PT1H, for example, to tell clients that it should be refreshed every 1 hour. This extended field was apparently used mainly by Microsoft, and is not part of the spec (as noted by the X- prefix).

Alternatively, according to this, REFRESH-INTERVAL;VALUE=DURATION:PT1H is another way to accomplish the same thing, and was standardized fairly recently (2016).

From what I can tell, many clients don't even pay these fields any attention unfortunately.. But I think it'd still be better to have them in.

Edit: it also might be a good idea to add a Name property to the file to make a default calendar title - perhaps: Name:חורף 2019-2020

michael-maltsev commented 4 years ago

Thanks for the feedback!

the ICS file should have X-PUBLISHED-TTL:PT1H

Added.

REFRESH-INTERVAL;VALUE=DURATION:PT1H is another way to accomplish the same thing

Added too. The documentation says:

This property specifies a suggested minimum interval for polling for changes of the calendar data from the original source of that data.

So it shouldn't make the refresh rate faster. But who knows how clients interpret it. Most probably just ignore it as you said.

it also might be a good idea to add a Name property

Added as well. Unfortunately Google Calendar doesn't seem to care about this property, but maybe other clients care.

P.S. Nice avatar! The only thing that's missing is a fork ;-)