2008-11-09 6 views
12

Существует a previous thread with this question и намекает на ответ, но я не мог заставить его работать.Обновление события в Outlook 2007 с файлом iCalendar

У меня есть файл ICS. Это validates. Это выглядит так:

BEGIN:VCALENDAR 
VERSION:2.0 
PRODID:-//WA//FRWEB//EN 
BEGIN:VEVENT 
UID:FRICAL201 
SEQUENCE:0 
DTSTAMP:20081108T151809Z 
DTSTART:20081109T121200 
SUMMARY:11/9/2008 12:12:00 PM TRIP FROM JFK AIRPORT (JFK) 
LOCATION:JFK AIRPORT (JFK) 
END:VEVENT 
END:VCALENDAR 

Я дважды щелкаю его, и он отлично переносится в Outlook 2007. Затем я дважды щелкните другой файл ICS, который выглядит следующим образом:

BEGIN:VCALENDAR 
VERSION:2.0 
PRODID:-//WA//FRWEB//EN 
BEGIN:VEVENT 
METHOD:REQUEST 
UID:FRICAL201 
SEQUENCE:1 
DTSTAMP:20081108T161809Z 
DTSTART:20081109T121300 
SUMMARY:11/9/2008 12:13:00 PM TRIP FROM JFK AIRPORT (JFK) 
LOCATION:JFK AIRPORT (JFK) 
END:VEVENT 
END:VCALENDAR 

Как explained in the rfc, то UID это же и порядковый номер один больше, поэтому я ожидаю, что перспективы обновить мою предыдущую запись событий, но все, что он делает, это вставить второй.

Как я могу сформулировать файл ICS, чтобы Outlook знал об обновлении события? Оригинальный плакат в потоке, на который я ссылался выше, сказал, что он ответил, чтобы он ответил МЕТОДОМ И ОРГАНИЗАТОРОМ, но по моему опыту METHOD не имеет никакого эффекта, а ОРГАНИЗАТОР вызывает нежелательное поведение, когда Outlook хочет отправить сообщение кому-то по электронной почте. Я просто хочу, чтобы он обновил календарь.

ответ

10

Я завладел Томом Картером, парнем, который начал оригинальную нить. У него был рабочий пример с просьбой, за которой последовала аннулирование. То, что я ошибался, было моим МЕТОДОМ внутри моего VEVENT, когда он должен был быть снаружи. Итак, вот рабочее обновление!

Оригинал:

BEGIN:VCALENDAR 
VERSION:2.0 
PRODID:-//WA//FRWEB//EN 
METHOD:REQUEST 
BEGIN:VEVENT 
UID:FRICAL201 
SEQUENCE:0 
DTSTAMP:20081108T151809Z 
ORGANIZER:[email protected] 
DTSTART:20081109T121200 
SUMMARY:11/9/2008 12:12:00 PM TRIP FROM JFK AIRPORT (JFK) 
LOCATION:JFK AIRPORT (JFK) 
END:VEVENT 
END:VCALENDAR 

Update: (! В правильном месте)

BEGIN:VCALENDAR 
VERSION:2.0 
PRODID:-//WA//FRWEB//EN 
METHOD:REQUEST 
BEGIN:VEVENT 
UID:FRICAL201 
SEQUENCE:1 
DTSTAMP:20081108T161809Z 
ORGANIZER:[email protected] 
DTSTART:20081109T121300 
SUMMARY:11/9/2008 12:13:00 PM TRIP FROM JFK AIRPORT (JFK) 
LOCATION:JFK AIRPORT (JFK) 
END:VEVENT 
END:VCALENDAR 

Все, что я сделал, это добавить метод запроса, и организатор.

+0

Я пытаюсь обновить весь календарь из 50 событий, которые были первоначально импортированы из файла ICS. У меня есть новый файл ICS со многими изменениями - как получить Outlook для обновления всего Календаря. Я каждый раз получаю совершенно новый календарь. Кстати, это хорошо работает в Google Calendars. (Это новый вопрос?) – 2016-06-21 23:14:18