Tuesday 30 October 2007

How to synchronize iCal with Exchange?

Apple iCal is a very neat calendaring application. I love it. It synchronizes with my iPhone. It works reliably. The new version supplied with Leopard has everything I need: scheduling appointments, booking rooms, inviting other people, tells other people when I am busy or free.

Though, it is not compatible with Microsoft Exchange server our University uses.

I have run a little investigation on how to resolve the problem, and I'd like to share my finding with you.



Solution 1: Use Microsoft Entourage.

Entourage is a part of Microsoft Office for Mac. It is a Mac version of Outlook. It will allow you to manage your mail and calendars well. You can even synchronise your calendar with iCal! Automatically!
Just go to Entourage>preferences, and select Sync Services.
Now, on the right, you can ask Entourage to synchronise your calendar with iCal. This will create an additional calendar in your iCal called Entourage. It gives you three options.
  1. Take verything from Exchange and put it into iCal,
  2. take everything from that special calendar in iCal and put it into Exchange,
  3. Merge the calendars, and make sync work both ways.

If you want to book a room, you can do it with Entourage. If you just want to notify your colleagues that you are not available for a meeting every workday from 1pm to 2pm, just create a recurring appointment called "Lunch" and they will know you are busy.

If you are happy with this solution, go for it! It will even synchronise with your iPhone! Thanks for coming, and you know how to make a blogger happy - read carefully what Google guys suggest to you in the right part of the page.

Now, why I don't like Entourage.

First of all, I just love iCal and Mail.app. I do not want to use Entourage, even though I get it for free through the site license.

Second, the current version of Entourage was written years ago, when Macs were made with PowerPC processors. Those processors spoke a different language to what Intel processors speak. If you run Entourage (which is written in the ancient language of PowerPC) on you shiny new Intel Mac, you use a translator with a Rosetta Stone (go and find what it is in Wikipedia, it is interesting). The point is that the translator is slow. And iCal is written in plain English, oops... in plain Intel, and it works natively.

Third, Entourage can only synchronize your calendars while it is running. You cannot say it synchronize, and go on using iCal and mail.app alone. You still need to run Entourage. Though, you can run it hidden, press Command-H when Entourage is open and it is now hidden.

Fourth.... I do not like Entourage. I do not want to support Microsoft... I want everything to be simple....

We all hope that Microsoft will update their Office for Mac early next year, and hopefully some of my problems will be resolved. I am not sure, though, if it is worth the money people pay for it.

Oh, if you are a representative of Microsoft marketing, please, contact me and I will let you know what I want for Christmas.

If you are still with me, than you are probably looking for an alternative, so there you go:

Solution 2: Use GroupCal from Snerdware

The guys have made quite a job. It really works! Everything I ever wanted. Though, it does not work under Leopard.... yet...
Go and see for yourself: www.snerdware.com/groupcal

I would be happy, but...

  1. It does not work with Leopard.... yet...

  2. The way you see other people's free/busy time, and if the room is available is not nice. How I wish it worked just exactly like iCal in Leopard promises...

  3. I do not have a site license, and my Boss will tell me to go and use Windows. So, paying $55 from my own pocket is unpleasant. Please, fix the problems and make it a 20...



So, I went on went on with my investigation

Solution 3: Use open standards! Like iCal Server!

Oh, if you are powerful enough, you can save yourself quite a buck by not using Exchange at all! Go for CalDAV solution which will do everything you ever waned for free. It will work seamlessly with iCal in the end. And remember, iCal Server is open source, you can install it on one of your Macs for free. Whatever Apple charge for OS X Server, they charge it for the convenience of seamless installation. Contact the (smart) tech support.

This was not an option for me... so I went on and discovered another twisted solution.

Solution 4: iCal to Google Calendar to Outlook to Exchange. All aboard!

Bad news - you won't be able to see busy/free time of other people, and you still have to pay $50.
Good news - it will also synchronise with Google Calendar, and even send you SMS with notifications if you want.

The solution consists of two parts. The first one is to use magical Spanning Sync. This is a little program which will synhronize your iCal with Google Calendar. Works like a charm. Go for it even if you do not want anything else. Leopard compatible. Best program you can buy for your Mac, and just $25 for a year.

The second part is to use SyncMyCal tool from www.syncmycal.com on a Windows machine. I have enough of old computers I can hide in a cupboard at work which will run a scheduled synchronisation of Google Calendars with my Exchange...

Well... maybe Entourage is not all that bad after all... This is a really twisted solution. I am not going to use it.

Solution 5: Use Outlook Web Access

This is a web application to access your mail and calendars on the Exchange servers. Many companies have it. Clumsy and awful... I will use it only if I have no other choise whatsoever.

