GSD WebDAV Installation
The DAV Web Service is available to download from a gsd-webdav folder.
Requirements
Services
- Remote Access Server (GSD Fernzugriff-Server)
- Processing server (GSD Verarbeitungs-Server)
DOCUframe
At first, please find option for loading new menu:
To be able to manage user settings associated with Dav, the first thing we need to do is load the xDav_Configuration
menu:
To go to the window with address books, go to the menu shown in the screenshot below.
In this window it is possible to manage addresses located in address book. However, to be able to manage it, a user or group of users must have the rights (read, write, create, remove) granted for "address books" class.
To select addresses or calendars which we want to synchronize, we need to go to the user settings.
Then in the window editing mode, we need to load an additional page.
Page which name is xDavAssignmentPage
.
After performing this procedure, we can manage items which we want to synchronize.
Last point is to give all users permissions to read/write to GSD-Dav classes: Addressbook and Calendar, in advanced user settings.
DOCUframe event macros
Warning
Below there is a list of DOCUframe CreateInit, PreStore, PostStore and PreDelete event macros used by GSD-Dav module:
- DBPostStore_Adresse
- DBPreDelete_Adresse
- DBPreStore_Adresse
- DBPreDelete_Adressliste
- DBPreStore_Adressliste
- DBCreateInit_Termin
- DBPreStore_Termin
- DBPreDelete_Termin
- DBPostStore_Terminserie
- DBPostStore_User
- DBPreDelete_User
- DBPreStore_User
- DBPreDelete_xDavAddressbook
- DBPreStore_xDavAddressbook
- DBPreStore_xDavConfig
- DBPostStore_xDavVCard
- DBPreDelete_xDavVCard
If you have custom implementation of above event macro in your database (written as end user level) please make sure that event macro from GSD-DAV module will be executed by adding EventExe
function execution to your macro:
EventExe( "event_macro_name", UL_GSD, "GSD-Dav", Object, Class );
User rights
From version 0.0.0.65 GSD-Dav module can use GSD-RightsControl to secure it's configuration and possibility to edit other's address books. From version 0.0.0.72 GSD-Dav module can use GSD-RightsControl to secure deletion of the addresses. In order to grant user rights to these functionalities it is needed to load GSD-RightsControl menu.
From displayed list select GSD-RightsControl menu
Note
When GSD-RightsControl is not present in the database, all functionalities are available to everyone. On the other hand, when GSD-RightsControl is imported but not yet configured, rules are active by default, but none user have granted access so functionalities will be unavailable.
Warning
GSD-RighstControl is a part of Basismodule, and should never be imported alone
Once menu is loaded, please open GSD-RightsControl management console, under following menu entry.
In opened window three rules can be found:
- GSD-Dav.AddressbookAdmin - edit of other's address books
- GSD-Dav.EventMacrosConfig - configuration of GSD-Dav module
- GSD-Dav.AddressDeletion - the way of deleting addresses. When user does not have an access to this, deleted addresses from the device will be just removed from the synchronization. When the user does have rights, address will be deleted permanently.
Double click on either rule opens it's dialog window, where the rule can be edited.
To activate the rule, just simply select "Active" checkbox. To grant user (group) rights to access given functionality just add it to the "User's groups/Users" list.
Addresses synchronization settings
From version 0.0.0.67 GSD-Dav module can use GSD-RightsControl to secure certain members of synchronized addresses. From version 0.0.0.72 GSD-Dav module has a possibility to configure the GSD-RightsControl rules for every Address class separately. In order to configure that, one need to open permissions dialog, under:
In opened dialog, one can configure read rights to specific class, member and user.
Note that many members can be selected at the same time, just be aware that when it is done this way, on the right side only common users (groups) will be visible.
Important
Inheritance is used here, so when there are no specific rights for class Kunde configured but there are for AdresseNr they will be taken to consideration!
Sync configuration
From version 0.0.0.73 GSD-Dav module can map some members to specific field of VCard. One can configure it under:
In opened dialog one can see default configuration. From now on it is possible to create new rule and select a class and map specific member to a VCard field, or edit already existing rule and select VCard field of one's choice.
Possible mappings are:
- Telefon (0-4)
- Custom
- Work
- Home
- Main
- Pager
- Other
- EMailAdresse (0-3)
- Custom
- Home
- Work
- Other
- Mobile
- Fax(0-2)
- Home
- Work
- Other
Note that only one object for specific class and member can be created. One VCard field can be assigned to one member at a time, except Custom field. Custom option can be selected many types, it is just important to fill the Label field.
Note
Unfortunately it's not possible to set mapping for mobile phones numbers due to iOS conflicts.
Sync status
From version 0.0.0.82 GSD-Dav module delivers a functionality of sync status. This clearly shows the status of synchronization of specific user. One can see how many contacts are synced and how many appointments of a specific calendar are synced.
It is important to make sure to turn on data exchange (Datenaustausch) macro xDavUpdateTimeFrame. This will allow synchronization to respect time frames, set in configuration. We recommend it to set it daily, at midnight.
There is also possibility to reset the synchronization of addresses or calendars. This results in deleting given addressbook or calendar from device and recreating it
DokumentTermin sync
Also from version 0.0.0.82 GSD-Dav module allows to stop synchronization of DokumentTermin class (reminders). To set this one need to open GSD-Dav module configuration.
In opened dialog one can turn on/off DokumentTermin class synchronization with a checkbox.
Asynchronicity
From version 0.0.0.82 GSD-Dav module is asynchronous. This means that more demanding operations will be queued and executed by GSD Verarbeitungs-Server later on. That is why it is necessary to configure GSD-Verarbeitungs-Server for that database, and turn on data exchange (Datenaustausch) macro, called xELEventCacheLoop. Without that GSD-Dav won't work at all!
xMA configuration
xMA sync
Warning
It is not possible to synchronize calendars and addresses using WebDAV and WebDAV + xMA functionalities simultaneously. You can choose only one option - either WebDAV or WebDAV + xMA.
There is also a possibility to install dav module together with xMA module. The xMA module introduces its own Cal/CardDav addons that can work together with dav addons or can work alone. To integrate CalDav and CardDav synchronization with DOCUframe and xMA it is necessary to import Dav and Dav-Standard-Impl modules to your DOCUframe database together with xMA module. After this procedure, you should connect your device to xMA web service to obtain your deviceId. After successful connection your deviceId can be found there:
xMA Sync-Status
Sync status in GSD-MobileAccess works in a way that when one will add address list or calendar to synchronization it will count all objects, even deleted, as pending to be synchronized.
For example:
- add calendar with 100 appointments
- delete 90 of them
- there are still 100 objects to synchronize
- upon synchronization only 10 appointments will be displayed on the device
This example shows that when there are some objects missing it doesn't necessarily means that it doesn't work.
Objects are marked as synchronized when they are being serialized and sent to the device. The device itself is not sending any acknowledgement response, so we are not able to determine how many of them has been actually synchronized.
Also note that when the vCard or ICS are malformed (due to wrong input data, e.g. new line character in telephone) the device may not display given contact or appointment.
Taking all this in the consideration be aware that the amount of objects that sync status displays is not always the same as the amount of objects that are actually on the device.
Furthermore sync status in GSD-MobileAccess is meant for GSD-MobileAccess, that is why it may have some issues when working together with GSD-Dav module!
xMA addons configuration
As mentioned above, xMA module introduces its own Cal/CardDav addons. To indicate which addons should be used load xDav_Configuration menu:
Then click menu button:
A dialog window should appear. In combobox you can find list of modules to work with GSD-DAV. Default will be GSD-DAV
, to use addons from GSD-MobileAccess module, simply select GSD-MobileAccess
from the list.