imip-agent

Annotated docs/wiki/CalendaringSupport

1053:068aa85f0c45
2016-02-08 Paul Boddie Made the retraction operation a complete transaction. Tidied up the locking and unlocking function application.
paul@989 1
= Calendaring Support =
paul@989 2
paul@989 3
imip-agent aims to provide broad support for the following standards:
paul@989 4
paul@989 5
 * [[https://tools.ietf.org/html/rfc5545|iCalendar]]
paul@989 6
 * [[https://tools.ietf.org/html/rfc5546|iTIP]]
paul@989 7
 * [[https://tools.ietf.org/html/rfc6047|iMIP]]
paul@989 8
paul@989 9
The following sections indicate notable deviations or deficiencies in the support
paul@989 10
for these standards.
paul@989 11
paul@989 12
== iCalendar ==
paul@989 13
paul@989 14
The general iCalendar format should be mostly supported, but the interpretation
paul@989 15
of calendar objects in imip-agent is currently limited to events and free/busy
paul@989 16
data, and the software does not seek to understand the other object types
paul@989 17
described in the specification.
paul@989 18
paul@989 19
The `VTIMEZONE` component is not interpreted. Instead, `TZID` properties are
paul@989 20
expected to provide [[https://en.wikipedia.org/wiki/Tz_database|tz database]]
paul@989 21
(tzinfo, zoneinfo, Olson database) identifiers that indicate the time zone or
paul@989 22
"regime" applying to the indicated datetimes.
paul@989 23
paul@989 24
The `VALARM` component is not interpreted since imip-agent does not seek to
paul@989 25
implement reminders or notifications, although it is conceivable that a mechanism
paul@989 26
could be implemented to achieve this over e-mail.
paul@989 27
paul@989 28
Week numbers (`BYWEEKNO`) are not yet supported in recurring datetimes.
paul@989 29
paul@989 30
Only the essential scheduling properties are interpreted by imip-agent. Thus,
paul@989 31
support for attachments, categories, and so on is not provided in the
paul@989 32
[[../CalendarManager|management interface]]. Such support may eventually be
paul@989 33
added, and existing calendar clients may, of course, use such features without
paul@989 34
any restrictions imposed by imip-agent.
paul@989 35
paul@989 36
== iTIP ==
paul@989 37
paul@989 38
Only event and free/busy object types are supported in scheduling.
paul@989 39
paul@989 40
`VTIMEZONE` and `VALARM` are not interpreted.
paul@989 41
paul@989 42
Delegation
paul@989 43
([[http://tools.ietf.org/html/rfc5546#section-2.1.2|RFC 5546 section 2.1.2]])
paul@989 44
is not yet supported.
paul@989 45
paul@989 46
Multiple recurrence updates using the `THISANDFUTURE` attribute on the
paul@989 47
`RECURRENCE-ID` property
paul@989 48
([[http://tools.ietf.org/html/rfc5546#section-4.4.5|RFC 5546 section 4.4.5]])
paul@989 49
is not yet supported.
paul@989 50
paul@989 51
The `REQUEST-STATUS` property is not yet supported. (See
paul@989 52
[[http://tools.ietf.org/html/rfc5546#section-7.3|RFC 5546 section 7.3]].)
paul@989 53
paul@989 54
Support is provided in the [[../Configuration|configuration]] of imip-agent
paul@989 55
for interpreting `REQUEST` messages that should really be `COUNTER` messages,
paul@989 56
generated by some mail programs. See the `IMIP_COUNTER_AS_REQUEST` setting in
paul@989 57
`config.py`.
paul@989 58
paul@989 59
== iMIP ==
paul@989 60
paul@989 61
Since attachments are not supported by the
paul@989 62
[[../CalendarManager|management interface]], imip-agent does not generate or
paul@989 63
interpret the various methods of referencing attachments in exchanged objects.
paul@989 64
(See [[https://tools.ietf.org/html/rfc6047#section-4.3|RFC 6047 section 4.3]].)