Question

Je suis de la génération ICalendar (.ics) des fichiers.

À l'aide de l'UID et le champs de SÉQUENCE que je peux mettre à jour des événements dans Google Agenda et le Calendrier Windows MAIS PAS dans MS Outlook 2007, il a juste crée un deuxième événement

Comment puis-je faire pour Outlook ?

Merci

Tom

Était-ce utile?

La solution

J'ai continué à faire quelques tests et ont réussi à obtenir de l'Outlook pour mettre à jour et annuler les événements basés sur l' .cs fichier.

Outlook semble en fait pour répondre aux règles définies dans RFC 2446

En résumé, vous devez spécifier

METHOD:REQUEST et ORGANIZER:xxxxxxxx

en plus UID:et SEQUENCE:

Pour une annulation, vous devez spécifier METHOD:CANCEL

Demande/Mise À Jour Exemple

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//SYFADIS//PORTAIL FORMATION//FR
METHOD:REQUEST
BEGIN:VEVENT
UID:TS_229377_MS_262145@syfadis.com
SEQUENCE:5
DTSTAMP:20081106T154911Z
ORGANIZER:catalog@syfadis.com
DTSTART:20081113T164907
DTEND:20081115T170000
SUMMARY:TestTraining
STATUS:CONFIRMED
END:VEVENT
END:VCALENDAR

Annuler Exemple;

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//SYFADIS//PORTAIL FORMATION//FR
METHOD:CANCEL
BEGIN:VEVENT
UID:TS_229377_MS_262145@syfadis.com
SEQUENCE:7
DTSTAMP:20081106T154916Z
ORGANIZER:catalog@syfadis.com
DTSTART:20081113T164907
SUMMARY:TestTraining
STATUS:CANCELLED
END:VEVENT
END:VCALENDAR

Autres conseils

J'ai eu une prise de Tom Carter, la personne.Il avait un exemple de travail avec une demande suivie par une annulation.Ce que j'avais mal a ma MÉTHODE était à l'intérieur de mon VEVENT quand il aurait dû être à l'extérieur.Voici donc un travail de mise à jour!

Origine:

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

Mise à jour:

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

Je me suis contenté d'ajouter la méthode de la requête (dans le bon spot!), et l'un des organisateurs.

J'utilise outlook 2003 (à partir de la lecture des posts, 2007 semble se comporter de la même manière) et vous avez besoin de faire clairement la distinction entre le comportement de l'explicite importation de fichier d'un fichier ics et de l'implicite lors de l'importation d'un fichier ics est 'double clic'.

Sur les Perspectives de menu Fichier / Importer et Exporter ...Outlook vous permettra de charger autant de VEVENT les entrées sont dans le fichier, et aucun montant de changer l'UID: SÉQUENCE:ou DTSTAMP:évolution des valeurs de cela, j'.e.si vous modifiez les données et réimportez-vous simplement obtenir un double des bulletins de participation.

Si vous double-cliquez sur un fichier ics traite le premier VEVENT entrée seulement.Toutefois, il reconnaît l'UID et, si le DTSTAMP:est plus tard (la SÉQUENCE peut être le même mais pas plus bas) il vous sera demandé et il mettra à jour l'événement dans votre calendrier.

BEGIN:VCALENDAR
VERSION:2.0
PRODID:www.membership-services.net
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20090126T210000
DTEND:20090126T220000
SUMMARY:Avondale - Thameside Away Game vs Croydon
LOCATION:Whitgift School
DESCRIPTION:http://maps.google.co.uk/maps?f=q&hl=en&geocode=&q=CR2+6YT 
UID:AWPC_8
SEQUENCE:0
DTSTAMP:20090123T112600
END:VEVENT
BEGIN:VEVENT
DTSTART:20090202T213000
DTEND:20090202T223000
SUMMARY:Avondale - Thameside Home Game vs Orcas
LOCATION:Putney
DESCRIPTION:http://maps.google.co.uk/maps?f=q&source=s_q&hl=en&ie=UTF8&ll=51.4635,-0.2285&spn=0.005,0.009613&t=h&z=17&iwloc=lyrftr:w2t.90,0x48760f04a04b1801:0x49ebf12503a5d5a9,51.463459,-0.228674 
UID:AWPC_10
SEQUENCE:0
DTSTAMP:20090123T112600
END:VEVENT
END:VCALENDAR

ajouter ceci à votre fichier ICS

X-WR-RELCALID:MyCal123   

où MyCal123 est un identifiant unique pour votre calendrier.

En ajoutant cette ligne dans un fichier ICS tout le calendrier est mis à jour (après une invite dans Outlook).Vous n'avez même pas besoin de changer le DTSTAMP ou de la SÉQUENCE ou de l'ORGANISATEUR et de la MÉTHODE:PUBLIER est très bien pour la mise à jour.Juste mettre à jour les détails de l'événement, double-cliquez sur l'ICS et le calendrier de mise à jour.Notez que cela fonctionne aussi très bien si vous avez publié le calendrier et a fourni une URL pour les personnes à voir.Ils ont juste besoin de cliquer sur "actualiser" après environ 2 minutes, et il sera également obtenir la mise à jour.

Merci à David Bjørnhart de souligner ce point: ICal import crée un nouveau calendrier Lors de l'ouverture du fichier ics

Je suis l'aide de l'Entourage, ce qui peut ne pas correspondre exactement avec le comportement que vous avez vu, mais j'espère que cela aide.

À l'aide de la iCalendar de votre réponse, Entourage ne serait même pas importer les données.En utilisant un fichier, je l'ai eu à importer, puis mettre à jour correctement.En comparant les deux fichiers, les seules différences structurelles sont comme suit:

  • Mon bon de ne pas disposer d'un VERSION élément
  • Mon bon de ne pas disposer d'un PRODID élément
  • Mon bon de ne pas disposer d'un STATUS élément
  • Mon bon de ne pas disposer d'un SEQUENCE élément

Depuis le support de Microsoft pour ouvrir des normes tend à être, je vous suggère d'essayer sans le VERSION info.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top