ical4J:使 Outlook 约会信息和操作显示在电子邮件中

ical4J: make Outlook appointment info and actions display in emails

我正在使用 ical4j(3.0.1 版)向 Outlook 电子邮件地址 (Office 365) 发送电子邮件。这是我在电子邮件中看到的内容:

您可以看到 Calendar.ics 附件,单击向下箭头可以将活动添加到 Outlook 日历。这有效,但不如以下一个好。

当我在 Outlook 中为某人创建约会时,我可以直接在电子邮件中看到约会信息和操作按钮(接受等),如下所示。

如何通过 ical4j 实现?

更新 1:

由于 Arnaud 的意见,我通过添加以下行使我的代码工作:

icsCalendar.getProperties().add(Method.REQUEST); 

并更新此 link:

messageBodyPart.setDataHandler(new DataHandler(new ByteArrayDataSource(icsCalendar.toString(), "text/calendar; charset=\"utf-8\"; method=REQUEST"))); 

您的描述不包括 icalendar 流,因此无法检查邀请中是否存在所有必需属性。

假设 REQUEST 一切正常,那么您在构建电子邮件消息时必须遵循某些规则。参见 Multipart email with text and calendar: Outlook doesn't recognize ics