【问题标题】:How can I avoid generating a new "Untitled" calendar when publishing multiple icalendar events?发布多个日历事件时,如何避免生成新的“无标题”日历?
【发布时间】:2021-10-23 20:02:25
【问题描述】:

我正在使用 ical4j 生成包含 2 个事件的日历。我已经生成了以下 ics 文件:

BEGIN:VCALENDAR
PRODID:-//Events Calendar//iCal4j 1.0//EN
CALSCALE:GREGORIAN
VERSION:2.0
METHOD:PUBLISH
BEGIN:VEVENT
DTSTAMP:20210823T123718Z
DTSTART:20210810T090000
DTEND:20210810T100000
SUMMARY:Test event 1
UID:b9b49cb5-b207-4faa-9fb8-a435b455b3b1
END:VEVENT
BEGIN:VEVENT
DTSTAMP:20210823T123718Z
DTSTART:20210809T090000
DTEND:20210809T100000
SUMMARY:Test event 2
UID:46b04290-75b1-4651-a5b3-5a0b2ace3ad5
END:VEVENT
END:VCALENDAR

当我在 Outlook 中打开它时,它会在“其他日历”部分创建一个名为“无标题”的新日历,并添加两个事件。

如何确保将事件添加到用户的默认/主日历中?

【问题讨论】:

    标签: java outlook icalendar ical4j


    【解决方案1】:

    可能是 Outlook 对待具有多个事件(即具有不同 UID 值的事件)的日历对象与单个事件日历对象不同。

    请注意,这完全取决于 CUA 的实现,所以我不能 100% 确定,但我建议尝试为每个不同的事件作为单独的日历对象发送(不确定您是否可以在一封电子邮件中附加多个或需要单独交付)。

    您可能还想尝试在同一个附件中发送它们,如下所示:

    BEGIN:VCALENDAR
    PRODID:-//Events Calendar//iCal4j 1.0//EN
    CALSCALE:GREGORIAN
    VERSION:2.0
    METHOD:PUBLISH
    BEGIN:VEVENT
    DTSTAMP:20210823T123718Z
    DTSTART:20210810T090000
    DTEND:20210810T100000
    SUMMARY:Test event 1
    UID:b9b49cb5-b207-4faa-9fb8-a435b455b3b1
    END:VEVENT
    END:VCALENDAR
    
    BEGIN:VCALENDAR
    PRODID:-//Events Calendar//iCal4j 1.0//EN
    CALSCALE:GREGORIAN
    VERSION:2.0
    METHOD:PUBLISH
    BEGIN:VEVENT
    DTSTAMP:20210823T123718Z
    DTSTART:20210809T090000
    DTEND:20210809T100000
    SUMMARY:Test event 2
    UID:46b04290-75b1-4651-a5b3-5a0b2ace3ad5
    END:VEVENT
    END:VCALENDAR
    

    【讨论】:

    • 场景是我正在尝试为活动网站动态创建 ics 文件,成员可以在其中下载文件并将它们添加到他们的日历中。我已经尝试过您的建议,Outlook 仍然会创建一个包含 2 个事件的“虚拟”日历。我尝试将它们分成两个单独的文件,这似乎可行。
    • 显然,这个用例似乎不受 MicroSoft 支持。看来用户需要下载 ics 文件并将其导入 Outlook:answers.microsoft.com/en-us/msoffice/forum/all/…
    • 是的,我见过的所有为导入生成事件的示例都为每个事件提供了一个 *.ics 文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多