CalDAV
This article needs additional citations for verification. (April 2010) |
Communication protocol | |
OSI layer | Application |
---|---|
Port(s) | 80, 443 |
RFC(s) | RFC 4791, RFC 6638 |
Calendaring Extensions to WebDAV, or CalDAV, is an Internet standard allowing a client to access scheduling information on a remote server. It extends WebDAV (HTTP-based protocol for data manipulation) specification and uses iCalendar format for the data. The access protocol is defined by RFC 4791. It allows multiple client access to the same information thus allowing cooperative planning and information sharing. Many server and client applications support the protocol. Extensions to CalDAV for automated scheduling are also standardized, as RFC 6638.
History
The CalDAV specification was first published in 2003 as an Internet Draft submitted to the Internet Engineering Task Force (IETF) by Lisa Dusseault. In March 2007, the CalDAV specification was finished and published by the IETF as RFC 4791, authored by Cyrus Daboo (Apple), Bernard Desruissaux (Oracle), and Lisa Dusseault (CommerceNet). CalDAV is designed for implementation by any collaborative software, client or server, that needs to maintain, access or share collections of events. It is developed as an open standard to foster interoperability between software from different implementers.[clarification needed]
Specification
This section needs additional citations for verification. (April 2010) |
The architecture of CalDAV (partially inherited from the underlying specifications) organizes the data (events, tasks, free-busy info, notes) in directories (collections), where multiple items (resources) reside. The resources and collections can be accessed by one or more users, using standard HTTP and DAV semantics to detect conflicting changes, or to provide locking.
For access control the concept of ACLs are used, so each operation (view, edit, delete etc.) can be denied or granted per user. Therefore the specification requires that CalDAV servers must support "WebDAV Access Control Protocol" (RFC 3744). The calendar resources must use iCalendar format, which allows the server to understand and process the data. Parsing the iCalendar items is necessary, because the server has to support a number of calendaring-specific operations such as doing free-busy time reports and expansion of recurring events. With this functionality, a user may synchronize his or her own calendar to a CalDAV server, and share it among multiple devices or with other users. The protocol also supports non-personal calendars, such as calendars for sites or organizations.
Implementations
Clients
- Agendav, a web open source caldav client
- Apple Calendar (previously named iCal)—On August 7, 2006, Apple announced that Mac OS X 10.5 "Leopard" would include iCal 3.0, an application that supports the CalDAV access and scheduling standards.[1] Mac OS X Server 10.5 Leopard includes iCal Server, which implements the CalDAV access and scheduling protocols.[2] The iCal Server has been released under an open source license as the Darwin Calendar Server.[3] On March 17, 2009, Apple Computer announced that CalDAV would be included in the iPhone 3.0 SDK.
- Atmail, a complete client and server implementation, with support for a wide range of desktop clients and mobile devices.
- Bynari WebDAV Collaborator, a plug-in for synchronizing CalDAV and CardDAV data to Outlook with most DAV servers [1]
- CalendarSync for Android[4]
- CalDAV-Sync for Android[5]
- Caldav Sync, FOSS sync adapter for Android[6]
- CalDavZAP, open source HTML5+JavaScript CalDAV client (web application)[7]
- California, a Free and Open-Source calendar application for GNOME 3.
- Chandler
- cFos Outlook DAV [8] for MS Outlook
- DAVdroid, FOSS sync adapter for Android
- eM Client
- Evolution
- Horde Groupware[9]
- Kontact [10]
- The Mozilla Calendar Project applications (Lightning, a plugin for Thunderbird, Seamonkey internet suite and Sunbird (a standalone version) also support CalDAV calendars.
- Mulberry
- Accounts & Calendar for the Nokia N9
- SurGATE Outlook DAV Client [2]
- SolCalendar CalDAV Client for Android
- Mailenable CalDAV Server support Android, iPhone and Windows device.
- EVO Collaborator for Outlook, sync Outlook contacts, calendars and tasks with CardDAV and CalDAV servers[11]
Servers
- Apache caldav module caldav module for Apache servers
- Atmail, a complete client and server implementation, with support for a wide range of desktop clients and mobile devices.
- Baïkal, an open-source and lightweight CalDAV+CardDAV server based on SabreDAV API; the database used is SQLite (non intrusive, lightweight, easy installation and backup)
- Bedework: an open-source enterprise calendar system that supports public, personal, and group calendaring.[12]
- Calendar & Contacts Server (formerly known as Darwin Calendar Server) is an open-source CalDAV and CardDAV server primarily developed by Apple and hosted by MacOS Forge.
- Calypso is a fork of Radicale, supporting Git as storage mechanism
- ContactOffice supports CalDAV using iCal 3.x
- CommuniGate Pro multiplatform Unified Communications server which supports CalDAV
- DAViCal is an open source calendaring server that uses the CalDAV format compatible with multiple calendaring clients.[13]
- EGroupware, a web-based open source groupware server, contains support for CalDAV since version 1.8
- EVO Mail Server, a mail server software, supports CalDAV since version 2.0.100
- Group-Office, a web-based open source groupware and CRM application
- Horde Groupware, a complete web-based groupware solution with CalDAV and CardDAV support.[9]
- iCal Server Included in Mac OS X Server 10.5 Leopard and implements the CalDAV access and scheduling protocols.[2] The iCal Server has been released under an open source license as the Darwin Calendar Server.[3]
- IT Hit WebDAV Server Engine for .Net a WebDAV Server library for .Net with CalDAV support.
- Kolab - Open Source groupware with support for CalDAV/CardDAV/WebDAV since version 3.1.
- Kerio Connect (formerly Kerio MailServer) - supports CalDAV since version 6.5
- OpenLink Virtuoso, a hybrid middleware and database server, since version 6.5 (Commercial Edition) and 6.1.5 (Open Source Edition)
- OpenLink Data Spaces, a data integration framework and suite of associated Web applications
- Oracle Beehive, a unified communication and collaboration software solution, supports a number of open standards including CalDAV.[14] This allows Beehive to work with a number of calendaring clients including Apple iCal, Mozilla Lightning, and Mozilla Sunbird.[15]
- Oracle Communications Calendar Server, a feature-rich and standards compliant calendaring and scheduling server, supports CalDAV since version 7.[16]
- ownCloud, a software suite that provides a location-independent storage area for data (cloud storage).
- Radicale, an Open Source Python-based CalDAV and CardDAV server.
- SabreDAV, a WebDAV framework for PHP, supports CalDAV since version 1.2.[17]
- SOGo, SOGo is fully supported and trusted groupware server with a focus on scalability and open standards.[18]
- Synchronica, a developer of mobile push email and synchronization solutions announced that their Synchronica Mobile Gateway and Synchronica Mobile Backup products are both fully compatible with the CalDAV standard, allowing compatibility across a wide range of calendar applications.[19]
- Tryton, an Open source platform for business solution, supports CalDAV server since version 1.4[20]
- VPOP3, a Windows mail server - supports CalDAV since version 5
- Zarafa, a replacement for Microsoft Exchange, supports CalDAV clients.[21]
- Zimbra
- sync•gw is synchronization server for multiple protocols.[22]
- Fennel is a lightweight CardDAV / CalDAV server. It is completely written in JavaScript and runs within a Node.js instance. Fennel is published under the GNU General Public Licence version 3.
Online-Services
- Fabasoft Folio Cloud
- fruux, a synchronization service, supporting CardDAV[23] and CalDAV[24]
- Google Calendar supports CalDAV[25] using iCal 3.x[26] and Mozilla Sunbird 0.8+.[27]
- Memotoo, a synchronization service, supporting CalDAV
- Yahoo! Calendar supports CalDAV using iCal 3.x.[28]
- EGroupWare, a synchronization service, supporting CalDAV, CardDAV for Mac Clients, Thunderbird, Mobile phones
See also
- Exchange ActiveSync
- Comparison of CalDAV and CardDAV implementations
- Calendar
- CardDAV
- GroupDAV, an effort to create a simplified, straightforward protocol for calendars as well as contacts.
- iCalendar
- Scheduling OSID defines a software interface abstraction for calendaring protocols
- SyncML
- vCalendar
- WebDAV
References
- ^ iCal at Apple Mac OS 10.5.
- ^ a b iCal Server, Apple Mac OS 10.5.
- ^ a b Calendar Server, Darwin.
- ^ CalendarSync
- ^ CalDAV-Sync
- ^ Caldav Sync discussion at F-Droid forum
- ^ CalDavZAP
- ^ cFos Outlook DAV
- ^ a b Horde Groupware
- ^ http://docs.kde.org/stable/en/kdepim/korganizer/index.html
- ^ CalDAV/CardDAV Support for Outlook 2007-2013, EVO software production
- ^ bedework, Bedework Calendar System
- ^ DAViCal, DAViCal CalDAV Server
- ^ Oracle Beehive Collaboration Platform, Support for CalDAV
- ^ Oracle Beehive CalDAV Clients, Oracle Beehive 1.5
- ^ Oracle Communications Calendar Server
- ^ SabreDAV Download, SabreDAV
- ^ SOGo, SOGo
- ^ Calendaring Extensions to WebDAV (CalDAV), Synchronica.
- ^ Tryton News, Tryton
- ^ Configure Calendar Clients (using CalDAV and iCal), Zarafa
- ^ sync•gw
- ^ CardDAV Service Providers. Carddav.calconnect.org. Retrieved on 2013-07-17.
- ^ CalDAV Service Providers. Caldav.calconnect.org. Retrieved on 2013-07-17.
- ^ https://developers.google.com/google-apps/calendar/caldav/v2/guide#new_endpoint – Google Calendar CalDAV Developer's Guide
- ^ Google Calendar, CalDAV support using iCal.
- ^ Introduction to CalDAV Support
- ^ Yahoo! Calendar, What is CalDAV sync?
External links
- CalDAV Resource Site
- CalConnect, The Calendaring and Scheduling Consortium
- WebDAV Resources
- Baïkal, an open-source and lightweight CalDAV+CardDAV server
RFCs
- RFC 2616 – HTTP
- RFC 3744 – WebDAV Access Control Protocol
- RFC 4791 – CalDAV
- RFC 4918 – WebDAV
- RFC 5545 – iCalendar
- RFC 5546 – iTIP