2009-12-08 49 views
4

我有一個.ics文件,我從我們的數據庫生成的,在iCal中正常工作,但在谷歌日曆中呈片狀。有時Google日曆會導入該文件,但它不會提取所有事件。谷歌日曆.ics導入標準

有沒有人對Google需要的必填字段有任何提示?我對此感到茫然,爲什麼有時它不會導入,或者爲什麼它不喜歡某些事件。有些日子,我們有3個事件,但谷歌只顯示1

搜索網上的其他地方並沒有真正的幫助,因爲它似乎大多數其他人有同樣的問題。

這裏是我的格式樣本:

BEGIN:VCALENDAR 
METHOD:PUBLISH 
X-WR-TIMEZONE:America/Los_Angeles 
CALSCALE:GREGORIAN 
VERSION:2.0 
PRODID:-//PUC Calendar// v2.0//EN 
BEGIN:VEVENT 
UID:31754826317 
TZID:America/Los_Angeles 
DTSTART:20091001T100000 
URL;VALUE=URI:http://www.puc.edu/news/calendar/events/dates/colloquy-dr-knight 
DTSTAMP:20091001T100000 
SUMMARY:Colloquy: Heather Knight 
DTEND:20091001T100000 
LOCATION:Sanctuary 
END:VEVENT 
END:VCALENDAR 

我們的.ics文件的URL是:http://www.puc.edu/news/calendar/puc.ics

回答

7

你的TZID看起來不正確。你應該包括他們在DTSTART和DTEND線路是這樣的:

DTSTART;TZID=Pacific/Honolulu:20110628T140000 
DTEND;TZID=Pacific/Honolulu:20110628T140000 

(注意:離開「Z」的關閉時間戳的結束,除非你的時間是祖魯時間= GMT)

你應該添加一個SEQUENCE:xxx,其中xxx是每次更新ics時都會增加的數字。例如。

SEQUENCE:0 

我還是設法得到這個工作(這是古怪的),並與從我的多個事件ics文件得到進口僅單一事件同樣的問題。最好的技巧(暗指其他地方)是從Google導出一個導出的ics文件,然後克隆它。

我結束了創建兩個單獨的ics文件生成器 - 一個用於iCal的(容易!),一個用於谷歌(硬)。 Outlook可能需要三分之一。

很快,您應該點擊下一個問題,即Google要求您爲ICS文件指定時區,並且每個事件都會使您的應用編碼變得更加複雜。 Apple iCal比較可讓您的應用程序發佈假定爲本地的「浮動時間」。

有一堆的ICS文件的驗證工具,你可以嘗試這樣一個可以真正的幫助......

http://icalvalid.cloudapp.net/

警告:文件通過此驗證工具仍不能與谷歌。谷歌應該真的創建它自己的ics驗證工具。

[等着看我有多少向下的箭頭代表得到這個職位!]

+0

這對我來說是一種驚人的幫助! +1非常感謝,... – 2013-05-03 17:24:39

1

我只是有類似的問題。

刪除UID或更改號碼似乎適用於我。 (我的vevents編號順序1,2,...)

0

我有一個類似的問題,

如果你想導入的ics文件到谷歌日曆,

你必須有不同的UID在多個事件

0

我的文件包含一個VFREEBUSY在第一個VEVENT之前阻止。刪除該塊允許我上傳它。

我不知道是否有該塊內或如果不支持整個塊的問題,但該文件是經過驗證的icalendar.org