[PHP] vCalendar overschrijven

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • jsiegmund
  • Registratie: Januari 2002
  • Laatst online: 19-09 08:48
Ik maak gebruik van vCalendars om klanten de mogelijkheid te geven agenda items te kopieren naar hun eigen Outlook agenda, dat werkt op zich prima. Nu is het zo dat er bij een kleine wijziging het vCalendar bestand opnieuw gedownload en geimporteerd wordt. De nieuwe afspraak verschijnt dan naast de oude, en niet in plaats van. De klant moet dan dus eerst de oude afspraak handmatig verwijderen; niet handig.

Is er een manier om Outlook aan z'n verstand te peuteren dat een afspraak overschreven moet worden i.p.v. een nieuwe ernaast? Heb gezocht maar kan (nog) niets vinden wat erop lijkt.

Acties:
  • 0 Henk 'm!

  • Johnny
  • Registratie: December 2001
  • Laatst online: 14:39

Johnny

ondergewaardeerde internetguru

Vanaf vCalendar 2.0 (ook bekend als iCalendar) kan je een UID (Unique ID) property instellen per evenement waarmee je dus kan aangeven dat een evenementen met dezelfde UID hetzelfde evenement is met andere informatie.

Ik weet alleen niet of Outlook (welke versie?) daar ook naar kijkt.

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


Acties:
  • 0 Henk 'm!

  • jsiegmund
  • Registratie: Januari 2002
  • Laatst online: 19-09 08:48
Hmmm... heb nu een uid aangemaakt op basis van een MD5 hash van de omschrijving van het event en de begindatum. Maar wanneer ik een file met 5 events 2x importeer krijg ik alsnog alle events dubbel, dus dat is het blijkbaar niet.

Het is me overigens ook niet helemaal duidelijk of die UID nu bedoeld is als:
- unieke identifier waardoor je geen dubbele events mag en kan hebben
- unieke identifier waardoor de kalender weet dat meerdere events in de kalender eigenlijk hetzelfde event is (gelinkt zijn)

[ Voor 38% gewijzigd door jsiegmund op 11-06-2006 17:11 ]


Acties:
  • 0 Henk 'm!

  • jsiegmund
  • Registratie: Januari 2002
  • Laatst online: 19-09 08:48
Kleine kick, want kan geen oplossing vinden voor een probleem wat zo makkelijk lijkt :S

Acties:
  • 0 Henk 'm!

Verwijderd

Ik heb precies hetzelfde probleem, iemand die hier een oplossing voor weet?

Heb al van alles geprobeerd:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
BEGIN:VCALENDAR
CALSCALE:GREGORIAN
PRODID:-//HINCE//www.hince.nl//EN
VERSION:2.0
METHOD:PUBLISH
BEGIN:VEVENT
DTSTART:20060830T090000
DTEND:20060830T110000
SEQUENCE:0
LOCATION:Delft
UID:687vhallotesttesteeeeeeeee
DTSTAMP:20060602T000001Z
SUMMARY:Test
CLASS:Public
END:VEVENT
END:VCALENDAR

Als ik deze importeer, komtie netjes op de goeie dag op het goeie moment te staan. Als ik echter de datum of tijd aanpas (bijv. DTSTART) en nogmaals importeer, verschijnt er een tweede afspraak. Ik hou de UID hetzelfde, maar dat helpt niet. Ook maakt het niet uit of je SEQUENCE 1 verhoogt, of de METHOD op REQUEST zet.

Is Outlook gewoon niet in staat om events via iCalendar / vCalendar te updaten / deleten?

Acties:
  • 0 Henk 'm!

  • Johnny
  • Registratie: December 2001
  • Laatst online: 14:39

Johnny

ondergewaardeerde internetguru

Er zitten heel wat fouten in de implementaties van iCalendar in de verschillende versies van MS Outlook. In MS Office 2007 schijnen die eindelijk te zijn opgelost.

Voor MS Outlook 2003 is er een plugin waarmee je jezelf kunt aboneren op iCalendars via internet, te vinden op http://remotecalendars.sourceforge.net

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


Verwijderd

Johnny schreef op woensdag 30 augustus 2006 @ 17:54:
Er zitten heel wat fouten in de implementaties van iCalendar in de verschillende versies van MS Outlook. In MS Office 2007 schijnen die eindelijk te zijn opgelost.

Voor MS Outlook 2003 is er een plugin waarmee je jezelf kunt aboneren op iCalendars via internet, te vinden op http://remotecalendars.sourceforge.net
Gaat het importeren met die plugin dan wel goed? Kun je dan wel events updaten / deleten?
Pagina: 1