iCalendar .ics在iOS上接受/拒绝

我已经创build了一个PHP脚本,发出iCalendar事件邀请(基于RFC 5545 )。 一切正常,但在iPhone(iOS 4.2.1)和iPad(iOS 5.1)我没有select接受/拒绝事件(它出现作为一个MIME-attachment.ics),只是把它添加到我的日历。 在其他邮件客户端(outlook,thunderbird,gmail),这个按预期工作。

iOS的邮件客户端是否支持发送这样的响应? 如果是的话,是否有人知道我应该指定什么做这项工作?

以下是ics文件的示例内容:

BEGIN:VCALENDAR PRODID:-//Some organization//some application//EN VERSION:2.0 METHOD:REQUEST BEGIN:VEVENT UID:20120920T150350Z-70@http://localhost/www/ CREATED:20120920T150350Z DTSTAMP:20120921T080800Z DTSTART:20120921T080800Z DTEND:20120922T060800Z DESCRIPTION:Please attend this sample meeting SUMMARY:Invitation to attend training LOCATION:Earth ATTENDEE;RSVP=TRUE:mailto:periklis@example.com ORGANIZER;CN=periklis@example.com:mailto:periklis@example.com LAST-MODIFIED:20120921T080800Z PRIORITY:5 SEQUENCE:0 STATUS:CONFIRMED TRANSP:TRANSPARENT END:VEVENT END:VCALENDAR 

仔细阅读RFC后,我使用了这个工作:

 BEGIN:VCALENDAR PRODID:-//Some organization//some application//EN VERSION:2.0 METHOD:REQUEST BEGIN:VEVENT UID:20120925T072912Z-140@http://localhost/www/ CREATED:20120925T072912Z DTSTAMP:20120922T090500Z DTSTART:20120922T090500Z DTEND:20120923T090500Z DESCRIPTION:Please attend this sample meeting SUMMARY:Invitation to attend training LOCATION:Earth ATTENDEE;RSVP=TRUE:mailto:periklis@example.com ORGANIZER;CN=periklis@example.com:mailto:periklis@example.com LAST-MODIFIED:20120922T090500Z PRIORITY:5 SEQUENCE:0 STATUS:CONFIRMED TRANSP:TRANSPARENT END:VEVENT END:VCALENDAR 

还值得一提的是,上面的行必须用\ r \ n分隔。 所以我将每行分配给一个数组成员,然后使数组崩溃:

 $message[]='BEGIN:VCALENDAR'; $message[]='PRODID:-//Some organization//some application//EN'; [...] $message[]='END:VCALENDAR'; $message = implode("\r\n", $message);