Most things will work well on Mac but unfortunately, every operating system has its limitations. On Macs, we have what we call “quirks”. These quirks are random issues which are pretty simple to solve but Apple just won’t. OS X users will then rally on the Apple Support forums to try and unravel the solution. Some succeed, others aren’t so lucky. It mostly depends on the issue at hand.

Here’s one: iCal syncs your contacts’ birthdays from Address Book and creates a calendar for it. The problem is you can’t edit it to add an alarm in order to remind yourself about your friend’s birthday. It’s a simple issue, isn’t it? There just doesn’t seem to be a “fix” for it.

After vehemently browsing the Web for a free and simple solution, I got nothing. All I want is :

the ability to add reminders for each contact’s birthday

iCal to continuously sync with Address Book to update the Birthday calendar

Many users argue that the simplest solution is to manually add your contacts’ birthdays individually. True, it is the simplest but not the most time-efficient solution.

Then I stumbled onto what I’d like to think is the solution. It’s not very direct and requires the use of Automator but it does bring this whole birthday reminder conundrum to a temporary halt.

With the help of some existing Automator actions for iCal, I created my own workflow which in a nutshell, refreshes my contacts’ birthdays in Address Book, adds an editable Birthdays calendar in iCal (with alarms) and sends me weekly email reminders about upcoming birthdays. This workflow is set to run every week by adding it as an iCal plug-in so if there are any changes in Address Book, they will be reflected in iCal automatically after the workflow runs.

Sounds like a handful, doesn’t it? Don’t worry, I’ve written a short tutorial on how you can set this up for yourself. I’ve even attached the workflow at the bottom of this article for you to download and start using!

Step-by-step tutorial

I started by adding an Automator action called iCalBirthdays. This action searches my Address Book for the birthday of every contact and the results will automatically be added to a new calendar in iCal which you can name yourself. I aptly named mine “Birthday Reminder”. It also allows me to add an alert which can be configured to sound on a certain reminder date, the birthday itself or both. With that, technically, the issue is solved. But I went one step further.

Next, I added the Address Book action “Find People with Birthdays” and set it to find birthdays occurring in the upcoming week.

Then, I added the action “Get Contact Information” and checked only the First and Last Names; and the birthday boxes. Make sure “Add Labels” and “Combine Names” are also enabled, this will provide a more pleasing format if you have multiple contact birthdays during that week.

After the information is fetched, it is sent to the next action: “New Mail Message“. Enter your own email address as the recipient and a suitable subject e.g. “Upcoming birthdays”. The content of that email will be the information sent by the previous action.

Keep in mind that you have to select a different account to send this email to yourself. What I mean is, you can’t send this mail and receive it with the same email address. The Mail application will not register any emails sent by your own email address back to itself.

The final touch is adding the “Send Outgoing Messages” action. Lastly, choose “Save as Plug-in” in the File Menu, set a name for it and choose iCal Alarm from the drop-down menu. That will launch iCal and automatically add this workflow as an event in the Automator calendar. Here is where you’ll need to decide when this workflow should run. Set a day and time when your computer will most probably be powered on. Then set it to repeat weekly.

There you go! You have a workflow which is automatically set to refresh your birthday calendar weekly (with alarms) and also receive weekly updates about whose birthdays are coming up that week. The workflow will take approximately 1 minute to complete, depending on how many contacts you have and how many of them have their birthdays inserted.

After downloading, unzip and open it with Automator to configure the “iCalBirthdays” action and don’t forget to input your email address in the recipient field in the “New Mail Message” action. Remember to choose different sending and receiving email accounts. Then continue from “Lastly, choose “Save as Plug-in in the File Menu” as per the instructions above.

I would appreciate any comments about the workflow and how to improve it. Hope this helps those in the same situation as I was in!

(By) Jackson Chung is a full-time medical student attempting to perform a juggling act with relationships, studies and his future.

Your email address will not be published. Required fields are marked *

Comment

Name *

Email *

Marc

February 8, 2010 at 5:46 pm

Your article describes my problem EXACTLY so thanks for sharing your solution. I will try it now and see if it works for me...
I hope this solution won't open Mail.app every week...
PS I didn't read all the comments, but I read the first and the last... I bet you that first Mulder guy is using Leopard or Snow Leopard now... i can't believe how resistant change and ignorant people can be...

Hey Bill and glen, welcome to the world of what Apple is becoming... reminds me of Tiger to Leopard when Apple took out the Bluetooth ability from Address Book that allowed you to SMS your contacts... I find out later it was removed because of the iPhone... the removal of "Save as Plug-In" does not seem to be an accident. All my scheduled workflows are now useless, I'm going back to Leopard. I hate what Apple is becoming...

i have been trying to use the ical automator with a filter beforehand as an input so that my wife & i can keep our collection of birthdays separate (i don't need to know her workmate's birthdays & vice versa)

i use the "get specified address book items" or "find groups in address book" to separate out our contacts, both of which work fine, but then ical birthdays doesn't seem to use the filtered input and instead accesses all of our contacts rather than just the selected groups

i would ask the makers of the ical automator, but their website seems to be in german

