Posted on March 31, 2008 - by Justin Hartman
Apple iCal / Microsoft Exchange fix for Leopard
One of the major drawbacks to working on an Apple Mac in a large corporate company is that most IT departments still use Microsoft Exchange Server for email and calendar support.
While we’ve found many a work-around to get email up and running using Apple Mail there remains this irritating bug that prevents Exchange iCal events from syncing correctly with Apple iCal.
The reason this bug exists is because Exchange doesn’t use standard compliant timezone information while Apple does and as a result iCal can’t figure out what the correct timezone is from Exchange iCal invitations. Here’s a quick example of the South African timezone differences between the two.
Exchange uses this format:
(GMT+02.00) Harare/Pretoria
While iCal uses this:
Africa/Johannesburg
This means that when a meeting request comes in from a Windows PC, iCal can’t read data beyond the GMT+02.00 and it simply adds on 2 hours to the event. So a meeting sent from Exchange, scheduled for 14:00 actually appears in iCal as 16:00. We’ve missed many a meeting as a result!
Over the last few months I’ve spent countless hours trying to find a fix but no one has managed to get this issue resolved – not even Apple. I’ve now resorted to creating my own bug fix which I’m releasing publicly this morning.
How this bug fix works
The install script downloads all the necessary files from my server and installs both an AppleScript and Shell script to a folder called iCalFix in your Applications folder.
The AppleScript is then assigned to a Mail Rule and runs whenever an iCal invitation is received. The AppleScript downloads the iCal file to a temporary location and the Shell script then runs on the temp file and replaces any incorrect timezone information.
Once completed the new iCal event is then imported to iCal with all the new timezone data in place. The beauty of this fix is that you don’t need to edit any of the package files for iCal and even your original iCal invitations are left untouched. This means that you can upgrade iCal at a later stage and you should be safe from any data corruption.
Installation
1. Download this Install Script to your computer and extract the contents from the ZIP file. The folder contains a Shell script (install.sh) which sets everything up for you.

2. Right-click on the install.sh file, select Open With and then click on Other.

3. Click on Applications –> Utilities –> Terminal. If you can’t select Terminal from the Open dialog then select All Applications from drop-down list below.

4. Terminal will open up and the install script will run. When you see the message “Installation Complete.” you can close Terminal.

5. You can now check if the bug fix was installed correctly by navigating to /Applications/iCalFix/ in Finder. If you see two files installed in that folder then installation was successful.

Setting up the Mail Rule
The last step before you can begin using this fix is to setup an email rule that calls the AppleScript file. Click on Mail –> Preferences –> Rules and create a new rule that looks identical to the one below.

If you’d like to read detailed instructions on setting up this particular Mail Rule then make sure you read the readme.txt file located in the Install Script package.
All done!
After completing the above steps any new iCal invitations sent from an Exchange server will automatically be converted to the right formats and you will never have an excuse to be 2 hours late for a meeting again!
I suggest that you test this fix out by sending an iCal event from an Exchange server to see if all is working correctly. If the fix isn’t working for you then your exchange server is probably using a different timezone format and you’ll need to read the section in the readme.txt file on customising timezone support for your country.
Caveats
- NB: Make sure you open the readme.txt file in the Install Script folder. This readme file contains important information which isn’t included in this post.
- This fix has only been tested on Mac OS X Leopard 10.5.1 and 10.5.2 and there is no guarantee that it will work on previous or future versions.
We’ve only been able to test this fix on three MacBook Pros and while it worked on all three YMMV.We’ve now tested it on about 10 Macs now and it has worked on every one we’ve tested thus far.- Before installing or running this fix make sure you backup your iCal first. In iCal click File –> Back up iCal… and save a backed up version to your computer.
- When you recieve an Apple iCal invitation there is a message that pops up in iCal saying that “no data was added to iCal” but when you click OK the iCal event is loaded to iCal anyway. I’m not sure why this happens with iCal but I’m working on a fix for that.
- I can’t provide support. If you want help in setting up a unique timezone regular expression then I’ll assist with that but any other queries I cant’t respond to – I just don’t have the time, sorry.
















