Incoming Messages

When messages are received by the MTA for a recipient, imip-agent employs message rules in the MTA to provide handlers to inspect any calendar-related content and to update its records. Different handlers are provided to process incoming messages depending on the nature of the eventual recipient:

People
Handled by the person handler
Resources
Handled by the resource handler

The different processing is described below.

Events

For people, the operation of the person handler is as follows:

Method Effect on Objects Effect on Free/Busy Effect on Request Queue
for recipient's own record for recipient's record of others
CANCEL Set the state of the cancelled event, retaining it for future reference Remove record if the event is cancelled for the attendee (even if the event is not completely cancelled) Update the recipient's free/busy record for the organiser Remove any queue entry
PUBLISH Add or update object, removing specific recurrences of recurring events No modification to the queue
REQUEST Add a queue entry for the event
REPLY Merge attendee participation information Update the recipient's free/busy record for each of the attendees No modification to the queue

The effect of the person handler is to ensure that the user's record of the free/busy status for other participants reflects the consequences of those participants' stated attendance of events, and for the object records to reflect the most recent state of each event.

Note that the free/busy information for a recipient of an event is not generally changed when receiving a message. Such information is only definitively changed by recipients themselves when responding to incoming messages, and the outgoing messages processing is concerned with updating that information as such responses are sent.

For resources, the operation of the resource handler is as follows:

Method Effect on Objects Effect on Free/Busy Effect on Request Queue
for recipient's own record for recipient's record of others
CANCEL Set the state of the cancelled event, retaining it for future reference Remove record if the event is cancelled for the attendee (even if the event is not completely cancelled) No records of other participants are employed by the resource handler No queue is employed by the resource handler
PUBLISH Ignored by the resource handler
REQUEST Add or update object, removing specific recurrences of recurring events Attempt to schedule the event, creating or updating records for the recipient
REPLY Ignored by the resource handler

Other Object Types

Other object types are not handled.