
CalDAV в дикой природе: как «простой календарь для себя» превратился в клиент для семьи, друзей и четырёх облаков
shvetsovl 11 минут назад CalDAV в дикой природе: как «простой календарь для себя» превратился в клиент для семьи, друзей и четырёх облаков Средний 12 мин 314 Веб-разработка * Кейс Из песочницы Всё началось очень мирно....
GPT-5.6 31 Temmuz 2026'da yayınlanacak mı?
Значимый прорыв формирует отрасль ИИ: shvetsovl 11 минут назад CalDAV в дикой природе: как «простой календарь для себя» превратился в клиент для семьи, друзей и четырёх облаков Средний 12 мин 314 Веб-разработка * Кейс Из песочницы Всё началось очень мирно. Мне нужен был календарь, который не разваливается на бытовых вещах: не путает часовые пояса, не теряет повторяющиеся события, не забывает про изменения и не заставляет руками переносить встречи с устройства на устройство. Сначала это был проект «для себя».
Один календарь, один аккаунт, один провайдер. На такой задаче легко обмануться и решить, что всё получится быстро: календарь же не база данных космического корабля, а довольно понятная вещь. Но календарные проекты имеют одну неприятную особенность: как только ими начинают пользоваться не только вы, они быстро становятся частью чужой жизни.
Технические детали
Сначала семейные планы, потом общие встречи с друзьями. Потом ещё один сервис, потом ещё один. И в какой-то момент уже нужно не просто хранить события, а синхронизировать их между разными облаками и при этом не ошибаться в самых человеческих местах — в датах, повторениях, конфликтующих правках и часовых поясах.
Именно так я и пришёл к CalDAV. На бумаге он выглядит довольно несложно: RFC 4791 описывает его как расширение WebDAV для доступа, управления и совместного использования календарной и планировочной информации на основе iCalendar, а RFC 6578 добавляет механизм синхронизации коллекций через sync-token. Всё это звучит так, будто нужно просто реализовать HTTP-методы и XML-отчёты — и дело сделано.
На практике CalDAV оказывается не «ещё одним REST API», а протоколом состояния, где особенно важны нюансы того, как сервер описывает коллекции, изменения и ограничения. Почему я вообще не остался на «родном» API GoogleЕсли бы задача касалась только Google, всё выглядело бы совсем иначе. У Google есть собственный Calendar API, и для одного провайдера он действительно удобнее: JSON вместо XML, привычная пагинация, прямые ресурсы, понятные ответы.
Отраслевые последствия
Когда работаешь только с Google, смысла использовать CalDAV нет. Но как только появляется цель сделать один и тот же клиент для нескольких сервисов, картина меняется. У Google CalDAV тоже есть, но их документация довольно прямо говорит, что доступ к нему идёт только по HTTPS и только через OAuth 2.
Basic Authentication сервер отвергает с 401 Unauthorized. В той же справке Google отдельно пишет, что CalDAV-интерфейс у них не поддерживает VTODO и VJOURNAL, что после первой синхронизации клиент должен перейти на режим RFC 6578, и что CTag можно использовать как быстрый индикатор того, изменилась ли коллекция. Ещё там описаны две стартовые точки: либо principal collection, либо конкретная calendar collection.
С Apple история уже другая. Apple официально рекомендует app-specific passwords для сторонних приложений, которые обращаются к данным iCloud, включая календарь.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.


