#php #calendar #gmail #icalendar
#php #Календарь #gmail #icalendar
Вопрос:
В настоящее время я сталкиваюсь с некоторыми проблемами при экспорте данных в календарь Google с использованием опции «Импортировать URL». Мой формат iCal следующий (я скрыл часть информации в целях конфиденциальности:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:amp;<-//maskedforprivacy//maskedforprivacy//NLamp;>
X-WR-CALNAME: maskedforprivacy
METHOD:PUBLISH
BEGIN:VTIMEZONE
TZID:Europe/Amsterdam
BEGIN:DAYLIGHT
TZOFFSETFROM: 0100
TZOFFSETTO: 0200
DTSTART:19810329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
TZNAME:CEST
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM: 0200
TZOFFSETTO: 0100
DTSTART:19961027T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
TZNAME:CET
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:20190401T101550-1143242585-maskedforprivacy
DTSTAMP:20190401T101550
DTSTART;TZID=Europe/Amsterdam:20190104T080000
DTEND;TZID=Europe/Amsterdam:20190104T170000
SUMMARY: ZLU 60 jaar - Medewerker op- en afbouw
LOCATION: maskedforprivacy - Europaplein -
END:VEVENT
BEGIN:VEVENT
UID:20190401T101550-1227247949-maskedforprivacy
DTSTAMP:20190401T101550
DTSTART;TZID=Europe/Amsterdam:20190105T160000
DTEND;TZID=Europe/Amsterdam:20190105T220000
SUMMARY: Nieuwjaarsconcert - Duty Manager
LOCATION: maskedforprivacy - Klinkertstraat -
END:VEVENT
BEGIN:VEVENT
UID:20190401T101550-698202101-maskedforprivacy
DTSTAMP:20190401T101550
DTSTART;TZID=Europe/Amsterdam:20190206T090000
DTEND;TZID=Europe/Amsterdam:20190206T101500
SUMMARY: Levering maaltijden - Medewerker logistiek
LOCATION: maskedforprivacy - Wiebachstraat -
END:VEVENT
BEGIN:VEVENT
UID:20190401T101550-549715553-maskedforprivacy
DTSTAMP:20190401T101550
DTSTART;TZID=Europe/Amsterdam:20000101T120000
DTEND;TZID=Europe/Amsterdam:20000101T130000
SUMMARY: Standaard documenten - Partymanager
LOCATION: maskedforprivacy - Klinkertstraat -
END:VEVENT
END:VCALENDAR
Я пытался экспортировать его со следующими заголовками и без них:
header("Content-Type: text/calendar");
header("Content-Disposition: inline; filename=EPCalender.ics");
Проверка формата с помощью https://icalendar.org/validator.html#results возвращает результат успешного выполнения без каких-либо предупреждений. Импорт iCal с использованием URL в Outlook работает идеально. Есть ли какое-либо свойство, которое я неправильно настраиваю для календаря Google, чтобы запретить импорт событий?
Большое спасибо!
Ответ №1:
1) Я использую Content-Disposition: attachment; для моих подписных URL-адресов ics.
2) Примечание: «добавить по URL» — это подписка, а не импорт. Импорт — это одноразовое действие, которое может работать с не pulic URL, если кто-то вошел в систему. Для подписки URL-адрес должен быть общедоступным без входа в систему.