I am a seasoned entrepreneur and currently the CEO of 
Visit My Website
April 8, 2008
Permalink
Hi Justin:
I have not gotten a chance to try this since I don’t
use Exchange (or iCal much for that matter). But, wouldn’t another possible solution be to create new zoneinfo database entries for MS Exchange time zones? Just curious. I’ve spent some time with them, but I don’t really consider myself an expert. I would not be surprised if this hasn’t already been done.
Visit My Website
April 8, 2008
Permalink
I did something very similar using just a single AppleScript. I call it from the Script menu. It can be called from a Mail Rule as well. I was getting similar malformed time zone info from a Corporate server. The problem seems to have fixed itself but the script is available if you’re interested in another way to do it.
As you’ve stated the TZ info is unique and the shell part of the script will need to be corrected for individual use.
Let me know if you’re interested.
Andy
Visit My Website
April 9, 2008
Permalink
Dr. Strangeluv – I’ve tried this before to no avail. In fact trying to work with different zone files, or even editing the existing ones, has cause some major corruptions with iCal and I wouldn’t recommend this route. My fix keeps iCal and Mail completely free from any editing so you can upgrade easily and even the data is safe from corruption.
Andy – please send it onto me justin (at) hartmanlife.com – I’d love to see what you’ve done and test it on my side. If we can simplify this process then it would be advantageous to everyone.
Visit My Website
April 8, 2008
Permalink
Hi Justin:
I have not gotten a chance to try this since I don't
use Exchange (or iCal much for that matter). But, wouldn't another possible solution be to create new zoneinfo database entries for MS Exchange time zones? Just curious. I've spent some time with them, but I don't really consider myself an expert. I would not be surprised if this hasn't already been done.
Visit My Website
April 8, 2008
Permalink
I did something very similar using just a single AppleScript. I call it from the Script menu. It can be called from a Mail Rule as well. I was getting similar malformed time zone info from a Corporate server. The problem seems to have fixed itself but the script is available if you're interested in another way to do it.
As you've stated the TZ info is unique and the shell part of the script will need to be corrected for individual use.
Let me know if you're interested.
Andy
Visit My Website
April 9, 2008
Permalink
Dr. Strangeluv – I've tried this before to no avail. In fact trying to work with different zone files, or even editing the existing ones, has cause some major corruptions with iCal and I wouldn't recommend this route. My fix keeps iCal and Mail completely free from any editing so you can upgrade easily and even the data is safe from corruption.
Andy – please send it onto me justin (at) hartmanlife.com – I'd love to see what you've done and test it on my side. If we can simplify this process then it would be advantageous to everyone.
Visit My Website
April 12, 2008
Permalink
Hi Justin,
Thanks for this great post! I am also a Mac user (Macbook Pro) in a Windows Exchange environment. I have just joined the company where I am now and they are reluctant to allow me to use my Mac on the MS Exchange server. I would LOVE to be able to continue to use my Mac (Mail, iCal, and browsing the Web via a proxy – and then using a VPN connection via 3G to access the Exchange server when I am out and about).
Are you able to point me to any user guides that I could use to set myself up for this? I would be truly grateful!
Dion
(South African blogger! http://www.spirituality.org.za/blogger.html)
Visit My Website
April 12, 2008
Permalink
Hi Justin,
Thanks for this great post! I am also a Mac user (Macbook Pro) in a Windows Exchange environment. I have just joined the company where I am now and they are reluctant to allow me to use my Mac on the MS Exchange server. I would LOVE to be able to continue to use my Mac (Mail, iCal, and browsing the Web via a proxy – and then using a VPN connection via 3G to access the Exchange server when I am out and about).
Are you able to point me to any user guides that I could use to set myself up for this? I would be truly grateful!
Dion
(South African blogger! http://www.spirituality.org.za/blogger.html)
Visit My Website
April 16, 2008
Permalink
Justin,
I’ve reworked the script a bit more and I think I’ve got it to where a simple property value change for what iCal expects from your system is all that’s needed for the script to work. If I can figure out where in the OS the time zone is stored then I think I can make the script work without any adjustments for anyone. I email’d the script to you.
Andy
Visit My Website
April 16, 2008
Permalink
Justin,
I've reworked the script a bit more and I think I've got it to where a simple property value change for what iCal expects from your system is all that's needed for the script to work. If I can figure out where in the OS the time zone is stored then I think I can make the script work without any adjustments for anyone. I email'd the script to you.
Andy
Visit My Website
April 22, 2008
Permalink
Hi there, I work in London and deal a lot with those in West Coast US, and those in Tallinn (Helsinki is the closest timezone). I found these regex rules work for me:
#London – Ryan Hunt
perl -pi -e ‘s/\”Greenwich\ Mean\ Time\ \:\ Dublin\,\ Edinburgh\,\ Lisbon\,\s/Europe\//g’ $ICSFILE
perl -pi -e ‘s/\s\sLondon\”/London/g’ $ICSFILE
perl -pi -e ‘s/Greenwich\sMean\sTime\s\:\sDublin\,\sEdinburgh\,\sLisbon\,\sLondon/Europe\/London/g’ $ICSFILE
#West Coast USA – Ryan Hunt
perl -pi -e ‘s/\(GMT\-08\.00\)\ Pacific\ Time\ \(US\ \&\ Canada\)\/Tijuana/US\/Pacific/g’ $ICSFILE
#Tallinn – Ryan Hunt
perl -pi -e ‘s/Helsinki\\\,\ Kyiv\\\,\ Riga\\\,\ Sofia\\\,\ Tallinn\\\,\ Vilnius/Europe\/Helsinki/g’ $ICSFILE
perl -pi -e ‘s/Helsinki\,\ Kyiv\,\ Riga\,\ Sofia\,\ Tallinn\,\ Vilnius/Europe\/Helsinki/g’ $ICSFILE
Visit My Website
April 22, 2008
Permalink
Ryan,
I’ve got a one liner in my AppleScript that should grab the Exchange TZID and put it to a variable. Then all you have to do is set the location of the Exchange server in a format iCal expects. The line is the following.
set exchange_tzid to do shell script “grep -o ^TZID.*$ ” & tPath & ” | sed -e ‘s|TZID:\\(.*\\)|\\1|g’”
I think that should grab the Exchange TZID no matter what it is.
Visit My Website
April 22, 2008
Permalink
Hi there, I work in London and deal a lot with those in West Coast US, and those in Tallinn (Helsinki is the closest timezone). I found these regex rules work for me:
#London – Ryan Hunt
perl -pi -e 's/”Greenwich Mean Time : Dublin, Edinburgh, Lisbon,s/Europe//g' $ICSFILE
perl -pi -e 's/ssLondon”/London/g' $ICSFILE
perl -pi -e 's/GreenwichsMeansTimes:sDublin,sEdinburgh,sLisbon,sLondon/Europe/London/g' $ICSFILE
#West Coast USA – Ryan Hunt
perl -pi -e 's/(GMT-08.00) Pacific Time (US & Canada)/Tijuana/US/Pacific/g' $ICSFILE
#Tallinn – Ryan Hunt
perl -pi -e 's/Helsinki\, Kyiv\, Riga\, Sofia\, Tallinn\, Vilnius/Europe/Helsinki/g' $ICSFILE
perl -pi -e 's/Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius/Europe/Helsinki/g' $ICSFILE
Visit My Website
April 22, 2008
Permalink
Ryan,
I've got a one liner in my AppleScript that should grab the Exchange TZID and put it to a variable. Then all you have to do is set the location of the Exchange server in a format iCal expects. The line is the following.
set exchange_tzid to do shell script “grep -o ^TZID.*$ ” & tPath & ” | sed -e 's|TZID:\(.*\)|\1|g'”
I think that should grab the Exchange TZID no matter what it is.
Visit My Website
April 23, 2008
Permalink
OK, I’ve figured out what this script is doing, it will modify the attachment and then open the modified Attachment in iCal. Is there anyway to modify the attachment and then actually modify the message on the server with the new invite? I.e if I forget about this meeting and I double click again (later) it gives me the wrong time.
Visit My Website
April 23, 2008
Permalink
OK, I've figured out what this script is doing, it will modify the attachment and then open the modified Attachment in iCal. Is there anyway to modify the attachment and then actually modify the message on the server with the new invite? I.e if I forget about this meeting and I double click again (later) it gives me the wrong time.
Visit My Website
April 23, 2008
Permalink
Ryan, you could probably just run the AppleScript from the System AppleScript menu on the original email invite. If that doesn’t work I may have solution that will.
Visit My Website
April 23, 2008
Permalink
Ryan, you could probably just run the AppleScript from the System AppleScript menu on the original email invite. If that doesn't work I may have solution that will.
Visit My Website
April 24, 2008
Permalink
Justin … good afternoon. Many thanks for posting the fix. I have just downloaded it and followed all the steps … I am Cape Town based so felt I didn’t need to worry about time zone … but I took an existing calender request sitting in my inbox which i hadn’t opened and double clicked it … the calendar entry was still 2 hours later … I then changed my mail preferences to automatically add calendar entries and then forwarded the meeting request to myself. when the mail came through it entered it … but 2 hours late! … could you tell me what i may have done wrong? … running I-mac OSX ver 10.5 … many thanks Paul Tomes
Visit My Website
April 24, 2008
Permalink
Ryan,
I could not get the instructions to work… It was a bit over my head… would you be able to help me?
http://www.daves-office.com/documents/icalerror.zip
I posted the two events in there labeled… any help would be much appreciate it!
Dave
Visit My Website
April 24, 2008
Permalink
Justin … good afternoon. Many thanks for posting the fix. I have just downloaded it and followed all the steps … I am Cape Town based so felt I didn't need to worry about time zone … but I took an existing calender request sitting in my inbox which i hadn't opened and double clicked it … the calendar entry was still 2 hours later … I then changed my mail preferences to automatically add calendar entries and then forwarded the meeting request to myself. when the mail came through it entered it … but 2 hours late! … could you tell me what i may have done wrong? … running I-mac OSX ver 10.5 … many thanks Paul Tomes
Visit My Website
April 24, 2008
Permalink
Ryan,
I could not get the instructions to work… It was a bit over my head… would you be able to help me?
http://www.daves-office.com/documents/icalerror…
I posted the two events in there labeled… any help would be much appreciate it!
Dave
Visit My Website
April 25, 2008
Permalink
Hi Justin,
Thanks for the really helpful post. I am a home mac user and at work we use Exchange so when I have it all running properly this fix will be great for me. I am a recent mac user and not very technical when it comes to scrips so I am a little confused how to customize the timezone for my country.
I have opened an ics file in TextEdit and though it does not note GMT+ whatever, here is what I have:
DTSTART;TZID=E. Australia Standard Time:20080428T170000
In iCal it would be:
DTSTART;TZID=Australia/Sydney:20080428T170000
Ca you please assist in advising what I am supposed to modify the fix_timezone.sh file with?
Cheers.
Visit My Website
April 25, 2008
Permalink
Hi Justin,
Thanks for the really helpful post. I am a home mac user and at work we use Exchange so when I have it all running properly this fix will be great for me. I am a recent mac user and not very technical when it comes to scrips so I am a little confused how to customize the timezone for my country.
I have opened an ics file in TextEdit and though it does not note GMT+ whatever, here is what I have:
DTSTART;TZID=E. Australia Standard Time:20080428T170000
In iCal it would be:
DTSTART;TZID=Australia/Sydney:20080428T170000
Ca you please assist in advising what I am supposed to modify the fix_timezone.sh file with?
Cheers.
Visit My Website
May 5, 2008
Permalink
I. Love. You. I really do.
Visit My Website
May 5, 2008
Permalink
Justin, thanks for the post, the only problem i have is when i create a local ical to check the format i don’t get any timezone info:
BEGIN:VCALENDAR
X-WR-CALNAME:test2
PRODID:-//Apple Inc.//iCal 3.0//EN
CALSCALE:GREGORIAN
VERSION:2.0
METHOD:PUBLISH
END:VCALENDAR
what am i doing wrong? I’m GMT+4 in Dubai, I’m guessing the key may be muscat/oman based on date and time, can you give me any pointers?
Many thanks,
Steve.
Visit My Website
May 5, 2008
Permalink
Justin,
Figured it out – top right hand corner of my iCal displays “Asia/Muscat”, exchange server is only sending through “GMT +0400 (Standard) / GMT +0400 (Daylight)” rather than any location details.
So modified the second line of the script to:
perl -pi -e ‘s/GMT\ \+0400\ \(Standard\)\ \/\ GMT\ \+0400\ \(Daylight\)/Asia\/Muscat/g’ $ICSFILE
Works a treat! thanks for the original post, hope this might help some others.
Steve.
Visit My Website
May 5, 2008
Permalink
I. Love. You. I really do.
Visit My Website
May 5, 2008
Permalink
Justin, thanks for the post, the only problem i have is when i create a local ical to check the format i don't get any timezone info:
BEGIN:VCALENDAR
X-WR-CALNAME:test2
PRODID:-//Apple Inc.//iCal 3.0//EN
CALSCALE:GREGORIAN
VERSION:2.0
METHOD:PUBLISH
END:VCALENDAR
what am i doing wrong? I'm GMT+4 in Dubai, I'm guessing the key may be muscat/oman based on date and time, can you give me any pointers?
Many thanks,
Steve.
Visit My Website
May 5, 2008
Permalink
Justin,
Figured it out – top right hand corner of my iCal displays “Asia/Muscat”, exchange server is only sending through “GMT +0400 (Standard) / GMT +0400 (Daylight)” rather than any location details.
So modified the second line of the script to:
perl -pi -e 's/GMT +0400 (Standard) / GMT +0400 (Daylight)/Asia/Muscat/g' $ICSFILE
Works a treat! thanks for the original post, hope this might help some others.
Steve.
Visit My Website
June 10, 2008
Permalink
Justin… Hi… sorry, haven’t been able to figure out how to modify the script…
I’m in Katmandu GMT +5:45
this is the exchange ics:
PRODID:Microsoft Exchange Server 2007
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Nepal Standard Time
BEGIN:STANDARD
DTSTART:16010101T000000
TZOFFSETFROM:+0545
TZOFFSETTO:+0545
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:16010101T000000
TZOFFSETFROM:+0545
TZOFFSETTO:+0545
DTSTART;TZID=Nepal Standard Time:20080613T110000
DTEND;TZID=Nepal Standard Time:20080613T120000
Thanks… Bob
Visit My Website
June 10, 2008
Permalink
Justin… Hi… sorry, haven't been able to figure out how to modify the script…
I'm in Katmandu GMT +5:45
this is the exchange ics:
PRODID:Microsoft Exchange Server 2007
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Nepal Standard Time
BEGIN:STANDARD
DTSTART:16010101T000000
TZOFFSETFROM:+0545
TZOFFSETTO:+0545
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:16010101T000000
TZOFFSETFROM:+0545
TZOFFSETTO:+0545
DTSTART;TZID=Nepal Standard Time:20080613T110000
DTEND;TZID=Nepal Standard Time:20080613T120000
Thanks… Bob
Visit My Website
July 22, 2008
Permalink
I have provided some basic instructions for those not-so-technical folks on installing Andy’s fix:
1. Delete the original event from your iCal and don’t notify the sender.
2. Save the following file [ http://thefragens.com/pub/MailExchange2iCal-TZ-fix.scpt ] to the following location:
yourname\Library\Mail\
3. Edit the file ~\Library\Mail\MailExchange2iCal-TZ-fix.scpt and adjust the value of the property field, to your appropriate timezone, in Justin’s example that would be:
property ical_tzid : “Africa/Johannesburg”
4. Save the MailExchange2iCal-TZ-fix.scpt file
5. Create a new Mail rule
a. Mail -> Preferences -> Rules -> Add Rule
i. Description
ii. If
iii. Perform
b. Click “OK” and then “Apply”
6. Open the invite which was originally sent to you, check the time in iCal, and accept if it’s correct.
7. Done.
Visit My Website
July 22, 2008
Permalink
Hmmm, your blog software filtered out some of my comments.
Step 5, fixed:
5. Create a new Mail rule
a. Mail -> Preferences -> Rules -> Add Rule
i. Description “Fix Microsoft Invites”
ii. If “Any” “Attachment Name” “ends with” “.ics”
iii. Perform “Run AppleScript” “~\Library\Mail\MailExchange2iCal-TZ-fix.scpt”
b. Click “OK” and then “Apply”
Visit My Website
July 22, 2008
Permalink
I have provided some basic instructions for those not-so-technical folks on installing Andy's fix:
1. Delete the original event from your iCal and don't notify the sender.
2. Save the following file [ http://thefragens.com/pub/MailExchange2iCal-TZ-... ] to the following location:
yournameLibraryMail
3. Edit the file ~LibraryMailMailExchange2iCal-TZ-fix.scpt and adjust the value of the property field, to your appropriate timezone, in Justin's example that would be:
property ical_tzid : “Africa/Johannesburg”
4. Save the MailExchange2iCal-TZ-fix.scpt file
5. Create a new Mail rule
a. Mail -> Preferences -> Rules -> Add Rule
i. Description
ii. If
iii. Perform
b. Click “OK” and then “Apply”
6. Open the invite which was originally sent to you, check the time in iCal, and accept if it's correct.
7. Done.
Visit My Website
July 22, 2008
Permalink
Hmmm, your blog software filtered out some of my comments.
Step 5, fixed:
5. Create a new Mail rule
a. Mail -> Preferences -> Rules -> Add Rule
i. Description “Fix Microsoft Invites”
ii. If “Any” “Attachment Name” “ends with” “.ics”
iii. Perform “Run AppleScript” “~LibraryMailMailExchange2iCal-TZ-fix.scpt”
b. Click “OK” and then “Apply”
Visit My Website
August 5, 2008
Permalink
Hi Justin,
Thanks for the helpful info. I’m going to need a little help with the timezone data. Here’s what I have:
Exchange data received:
DTSTART;TZID=”(GMT-07.00) Arizona”:20080827T090000
My iCal data:
DTSTART;TZID=America/Phoenix:20080828T180000
I appreciate it!!
Visit My Website
August 5, 2008
Permalink
Totally awesome – I’ve just used the instruction in the previous posts and it works a treat. No longer will I be 2 hours early to client meetings!
Thanks heaps.
Dan.
Visit My Website
August 5, 2008
Permalink
Hi Justin,
Thanks for the helpful info. I'm going to need a little help with the timezone data. Here's what I have:
Exchange data received:
DTSTART;TZID=”(GMT-07.00) Arizona”:20080827T090000
My iCal data:
DTSTART;TZID=America/Phoenix:20080828T180000
I appreciate it!!
Visit My Website
August 5, 2008
Permalink
Totally awesome – I've just used the instruction in the previous posts and it works a treat. No longer will I be 2 hours early to client meetings!
Thanks heaps.
Dan.
Visit My Website
August 6, 2008
Permalink
ok – I used the script file in the post 5 above this. But It actually doesn’t seem t work properly for new emails. It does work but only when I tell mail to Apply the rules to that message after it has arrived.
So Now I am trying to use Justin’s original fix – but the reg-ex part is not my game – I need help
DTSTART;TZID=”(GMT+10.00) Brisbane/East Australia”:20080812T120000
That is my servers timezone.
Cheers.
Visit My Website
August 6, 2008
Permalink
In deference to Justin, I’m sure some of these comments are becoming quite confusing. The changing references between his scripts and mine. It might be better to move the discussion of my script over to my script’s page.
Dan, I’m happy to try and work with you or anyone else in getting my script to function as you’d expect it to.
Visit My Website
August 6, 2008
Permalink
Dan, I may have found a fix for my script not working properly for new emails.
Visit My Website
August 6, 2008
Permalink
ok – I used the script file in the post 5 above this. But It actually doesn't seem t work properly for new emails. It does work but only when I tell mail to Apply the rules to that message after it has arrived.
So Now I am trying to use Justin's original fix – but the reg-ex part is not my game – I need help
DTSTART;TZID=”(GMT+10.00) Brisbane/East Australia”:20080812T120000
That is my servers timezone.
Cheers.
Visit My Website
August 6, 2008
Permalink
In deference to Justin, I'm sure some of these comments are becoming quite confusing. The changing references between his scripts and mine. It might be better to move the discussion of my script over to my script's page.
Dan, I'm happy to try and work with you or anyone else in getting my script to function as you'd expect it to.
Visit My Website
August 6, 2008
Permalink
Dan, I may have found a fix for my script not working properly for new emails.
Visit My Website
August 28, 2008
Permalink
The iCal error reported is caused by a missing “exit 0″ line at the end of the fix_timezone.sh script.
Visit My Website
August 28, 2008
Permalink
[...] thing then why not join my email list by clicking here. Thanks for stopping by.I have updated the Apple iCal / Microsoft Exchange fix for Leopard with a bug fix and a few [...]
Visit My Website
August 28, 2008
Permalink
Hi Guys. I've just released version 1.2 of this script. More details can be found over here:
http://justinhartman.com/2008/08/28/apple-ical-…
Visit My Website
August 30, 2008
Permalink
I just bot a new Mac. I just registered but when logging in the mac address does not recognize me. I have been working with best buy and apple store. I still have not resolved the problem. I may have to return the machine since I cannot get an email address. I really want the mac but seems no one can help me. What can I do?
Visit My Website
September 6, 2008
Permalink
[...] are real issues like Justin point out. Exchange uses non-standard time formats like (GMT+02.00) Harare/Pretoria whereas Apple [...]
Visit My Website
September 26, 2008
Permalink
hey Justin, thanks for the script. I was able to replace only first instance but not the other two due to line breaks can you please help.
(GMT+05.30) Calcutta/Chennai/Mumbai/New Delhi/India Standard Time
“(GMT+05.30) Calcutta/Chennai/Mumbai/New Delhi/India Standard
Time”
(GMT+05.30) Calcutta/Chennai/Mumbai/New Delhi/India Standard Ti
me”
perl -pi -e ‘s/\(GMT\+05\.30\)\ Calcutta\/Chennai\/Mumbai\/New Delhi\/India Standard Time/Asia\/Calcutta/g’ $ICSFILE
Visit My Website
September 26, 2008
Permalink
Atul, that is the most seriously screwed up TZID I’ve ever seen. You should complain to whomever runs the Exchange server to shorten it/fix it.
Visit My Website
September 27, 2008
Permalink
Atul, you may also want to see if my script will work for you. Can’t make any promises.
Visit My Website
September 27, 2008
Permalink
Thanks it works for me.
Visit My Website
September 29, 2008
Permalink
Hi there,
I really tried to work out what I was supposed to do here but three hours later I have given up!
Please help!!
Incorrect time on incoming calendar
DTSTART;TZID=E. Australia Standard Time:20080922T110000
DTEND;TZID=E. Australia Standard Time:20080922T120000
Time displayed in my calendar
DTSTART;TZID=Australia/Brisbane:20080929T150000
Visit My Website
September 29, 2008
Permalink
Annette, see comment #54.
Visit My Website
September 30, 2008
Permalink
Hi there,
I’ve tried my best to sort this out by I’m afraid I’ll be needing a little help.
Here’s the info as it appears in the invites :
DTSTART;TZID=Korea Standard Time:20081003T113000
I sent myself an invite from iCal but the format isn’t as would be expected. I get :
DTSTART;VALUE=DATE:20081003
I believe it should be something like :
DTSTART;TZID=Australia/Brisbane:XXXXXXXXXXX
Any help would be greatly appreciated.
Thanks again !
Visit My Website
September 30, 2008
Permalink
Justin – you are DA MAN!
Visit My Website
October 6, 2008
Permalink
This script is great! Solved the problem for me, after hours of trying to get through to Apple support with nobody answering and the iStore with the answer that “The Mac can’t talk to Microsoft Outlook”.
Thanks again.
Visit My Website
October 13, 2008
Permalink
You’re a legend!
I’ve also been looking for a solution to this problem for some time and then came across a link to this post from the Apple support forums.
Finally, I can kick Entourage and get back to iCal. Thanks dude =)
Visit My Website
January 14, 2009
Permalink
After installing your script as you described, I
noticed that all the files, including the script itself
has a read and write permission for everyone in
my Applications folder.
Isn’t it dangerous to have a chmod -R 0777 ?
Visit My Website
March 6, 2009
Permalink
Have you look at using SyncEm to do Exchange to iCal syncing?
Visit My Website
June 22, 2009
Permalink
Hi Justin,
Not sure if you have a sec to help, but I have a similar issue with invites from Lotus Notes where they appear an hour later in iCal.
Looking at the invites from Notes, I see the following:
DTSTART;TZID=”GMT”:20090622T130000
And in an invite sent to myself from iCal the following:
DTSTART;TZID=Europe/London:20090622T160000
(note these meetings are at 2 different times)
So it looks like I need to translate “GMT” to “Europe/London”. If I’ve assumed correctly, any chance you could help with the regex?
Thanks,
Tom
Visit My Website
September 20, 2009
Permalink
[...] Justin Hartman has recently given you his solution to this problem. I haven’t tested it but in looking at it I’m certain it works just fine. I say this because he’s fixing the problem is a similar manner. It’s just that he’s using a combination of shell scripts and AppleScripts. I’ve got it down to a single AppleScript. [...]
Visit My Website
December 9, 2009
Permalink
Is there anything I can do for Snow Leopard?? I am having the same issues with the invitations in iCal coming from our Exchange Server. HHHEEEELLLLPPPP!!
Visit My Website
June 5, 2010
Permalink
Can these scripts be removed/uninstalled at any time? Is it as simple as just deleting the “iCal Fix” folder?
Visit My Website
September 20, 2010
Permalink
[...] pain, but not just on the Mac, also the iPhone and iPad So I guess the script will fix the Mac issue, but not the iPhone/iPad [...]
Visit My Website
January 28, 2011
Permalink
Hi
Any suggestions on how the same issue can be addressed on an iPhone4?
Regards
Mike