Sun Java System Calendar Server 6.3 WCAP Developer's Guide

Free-Busy Calendars in Calendar Server WCAP

Calendars can be displayed in free-busy format instead of showing details of scheduled events and todos. Free-busy formatted calendars are used to facilitate scheduling of events or todos in the event and todo creation dialogs in the user interface. To prevent other users from viewing event details, calendar owners can grant only free-busy access to their calendars.

This can be accomplished in two separate ways that are not mutually exclusive:

In free-busy calendars, instead of event or todo details, just the word “Busy” appears by the time block. Blocks of time without any scheduled events are listed also, with the word “Free” next to them. The time slot can also be shown as Busy-tentative, or even Busy-unavailable, depending on the value of the following parameters: transparency, status, PARSTAT.

For example, a calendar called jdoe has the following events:


First meeting 




Second meeting 

If user john has only free-busy access to the calendar jdoe, user john gets only a free-busy version of the calendar. The free-busy time for jdoe (from 9:00 to 6:00) would appear as the following:















Notice that john does not know the details of why the user is busy, but knows when the user is busy.

The get_freebusy command allows selection of which calendars to use in the calculation in two ways: using the calid parameter, or the mail parameter. One of the parameters is required, but not both. If both are present, the calid value is used.

When an email address is passed in using the mail parameter, all calendars, for which this user is the primary owner and which have fbinclude=1 in their calendar properties settings, are included in the free-busy calculation.

When the calid parameter is used, specific calendars can be named rather than using all of owners calendars. Note that the calid parameter can take an email address (by specifying mailto:ref822address, where rfc822address is any valid email address that maps to a single calendar in the local LDAP directory).

The command returns the busy data only. The rest of the time slots are presumed to be free.