Solution 6: Do it the geeky way
Here is how: http://www.macosxhints.com/article.php?story=20041110141248547

I have to admit that I never tried this idea. Tell me if it works for you.

Solution 7: Hosted services

There are a number of synchronisation services, free and commercial, which will allow you to synchronise your calendars across different platforms. I have tried these:
  • Xchange network
  • ScheduleWorld


The main problem with these is that I do not want my calendars to be hosted somewhere else. I do not want even a potential breach of my privacy.

Now iCal supports proper communication with Microsoft Exchange server. If you are looking for hosted Exchange solution check out SherWeb at http://www.sherweb.com/

Nonexisting Solution: CalDAV connector to Exchange

This is what I would like to see. I want to have a CalDAV server, like iCal Server from Apple, able to fetch all the data from Exchange. This has to work transparently, as if I am using CalDAV.

The project itself does not sound impossibe. There are open source CalDAV implementations. There is Evolution Exchange Connector, an open source client for Microsoft Exchange. The final step is to make a transparent implementation of CalDAV server which talk to Exchange. Everyone will be happy then.

If you are a developer, and you can make this happen, then please, do! Make it cheap, like $20-$30, and you will sell a ton of copies. Send me a cheque for the idea if it works out well. Seriously, contact me if you are interested in this development, I can contribute to requirements. We can make millions happy.

Conclusions

I ended up printing out my calendar and sticking it to my door. People have to ask me if I am free at any particular moment, and I will check with my iCal. I do not synchronise with Exchange.

I really hope, the whole problem can be resolved in the year to come.

So far... dead end....

Thanks for reading. I guess, there must be some other solutions. Please, share your experiences and ideas in the comments. Check out what Google suggests in the right pane, they may have found a better solution elsewhere.

I do not hold any stock in any companies mentioned in this article. Your feedback is always welcome.

Cheers!

PS: I just have found that Boeing claim they have implemented an Exchange connector for CalDAV. I could not find any more details about this rumor.

50 comments:

Anonymous said...

I'm with you, looking for the exact same solution (actually, I came here googling for it): A CalDAV connector for Exchange. Yeah, I have read about that Boeing solution too, but I don't think it is public or free stuff.

The people at Snerdware says GroupCal for Leopard will be available until some day on 2008 Q1 (and that's for Exchange 2003; I think Exchange 2007 is another story).

Today I have an account on a Zimbra hosting, and use the Zimbra iSync connector. It works well, but does not leverage the full potential of iCal.

It would be great to have a third application who could sync between Exchange and Apple iCal server.

Vlad said...

Thanks for sharing your findings Xavier!

So far one of the best solutions will be not to use Exchange at all. There are million ways of serving IMAP e-mail without using a non-compliant (to standards) server. And now, many clients (there are even some developments for Outlook) are supporting CalDAV for calendars, so there is no need for Exchange for that.

The problem is that if your company (or the University in my case) is stuck with Exchange, there is no way of getting out of a pit. Exchange is a very demanding solution, and in many if not all cases requires a dedicated engineer for maintenance. These engineers are usually advising on what software to use for particular needs and there no way someone would advise to eliminate the foundation of their job. And the most powerful weapons of Microsoft - uncertainty, doubt and fear - work the best. Why risk eliminating the Exchange if we depend on it so much.

Unfortunately, the game is not fair the other way around. Apple, or Open Source Community, cannot implement full Exchange support as Exchange protocol is not published and is a subject of continuous changes.

Microsoft well knows that Exchange has sold them millions of copies of the Office and Windows. They would never enable other products to compete in this area. For the same reason they will never implement CalDAV in exchange.

At the moment I have found the simplest solution to the sync problem - I do not use any shared calendars. If someone wants to arrange a meeting with me, they must contact me and ask. And if I want to arrange one, I will write an e-mail asking everyone if they have any time available.

And this is 2007 coming to an end.

Anonymous said...

I am with you too !!
I've been trying for a synchronisation between Outlook and iCal for about half a year now !!
At the moment I use the "iCal - Google Calendar - Outlook"-way but it does not work well !! Often Appointements dissapear and I miss them (which happend last week when I forgot to bring my dad's car for changing tubes) ..

I spent a lot of nights searching for a solution but I couldn't find any neighter ..

I hope for a better office and a cheap and good working version of GroupCal for Leopard !!

Cheers from Austria !!

Anonymous said...

Hi, thanks for providing such a detailed experiences. After reading though your solutions, I ended up trying with one solution, which is not mentioned here. And the result is good and works for my Leopard (10.5.1).

You guys could try it out yourselves. Here is the Actionscripts:
http://www.macosxhints.com/comment.php?mode=display&format=threaded&order=ASC&pid=78754

Anonymous said...

Look into Plaxo. They'll sync your Outlook to a central hosted calendar and then sync your iCal to that. But still no seeing co-workers or room availability.

Here's hoping MS does something in Office 2008!

Anonymous said...

I also have one more idea - using a smartphone /pda withe active sync protocol (eg. winmobile or mfe by nokia) and isync on your mac...
not perfect, but works here ;)

Anonymous said...

Hey, you might be interested in my solution: http://blog.indigio.com/index.php/2008/01/23/goodbye-outlook/

I created a web service to provide read only iCal data. It uses active directory credentials to pull the exchange data through the webdav api and returns the calendar data in iCal format.

Max Brassart said...

RIm/Blacberry offer un app PocketMac SyncManager wich does an excellent job with a ... Blackberry

Nothing perfect ...

Anonymous said...

FYI, Entrouage is NOT the Mac version of Outlook. In 2001, Microsoft had an Outlook beta for Mac that was Exchange (activesync) native. Entourage uses MAPI (MS's IMAP-like protocol) to poll the exchange server (at the interval you specify), while Outlook receives pushes from the exchange server. The only reliable way to set up a meeting is to make sure you force an update just before checking people's schedules. Even then, I've found it to be quirky at best.

Anonymous said...

Has Anyone put any brain time to using the up coming iphone enterprise real time exchange push, and then syncing your iphone to ical. In the press release of the iphone 2.0 it claims that you will be able to get native activesync right to your iphone, and with that you should be able to sync to your mac, and get all the info from the exchange server. it is the best solution I have thought of. still waiting to see what snerdware does

Anonymous said...

Entourage v.X, 2004, and 2008 all use OWA/HTTP/WebDAV. There's never been a MAPI implementation for OS X, unless you could Outlook 2001 running in Classic.

Anonymous said...

My solution has been a simpler and efficient version of your fourth:
1.) I set my google calendar to subscribe to my two iCal calendars via email (my home cal and the cal that my ipod touch generates).
2.) At the end very week I export my outlook calendar into my main google calendar
3.) I subscribe to my main google calendar in ical
4.) I access my exchange mail via mail.app imap, and accept and deny meeting requests in ical - these then attach to my ipod calendar, which updates in google automatically

