.. _and_kolab-freebusyd: ===================== Kolab Freebusy Daemon ===================== The Kolab Freebusy Daemon **kolab-freebusyd** is the component that generates Freebusy data for users and resources. **MORE DOCUMENTATION TO BE ADDED HERE** Running kolab-freebusyd as cron job =================================== Undocumented. Running kolab-freebusyd as daemon ================================= Undocumented. .. _and_kolab-freebusy: ====================== Kolab Freebusy Service ====================== The Kolab Freebusy Service is a REST web service serving Freebusy data through HTTP(s) at ``/freebusy/``. Queries for freebusy information for a particular user or resource can sent as GET requests in the following form: ``/freebusy/.ifb`` Example URL: .. parsed-literal:: http://example.org/freebusy/john.doe@example.org.ifb The Kolab Freebusy Service can be configured in various ways to collect freebusy data from different subsystems or services and cache and deliver them to the public. .. _and_kolab-freebusy-directories-sources: Directories and Sources ======================= The service provides different modules to first look up and validate the user or resource freebusy data is being requested and then fetching the actual data from a specific source and optionally convert it. A set of **Directories** is iterated with the current request until one can resolve the user and delivers freebusy data from the linked **Source**. Directories are defined as ``[directory ""]`` blocks in the config.ini file of the web service and link to a specific source using an URI set for ``fbsource``. See :ref:`and_kolab-freebusy-configuration` for details. .. _and_kolab-freebusy-directory-types: Directory Types --------------- ``static`` ^^^^^^^^^^ A simple directory implementation which just checks the given email address with a substring filter and either accepts or rejects the query. ``ldap`` ^^^^^^^^ The LDAP directory resolves the given email address with a configurable query to an LDAP service and provides additional attributes for the matching entry which then can be passed to the linked **Service** to find the right data. Service Types ------------- ``file`` ^^^^^^^^ Provides a path for pre-generated freebusy data stored on the local filesystem. These files are usually generated by the :ref:`and_kolab-freebusyd` running as cron job. ``http`` ^^^^^^^^ Can fetch freebusy data from another service via HTTP(s). ``imap`` ^^^^^^^^ Allows to directly read a user's calendar in IMAP and aggregate the stored event data into an anonymized freebusy block. .. NOTE:: This is note recommended to be used in a productive environment because the web service directly accesses the IMAP backend with admin privileges (proxy authentication) which should be avoided in a publicly accessible web service. ``fbdaemon`` ^^^^^^^^^^^^ With :ref:`and_kolab-freebusyd` running in daemon mode, this source connects to the freebusyd and starts a job to aggregate and deliver freebusy data for a user or a resource. ``aggregate`` ^^^^^^^^^^^^^ Aggregates Freebusy data from all members of a group into one data block that only shows slots as busy if they're unavailable for all members. Formatters ========== When fetching data from a specific source, format conversions can be applied before delivering the data to the requesting client. For example the Kolab Freebusy Service can convert data from an Exchange 2010 service into the iCal Freebusy format. .. _and_kolab-freebusy-configuration: Configuration Options ===================== The `config.ini.sample `_ file provides an overview of possible configuration options with several examples. The full documentation of the Kolab Freebusy Service configuration can be found in the :ref:`admin_kolab-freebusy-settings`.