首页 文章

来自iCal供稿网址的事件在Google日历中显示为“忙碌”

提问于
浏览
3

我正在尝试查看我的系统在Google日历中生成的格式化日历Feed . 我是通过Google日历的“其他日历”下拉菜单中的“按网址添加”功能,并将URL提供给动态生成的文件 .

Google日历会成功读取Feed中的事件并创建日历,但所有事件都显示为“忙碌”,除了活动时间之外没有任何详细信息(摘要,说明等) . 这些活动在Google日历视图中还有一个“私人”锁定图标 .

我查看了生成的iCal文件的内容,但我没有看到为什么Google Calendar会将事件呈现为私有的原因 . 每个VEVENT都将其CLASS属性设置为“PUBLIC” . 我还在OSX的iCal应用程序中订阅了相同的URL,并且事件显示完美,显示了所有详细信息 .

下面是生成的ical文件(删除了敏感信息):

BEGIN:VCALENDAR
PRODID:-//My Calendar//iCal Class MIMEDIR//EN
VERSION:2.0
METHOD:REQUEST
X-WR-CALNAME:Joe Smith
BEGIN:VEVENT
DTSTART:20111124T050000Z
DTEND:20111124T050000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:ToDos_82
DTSTAMP:20111108T143800Z
DESCRIPTION;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:Quisque convallis elementum dui at tristique.
SUMMARY;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:Test Event
PRIORITY:0
CLASS:PUBLIC
STATUS:CONFIRMED
END:VEVENT
BEGIN:VEVENT
DTSTART:20111124T050000Z
DTEND:20111124T050000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:ToDos_83
DTSTAMP:20111108T143800Z
DESCRIPTION;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:Proin venenatis ullamcorper dui quis porttitor. 
SUMMARY;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:Another Test Event
PRIORITY:0
CLASS:PUBLIC
STATUS:CONFIRMED
END:VEVENT
BEGIN:VEVENT
DTSTART:20111108T050000Z
DTEND:20111111T050000Z
LOCATION;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:CLS HQ
TRANSP:OPAQUE
SEQUENCE:0
UID:Events_10
DTSTAMP:20111108T143800Z
DESCRIPTION;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:Doing some more testing here
SUMMARY;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:Yet Another Test Event
PRIORITY:0
CLASS:PUBLIC
STATUS:CONFIRMED
END:VEVENT
END:VCALENDAR

3 回答

  • 0

    我测试了相同的内容,它似乎在我的Google日历中显示得很好 . 我使用“其他日历”下的“按网址添加”选项添加了它 . 所有细节都是可见的,没有显示锁或其他奇怪的东西 .

    听起来您正在按需动态生成内容 . 您是否尝试将其转储到静态文件并以这种方式添加 - 而不是作为永久解决方案,只是为了看看这是否会对GCal产生影响?

    可能是日历数据的动态生成考虑了请求者并且在此基础上改变了事件可见性 . 例如,如果日历服务器位于Intranet上,则很容易出现这种情况 .

  • 2

    VEVENTS 标记为 TRANSP:OPAQUE . 根据RCF 5545,这意味着它们是阻止时间搜索的元素 .

    要使它们无阻塞,请将其更改为 TRANSP:TRANSPARENT .

  • 2

    好吧,我似乎已经解决了这个问题 . 我提供给GCal的日历的URL没有以文件名结尾(我使用带有URL重写的PHP框架) . 我更新了URL,将“/calendar.ics”附加到它并订阅了GCal中的URL,现在所有事件似乎都显示正常,显示所有细节 .

相关问题