So my google cal and my iCal are always the same. I just don't have a way of getting the google calendars onto my outlook (we use outlook 2002 at work, which google sync doesn't support, but other versions could use this, meaning that a full two-way sync of ical to outlook would be possible)

Anonymous said...

I too came here looking for a way out of Entourage-hell.

At present I use iCal as my calendaring app and then load Entourage whenever I get a meeting. It sort of works, but a native solution would be far more preferable.

Definitely interested in the concept of a CalDAV middleware. Might be worth checking out what the guys at openchange.org are doing around libmapi.

Anonymous said...

Is MobileMe the solution to all this (at a cost)?

Vlad said...

Well, hoping for MobileMe is what I am writing about in the most recent post on this blog. They did not open the service yet, so we can only guess. One thing I promise is that I'll try MobileMe the day it is open to public and write about my experience over here. Stay tuned :)

Anonymous said...

I don't think MobileMe is going to do it. MobileMe is for individual users who don't use a corporate Exchange server. You'll either use MobileMe, -or- Exchange, but not both.

The real solution is Snow Leopard, which is promised to have full Exchange connectivity in Mail, iCal, an Address Book right out of the box. I guess we just have to wait a year...

Vlad said...

Aye, good point Jeff. The only thing is that no one knows whether it is going to take a year or longer. But let's hope they will solve the problem one day.

Anonymous said...

With all the issues with Entourage and the fact Snerdware doesn't work with Exchange 2007 I have given up and installed Outlook, in XP, in Parallels. Far from an ideal solution, and not cheap but only way I could interact with our team shared calander.

Unknown said...

I was able to sync my AddressBook (and thus Mail addresses as well) with Exchange 5.5 using the instructions here:

http://www.macosxhints.com/article.php?story=20080427091327509

Holbrook Bunting said...

Since upgrading to the 2.0 version of the iPhone software, I am able to use both my mobileme account and college exchange account in the same space. For example, I can see my ical events and exchange events in the iPhone calendar app. I can also view both sets of contacts in one list which is handy (although can be annoying if you have the same contact on both accounts).

I can connect my colleges exchange server using imap. Haven't been so successful with the exchange route. Also, since my college limits sending e-mail to those inside the network, I'd have to vpn to send mail which seems to be a hassle. But I can send email using the iPhone without the need to use vpn. The tech people at the college didn't know why I was able to send from the iPhone outside their network, but oh well it works.

