This manual is deprecated. Please visit https://groupoffice.readthedocs.io for the latest documentation. |
Difference between revisions of "CalDAV calendar server"
(→Thunderbird with the lightning and cardbook plugin) |
|||
(23 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | With the CalDAV calendar server built in you can connect to the Group-Office calendars with other clients. You have to add them to your <b>sync settings</b> first at Settings (top right) -> Synchronization. | |
− | + | ||
− | With the CalDAV calendar server built in you can connect to the Group-Office calendars with other clients. | + | |
To add a calendar you must first determine your baseURI. Ideally your webserver is configured with an alias: | To add a calendar you must first determine your baseURI. Ideally your webserver is configured with an alias: | ||
+ | |||
+ | ==Server Installation== | ||
+ | If you installed the Debian packages you don't have to install anything on the server. Everything is configured by default and you can move on to the client configuration. | ||
Alias /caldav /path/to/go/modules/caldav/calendar.php | Alias /caldav /path/to/go/modules/caldav/calendar.php | ||
Line 8: | Line 9: | ||
In that case the base URI to your CalDAV server is: | In that case the base URI to your CalDAV server is: | ||
− | http(s)://your.url.to.groupoffice/caldav/ | + | '''http(s)://your.url.to.groupoffice/caldav/''' |
Otherwise it's this: | Otherwise it's this: | ||
− | http(s)://your.url.to.groupoffice/modules/caldav/calendar.php/ | + | '''http(s)://your.url.to.groupoffice/modules/caldav/calendar.php/''' |
The CalDAV feature is based on [http://code.google.com/p/sabredav/ SabreDAV]. You can find more information about clients on that page too. | The CalDAV feature is based on [http://code.google.com/p/sabredav/ SabreDAV]. You can find more information about clients on that page too. | ||
+ | |||
+ | ===Testing the server=== | ||
+ | |||
+ | You can simply open the URL in a web browser. If you get a blank page then there's an error. Check the [[Troubleshooting#Error_log|error log]] in that case. It could be that the caldav module isn't installed. | ||
+ | |||
+ | <b>Note:</b> Unlike Group-Office, the username for all DAV servers is case sensitive! | ||
===Installation when PHP runs in CGI mode=== | ===Installation when PHP runs in CGI mode=== | ||
Line 38: | Line 45: | ||
Note the /modules/caldav/calendar.php. Make sure this reflects the correct relative URL of your server file. | Note the /modules/caldav/calendar.php. Make sure this reflects the correct relative URL of your server file. | ||
+ | ===Service discovery=== | ||
+ | For iOS7 it's required to setup service discovery. On a standard Debian box we add this to the virtual host (since 4.2.22): | ||
+ | |||
+ | <pre> | ||
+ | Redirect 301 /.well-known/carddav /carddav | ||
+ | Redirect 301 /.well-known/caldav /caldav | ||
+ | </pre> | ||
+ | |||
+ | For more information read: | ||
+ | |||
+ | https://code.google.com/p/sabredav/wiki/ServiceDiscovery | ||
==The Apple iCal client== | ==The Apple iCal client== | ||
Line 44: | Line 62: | ||
Connecting with iCal: | Connecting with iCal: | ||
− | * Go to preferences in the iCal menu | + | * Go to preferences in the iCal calendar application menu (Do not use System Preferences -> Accounts. This does not work). |
* Go to the Accounts tab | * Go to the Accounts tab | ||
* Press the + button to add a new account | * Press the + button to add a new account | ||
* Select 'CalDAV server' for account type | * Select 'CalDAV server' for account type | ||
* Enter your username, password | * Enter your username, password | ||
− | * For server address, enter | + | * For server address, enter <baseURI>/principals/<your.groupoffice.username>/. Do NOT forget the trailing slash! |
==The Evolution CalDAV client== | ==The Evolution CalDAV client== | ||
Line 63: | Line 81: | ||
To setup TODO lists through Evolution works the exact same (select New tasklist instead of calendar). | To setup TODO lists through Evolution works the exact same (select New tasklist instead of calendar). | ||
− | ==Thunderbird with the lightning plugin== | + | ==Thunderbird with the lightning and cardbook plugin== |
− | + | You can synchronize your mailbox, calendar and addressbook to/from Thunderbird using DAV and IMAP | |
− | + | ||
− | + | ===Mail=== | |
+ | You can setup you e-mail with [[Installing_on_Debian_or_Ubuntu#Connecting_an_external_mail_client|IMAP]] the same way you did in Group-Office | ||
+ | |||
+ | ===Calendars=== | ||
+ | For this you'll need the [https://addons.mozilla.org/thunderbird/addon/lightning/ Lightning] plugin | ||
+ | |||
+ | To add a Calendar: | ||
+ | * Right Click on the list of calendars in the Lightning plugin in Thunderbird and pick "New Calendar..." | ||
+ | * Choice "On the Network", choice CalDAV and enter "http(s)://your.url.to.groupoffice/caldav/calendars/yourusername/calendarname/" in the location field | ||
+ | * Note: if unsure about the calendarname use your webbrowser and go to http(s)://your.url.to.groupoffice/caldav/ to find the available calendars | ||
+ | * Give your calendar a display name and color for Thunderbird and press Finish. | ||
+ | * Thunderbird will now ask for a Username and Password. Enter your Group-Office credentials | ||
+ | |||
+ | ===Addressbook=== | ||
+ | Synchronize your address book using CardDAV with [https://addons.mozilla.org/thunderbird/addon/cardbook/ CardBook] | ||
+ | |||
+ | To add an address book: | ||
+ | * Click the menu button on the left of the menubar and choice: Address Book > Add address book | ||
+ | * Pick "Remote" and click Next | ||
+ | * In the URL field enter: "http(s)://your.url.to.groupoffice/carddav/addressbooks/yourusername/" and use your Group-Office username and password | ||
+ | [[File:Cardbook1.png]] | ||
+ | * Click the "Validate" button. If all goes well the "Next" button will be enabled and you can continue. | ||
+ | * You will then see the address book that are made available to the user for synchronization | ||
+ | [[File:Cardbook2.png]] | ||
+ | * Check the address book you want available in Thunderbird and Finish. | ||
+ | |||
+ | |||
+ | ===Multiple accounts=== | ||
+ | If you want to setup multiple accounts on the same domain you have to edit an advanced configuration parameter. | ||
+ | |||
+ | Go to Edit > Preferences > Advanced > Config Editor. Click the "I'll be careful, I promise!" warning, find "calendar.network.multirealm", double click it to toggle it to "true" and finally restart Thunderbird. You should get an auth dialog for all configured CalDAV accounts. | ||
+ | |||
+ | ==Maximum age of events== | ||
+ | By default, Group-Office only synchronizes events that are not older then 1 month. If you would like to change this you can control it with this parameter in config.php: | ||
− | + | $config['caldav_max_months_old']=6; | |
− | + | ||
− | + |
Latest revision as of 17:54, 23 November 2017
With the CalDAV calendar server built in you can connect to the Group-Office calendars with other clients. You have to add them to your sync settings first at Settings (top right) -> Synchronization. To add a calendar you must first determine your baseURI. Ideally your webserver is configured with an alias:
Contents
Server Installation
If you installed the Debian packages you don't have to install anything on the server. Everything is configured by default and you can move on to the client configuration.
Alias /caldav /path/to/go/modules/caldav/calendar.php
In that case the base URI to your CalDAV server is:
http(s)://your.url.to.groupoffice/caldav/
Otherwise it's this:
http(s)://your.url.to.groupoffice/modules/caldav/calendar.php/
The CalDAV feature is based on SabreDAV. You can find more information about clients on that page too.
Testing the server
You can simply open the URL in a web browser. If you get a blank page then there's an error. Check the error log in that case. It could be that the caldav module isn't installed.
Note: Unlike Group-Office, the username for all DAV servers is case sensitive!
Installation when PHP runs in CGI mode
If you use PHP through CGI or FastCGI and Apache authentication headers are not passed through by default. You can enable this with the following mod_rewrite rule:
<IfModule mod_rewrite.c> RewriteEngine on RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] </IfModule>
If you already had a mod_rewrite rule to map all urls to a server file, you might need to change this to something like:
<IfModule mod_rewrite.c> RewriteEngine on RewriteRule .* /modules/caldav/calendar.php [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] </IfModule>
Note the /modules/caldav/calendar.php. Make sure this reflects the correct relative URL of your server file.
Service discovery
For iOS7 it's required to setup service discovery. On a standard Debian box we add this to the virtual host (since 4.2.22):
Redirect 301 /.well-known/carddav /carddav Redirect 301 /.well-known/caldav /caldav
For more information read:
https://code.google.com/p/sabredav/wiki/ServiceDiscovery
The Apple iCal client
Connecting with iCal:
- Go to preferences in the iCal calendar application menu (Do not use System Preferences -> Accounts. This does not work).
- Go to the Accounts tab
- Press the + button to add a new account
- Select 'CalDAV server' for account type
- Enter your username, password
- For server address, enter <baseURI>/principals/<your.groupoffice.username>/. Do NOT forget the trailing slash!
The Evolution CalDAV client
Connecting with Evolution:
- Find your calendar URL at: <baseURI>/calendars/
Select your username and then find your calendar.
Eg. for John Smith: <baseURI>/calendars/jsmith/smith-john-1/
- Connecting to a CalDAV server is done through the "New > Create new calendar" dialog. In this dialog it is possible to specify a CalDAV location. (Replace http(s) with caldav)
To setup TODO lists through Evolution works the exact same (select New tasklist instead of calendar).
Thunderbird with the lightning and cardbook plugin
You can synchronize your mailbox, calendar and addressbook to/from Thunderbird using DAV and IMAP
You can setup you e-mail with IMAP the same way you did in Group-Office
Calendars
For this you'll need the Lightning plugin
To add a Calendar:
- Right Click on the list of calendars in the Lightning plugin in Thunderbird and pick "New Calendar..."
- Choice "On the Network", choice CalDAV and enter "http(s)://your.url.to.groupoffice/caldav/calendars/yourusername/calendarname/" in the location field
- Note: if unsure about the calendarname use your webbrowser and go to http(s)://your.url.to.groupoffice/caldav/ to find the available calendars
- Give your calendar a display name and color for Thunderbird and press Finish.
- Thunderbird will now ask for a Username and Password. Enter your Group-Office credentials
Addressbook
Synchronize your address book using CardDAV with CardBook
To add an address book:
- Click the menu button on the left of the menubar and choice: Address Book > Add address book
- Pick "Remote" and click Next
- In the URL field enter: "http(s)://your.url.to.groupoffice/carddav/addressbooks/yourusername/" and use your Group-Office username and password
- Click the "Validate" button. If all goes well the "Next" button will be enabled and you can continue.
- You will then see the address book that are made available to the user for synchronization
- Check the address book you want available in Thunderbird and Finish.
Multiple accounts
If you want to setup multiple accounts on the same domain you have to edit an advanced configuration parameter.
Go to Edit > Preferences > Advanced > Config Editor. Click the "I'll be careful, I promise!" warning, find "calendar.network.multirealm", double click it to toggle it to "true" and finally restart Thunderbird. You should get an auth dialog for all configured CalDAV accounts.
Maximum age of events
By default, Group-Office only synchronizes events that are not older then 1 month. If you would like to change this you can control it with this parameter in config.php:
$config['caldav_max_months_old']=6;