Forum for iCal4OL, Print4OL and ICS4OL

Exchange of experiences / Erfahrungsaustausch / Get Help

You are not logged in.

Announcement

Verkauf von iCal4OL an Neukunden ist eingestellt! Keine Demo mehr verfügbar..
Diese Seite ist ausschliesslich für Kunden.
The selling of iCal4OL has ended! No trial available anymore..
This site is exclusively for customers.

iCal4OL Version 2.18.0 is now available. See Announcements / Ankündigungen


#1 2012-11-05 23:29:18

captchrisd
New member
Registered: 2012-11-05
Posts: 1

Radicale Server Sync: Outlook does not remove events from calendar

Hello,

I am in the process of testing your software for a solution to integrate the Windows users in our office to use our Caldav server before we purchase the licenses.

I have almost everything working. I am able to create an event in outlook and have it sync to the server, I can delete the event from outlook and have it delete on the server. BUT if I delete an event from the server through another client (and I have verified it is deleted) then when I sync through your program it does not delete the event from outlook. I am using "caldav deleted remove" in the UserID section.

Your help is greatly appreciated, as we are hoping for a quick and successful evaluation before purchasing licenses for these windows users.

Thank you
Chris

Code:

==> 11/5/2012 2:24:51 PM 2.12.22 Export started: WEBSOLUTION: jordan  caldav deleted remove
==> Configurations: C:\Users\jordan\AppData\Roaming\iCal4OL\Default.ini > 11/5/2012 2:22:52 PM
==> Outlook Calendar: rpns
==> Date/Time last run (otherwise empty); updated automatically: 11/5/2012 2:21:50 PM
--> Use Outlook Scheduling Tab for Attendees (otherwise in body or "Contacts:" links)
--> Start Outlook together with iCal4OL
--> Use WinInet.dll instead of WinHttp.dll (0) gzip
--> Monitor deleted events && tasks (e.g. needed for Exchange Public Folders)
--> Monitor deleted contacts (needed for Exchange Public Folders)
--> Save Sync Fields in external DB
--> End iCal4OL, if in tasktray and Outlook was closed (delayed, ONE Sync will still be done!)
-----------------------------------------------------------------
<+> 11/15/2012 8:00:00 AM-11/15/2012 8:30:0 test                           New, uploaded.. Added (UID:000000001E755E97E41B9E469ED5A111DAA8F106E4F02200)(etag=-9044099309129387798)
-----------------------------------------------------------------
==> 11/5/2012 2:24:52 PM finished!:  jordan             caldav deleted remove
 
==> read: 52
<-> skipped: 63
<!> ex.deleted: 0
<+> exported: 1
 
 
==> 11/5/2012 2:25:44 PM 2.12.22 Import  started: https://cal.rosepointnav.com/.well-known/caldav
==> Configurations: C:\Users\jordan\AppData\Roaming\iCal4OL\Default.ini > 11/5/2012 2:24:52 PM
==> WEBSOLUTION: jordan     caldav deleted remove
==> Outlook Calendar: rpns
==> Date/Time last run (otherwise empty); updated automatically: 11/5/2012 2:23:50 PM
==> Fullname (as on server): jordan
==> E-Mail (as on server): jordans@rosepointnav.com
--> Use Outlook Scheduling Tab for Attendees (otherwise in body or "Contacts:" links)
--> Start Outlook together with iCal4OL
--> Use WinInet.dll instead of WinHttp.dll (0) gzip
--> Monitor deleted events && tasks (e.g. needed for Exchange Public Folders)
--> Monitor deleted contacts (needed for Exchange Public Folders)
--> Save Sync Fields in external DB
--> End iCal4OL, if in tasktray and Outlook was closed (delayed, ONE Sync will still be done!)
-----------------------------------------------------------------
==> connecting..
==> read!
-----------------------------------------------------------------
==> 11/5/2012 2:25:44 PM finished! https://cal.rosepointnav.com/.well-known/caldav
 
==> read: 13
<-> skipped: 13
<!> deleted: 0
<+> imported: 0
 
 
==> 11/5/2012 2:25:44 PM 2.12.22 Export started: WEBSOLUTION: jordan  caldav deleted remove
==> Configurations: C:\Users\jordan\AppData\Roaming\iCal4OL\Default.ini > 11/5/2012 2:24:52 PM
==> Outlook Calendar: rpns
==> Date/Time last run (otherwise empty); updated automatically: 11/5/2012 2:23:50 PM
--> Use Outlook Scheduling Tab for Attendees (otherwise in body or "Contacts:" links)
--> Start Outlook together with iCal4OL
--> Use WinInet.dll instead of WinHttp.dll (0) gzip
--> Monitor deleted events && tasks (e.g. needed for Exchange Public Folders)
--> Monitor deleted contacts (needed for Exchange Public Folders)
--> Save Sync Fields in external DB
--> End iCal4OL, if in tasktray and Outlook was closed (delayed, ONE Sync will still be done!)
-----------------------------------------------------------------
<+> 11/15/2012 8:00:00 AM-11/15/2012 8:30:0 test                           exported.. Error reading from Server (for Deletion in Outlook): 410
  } GET: 410 Gone !
-----------------------------------------------------------------
==> 11/5/2012 2:25:46 PM finished!:  jordan             caldav deleted remove
 
==> read: 52
<-> skipped: 64
<!> ex.deleted: 0
<+> exported: 0

Offline

 

#2 2012-11-06 05:46:44

Roland
Administrator
Registered: 2007-11-25
Posts: 1524

Re: Radicale Server Sync: Outlook does not remove events from calendar

Radical uses wrong HTTP 310 GONE, instead of HTTP 404 NOT FOUND error message for deleted server events.
Support for HTTP 310 is now implemented in iCal4OL..

--------
Hello

Hmm, Radicale... not supported, never tested ;-)

There are "normally" a lot of CalDAV implementation issues (not understood specification=bad programming), which have to be addressed in iCal4OL by using flags in field "UserID:".
Probably, the assistant [Other] on tab "Who" did not work?!

For manual configuration you can try this:

Tab "Who":
Really, you must enter here the username and email AS ON SERVER! Otherwise it can not be determined who-is-who, if invitation..

Tab "1. How":
URL e.g.:   https://cal.rosepointnav.com/jordan/<calendarname>/
Enter the full URL down to a calendar collection! Your used URL is only for discovering the real URL by the Assistant [Other]!

UserID try first: caldav deleted remove organizer firstsimilar singleget older href debug

Flags are explained here: http://ical.gutentag.ch/forum/viewtopic.php?id=28

In the above case following rules apply:
a) "organizer" and attendees are correctly synced (the line "ORGANIZER" will be added into VEVENT).
b) "firstsimilar" will sync with a similar test of events during first sync (same subject+starttime), to connect already existing events on both sides. "firstsimilar" will become "nosimilar" from second sync on.
c) "singleget": PROPFIND will be used to retrieve HREF/ETAG of all events from server. Some servers do not support the correct handling of repeating events, retrieving HREF/ETAG by REPORT calendar-query with time-range-filter. Good implementations are supporting it, which would result in faster sync, where therefore "singleget" can be replaced with "multiget" to use this REPORT command.
d) "older" will only test on ETAG changes, because some servers do not provide correctly the iCalendar field LAST-MODIFIED! If an event was changed on both sides (OL AND Server), the server version will win, or you add in addition the flag "etag", where iCal4OL will ask, which way to sync..
e) "href" will shorten the HREF (e.g. shorter than /000000001E755E97E41B9E469ED5A111DAA8F106E4F02200.ics), because some servers do not support a max. length of 255 characters.
Important: HREF may be different from UID here, because of invitations (received or sended in OL). If your server does not support different HREF from UID, then you must add in addition the flag "no_global"!
f) Use "debug" only for testing. A lot more information will be written into LOG.txt

UserID always compatible is therefore for production: caldav deleted remove organizer firstsimilar singleget older etag href no_global
but not very fast, due to "singleget"... (UID=HREF.ics; Short HREFs, PROPFIND + asking when an event was modified on both sides)

UserID for a good implementation would be.............: caldav deleted remove organizer firstsimilar multiget
(LAST-MODIFIED will be used to determine the newer event versions instead of ETAGs, REPORT command, long HREFs up to 255 characters using GlobalAppointmentIDs for OL invitations as UID)

Other stuff:
- For performance reason, deleted events are only removed from the other side, if not more than 30 days in the past.
- Radicale does answer with a wrong HTTP error "410 Gone", instead of "404 Not found", trying to re-find an event by GET.
  ==> This is the reason, the deletion in Outlook can't work! I will email you a link to a special demo, where I will treat 410 as 404..
- Please read FAQ, too. Here you'll find a lot of additional information, e.g. how to sync multiple calendars by chaining *.ini files.
- I left out tasks. If tasks are in the same calendar collection, then add flag "includetasks" in field UserID! (maybe "singletasks" is necessary instead).
- I left out CardDAV. I don't think, this is implemented in Radicale. For unsupported CardDAV implemenation you must add flags "carddav singlecontacts", otherwise iCal4OL will default to older GroupDAV sync.
- There are better CalDAV Servers out there: SOGo, DAViCal, Bedework, Darwin CalendarServer, OwnCloud, Fruux, aso.

Offline

 

Board footer