События из iCal Feed URL отображаются в календаре Google как «Занят» - PullRequest
3 голосов
/ 08 ноября 2011

Я пытаюсь просмотреть форматированный календарь, созданный моей системой, в Календаре Google.Я делаю это с помощью функции «Добавить по URL» Календаря Google в раскрывающемся меню «Другие календари» и предоставляю URL-адрес динамически генерируемого файла ics.

Календарь Google успешно считывает события изканал и создает календарь, однако все события просто отображаются как «Занят» без каких-либо подробностей (сводка, описание, т. д.), кроме времени события.У событий также есть значок «Приватный» значок блокировки в представлении календаря Google.

Я просмотрел содержимое сгенерированного файла iCal и не вижу причин, по которым Календарь Google отображал события какЧастный.Каждый VEVENT имеет свойство CLASS, установленное на «PUBLIC».Я также подписался на тот же URL-адрес в приложении OSX iCal, и события отлично отображаются со всеми подробностями.

Ниже приведен сгенерированный файл 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 ]

2 голосов
/ 08 ноября 2011

Ну, похоже, я исправил проблему. URL календаря, который я предоставил GCal, не заканчивался именем файла (я использую среду PHP с переписыванием URL). Я обновил URL-адрес, добавив к нему «/calendar.ics» и подписался на URL-адрес в GCal, и теперь все события отображаются нормально, показывая все детали.

2 голосов
/ 21 января 2014

VEVENTS помечены как TRANSP:OPAQUE. Согласно RCF 5545 это означает, что они блокируют элементы для поиска по времени.

Чтобы они не блокировались, измените его на TRANSP:TRANSPARENT.

0 голосов
/ 08 ноября 2011

Я протестировал тот же контент, и он, кажется, хорошо отображается в моем Календаре Google. Я добавил его, используя опцию «Добавить по URL» в разделе «Другие календари». Все детали видны, никаких замков или других странностей для меня не видно.

Похоже, вы динамически генерируете контент по требованию. Вы пробовали просто выгрузить его в статический файл и добавить его таким образом - не как постоянное решение, просто чтобы увидеть, имеет ли это значение для GCal?

Возможно, динамическая генерация календарных данных учитывает запрашивающую сторону и изменяет видимость событий на этой основе. Это может легко иметь место, если, например, сервер календаря находится в вашей интрасети.

...