Jump to content

CalDAV: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
FossilWave (talk | contribs)
rewrite the lead, backing everything with sources
FossilWave (talk | contribs)
a tweak. add a relevant external link
Line 11: Line 11:
| rfcs = {{IETF RFC|4791|6638}}
| rfcs = {{IETF RFC|4791|6638}}
}}
}}
'''Calendaring Extensions to WebDAV''', or '''CalDAV''', is an [[Internet standard]] allowing a [[Client (computing)|client]] to access and manage calendar data along with the ability to schedule meetings with users on the same or on remote [[Server (computing)|servers]].<ref name="intro">{{cite web |archive-url=https://web.archive.org/web/20220504033831/https://devguide.calconnect.org/CalDAV/introduction/ |url=https://devguide.calconnect.org/CalDAV/introduction/ |archive-date=2022-05-04|title=Introduction |publisher=Calconnect}}</ref><ref name="glossary">{{cite web |url=https://devguide.calconnect.org/Appendix/Glossary/ |title=Glossary of Terms}}</ref> This allows multiple users in different locations to share, search and synchronize calendar data.<ref name="linuxcom">{{cite web| url=https://www.linux.com/news/introduction-caldav/ |title=Introduction to CalDAV |publisher=Linux.com}}</ref>. It extends the [[WebDAV]] ([[HTTP]]-based protocol for data manipulation) specification and uses the [[iCalendar]] format for the calendar data.<ref name="glossary" /> The access protocol is defined by {{IETF RFC|4791}}.<ref name="intro"/> Extensions to CalDAV for scheduling are standardized as {{IETF RFC|6638}}.<ref name="intro" /> The protocol is used by many important open-source applications.<ref name="linuxcom" />
'''Calendaring Extensions to WebDAV''', or '''CalDAV''', is an [[Internet standard]] allowing a [[Client (computing)|client]] to access and manage calendar data along with the ability to schedule meetings with users on the same or on remote [[Server (computing)|servers]].<ref name="intro">{{cite web |archive-url=https://web.archive.org/web/20220504033831/https://devguide.calconnect.org/CalDAV/introduction/ |url=https://devguide.calconnect.org/CalDAV/introduction/ |archive-date=2022-05-04|title=Introduction |publisher=Calconnect}}</ref><ref name="glossary">{{cite web |url=https://devguide.calconnect.org/Appendix/Glossary/ |title=Glossary of Terms}}</ref> It lets multiple users in different locations to share, search and synchronize calendar data.<ref name="linuxcom">{{cite web| url=https://www.linux.com/news/introduction-caldav/ |title=Introduction to CalDAV |publisher=Linux.com}}</ref> It extends the [[WebDAV]] ([[HTTP]]-based protocol for data manipulation) specification and uses the [[iCalendar]] format for the calendar data.<ref name="glossary" /> The access protocol is defined by {{IETF RFC|4791}}.<ref name="intro"/> Extensions to CalDAV for scheduling are standardized as {{IETF RFC|6638}}.<ref name="intro" /> The protocol is used by many important open-source applications.<ref name="linuxcom" />


==History==
==History==
Line 110: Line 110:
* [http://www.calconnect.org/ CalConnect, The Calendaring and Scheduling Consortium]
* [http://www.calconnect.org/ CalConnect, The Calendaring and Scheduling Consortium]
* [https://web.archive.org/web/20120626092812/http://webdav.org/ WebDAV Resources]
* [https://web.archive.org/web/20120626092812/http://webdav.org/ WebDAV Resources]
* [https://www.researchgate.net/publication/3419713_Open_Calendar_Sharing_and_Scheduling_with_CalDAV Open Calendar Sharing and Scheduling with CalDAV] L. Dusseault, J. Whitehead, IEEE Internet Computing 9(2)
* [https://web.archive.org/web/20151114054905/http://baikal-server.com/ Baïkal, an open-source and lightweight CalDAV+CardDAV server]

===RFCs===
===RFCs===
* {{IETF RFC|2616|link=no}} – HTTP
* {{IETF RFC|2616|link=no}} – HTTP

Revision as of 20:56, 15 May 2022

CalDAV
Communication protocol
PurposeAccess remote scheduling information
IntroductionMarch 2007; 17 years ago (2007-03)
Based onWebDAV
OSI layerApplication
Port(s)Any
RFC(s)RFC 4791, 6638

Calendaring Extensions to WebDAV, or CalDAV, is an Internet standard allowing a client to access and manage calendar data along with the ability to schedule meetings with users on the same or on remote servers.[1][2] It lets multiple users in different locations to share, search and synchronize calendar data.[3] It extends the WebDAV (HTTP-based protocol for data manipulation) specification and uses the iCalendar format for the calendar data.[2] The access protocol is defined by RFC 4791.[1] Extensions to CalDAV for scheduling are standardized as RFC 6638.[1] The protocol is used by many important open-source applications.[3]

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

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 their 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.

Software

Client

The list of CalDAV clients includes:[4]

Server

The list of CalDAV servers includes:[18]

See also

References

  1. ^ a b c "Introduction". Calconnect. Archived from the original on May 4, 2022.
  2. ^ a b "Glossary of Terms".
  3. ^ a b "Introduction to CalDAV". Linux.com.
  4. ^ "CalDAV Clients (English)". September 18, 2010. Archived from the original on May 23, 2016. Retrieved December 17, 2010.
  5. ^ CalDavZAP
  6. ^ TaskSync
  7. ^ CalDAV-Sync
  8. ^ CalendarSync
  9. ^ DAVx⁵
  10. ^ EVO Collaborator for Outlook
  11. ^ "Using a CalDAV calendar". help.gnome.org. Retrieved February 28, 2019.
  12. ^ Fieldston Software
  13. ^ a b Horde Groupware
  14. ^ iCal Import/Export CalDAV
  15. ^ Outlook CalDav Synchronizer
  16. ^ "vdirsyncer — vdirsyncer 0.18.0 documentation".
  17. ^ "Windows 10 can sync email/contacts/calendars with all major providers – chooses to pick winners and losers in the market instead". Ctrl. March 2, 2017. Retrieved March 2, 2017.
  18. ^ "CalDAV Servers (English)". Retrieved January 7, 2014.
  19. ^ "Baikal". Archived from the original on November 14, 2015. Retrieved November 8, 2013.
  20. ^ "Bedework". Archived from the original on December 2, 2011. Retrieved November 10, 2015.
  21. ^ Bynari Collaboration Suite
  22. ^ DAViCal
  23. ^ DPCalendar
  24. ^ "Daylite CalDAV Server". Archived from the original on October 15, 2015. Retrieved November 10, 2015.
  25. ^ EVO Mail Server
  26. ^ Google Calendar
  27. ^ Kerio Connect
  28. ^ Mailfence
  29. ^ mod_caldav auf SourceForge
  30. ^ Nextloud
  31. ^ Oracle Communications Calendar Server
  32. ^ ownCloud
  33. ^ Radicale
  34. ^ SOGo
  35. ^ sabre/dav
  36. ^ Scalix
  37. ^ Synovel
  38. ^ Xandikos
  39. ^ Zimbra
  40. ^ sync!Egw
  41. ^ https://help.zoho.com/portal/en/kb/crm/collaborate-and-increase-team-productivity/calendar-management/articles/set-calendar-synchronization

RFCs

  • RFC 2616 – HTTP
  • RFC 3744 – WebDAV Access Control Protocol
  • RFC 4791 – CalDAV
  • RFC 4918 – WebDAV
  • RFC 5545 – iCalendar
  • RFC 5546 – iTIP