Anonymous said...

Have you taken a look at this? It looks promising... http://www.syncem.com/

Yuki said...

Thanks so much for the post and to everyone who commented. I'm umming and ahhing about cloud computing and don't want to pay the world for MobileMe (and its associated grief).

I'm really tempted to play around with sync'em - it seems like the most straight-forward way to solve the syncing nightmare. Almost to good to be true?

Unknown said...

While I can certainly appreciate the work you put into finding a viable solution to this problem, just a few things...

First of all, I loathe Microsoft just as much as the next guy, if not more and I always try to avoid their products whenever possible. With that said however... sometimes they're either a necessary evil or, as much as it pains me to say it... they may actually have the best product out there depending on the need.

I've found this has actually happened a few times over the past twenty years... I remember the first time I was met with this dreadful realization was after the demise of WordPerfect - Sure, there was ClarisWorks, but Microsoft had a much better product in Word. The same happened with IE5...at the time, it blew the socks off of Netscape.

So regardless of my almost irrational hatred towards all things Microsoft... I've never been one to cut my nose off despite my face. The same goes for Entourage - Yes, I might like iCal (not so much the Mail app), but my organization uses an Exchange server... So for this particular purpose, Entourage is the best solution available, so I just suck it up and use it.

I'm not about to add any number of extra steps to get around it.. do so is contrary to the essence of a Mac - ease of use and efficiency.

And one more thing... I don't think it's fair at all to describe the PowerPC as being "ancient." First of all... they only stopped making them a little over 2 years ago, not to mention the fact that there are still more PPC Macs in service than there are Intel.

The Power architecture still offers tremendous amounts of processing power and still has its strong points in some areas the x86 platform has never been able to match... first and foremost is its inherent multitasking ability.

For the large majority of people... the raw power of dual and quad core Intel chips is plain overkill. A G5 processor offers way more processing power than most people will ever use and even the G4 still plenty of "oomph" to satisfy most people's needs.

And as far as the Rosetta translator is concerned - don't be so quick to knock it. It is truly a marvel of programming... In terms of emulation, it's absolutely astounding to provide 60+% native speed from a piece of software. I don't know if you've been a part of the Mac scene for a while now or if you're a relatively new convert... but if you can remember the original transition to PowerPC, the built-in 68K translator was completely abysmal. Within that additional frame of reference, it helps to highlight all the more just how amazing Rosetta really is. Had the transition to Apple: Act Three gone like their first one, the big "switch" would have been infinitely more difficult to say the least.

Anonymous said...

The real problem with entourage is that I regularly find items in my entourage calendar and on others outlook calendars that I have invited them too. Unfortunately the events are not in MY exchange server calendar so people end up double and triple booking me!!!! If I can't figure a solution it's gonna be outlook in vmware for me. . . . .

Alexandre said...

FWIW seems that Snerdware / Groupcal is out of business... Website down, no reply to e-mails..

Anonymous said...

Well, its the other way around, but we are working on connecting Outlook to CalDAV servers: http://zideone.com/.

Anonymous said...

i tired the Sync'Em app today but couldn't get it to connect to our corporate, hosted Exchange solution with Rackspace UK - no settings i tried worked but it could be a weird setup with Rackspace of course. seemed like a good 'bridge' solution though as it does not require a 3rd party, online service.

Anonymous said...

Just so you know, Sync'Em 1.15 is now available. It now has a Basic Setup assistant that'll work for the majority of people (others will need the Advanced Setup ... for which there are now tutorial videos).

Sync'Em also now supports calendar events between Exchange and iCal calendars. Note that recurring/detached events are not yet supported (but will be). Currently they're ignored.

We're currently chasing a problem where syncing stops but that, like other problems that crop up, will get fixed.

We fully intend to make this a true syncing "hub" and have many things on our Product Roadmap (and many things that are not visible, yet). We don't expect that Apple will do a very comprehensive job with 10.6 as they've not done so, to date. In any event (no pun intended) Sync'Em will offer a broader range of capabilities.

BTW, if you're having problems, do contact us. You'll find that we're tenacious when it comes to finding and fixing problems. There's also a FAQ page, a Support Center Knowledgebase and a Service Providers page and, 'though these are in the early stages, they often can help.

Unknown said...

1.
Google now supports iCal. Go to http://www.googletutor.com/2007/01/24/syncing-google-calendar-with-ical/ and follow the instructions to sync with Google.

