CommuniGate Pro
Version 5.4
Access
 
 
WebDAV

WebDAV Module

The WebDAV protocol is an extension of the HTTP protocol. Various clients use it to access and manage various data resources.
The CommuniGate Pro WebDAV module implements authenticated access to Account File Storage, Calendar, Task, and Contacts mailboxes.

The CommuniGate Pro WebDAV implementation is a part of the HTTP User module, and that module settings are applied to the WebDAV functions, too.

Root Element

The WebDAV component provides a read-only "root" element, with the following URLs:
http://servername[:port]/
or
https://servername[:port]/ URL
where port is a HTTP User Module port (8100, 9100 by default).

Various WebDAV (CalDAV, CardDAV, etc.) clients can be configured to use this Root Element. They can retrieve the Root Element properties, which direct them to other URLs (realms), implementing the respective protocols.

Configuring the Root Element Module

The WebDAV protocol works over the HTTP protocol, using the HTTP User Module. Open the HTTP User Module settings, and find the Sub-Protocols panel:

Sub-Protocols
RootDAV:

Use the RootDAV Log setting to specify the type of information the Root Element DAV module should put in the Server Log.

The Root Element DAV module records in the System Log are marked with the RootDAV tag.


Principal Elements

The WebDAV protocol and protocols based on WebDAV allow users to access resources of other users if the proper access rights have been granted.
To support WebDAV ACLs (Access Control Lists), each CommuniGate Pro users is granted a unique URL that represents that user in the Access Control Lists. These URLs are:
http://servername[:port]/UserDAV/accountName@domainName
or
https://servername[:port]/UserDAV/accountName@domainName/ URL
where port is a HTTP User Module port (8100, 9100 by default).

Configuring the Principal Elements DAV Module

The WebDAV protocol works over the HTTP protocol, using the HTTP User Module. Open the HTTP User Module settings, and find the Sub-Protocols panel:

Sub-Protocols
UserDAV:

Use the UserDAV Log setting to specify the type of information the Principal Elements DAV module should put in the Server Log.

The Principal Elements DAV module records in the System Log are marked with the UserDAV tag.


File Access

The CommuniGate Pro Server implements access to Account File Storage via the WebDAV protocol (FileDAV).

All FileDAV data requests must be authenticated: the user should specify the Account name and password. The Account and its Domain must have the WebSite Service enabled.

The "root" of the user File Storage has the following URL:
http://servername[:port]/WebDAV/
or
https://servername[:port]/WebDAV/
where port is a HTTP User Module port (8100, 9100 by default).

To Access the File Storage of some other user, the following URLs should be used:


http://servername[:port]/WebDAV/~accountName/
or
https://servername[:port]/WebDAV/~accountName/
where port is a HTTP User Module port (8100, 9100 by default), and the accountName is the name of the Account to access. If this Account is located in a different Domain, user accountName@domainName instead.

Configuring the FileDAV Module

The WebDAV protocol works over the HTTP protocol, using the HTTP User Module. Open the HTTP User Module settings, and find the Sub-Protocols panel:

Sub-Protocols
FileDAV:

Use the FileDAV Log setting to specify the type of information the FileDAV module should put in the Server Log.

The FileDAV module records in the System Log are marked with the FileDAV tag.


CalDAV

The CommuniGate Pro Server supports the CalDAV protocol, a WebDAV protocol extension.

This protocol allows CalDAV clients to access and modify Calendaring and Tasks data stored in the user Account(s).

A full-featured CalDAV client can detect the proper URL for CalDAV operations itself, when it is directed to the WebDAV Root element:
http://servername[:port]/
or
https://servername[:port]/ URL
where port is a HTTP User Module port (8100, 9100 by default).

If the CalDAV client cannot detect the CalDAV URL location, it should be specified explicitly:

http://servername:port/CalDAV/
https://servername:port/CalDAV/

Some CalDAV clients need to be configured to access a particular Calendar or Task collection. Any Calendaring or Tasks Mailbox can be accessed using the following URLs:

http://servername:port/CalDAV/mailboxName/
https://servername:port/CalDAV/mailboxName/

If the mailboxName ends with the ics file extension, the Server removes that extension.

All CalDAV data requests must be authenticated: the user should specify the Account name and password. The Account and its Domain must have the WebCal Service enabled.

If the user Domain Name or Domain Alias name is mail.company.com, the HTTP User port is 80, and the Mailbox name is Calendar, the access URL is

http://mail.company.com/CalDAV/Calendar
or
https://mail.company.com/CalDAV/Calendar.ics

Any Calendar-type or Tasks-type Mailbox can be accessed this way. To access a Mailbox in a different Account, the full Mailbox name should be specified:

