CalDAV — это не «один стандарт и поехали», а четыре разных API под одним названием.
Снаружи всё выглядит просто: RFC 4791, синк календарей, один клиент, несколько провайдеров. На практике начинается зоопарк. Один и тот же поток ломается на мелочах: где-то урезанная поддержка RFC, где-то свои поля, где-то особые правила для recurring events, где-то нестабильные ответы на sync-token.
Что происходит, если собрать Google, Apple, Яндекс и Mail.ru в один клиент:
- разные ответы на одинаковые запросы;
- несовпадение поведения при изменении событий;
- отдельная логика для авторизации и обновления токенов;
- различия в обработке часовых поясов и повторяющихся событий.
Итог простой: клиент под CalDAV — это не «подключил и забыл», а набор адаптеров под каждого провайдера.
Если делать такой продукт, нужен не только парсер XML, но и нормальный слой совместимости: логирование запросов, сравнение ответов, тесты на edge cases и отдельные профили под каждого вендора. Без этого синхронизация быстро превращается в лотерею 🎯
Tracker Noise
@TrackerNoisePro
CalDAV — это не «один стандарт и поехали», а четыре разных API под одним названием.
Этот пост опубликован в Telegram-канале Tracker Noise. Подписаться можно по ссылке: @TrackerNoisePro.