I use a personal server running Nextcloud, a cloud solution to access, share and protect files, calendars, contacts, communication and more at home and in enterprise environments. There, I keep my personal calendar, which is synced to a variety of mobile devices. However, at work I am forced to use Microsoft Outlook with Exchange for my calendar and contacts. To have access to my work calendar on my personal device would force me to enrol my personal device in a corporate environment. However, that would entail certain policies and restrictions I’m not comfortable with on my personal device. Fortunately, I found a way of sharing Outlook calendar with Nextcloud.

The problem

What I need, is a way to display my Outlook work calendar on my personal device. I don’t need to change the calendar but to prevent appointment conflicts I want to see both my personal and work calendars side by side in a single app.

My organisation uses a traditional Microsoft Exchange environment, which runs on premise and can be reached from outside via Exchange’s web interface and ActiveSync. If you want access on a mobile device, ActiveSync really is the way to go. Like I said, that would force me to accept company security policies and restrictions. I don’t feel comfortable with that for various reasons.

Fortunately, Microsoft Outlook 2010 has a function that allows me to publish my calendar to a remote WebDAV server, such as Nextcloud. This will export my current calendar as an iCalendar file and place it in my Nextcloud personal space.

Sharing your calendar in Outlook 2010

So far, so good. Unfortunately, the generated iCalendar file is suitable for transporting my calendar but it requires manual importing in the Nextcloud calendar module. This has to be done every time the iCalendar file is updated which happens several times per day. That gets old very fast.

The answer

I now had a solution for sharing Outlook calendar with Nextcloud but the manual importing of the iCalendar file continued to annoy me. I tried several things, even attempted to write a script to automate the process but ultimately this proved too much of a kludge.

Now, I think I have come up with an effective, automated and cheap solution. I continue to publish my calendar to the Nextcloud server like shown above. Within the Nextcloud web interface, I share the iCalendar file with a link so it can be accessed from the Internet.

The iCalendar file in Nextcloud

The link will look something like this:

https://www.example.com/nextcloud/s/bnr9wehf7sdkfn

This link refers to the file on the Nextcloud server but it doesn’t work when you try to subscribe to it. To make it work, you need to change it to be an actual download link.

https://www.example.com/nextcloud/s/bnr9wehf7sdkfn/download

Just add “/download” after the random string of characters and you have a link you can actually subscribe to! Even when the file gets updated by the Outlook client, the link continues to work. That means your calendar will always be up to date.

Any iCalendar compatible client will be able to connect to the file on the Nextcloud server. For Android based devices, I recommend the app ICSDroid. For the price of a cup of coffee you get access to your shared calendar, which is definitely worth it to me.

Summary

For the TL;DR crowd, here is a quick summary for sharing Outlook calendar with Nextcloud.

  1. Publish calendar online from MS Outlook to Nextcloud server
  2. Share file using link in Nextcloud web interface
  3. Add “/download” (without quote marks) to the end of the link
  4. Use the modified link in your ICS client

Join the Conversation

10 Comments

Any thoughts about this? Please leave a comment!

This site uses Akismet to reduce spam. Learn how your comment data is processed.

    1. Hi Michael,

      That does look like the right URL. Do you have 2FA enabled for your Nextcloud user (and I highly recommend this)? If so, you’ll need to generate an app password for uploading to this URL from Outlook.

      You can generate app passwords by going to settings and then to security while logged into the Nextcloud web interface.

      1. Thanks for the reply! It asks me for credentials but I’ve tried entered just username and username@mydomain.com but to no avail. It seems fine mapped as a network drive but not through Outlook. Very frustrating!

        1. Don’t mention it. Sorry to hear it’s not working out for you. It’s been a while since I used this setup and I’ve since switched employers so I can no longer verify this set up for you. Perhaps you can try researching the Outlook error message or the Nextcloud server log to see if it yields anything helpful.
          If your organization allows you to share your Exchange calendar, you could use the Nextcloud calendar app and subscribe to the published calendar that way.

        2. I just tried this and it worked like a charm. If you are in a domain, you have to use “\username”, if you just type “username” then Outlook will send “domain\username”, which obviously your Nextcloud won’t understand.

  1. In our office we are trying to move from google to a complete on-premise nextcloud environment. the caldav synchronizer works good and I am planning to install it on all of my office desktops and laptops. however I found another useful tool which can copy google contact and calendar entries to my nextcloud system easily. (cloud to cloud copy), and anyone who is doing the same may find it useful.

    here is the link: https://us.evomailserver.com/product_eco.php

%d bloggers like this: