I have an old (nineties) Delphi 2 Tier application that now needs to talk to a calendaring system. The users are going to take information from the Delphi application and create appointments. These appointments will need to be sent to a multi calendaring Zimbra server. They will be creating appointments in calendars belonging to other members of staff. I see the protocol to do this is CalDAV. The Delphi application and Zimbra will need to be able to sync in both directions (not immediately but in the future). That is updates in Zimbra will have to appear on the Delphi side some time later (this time frame has yet to be determined).
I can use a third party application to take the Delphi appointment data, convert it to CalDAV and upload to the Zimbra server periodically. Say every half an hour or so. I am interested in your thoughts on how best to architect this functionality and components I could use to code this? Any ideas would be very helpful?