The problem with the "Find People with Birthdays" action is it doesn't allow any input from other actions. It will search the WHOLE Address book, the filters have no effect.

The only solution I see for this is to have separate accounts for you and your wife, so she gets her own Address Book. However, remember that she needs to log in so that the Automator plugin can run and send the reminder email.

I have switched to a mac and I need a calendar that will not only put birthdays in put will put the ages every year. Much like windows Calendar creator. To me it seem like it should be easy enough. It is called events in Calendar Creator. I have been making a family calendar for years and that is my Christmas gift to all of my family, which is quite large.

The fix is probably good and works beautifully like everyone says, but is there a quicker way? I found my head swimming somewhere in the middle ofit. Apple should just bloody address the problem. And, it wouldn't hurt in the iCal function to include notes, and task alarms much like Outlook.

Apple is quirky that way. Instead of giving you what you need, they give you what they think you want. Well there is a quicker way but it isn't free. I think the application is called YABI, just Google for it.

Ok, I am getting completely lost at the "Save as Plug-In" part. I saved the sent e-mail as a Plug-In, but I can't seem to find the dropdown menu that says iCal Alarm. When I run your program, everything works like a peach. However, I tried to get it to repeat with the iCal alarm settings as they are shown, but it's not working. Can you walk me through the specifics in detail from the point where the e-mail pops up? PS I never actually see the Automator when I run the program. It just does it all itself; was it supposed to happen that way? Thanks, this program is going to save my life :o)

Ok, I think I followed your instructions to a T. However, once the alert is in iCal, the e-mail saves to "Outgoing Mail" but doesn't send. When I run the Automator, the email sends. Any ideas? Thank you for responding!!!

Jackson Chung

December 6, 2008 at 9:39 am

That sounds pretty weird. After cracking my brains, I can't figure out why it will work in Automator but not in iCal.

Jackson

November 11, 2008 at 1:19 am

For those having issues, try downloading the appropriate versions for your OS (Tiger/Leopard). Install the action into Automator, open the Birthday Reminders workflow and replace the iCalbirthdays action with the newer one. Give it a try.

This doesn't seem to be updating when I add new information via the address book. I've re-run the iCal plug in after changing info, shouldn't the new birthdays appear? I changed a friends birthdate from the 2nd to the 5th and now it's disappeared completely. Any ideas on what I might be doing wrong??

I'd also like a popup reminder rather than an email though....is this a possibility? Also do you know how to enable this alert functionality on other read-only iCal sunscriptions? I use Toodledo to organise my life and the items are effortlessly synced to my home desktop iCal, work desktop iCal, laptop iCal, iPhone calendar and the web. I'd love to be able to get a popup notification from iCal the day before each todo is due....

Yup, if you only need the alert feature, open the script in Automator and remove all the actions except iCalBirthdays.

I'm currently looking into alerts for iCal subscriptions. I have an F1 calender and would like to have an alarm go off a few minutes before each race. I'll post the workflow here if I manage to get it to work.

1. Do you have your contacts' birthdays already set in Address Book?
2. Try turning on the Birthday's Calender in iCal. Preferences -> General -> check Show Birthdays Calender.
3. Download and open the script in Automator again.

Mosscow

October 5, 2008 at 5:32 pm

Yup - deleted the script, and double checked that I do indeed have the Birthday Calendar selected and visible in iCal...

How do I modify this to only use the "alert" feature (message with sound) so it pops up the reminder on my computer, without sending the email? Do I just leave off the section beginning with "New Mail Message"?

The reason I don't want the email is because I use MobileMe to keep my calendars synchronized between my laptop and desktop, and while it still has a lot of bugs/flaws to work out, it does a good job of keeping iCal items in sync. However, I only use Mail on my Laptop, not my desktop, and this keeps triggering Mail to open on my desktop, which is really screwing up my email. I really only want the popup reminder.....

Thanks for the automator script - this is really helpful. I don't know why Apple doesn't fix this glaring flaw in their applications for Address Book and iCal, but this certainly fills the gap.

thanks - but even easier: export ical with birthdays to google calendar, set calendar at google to email AND sms reminders on day of and day before (or days before) - been doing this for ages and it's perfect....i get an email of daily events and birthdays, reminders a week before (to give time to buy cards) and an sms day of bday to remind me to make call...

This would be more useful to more people if it actually worked on 10.4, since it also uses Automator. Instead, this specifically requires 10.5, which most people aren't using, and I know I have no plans to start using it. With solutions like this that don't work for most Mac users, why bother with Automator?

Actually, out of curiosity, why do you say that you have "no plans to start using it[Leopard]"? Yes, I admit the number of Tiger users is still higher than Leopard's but its adoption rate is increasing as we speak.

In Leopard, birthdays are automatically updated via a subscription from Address Book. If you read the article, this workflow address the issue where users aren't able to edit subscribed calenders and thus, aren't able to set alarms for the birthdays.

Jackson Chung, M.D. is MakeUseOf's Chief Executive Officer. Despite having a medical degree, he's always been passionate about technology, and that's how he came to be MakeUseOf's first Mac writer. He has close to 20 years of experience working with Apple computers.