CalDAV

From Wikipedia (Ru) - Reading time: 2 min


CalDAV (англ. Calendaring Extensions to WebDAV) — сетевой протокол прикладного уровня, расширяющий возможности WebDAV и предназначенный для доступа, синхронизации и управления календарными данными. Он основан на формате iCalendar и позволяет клиентским приложениям взаимодействовать с календарными серверами по HTTP, поддерживая совместную работу, планирование встреч (англ. scheduling) и синхронизацию между устройствами. Протокол разработан как открытый стандарт и опубликован в 2007 году в виде RFC 4791 под эгидой IETF. Для расширения функций планирования используется RFC 6638, а управление доступом реализовано на основе RFC 3744.

В 2003 году Лиза Дюссо инициировала разработку спецификации CalDAV, представив её на рассмотрение Инженерному совету Интернета.

Спецификация вызвала интерес среди разработчиков календарного программного обеспечения. В январе 2005 года были успешно протестированы два сервера и три клиента, корректно взаимодействующие между собой.

В марте 2007 года CalDAV был официально опубликован IETF в качестве стандарта под номером RFC 4791 («Calendaring Extensions to WebDAV (CalDAV)»). Авторами спецификации стали Сайрус Дабу (Apple), Бернар Дезруиссо (Oracle) и Лиза Дюссо (CommerceNet).

CalDAV был впоследствии внедрён в ряд программных продуктов, ориентированных на управление календарями и событиями[источник?].

CalDAV представляет собой открытый стандарт, расширяющий протокол WebDAV и использующий формат iCalendar для обмена календарными данными между клиентскими приложениями и серверами.

Протокол предназначен для управления календарными событиями, включая встречи, расписания и другие записи, синхронизируемые между сервером и клиентом. Кроме того, CalDAV поддерживает создание так называемых «неличных» календарей, например, для помещений или групп пользователей. Для поддержки функций планирования встреч (англ. scheduling) используется расширение CalDAV, стандартизированное в RFC 6638.

Пользователь может синхронизировать свой календарь с сервером CalDAV и использовать его на нескольких устройствах. Протокол также поддерживает создание неличных календарей, таких как календари для комнат или организаций.

Данные CalDAV организуются в виде коллекций (каталогов), содержащих ресурсы: события, задачи, напоминания и свободное/занятое время. Для управления доступом используются ACL на основе WebDAV Access Control Protocol (RFC 3744), позволяющие задавать права (чтение, редактирование, удаление) для отдельных пользователей.

Сервер CalDAV должен уметь разбирать записи в формате iCalendar, поскольку это необходимо для выполнения специфических календарных операций — например, расширения повторяющихся событий или составления отчётов о занятости (англ. free-busy).

В то же время CalDAV подвергался критике за относительную сложность реализации, что может вызывать затруднения при интеграции с некоторыми программными продуктами.[источник?]

Несмотря на широкое распространение и поддержку в различных программных решениях, спецификации CalDAV и iCalendar подвергаются критике за устаревание и ограниченную применимость в корпоративной среде. В частности, исследователи из Университета Цинхуа отмечают, что текущие версии этих протоколов не учитывают ряд современных требований[1]:

  • отсутствие встроенной поддержки механизмов безопасности и аутентификации;
  • отсутствие интерфейсов для выполнения массовых операций с событиями;
  • недостаточная проработка сценариев, связанных с масштабированием, делегированием и ролевым управлением доступом, характерных для корпоративных информационных систем.

В связи с этим, применение CalDAV в крупных организациях требует дополнительной реализации служебной логики на уровне серверной инфраструктуры или сторонней интеграции с корпоративными системами управления доступом и данными.

В качестве потенциальной замены формата iCalendar рассматривается jCal — структурированное представление календарных данных в формате JSON, стандартизированное в RFC 7265. jCal отличается лучшей читаемостью и удобством обработки, что делает его перспективным кандидатом для будущего развития календарных протоколов.[1]

Пример основан на RFC 4791:

Запрос:

REPORT /bernard/work/ HTTP/1.1
Host: cal.example.com
Depth: 1
Content-Type: application/xml; charset="utf-8"
Content-Length: xxxx

<?xml version="1.0" encoding="utf-8" ?>
<C:free-busy-query xmlns:C="urn:ietf:params:xml:ns:caldav">
<C:time-range start="20060104T140000Z" end="20060105T220000Z"/>
</C:free-busy-query>

Ответ:

HTTP/1.1 200 OK
Date: Sat, 11 Nov 2006 09:32:12 GMT
Content-Type: text/calendar
Content-Length: xxxx

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Example Corp.//CalDAV Server//EN
BEGIN:VFREEBUSY
DTSTAMP:20050125T090000Z
DTSTART:20060104T140000Z
DTEND:20060105T220000Z
FREEBUSY;FBTYPE=BUSY-TENTATIVE:20060104T150000Z/PT1H
FREEBUSY:20060104T190000Z/PT1H
END:VFREEBUSY
END:VCALENDAR

