An Exchange alternative for collaboration platform
Since 2010, ownCloud has been an Exchange Server alternative for users to synchronize contacts, calendar and tasks. With CardDAV and CalDAV protocols as its base, users are able to synchronize entries from various client software/devices, such as iOS (iPhone & iPad), Outlook, Thunderbird, Android, macOS and etc.
Following our previous article on building an ownCloud server on Raspberry Pi, we will now delve into the synchronization of contacts, calendar, and tasks across various software and devices.
ownCloud utilizes WebDAV to offer CardDAV and CalDAV services. In the Calendar and Contact sections of each ownCloud account, you will find the provided URLs. These URLs can be used in other client software or devices to remotely access calendar and contact data. (Assuming SSL has been properly configured on ownCloud server and owncloud10.ddns.net is the server host name.)
CardDAV - https://owncloud10.ddns.net/remote.php/dav/addressbooks/users/admin/contacts/
CalDAV - https://owncloud10.ddns.net/remote.php/dav/
on iOS - https://owncloud10.ddns.net/remote.php/dav/principals/users/admin/
iOS
The location where you can add a CalDAV or a CardDAV account is: Settings –> Passwords & Accounts –> Add Account –> Other. Right here, you can tap on Add CardDAV Account or Add CalDAV Account to proceed.
CardDAV:
#1. Tap on Add CardDAV Account.
#2. Enter Server, User Name, Password and Description. Then, tap on Next at upper right.
#3. Tap on Continue and OK after SSL configuring error. Tap on Advanced Settings.
#4. Tap on space next to Account URL and enter the following URL: (Assuming SSL has been properly configured on ownCloud server and owncloud10.ddns.net is the server host name.)
https://owncloud10.ddns.net:443/remote.php/carddav/addressbooks/admin/contacts/
#5. Upon finishing entering URL, tap on <CardDAV at upper-left and click on Next at upper-right.
#6. Upon information is verified, an ownCloud CardDAV account is added.
#7. In iOS’s built-in Contacts app, tap Groups at upper-left and make sure All owncloud10.ddns.net under OWNCLOUD10.DDNS.NET is checked. Otherwise, contacts will not sync.
CalDAV:
#1. Tap on Add CalDAV Account.
#2. Enter Server, User Name, Password and Description. Then, tap on Next at upper right.
#3. Tap on Continue and OK after SSL configuring error. Tap on Advanced Settings.
#4. Tap on space next to Account URL and enter the following URL: (Assuming SSL has been properly configured on ownCloud server and owncloud10.ddns.net is the server host name.)
https://owncloud10.ddns.net:443/remote.php/caldav/calendars/admin/personal/
#5. Upon finishing entering URL, tap on <CalDAV at upper-left and click on Next at upper-right.
#6. Upon information is verified, an ownCloud CalDAV account is added.
#7. In iOS’s built-in Calendar app, tap Calendars at bottom and make sure Personal under OWNCLOUD10.DDNS.NET is checked. Otherwise, calendar will not sync.
Outlook (using EVO Collaborator for Outlook)
#1. Download and install EVO Collaborator for Outlook from official website.
#2. Open Outlook and click on Configure Profile(s) to the left within EVO ribbon.
#3. Click on Profile #21 at the bottom-left and enter server host name at the top shown as below: (Assuming SSL has been properly configured on ownCloud server and owncloud10.ddns.net is the server host name.)
https://owncloud10.ddns.net/remote.php/
#4. Enter username and password. Then, click on TEST button at bottom. Once authenticated, contact and calendar URLs will be auto-discovered. Finally, click on Apply button to save and click on Quit to start synchronizing.
#5. In contact page, a folder named CardDAV contacts 21 will appear. In calendar page, a folder named CalDAV calendar 21 will appear. Click on these folders to view sync results.
Thunderbird
SOGo Connector for Thunderbird
#1. Download SOGo Connector from its official website. Make sure click on 60.0.2 to proceed download. Open Thunderbird.
#2. Click on Plugins to the left and click on gear icon at upper-right. Then, select Install Add-on from File… and browse to folder where you download sogo-connector-60.0.2.xpi file.
#3. Open the xpi file and click on Install Now button to proceed. Restart Thunderbird.
#4. Go back to main page and click on Address Book at the top. Then, from menu, browse to File / New / Remote Address Book.
#5. Name the address book and enter contact URL shown as below. Then, click on OK to continue. (In your scenario, simply replace owncloud10.ddns.net with your server host name)
https://owncloud10.ddns.net:443/remote.php/carddav/addressbooks/admin/contacts/
#6. In the popup window of Add Security Exception, click on Confirm Security Exception. Then, enter username and password in the following popup window to authenticate.
#7. Once sync is complete, you will see your ownCloud contacts in Address Book.
Lightning
#1. Open Thunderbird. Open Add-ons page from menu to the right and click on See all next to Up & Coming. Enter Lightning in search box at upper-right.
#2. Click on + Add to Thunderbird button to the right of the first search result. Click on Install to proceed and restart Thunderbird.
#3. From menu on upper-right, click on Events and Tasks / Calendar to open calendar page. Then, mouse right-click on space under calendar list and click on New Calendar….
#4. In the popup window, click on On the Network radial and Next. Click on CalDAV radial and Next. In Location, enter URL below: (In your scenario, simply replace owncloud10.ddns.net with your server host name)
https://owncloud10.ddns.net:443/remote.php/caldav/calendars/admin/personal/
#5. Name the calendar in next window and click on Next to continue. Finally, click on Finish to wrap up.
#6. Once sync is complete, you will see your ownCloud calendar events in Calendar page
Android
CardDAV-Sync
#1. On Android phone, open Google Play Store and search for CardDAV-Sync. Download and install it.
#2. Open CardDAV-Sync and tap on CardDAV at the top. Enter server name with port, username and password. Then, tap on NEXT. (Letters of server name in Lower and upper case matter)
#3. Tap on FINISH to wrap up configuration. Then, tap on Done. Next, open the built-in Contacts app and you will see owncloud contacts already synced.
CalDAV-Sync
#1. On Android phone, open Google Play Store and search for CalDAV-Sync. After purchasing, download and install it.
#2. Open CalDAV-Sync and tap on CalDAV at the top. Enter server name with port, username and password. Then, tap on NEXT. (Letters of server name in Lower and upper case matter)
#3. Put check marks on calendars you like to sync and tap on NEXT. Then, tap on FINISH to wrap up. Open the built-in Calendar app and make sure CalDAV account and calendar are checked. Last, calendar entries will be synced.
macOS
For macOS, I can add both calendar and address book successfully by manually adding URLs in Manual or Advanced Mode. But, there are issues during the actual syncing process within both built-in macOS app of Contacts and Calendar. For Contacts, there is no syncing activity at all while error message of “The server specified an invalid calendar home. – No calendar home was specified for the account “owncloud10.ddns.net”.” pops up for Calendar.
I believe it is macOS’s issue because I can successfully sync the same CalDAV/CardDAV account on other various platforms, such as Outlook, Thunderbird, iOS, and Android. Yet, I have also heard of users being unable to configure or sync with Mojave too. Anyway, I will still write down configuration steps below for your reference in the future.
CardDAV
#1. Go to System Preferences / Internet Accounts. Click on “+” at bottom-left and click on Add Other Account…. then, select CardDAV account.
#2. Select Manual on Account Type and enter username/password. For Server Address, enter the below:
https://owncloud10.ddns.net/remote.php/dav/principals/users/admin/
#3. Click on Sign in to log in and exit the window. Last, open Contacts app to view your ownCloud contacts.
CalDAV
#1. Go to System Preferences / Internet Accounts. Click on “+” at bottom-left and click on Add Other Account…. then, select CalDAV account.
#2. Select Advanced on Account Type and enter username/password. For Server Address, Server Path, and Port, enter as below:
Server Address: owncloud10.ddns.net
Server Path: /remote.php/dav/calendars/admin/personal/
Port: 443
#3. Click on Sign in to log in and exit the window. Last, open Calendar app to view your ownCloud contacts.
Summary
In a scenario where you already have a functioning mail server, you can establish a Raspberry Pi server running ownCloud server to provide CalDAV/CardDAV services. This setup offers an affordable way to enhance collaboration among colleagues. Alternatively, if you have yet to configure your mail server, you can consider options like EVO Mail Server, which combines mail, CalDAV, CardDAV, and webmail services into a single package.