2.
After you've enabled Google Calendar to work with iCal, then install Google Calendar Sync on the PC you have Outlook on http://www.googletutor.com/2007/01/24/syncing-google-calendar-with-ical/
(for example, I use our exchange server and Outlook at work on my PC, but just got an iMac at home, so if my Google Calendar is syncing with my Outlook, then my iMac can reach the Outlook computer via Google Calendar through iCal. Convoluted, but functional).

HB said...

This is an old article but goot information. Thanks :D

Anonymous said...

HAs anyone tried the simple Mail App plug-in that translates Exchange meeting invites to iCal invites? It's called YAI, at:

http://www.nhoj.co.uk/

Unknown said...

You could try DavMail POP/IMAP/SMTP/Caldav Exchange Gateway at http://davmail.sourceforge.net

Just released version 3.0.0 comes with iCal support !

Anonymous said...

I've tried Sync'Em and it seems to work. My contacts and events sync into and out of Exchange

Unknown said...

DavMail 3 supports Exchange 2k3 and iCal. Finally I have my work calendar on my desktop with freebusy.

It's fairly easy to munge the 'generic unix' zip into a MacOS .app using /Developer/Applications/Utilities/Jar\ Bundler.app.

(although it will run with the supplied shell script when run with the directory containing it as the CWD)

I hope that it's useful to people.


Faye

Alex Eiser said...

DevMail works with Exchange2007 as well. It works amazingly well.

Although, the .app that is provided on the site does not really working for me. The platform independent version worked by launching it via the terminal.

You also should be sure to read the instructions on the site.
http://davmail.sourceforge.net/osxicalsetup.html

Once I had the correct accountURL set, the gateway worked like a charm. VERY VERY fast response. Changes made in iCal show up on my companies OWA website in seconds.

Anonymous said...

DAVmail working great with Leopard, iCal, and Exchange 2003. Ditto that the original .app I downloaded didn't work, but replacing the softlinked DavMail.app/Contents/MacOS/JavaApplicationStub with a copy of the one to which it links (/System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub for me) fixed it right up.

Yay!

Anonymous said...

Just to note, you mixed up Apple's Rosetta (the translator) with Rosetta Stone, a language learning program :) not by Apple (but used by NASA apparently!)

nttranbao said...

I tried Devmail, and it works great on first attempt.

I installed devmail on Vista, and iCal from a macmini can sync right after.

Very pleased, hope its stability is okay too.

Thanks all for the info,

Bao Nguyen.

Anonymous said...

No-one here's seems to have suggested turning on iCal support in Exchange 2007... it does actually support this.

Primus said...

@blog. That is if your organization is going to 2007. +10 for Davmail!

Jon Sisk said...

Resistance is futile!

Just get a PC. They work

It's like getting on the interstate with your segway and complaining about all the cars and how your segway is so much better in every way and the cars need to change.

It's a PC world, no matter what the mac cult leaders tell you. While you jump through these Mac hoops I'll be producing work on my PC

sent from my iPhone :)

Endy said...

@Jon Sisk

You are completely wrong with your statement also with your comparision.

We have a great system, far more stable, slicker and nicer than any Windows counterpart. We want to connect to Exchange 2003. Not more, not less. If I would buy a PC for that I would struggle with other problems that are more difficult to combat than an Exchange connection.

Concerning your comparision. We have a station vagon and we would like to bring the entire family to our holiday without having to rent a minibus. So we try to find a roofbox.

Having a minibus (=PC) causes constant problems to us in our daily life even if it better to go on holiday.

So we are not using Segway but we use real cars.

Vivian said...

Thanks for your sharing, but I do agree with Vlad.
"Exchange is a very demanding solution, and in many if not all cases requires a dedicated engineer for maintenance. "
However, opposite with Vlad, I do have some shared calendars.
I am using WinPST, a new product, for about two weeks. Everything is OK with it and I can share my calendars with my colleagues easily.

Unknown said...

Thanks for sharing. I found the DavMail solution to be very good. I guess I had my hand on a new release. I works not only for my standard iCal, but also as a remote server for my mobile devices such as iPhone and iPad. I described my setup here:

www.zweerscreatives.nl/?p=372

Anonymous said...

you saved my life!!!

jcarlson34 said...

FYI OSX Lion's iCal now has Exchange built right in. Just go to preferences and add a new exchange account.

Anonymous said...

sorry jcarlson34 if you have Exchange 2003 is not possible to connect.

Norma said...

You have good information. I have been using Intermedia’s Microsoft Hosted Exchange at work. I love how easy it is to work when you aren’t in the office since you can use your phone. The best part is that it automatically uploads your changes. It makes sure you always have the latest version of your project available.

Peternak Hebat said...

nice info

tanya mbah said...

nice info