I need to write a script for publishing .ICS files. I\'ve read that it\'s difficult to do this right, either because some calendar clients are buggy (lots of people claim Go
You've heard right - it is not easy. Easy to offer very basic ics support, not that easy to offer complete support to what an ics provider may output; especially wrt recurrences, exceptions, modifications and yes timezones.
I have been working on my ics publisher for a long long time, it is pretty stable now. I have made some notes along the way.
See http://icalevents.com/category/notes/. Also the timezone tag on my site you may find helpful.
In particular, if you are getting into recurring events, the " ical cheatsheet" is worth a look. I rewrote my recurrence engine after working through that.
Google I have not found to be a problem, it is the smaller players, particularly when they start doing slightly non-standard things (Zimbra/Pc based tz's etc).
Although Google can be slow to update (ie someone updates their google calendar, you refetch the ics file (definitely not from your cache) and it does not have the update - can take an hour or so. This was no good for our school when doing their newsletter - they do a print run too from the website. SO I have resorted to creating the other side now - our own ics editor in wp.
There are various free ical scripts out there - why roll your own ? Keen for a challenge?