iCal outlook电子邮件兼容性问题



我正在尝试生成具有多个VEVENTs的iCal文件。我想实现一个.ics-文件,其中有多个约会。重要的是,这些不是一整天的约会。到目前为止,我生成的文件看起来像这样:

BEGIN:VCALENDAR
VERSION:2.0
PRODID: *** CENSORED ***
METHOD:REQUEST
X-MS-OLK-FORCEINSPECTOROPEN:1
BEGIN:VEVENT
UID:uuid-e4a9084f-91ea-4bc7-9bc0-3b2d6bec9030
DTSTART:20211122T070000Z
SEQUENCE:1
TRANSP:TRANSPARENT
STATUS:CONFIRMED
DTEND:20211122T160000Z
SUMMARY: TEXT
ATTENDEE;CN=FirstName_LastName;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;RSVP=FALSE;PA
RTSTAT=NEEDS-ACTION:MAILTO:*** CENSORED ***
CLASS:PUBLIC
DESCRIPTION: TEXT
ORGANIZER;CN=*** CENSORED ***:MAILTO:*** CENSORED ***
X-MICROSOFT-CDO-BUSYSTATUS:FREE
X-MICROSOFT-CDO-INTENDEDSTATUS:FREE
DTSTAMP:20211027T141024Z
LAST-MODIFIED:20211027T141024Z
END:VEVENT
BEGIN:VEVENT
UID:uuid-e4a9084f-91ea-4bc7-9bc0-3b2d6bec9030
DTSTART:20211123T070000Z
SEQUENCE:1
TRANSP:TRANSPARENT
STATUS:CONFIRMED
DTEND:20211123T160000Z
SUMMARY: TEXT
ATTENDEE;CN=FirstName_LastName;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;RSVP=FALSE;PA
RTSTAT=NEEDS-ACTION:MAILTO:*** CENSORED ***
CLASS:PUBLIC
DESCRIPTION: TEXT
ORGANIZER;CN=*** CENSORED ***:MAILTO:*** CENSORED ***
X-MICROSOFT-CDO-BUSYSTATUS:FREE
X-MICROSOFT-CDO-INTENDEDSTATUS:FREE
DTSTAMP:20211027T141024Z
LAST-MODIFIED:20211027T141024Z
END:VEVENT
END:VCALENDAR

到目前为止一切顺利。当我将这个ical文件导入Google Calendar甚至Outlook时,两个约会都被正确添加了。问题是当我附加.ics-文件到电子邮件。Google Mail将附件识别为约会,并允许我在电子邮件中接受/拒绝它。

当我在Outlook中打开完全相同的电子邮件时,Outlook甚至不将附件识别为约会。我也有问题,只有一个VEVENT,第一个,被添加到outlook日历。

Outlook的iCal附件有什么特别之处吗?我能做些什么来提高兼容性吗?

一个METHOD:REQUEST中的多个事件只有在它们具有单个UID时才被允许(即它们是同一个多实例事件的一部分)。看到的:https://datatracker.ietf.org/doc/html/rfc2446 section-3.2.2

如果事件在概念上是相关的,您可以考虑发出相同的UID并使用RDATE https://datatracker.ietf.org/doc/html/rfc5545#section-3.8.5.2to区分不同的实例。不管他们是不是整天都在。

可以导入您发现的多个事件。
如果有多个独立的事件,而你不想使用RDATE,你也可以考虑使用METHOD:PUBLISH并让用户订阅他们自己的个人约会日历。

相关内容

  • 没有找到相关文章

最新更新