Skip to content

Commit c7ca67f

Browse files
committed
CalDAV/CardDAV requirements
1 parent c32d208 commit c7ca67f

File tree

2 files changed

+21
-4
lines changed

2 files changed

+21
-4
lines changed

content.mkd

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -330,14 +330,28 @@ An invalid subscription is a subscription that push notifications can't be deliv
330330
A server MAY use some logic like remembering the last successful delivery plus some tolerance interval to defer removal of an invalid subscription for some time. Doing so will make WebDAV-Push more reliable in case of temporary problems and avoid temporal "holes" between subscription removal and re-registration.
331331

332332

333+
333334
# CalDAV/CardDAV
334335

335-
[^todo] Specific implementation notes for CalDAV/CardDAV. Especially a recommendation of what clients shall subscribe to and why:
336+
WebDAV-Push can be used with CalDAV {{RFC4791}} and CardDAV {{RFC6352}} to provide short-time update notifications when collections (calendars, address books) or entries (contacts, events, …) change.
337+
338+
Depending on the features of a CalDAV/CardDAV client, it could for instance subscribe to:
339+
340+
- content updates of a home-set to become notified about new collections,
341+
- content updates of a collection (usually with a sync-level of 1) to become notified about modified entries,
342+
- property updates of a collection (usually with a depth of zero) to become notified about changes of properties like display name, calendar color and access permissions,
343+
- property updates (for instance display name) of a principal to update real names of collection owners.
344+
345+
CalDAV/CardDAV servers that support WebDAV-Push SHOULD support:
336346

337-
* homesets → content updates may trigger calendar list refresh
338-
* calendars / address books → content updates may trigger sync, property updates may trigger calendar meta-data refresh
339-
* principals → keep displayed user data up-to-date
347+
- content updates with a sync-level of at least 1 on
348+
- `calendar-home-set` and `addressbook-home-set` collections,
349+
- calendars and address books (collections which have a `{DAV:}resourcetype` of `{CALDAV:}calendar` or `{CARDDAV:}addressbook`),
350+
- property updates with a depth of at least 0 on
351+
- calendars and address books,
352+
- principals (collections with have a `{DAV:}resourcetype` of `{DAV:}principal` as defined in {{Section 4 of RFC3744}}).
340353

354+
[^todo] Regarding property updates, these properties SHOULD be supported (both when explicitly requested in a `DAV:prop` element and when that element is not present or empty): …
341355

342356

343357
# Security Considerations

webdav-push.mkd

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@ normative:
4242
RFC9111:
4343

4444
informative:
45+
RFC3744:
46+
RFC4791:
47+
RFC6352:
4548
UnifiedPush:
4649
title: UnifiedPush
4750
target: https://unifiedpush.org

0 commit comments

Comments
 (0)