Программное обеспечение

[править | править код]

Список CalDAV клиентов включает:[2]:

  • DAVx⁵ (Android 4.4+)[3]
  • CalDAV-Sync for Android[4]
  • AgenDAV (CalDAV WebClient с открытым кодом, поддержкой различных языков, и AJAX интерфейсом)
  • iPhone
  • Atmail (Начиная с версии 6.0)
  • CalDavZAP (Web-based HTML5 / JavaScript приложение, открытый код)[5]
  • EVO Collaborator for Outlook добавить caldav совместимость синхронизации с Outlook[6]
  • Evolution (Linux, Unix, Windows)
  • Horde Groupware[7]
  • Korganizer (приложение календаря от KDE)
  • Sunbird или Thunderbird с Lightning плагином (Linux, Windows, Unix, Mac OS X)
  • eM Client (Windows)
  • iCal4OL (Больше не доступен для новых пользователей)
  • iCal (Начиная с версии Mac OS X Leopard !V 10.5)
  • iCal Import/Export CalDAV for Android[8]
  • One Calendar (Android, Windows, другими вариантами не пользовался)

Список CalDAV серверов включает:[9]:

Сервис-провайдеры

[править | править код]

Примечания

[править | править код]
  1. 1 2 Ma E., Liu N., Zhang Y., Peng Y. The Design and Architecture of CalDAV-based Enterprise Calendar Service. Proceedings of the International Conference on Intelligent Control and Computer Application (ICCA 2016), Atlantis Press.
  2. CalDAV Клиенты (Русский) (18 сентября 2010). Дата обращения: 17 декабря 2010. Архивировано из оригинала 23 мая 2016 года.
  3. DAVx⁵. Дата обращения: 5 мая 2022. Архивировано 3 января 2019 года.
  4. CalDAV-Sync. Дата обращения: 10 ноября 2015. Архивировано 4 ноября 2015 года.
  5. CalDavZAP. Дата обращения: 10 ноября 2015. Архивировано 10 ноября 2015 года.
  6. EVO Collaborator for Outlook. Дата обращения: 10 ноября 2015. Архивировано 7 декабря 2015 года.
  7. 1 2 Horde Groupware. Дата обращения: 10 ноября 2015. Архивировано 13 ноября 2015 года.
  8. iCal Import/Export CalDAV
  9. CalDAV Сервера (Русский). Дата обращения: 7 января 2014. Архивировано 24 октября 2008 года.
  10. Baikal. Дата обращения: 10 ноября 2015. Архивировано из оригинала 14 ноября 2015 года.
  11. Bedework Архивировано 2 декабря 2011 года.
  12. Bynari Collaboration Suite. Дата обращения: 10 ноября 2015. Архивировано из оригинала 4 августа 2012 года.
  13. DPCalendar. Дата обращения: 10 ноября 2015. Архивировано 8 декабря 2015 года.
  14. Daylite CalDAV Server Архивировано 15 октября 2015 года.
  15. EVO Mail Server. Дата обращения: 10 ноября 2015. Архивировано 21 октября 2015 года.
  16. Google Calendar. Дата обращения: 10 ноября 2015. Архивировано 28 октября 2015 года.
  17. Kerio Connect. Дата обращения: 10 ноября 2015. Архивировано 28 марта 2014 года.
  18. Nextloud. Дата обращения: 30 ноября 2019. Архивировано 10 июля 2016 года.
  19. SOGo. Дата обращения: 5 мая 2022. Архивировано 5 мая 2022 года.
  20. sabre/dav. Дата обращения: 10 ноября 2015. Архивировано 1 апреля 2021 года.
  21. Scalix. Дата обращения: 10 ноября 2015. Архивировано 10 ноября 2015 года.
  22. Synovel. Дата обращения: 10 ноября 2015. Архивировано 9 ноября 2015 года.
  23. Zimbra. Дата обращения: 10 ноября 2015. Архивировано 6 ноября 2015 года.
  24. mod_caldav auf SourceForge. Дата обращения: 10 ноября 2015. Архивировано 16 ноября 2015 года.
  25. ownCloud. Дата обращения: 10 ноября 2015. Архивировано 24 сентября 2015 года.

Licensed under CC BY-SA 3.0 | Source: https://ru.wikipedia.org/wiki/CalDAV
4 views | Status: cached on April 11 2025 10:31:54
↧ Download this article as ZWI file
Encyclosphere.org EncycloReader is supported by the EncyclosphereKSF