文件.ics删除Outlook无法识别的约会

时间:2019-07-18 10:22:30

标签: icalendar

当用户在我的应用程序上创建约会并且Outlook定期识别文件ics时,我会发送一个icalendar。 如果用户在我的应用程序上删除约会,我会发送带有取消符号的icalendar,但无法识别.ics文件(不支持日历message.ics)

在Outlook上创建约会的日历(正常识别):

BEGIN:VCALENDAR 
PRODID:-//Schedule a Meeting
VERSION:2.0
METHOD:CANCEL
BEGIN:VEVENT
DTSTART:20190718T033000Z
DTSTAMP:20190718T113347Z
DTEND:20190718T040000Z
LOCATION: 
UID:Tesis10910
DESCRIPTION:
X-ALT-DESC;FMTTYPE=text/html:
SUMMARY:
STATUS:CANCELLED
ORGANIZER:MAILTO:fc@newteamsoftware.com
ATTENDEE;CN="fc@newteamsoftware.com";ROLE=REQ-PARTICIPANT;RSVP=TRUE:mailto:fc@newteamsoftware.com
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR

删除约会的日历:

BEGIN:VCALENDAR
PRODID:-//Schedule a Meeting
VERSION:2.0
METHOD:CANCEL
BEGIN:VEVENT
DTSTART:20190718T033000Z
DTSTAMP:20190718T113347Z
DTEND:20190718T040000Z
LOCATION: 
UID:Tesis10911
DESCRIPTION:
X-ALT-DESC;FMTTYPE=text/html:
SUMMARY:
STATUS:CANCELLED
ORGANIZER:MAILTO:fc@newteamsoftware.com
ATTENDEE;CN="fc@newteamsoftware.com";ROLE=REQ-PARTICIPANT;RSVP=TRUE:mailto:fc@newteamsoftware.com
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR

1 个答案:

答案 0 :(得分:1)

几件事:

  • 不知道是否有意,但您的第一条iMIP消息已经具有METHOD:CANCEL而不是REQUEST。
  • 您的第二个iMIP消息具有不同的UID。如果这确实是您要发送的邮件,则客户端通常不会将其识别为取消了第一条消息。
  • 您的第二条消息缺少具有增加值的SEQUENCE属性。参见https://tools.ietf.org/html/rfc5546#section-3.2.5
  • 添加VALARM组件毫无意义。客户将永远忽略它。