http://mail.company.com/CalDAV/~username/Calendar
The authenticated user should have proper access rights to retrieve and/or modify data in Mailboxes belonging to other users.

The CalDAV checks the Mailbox Subscription list and reports all Calendar-type Mailboxes in other Accounts included into this list.

The CalDAV module stores Calendar and Tasks attachments in the Account File Storage, inside the private/caldav/ directory.

Configuring the CalDAV Module

The CalDAV protocol works over the HTTP protocol, using the HTTP User Module. Open the HTTP User Module settings, and find the Sub-Protocols panel:

Sub-Protocols
CalDAV:

Use the CalDAV Log setting to specify the type of information the CalDAV module should put in the Server Log.

The CalDAV module records in the System Log are marked with the CalDAV tag.

Using the Publish/Subscribe (ICS) method

The CommuniGate Pro HTTP User module implements an older, pre-CalDAV method of dealing with data in Calendar and Task Mailboxes.
The module allows client applications to retrieve all items using the iCalendar format. This operation is often called subscribing to Calendar data.
The module also allows client applications to rewrite the Mailbox content new iCalendar-formatted data (to publish calendaring data).

The URL for Calendaring data is:

http://servername:port/CalendarData/mailboxName
https://servername:port/CalendarData/mailboxName
where port is the HTTP User port (8100, 9100 by default).
If the mailboxName ends with the ics file extension, the server removes that extension.
If the mailboxName is empty, the Server uses the Default Calendar name.

All Calendaring data requests must be authenticated: the user should specify the Account name and password. The Account and its Domain must have their WebCal Service enabled.

If the user Domain Name or Domain Alias name is mail.company.com, the HTTP User port is 80, and the Mailbox name is Calendar, the access URL is
http://mail.company.com/CalendarData/Calendar
or
http://mail.company.com/CalendarData/Calendar.ics

Any Calendar-type or Tasks-type Mailbox can be accessed this way. To access a Mailbox in a different Account, the full Mailbox name should be specified:

http://mail.company.com/CalendarData/~username/Calendar.ics
The authenticated user should have proper access rights to retrieve and/or modify data in Mailboxes belonging to other users.

The HTTP module supports the following HTTP operations for the /CalendarData/ realm:

Some applications do not support the DELETE method. These applications expect that the PUT operation removes all previous information from the Calendar Mailbox.
To support these applications, use the CalendarDataDel realm instead of the CalendarData realm, or include the DeleteAll="1" parameter into the URL.
In this case each PUT operation will be preceded with a virtual DELETE operation removing all existing iCalendar items from the Mailbox.


CardDAV

The CommuniGate Pro Server supports the CardDAV protocol, a WebDAV protocol extension.

This protocol allows CardDAV clients to access and modify Contacts data stored in the user Account(s).

A full-featured CardDAV client can detect the proper URL for CardDAV operations itself, when it is directed to the WebDAV Root element:
http://servername[:port]/
or
https://servername[:port]/ URL
where port is a HTTP User Module port (8100, 9100 by default).

If the CardDAV client cannot detect the CardDAV URL location, it should be specified explicitly:

http://servername:port/CardDAV/
https://servername:port/CardDAV/

Some CardDAV clients need to be configured to access a particular Contacts collection. Any Contacts Mailbox can be accessed using the following URLs:

http://servername:port/CardDAV/mailboxName/
https://servername:port/CardDAV/mailboxName/

If the mailboxName ends with the vcf file extension, the Server removes that extension.

All CardDAV data requests must be authenticated: the user should specify the Account name and password. The Account and its Domain must have the WebSite Service enabled.

If the user Domain Name or Domain Alias name is mail.company.com, the HTTP User port is 80, and the Mailbox name is Contacts, the access URL is

http://mail.company.com/CardDAV/Contacts
or
https://mail.company.com/CardDAV/Contacts.vcf

Any Contacts-type Mailbox can be accessed this way. To access a Mailbox in a different Account, the full Mailbox name should be specified:

http://mail.company.com/CardDAV/~username/Contacts
The authenticated user should have proper access rights to retrieve and/or modify data in Mailboxes belonging to other users.

The CalDAV checks the Mailbox Subscription list and reports all Contacts-type Mailboxes in other Accounts included into this list.

Configuring the CardDAV Module

The CardDAV protocol works over the HTTP protocol, using the HTTP User Module. Open the HTTP User Module settings, and find the Sub-Protocols panel:

Sub-Protocols
CardDAV:

Use the CardDAV Log setting to specify the type of information the CardDAV module should put in the Server Log.

The CardDAV module records in the System Log are marked with the CardDAV tag.


CommuniGate® Pro Guide. Copyright © 1998-2012, Stalker Software, Inc.