I am working on a project where we send appointment invites to various users. It has all the normal bells and whistles that most calendar apps have. Our user base is mostly Outlook users, but we do have some who use Gmail and Yahoo and others. Most of what we have works, but there are a few nuances that don't work or only work for certain mail readers. Among the issues we have are:
- All day events not displaying correctly (It blocks out the whole day instead of having a notice at the top of the day)
- Meeting cancellations not being honored (the original meeting shows up on the calendar, but the cancellation request is not recognized by the mail reader. For example, if I create an event and send it to both a Hotmail and Gmail user, that event is recognized by both. If I send a cancelation for that event to both Hotmail and Gmail, Hotmail will properly remove the event but Gmail says the cancelation email is in an unrecognizable format).
- All day events in different timezones span multiple days (due to what I assume is a timezone adjustment)
I'm able to fix every one of these (and other issues) for myself. But, when I try to fix them all, I break something somewhere else. Also, what I fix for myself might not work for another user who has the same email reader.
I have gone online and tried to find a guide for creating ICS files. Most places say to create a calendar event in one of the main mail readers, and then look at the ICS file it generates. I've done that and have been able to get partial success, but once again, not all fixes work for everyone.
I'm assuming the individual mail settings for each user to at least be part of the problem.
I am going in circles at this point. I have an idea on how a lot of the fields in the ICS file work and what they do. But there are some I don't understand, and I'm not sure if different mail readers intepret them differently.
I have checked here and other sites for some insights on how to fix these issues, but I must say, I get a lot of conflicting information.
I've sent calendar invites from both my personal Hotmail and Gmail accounts. Everything I send from those mail readers work perfectly fine. When I try to incorporate the ICS files generated into my project, I get some issues. That leads me to believe that 1) I can find a solution that works for the major mail readers and 2) That I have a lack of understanding on some fields in the ICS file and must make a change (though I don't know what that change is).
So I'm not asking for a specific fix (although I can post what I have and try to tweak from there.). What I really need is a good guide that gives some insight into how and what these fields do. I've looked at the RFC for ICS files...that's 170 pages, and tells about specific fields, but not about the process in general.
One other thing, I have seen ICS and iCalendar used rather interchangeably. Is there an important distinction?