I'm creating a iCal subscription calendar which is all working as expected; except I can't seem to specify seemingly basic things such as a default name to suggest to the client for the calendar, a description, and how often it should refresh.
I did find this specification revision: https://datatracker.ietf.org/doc/html/draft-daboo-icalendar-extensions-06
It does suggest that I can simply pass in the fields I want. Having done this and with the top of the ics file looking like this:
BEGIN:VCALENDAR VERSION:2.0 PRODID:-//My Company//NONSGML Event Calendar//EN URL:http://my.calendar/url NAME:My Calendar Name DESCRIPTION:A description of my calendar TIMEZONE-ID:Europe/London REFRESH-INTERVAL;VALUE=DURATION:P1D COLOR:34:50:105 CALSCALE:GREGORIAN METHOD:PUBLISH
I'm simply finding that whilst no device/app that I've tried rejects the calendar, they are all ignoring the properties. I've used Outlook 2010, an iPhone on iOS 6, and Google Calendar. Outlook claims to respect some sort of refresh interval in the file, but when I subscribe my calendar - it says it's unspecified.
So the question is are these properties supported, or do I need to specify them as something else for each different client, or am I just plain out of luck?
ics file, you get a snapshot of the events in the calendar at the time of import. Your calendar doesn't refresh the imported events automatically -- even if the calendar's owner makes an update.
ics format, also known as iCalendar, is a common bond between these and many other calendar applications, and no conversion is required. Calendar sharing through iCalendar is built in to the current versions of both Outlook and iCal.
Basic Definition Property Name PRODID Purpose. This property specifies the identifier for the product that created the iCalendar object.
It turns out the answer was hiding in plain sight. The properties above are a draft proposal at the moment and unsupported by anything I tried. It's probably a good bet to include them in your calendar for the future - but for it to work now as well, do it like this:
BEGIN:VCALENDAR VERSION:2.0 PRODID:-//My Company//NONSGML Event Calendar//EN URL:http://my.calendar/url NAME:My Calendar Name X-WR-CALNAME:My Calendar Name DESCRIPTION:A description of my calendar X-WR-CALDESC:A description of my calendar TIMEZONE-ID:Europe/London X-WR-TIMEZONE:Europe/London REFRESH-INTERVAL;VALUE=DURATION:PT12H X-PUBLISHED-TTL:PT12H COLOR:34:50:105 CALSCALE:GREGORIAN METHOD:PUBLISH
The actual working properties at the moment being:
X-WR-CALNAME X-WR-CALDESC X-WR-TIMEZONE X-PUBLISHED-TTL
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With