BusyCal Help Icon

BusyCal User Guide

Table of Contents


Introduction

BusyCal is a desktop calendar that allows families and small workgroups to easily and cost-effectively sync calendars with iCloud, Google, the iPhone, and with other Macs on a local area network. BusyCal is compatible with other applications, devices and services that support CalDAV or Sync Services, including iCal, iPhone/iPad/iPod Touch, iCloud, Google Calendar, iCal Server, and more. And it's compatible with BusySync, so you can share calendars with both BusyCal and BusySync users on your network.

BusyCal provides a number of productivity enhancements that you won't find in iCal, including a non-modal info panel; To Dos, including recurring To Dos, that display in the calendar and auto-forward until completed; customizable calendar views including a List View and scrolling Month and Week Views; live weather feeds, moon phases, graphics and sticky notes; customizable font styles and sizes; and a list of today's events in your menu bar.

Syncing Overview

BusyCal syncs with iCloud, Google Calendar, mobile devices, and with other BusyCal users on your LAN. This overview will help you choose the sync method, or combination of methods, that is most appropriate for your situation.

In general, it is best to use one method of syncing, to keep things simple and consistent. Cloud based sync services, like iCloud and Google, are the best way to sync with a mobile device and/or to share calendars with others. Each method has its pros and cons:

This document describes the following scenarios:

Syncing with iCloud

You can sync BusyCal and your iOS devices (iPad, iPhone, and iPod Touch) with iCloud. Each Mac and iOS device subscribes to the calendars hosted on iCloud, and changes automatically sync between them. This is the ideal method of syncing between a Mac and iOS device.

Mobileme

Sharing calendars with others through iCloud

You can share calendars with others through iCloud. This is an ideal method of sharing calendars between iCloud users. It enables each user to make changes on any computer or device and those changes will sync to all other users and devices through the cloud.

Mobileme Sharing2

Syncing with Google Calendar

You can sync BusyCal and mobile devices (iOS, Android, or Blackberry) with Google Calendar. This is an ideal method of syncing if you are a Google Calendar user, need to sync with a mobile device other than iOS (like Android or Blackberry), or are required to sync with Google for some other reason.

Google3

Sharing calendars with others through Google Calendar

You can share calendars with others through Google Calendar. This is an ideal method for syncing between Google Calendar users. It enables each user to make changes on any computer or device that is syncing with Google and those changes will sync to all other users and devices through the cloud.

Google Sharing2

Note: You cannot sync To Dos with Google Calendar.

Syncing with iCloud and Google Calendar

If you have calendars hosted on both iCloud and Google, you can configure BusyCal and the iPhone to subscribe to both services.

Icloud Google Mac Iphone

In this example, there are some calendars hosted on Google and some calendars hosted on iCloud. BusyCal is subscribed to the calendars on both services, and the iPhone is subscribed to the calendars on both services.

Syncing over a LAN

BusyCal allows you to sync calendars with other BusyCal users on your local area network (LAN). This method works best for users in a home or small office that do not sync with iCloud or Google. It is not recommended for those who need to share calendars with remote users, or those who are syncing with a mobile device through a cloud-based service like iCloud or Google.

Lan2

Installation and Registration

To install BusyCal, download and unzip the BusyCal.zip file, then drag the BusyCal application to your Applications folder and launch it.

BusyCal will run for 30-days in full functioning trial mode. To continue using the software after the 30-day trial period you must purchase a serial number. You may purchase a serial number online or click the Buy Now button in the Register dialog to purchase a serial number within BusyCal.

BusyCal is licensed per user. An individual may install and use the Program on up to two computers used solely by that individual. A Family Pack may be used on up to 5 computers in a single household. The Family Pack license does not extend to businesses. Businesses must purchase single user licenses. When purchasing multiple copies, you will receive a single serial number that can be used on all licensed computers. If you need more licenses in the future, you can purchase additional serial numbers that can be used along with your existing serial numbers.


Migrating from iCal to BusyCal

Transferring data from iCal to BusyCal

When you first launch BusyCal, all of your iCal data is instantly imported. The data is actually imported from Sync Services and/or iCloud — the underlying technologies on Mac OS X for syncing calendar data between iCal and other apps/services like BusyCal.

Syncing with iCal

Since BusyCal syncs with iCal through Sync Services and iCloud, any changes you make to your calendars in BusyCal will continue to be synced with iCal. If you later decide not to use BusyCal, all of your data will be current in iCal.

Reverting back to iCal from BusyCal

If you wish to stop using BusyCal as your primary calendar and switch back to iCal, you should reset BusyCal. To reset BusyCal, launch BusyCal and select Help > Reset > Reset BusyCal. BusyCal will clear its publish and subscribe settings, delete its database, set iCal as your default calendar application, and quit.

Using BusyCal with BusySync

You can sync calendars on your LAN between a mix of computers running BusyCal and BusySync.

Upgrading from BusySync to BusyCal

You cannot run BusySync and BusyCal simultaneously on the same computer. If you are running BusySync when you launch BusyCal, a confirmation dialog will appear informing you that your BusySync data will be converted to BusyCal and BusySync will be stopped.

Downgrading to BusySync from BusyCal

If you attempt to start BusySync after running BusyCal, a dialog will ask you if you wish to convert your BusyCal database to BusySync format. BusyCal must be installed in order to perform the database conversion. Once you convert the database, you will be able to start BusySync.


Calendars

Calendar Services

The Calendar List groups calendars by location:

Calendars

iCloud Calendar Types

iCloud calendars are type-specific. Each iCloud calendar can contain either Events or To Dos, but not both. BusyCal will indicate a To Do calendar by displaying a checkmark next to its name.

Todo Calendar Type

Moving Calendars to iCloud

If you have a local, LAN, or Google calendar that you want to host on iCloud, you can move it to iCloud or merge it with an existing calendar on iCloud. See Hosting calendars on iCloud for more info.


Calendar Groups

You can arrange calendars into groups by selecting File > New Calendar Group, and dragging calendars into the group. Once a group is created, you can show/hide all calendars within the group by clicking the group checkbox.

You can create groups for calendars on any service (Local, LAN, CalDAV, Google, WebDAV), by selecting a calendar from that service and choosing New Calendar Group from the File menu.

Calendar Group

Tip: To show or hide all calendars, click a calendar checkbox while pressing the Command-key.


Calendar Views

BusyCal provides several customizable views for displaying your calendar, including Day, Week, Month and List View. You can customize the calendar display in Preferences and on the View menu.

Month View

Month 600

Tip: Select Scroll by Weeks from the View menu to scroll the Month View one week at a time.

Week View

Week 600

Tip: Select Scroll by Days from the View menu to scroll the Week View one day at a time.


List View

The List view displays events in a list format. The bottom pane shows the notes field for the selected item where you can edit and format the notes.

List View

You may select a date range from the popup on the top left. And you can specify which columns to show and the sort order by selecting the Columns... menu item.

List Popup Date List Popup Columns List Columns

And you can customize the list view directly:


View Preferences

View Preferences

You can customize the display of the calendar in BusyCal > Preferences > General:

View Prefs

View Menu

You can customize the behavior of the calendar view (Day/Week/Month/List) by selecting from the following options on the View menu:

Viewmenu

Events

Event Types

BusyCal supports many event types, including:

Events2
Banner, Event,
To Do, and Journal
Graphic
Floating
Graphic
Sticky
Sticky
Note

Note: BusyCal can sync its unique event types (Journals, Sticky Notes, Graphics, and Tags) to other BusyCal clients through iCloud. But if the events are edited by a non-BusyCal client, such as iCal, data may be lost. See iCloud limitations for more info.


To Dos

To Dos come in two flavors:

To Do List

You may show/hide the To Do List by clicking the To Do List button on the lower right, or selecting Show To Do List from the View menu.

Todo List3

Show To Dos in Calendar

You may show dated To Dos and completed To Dos in the calendar.

Todos Calendar

To show To Dos in the calendar, select BusyCal > Preferences > To Dos, and check the following options:

Todo Prefs

Tip: Select the options depicted above so that dated To Dos and completed To Dos only appear in the calendar, and Undated To Dos only appear in the To Do List, to eliminate redundancy.

Repeating To Dos

You may create repeating dated To Dos by selecting a repeat interval in the info panel.

Repeating Todo Popup

All completed occurrences of a repeating To Do are shown in the calendar, but only the next undone occurrence of a repeating To Do is shown. When you complete an occurrence of a repeating To Do, the next occurrence of the repeating To Do will be automatically created.

Take Out Trash

For example, you could create a To Do on Monday to "Take out the trash" that repeats weekly. Only the next undone occurrence of the To Do will appear in the calendar. When you complete it (or delete it), the next occurrence of the To Do will be created on the following Monday.

Repeating To Dos in BusyCal will sync with iCal, iCloud, and the iPhone (running iOS 5 and either the Reminders app or BusyToDo), as follows:

Sort order

To Dos displayed in the calendar are sorted by Priority, Due Date and Title.

To Dos displayed in the To Do List may be sorted by clicking on the To Do List header and selecting a sort order.

Todo Header

Converting To Dos to Events

You can convert To Dos to Events by dragging them from the To Do list to the calendar.

Drag Todo

iCloud To Do Calendars

iCloud calendars are type-specific. Each iCloud calendar can contain either Events or To Dos, but not both. BusyCal will indicate a To Do calendar by displaying a checkmark next to its name.

Todo Calendar Type

Info Panel

Info Panel

The Info Panel displays the details of the selected event. The info panel can be displayed as a floating window by double-clicking an event.

Info Panel None

Or the info panel can be displayed as an embedded panel below the To Do list on the bottom right side. To display the embedded info panel, click the info (i) button on the lower right.

Info Panel Embedded

To select the info panel using the keyboard, select an event in the calendar and type Command-Return. You may then move between fields in the info panel with the tab key. Then type Command-Return again to commit your changes.

Tip: You may open/select the info panel by default whenever you create a new event by selecting "Open info panel for new events" in BusyCal > Preferences > General.

Info Panel Preferences

The info panel can be customized to show only the fields that are desired. Below is an example of the info panel with the default fields shown, and the info panel with all fields shown.

Info Panel None Info Panel All Info Panel Prefs

To choose which fields to display, select Info Panel Preferences from the BusyCal menu, or click the 'i' icon on the upper right corner of the info panel window, and select from the following options:


Tags

You may apply custom tags to events by entering them in the Tags field.

Tags

You can also apply tags to an event by control-clicking on an event and selecting a tag from the contextual menu.

Tag Menu

The Tags menu displays a list of tags that you've previously entered. You may edit the list by selecting Edit Tags from the Edit menu and adding/renaming/deleting tags in the Tag History dialog.

Edit Tags Tag History

Graphics

Busycal allows you to add graphics from your desktop or the web to your calendar.

Attaching a graphic to a date

You may drag a graphic into the calendar to create a floating graphic attached to a date.

Graphic Float

Selecting a graphic

To select a graphic, hold down the Option key and click the graphic. Handles will appear that allow you to move and resize the graphic, or delete it by hitting the backspace key.

Graphic Handles

Minimizing a graphic

You may minimize a graphic by selecting it and choosing Minimize from the Edit menu or typing Command-/. The graphic will be minimized and displayed in the date header area. Clicking the minimized graphic will maximize it to its full size.

Minimize Graphic

Attaching a graphic to an event

You can also drag a graphic onto an event and the graphic will be attached to that event and appear in the date header.

Graphic Event

Opacity

You can control the transparency of a graphic in the info panel by dragging the opacity slider.

Graphic Opacity

Sample icons for BusyCal

Below are some some sample graphics that you can drag-n-drop into BusyCal.


Apple Burn Candle Delete Flower Fortune Cookie Gingerbread Man Home Mac IMac On Movies Nest Orange Smack Star 2 Umbrella Animal Elephant Animal Bat Animal Butterfly Animal Cat Black Animal Dino Bronto Animal Dino Teri Animal Dino Trex Animal Dragonfly Animal Lion Apple Color Apple Red Apple Silver Bone Bottle Bus Blue Bus Camera Chess Clover Coffee Coffee2 Cone Creature Creature2 Gingerbread Man2 Gun Halloween Pumpkin1 Halloween Pumpkin2 Halloween Witch Hat Heart Iphone Knife Lock Macbook Pro Music Guitar1 Music Guitar2 Music Mic Music Piano Music Record Music Planet Earth Planet Earth3 Planet Mars Planet Moon Ship Anchor Ship Helm Ship Treasure Chest Skull Smiley1 Smiley2 Smiley3 Smiley4 Sports 8ball Sports Baseball Sports Basketball Sports Football Sports Golf Sports Horse Shoe Sports Soccer Sports Tennis Star Wars R2 D2 Star Starwars Vader Starwars1 Stickies Tools Hammer Tools Warning Windows Wishbone Xmas GiftBlue Xmas GiftPurple Xmas GiftYellow Xmas Santa Xmas Snowman 2 Xmas Snowman1 Xmas Candycane Xmas Cap Xmas Ornament Blue3 Xmas Ornament Green2 Xmas Ornament Red Xmas Santa2 Xmas Snowflake Blue Xmas Snowflake Xmas Snowflake2 Xmas Snowman2 Xmas Sock Xmas Tree Xmas Tree2 Xmas Wreath

The sample graphics above were found on interfaceLIFT

Where to find more graphics


Holidays

Holiday calendar

Busycal displays all-day events on Holiday calendars in a unique style. Double-click a calendar to open the Calendar info dialog, and check the "Holiday calendar" checkbox to display all-day events on that calendar on the bottom of the day cell in gray italicized text, rather than as banners.

Holiday Calendar
Holiday Banner Holiday

When subscribing to a WebDAV calendar, such as "US Holidays", BusyCal will detect if the calendar is a holiday calendar by its title, and set the Holiday calendar checkbox automatically. You can set the Holiday calendar checkbox on any calendar, such as a shared company holidays calendar.

Observed Holidays

An "observed" checkbox appears in the Info Panel for each Holiday event. If you select this option, the date will be displayed in red on that date.

Holiday Infopanel

Note: Only one all-day event per day is displayed in the Holiday style. If there is more than one all-day event on a Holiday calendar, the additional all-day events are displayed in the same style as a Journal entry.


Birthdays

BusyCal can display the birthdays from Address Book contacts in your calendar. Select BusyCal > Preferences > General, and select the Show Birthdays calendar option. A new Birthdays calendar will appear under the ADDRESS BOOK heading and any Address Book contacts with Birthdays will be displayed as Banners in the calendar. In addition, if you select the option to Include ages in birthdays, the contact's age will be displayed in the Banner title.

Birthdays

If you open the Info Panel for a Birthday, you'll see some Birthday-specific fields:

Birthday Infopanel

The Birthdays calendar can be synced over the LAN with other BusyCal users or with Google Calendar but will not sync to other apps and services like iCal, iCloud and the iPhone because iCal, iCloud and iOS already have direct support for the Birthdays calendar.

The Birthdays calendar is read-only and cannot be edited in BusyCal. If you wish to change or remove a birthdate, you must make the change in Address Book.

Note: iCal has a similar option that displays a Birthdays calendar under the SUBSCRIPTIONS heading. You should disable that option in iCal > Preferences > General, or you will see two Birthdays calendars in BusyCal — one created by BusyCal and one created by iCal.


Weather

BusyCal can display a five-day weather forecast in your calendar. When you hover your pointer over the weather icon, an extended forecast is displayed. If you click the icon you'll be redirected to Accuweather.com.

Weather Large

To configure the weather for your area, select BusyCal > Preferences > Weather, select the Show weather checkbox, and enter your zip code or city code.

Weather Prefs

You may display the weather as large icons or small icons. Small icons appear in the date header.

Weather Small

Select the Show moon phases option to display moon icons.

Moons

After specifying your location in the Weather preferences, the Day and Week view will display shaded areas on the top and bottom indicating the hours of darkness (sunrise and sunset) for your location.

Solar

Address Book Integration

You can drag contacts from Address Book or the Address Panel (Window > Address Panel) into BusyCal to attach contacts to events or To Dos.

Adding a contact to an event

Drag a contact into the calendar to create a new meeting with that contact. Or drag the contact onto an existing event to add them as an attendee.

Addressbook Meeting

Adding a contact to a To Do

Drag a contact into the To Do list to create a new To Do that is linked to that contact. The contact's name will appear in the Title field, and their phone number and email address will appear in the Location field, and a link to the contact will appear in the my URL field.

Addressbook Todo

Adding a contact to the Notes field

You can add a contact's info to an existing event by dragging the contact to the Notes field.

Addressbook Notes

Adding a contact to the Location field

You can add a contact's address and phone number to an existing event by dragging the contact to the Location field.

Addressbook Location

Adding a contact to the my URL field

You can add a link to a contact by dragging the contact to the my URL field.

Addressbook Myurl

Tip: In addition to contacts, you can drag files, Mail messages, Safari URLs, and other items to the my URL field to create links to those items.


Meetings

BusyCal allows you to schedule meetings with others by adding attendees to an event and sending a meeting invitation. If the meeting is created on an iCloud calendar, the invitation will be sent by the iCloud server from your iCloud email address. If the meeting is created on a local calendar or Google calendar the invitation will be sent by your mail client from your default mail account.

Sending and Receiving Meeting Invitations

When you create an event and add attendees to it, a Send Invitation button will appear. Clicking this button will send a meeting invitation to the attendee.

Organizer

When an attendee receives an invitation, BusyCal will display a dialog asking which calendar to add the invitation to.

Invite

The attendee can then Accept or Decline the meeting by clicking the appropriate button in the info panel, and an accept/decline reply will be sent to the meeting organizer.

Attendee

Address Book Me Card

BusyCal requires you to have a default email address defined in your Address Book Me Card for sending and responding to meeting invitations. You may open your Me Card by launching Address Book and selecting Card > Go to My Card.

Gotomycard Mecard

Attendee

When you receive a meeting invitation via email, BusyCal determines whether or not you are a valid attendee by comparing the attendee email address in the meeting invitation with the email addresses in your Address Book Me Card. If BusyCal finds a matching email address in your Me Card, it will allow you to Accept or Decline the meeting request.

Organizer

The creator of a meeting is the Organizer. Only the meeting Organizer can edit a meeting; attendees have read-only access. BusyCal determines whether or not you are the meeting Organizer and can edit a meeting by comparing the Organizer email address to the email addresses in your Address Book Me Card.

When you create a meeting in BusyCal, your default email address is used for the Organizer. You may change the default Organizer email by selecting BusyCal > Preferences > Advanced, and choosing one of your email addresses from the Meeting organizer email popup. You can select any of the email addresses in your Address Book Me Card.

Prefs Organizer

Note: Your iCloud email address is used for the meeting Organizer when a meeting is created on an iCloud calendar.

Mail Account

BusyCal sends meeting invitations from the default mail account in Apple Mail. You can set the default account in Mail by selecting Mail > Preferences > Composing, and choosing an account from the "Send new messages from" popup.

Mailfrom

You may view outgoing meeting invitations in Mail before sending them. This may be useful for adding a personal note to the email or to change the mail account the invitation is being sent from. To configure this setting, open BusyCal > Preferences > Advanced, and check the "Show outgoing meeting invitations in Mail" checkbox.

Prefs Showmail

Note: Meeting invitations created on iCloud calendars will be sent from the iCloud server as opposed to your Mail client, and will not be displayed before sending.


Alarms

BusyCal can display alarms informing you of upcoming events.

Alarm Preferences

You can specify the default alarm settings in BusyCal > Preferences > Alarms:

Alarms

In Alarm Preferences you can specify a default alarm interval for new events, as well as all-day events & to-dos. You may also specify a default snooze interval and action for the alarm window, and whether to display alarms in the menu bar. Lastly, you have the option to Turn off all alarms, which is useful if you are running BusyCal on a server where you do not wish to receive alarms.

Custom Alarms

When creating a new alarm, you can choose one of the default intervals from the popup menu, or select Custom... to set a custom interval or specific date and time for the alarm.

Alarm Popup Alarm Popup Custom Alarm Custom Message Date

Alarm Types

In addition to Message alarms, the Custom dialog also allows you to create Email alarms, Open File alarms, and Location Alarms.

Alarm Types

Location Alarms

Location alarms are displayed on an iPhone running iOS 5 and the Reminders app or BusyToDo, when arriving or leaving the specified location. Location alarms can only be assigned to To Dos that are stored an an iCloud calendar.

To create a location alarm, create a To Do on an iCloud calendar, select a custom alarm type of Location, select either "arrive" or "leave" from the popup, click the Location button and select a contact from your Address Book or type an address and press return to search for that address in Google Maps, then click OK.

By default, Location alarms will trigger each time you arrive or leave a location. In addition, you can set a specific date and time when you want to be reminded, regardless of whether or not you reach the location. Location alarms will continue triggering each time you reach a location until you complete the task or delete it.

Tip: Create an Undated To Do called Groceries with a list of needed items in the Notes field, and attach a Location alarm to it that will trigger when you arrive at your local grocery store.

Alarm Location Arriving Alarm Location Alarm Location Map

My Alarms

If you show the My alarms field in the Info Panel Preferences, it will enable you to add alarms to events that are triggered only on your computer and not synced with other apps or services.

In addition, if you are subscribed to a read-only calendar, BusyCal will automatically display the "my alarm" field for events on that calendar so you can set personal alarms for those read-only events. This is a useful option for adding alarms to read-only WebDAV calendars like a sports schedule.

My Alarm

Alarm menu

If you enable the preference to "Show alarms in menu bar" an alarm menu will appear on the menu bar that displays today's events, including all-day events, appointments, Dated To Dos, and Journals. An icon is displayed next to events that have pending alarms set. Selecting an item on the menu will launch BusyCal and select that event.

Alarm Menubar

Alarm window

Message alarms appear in a floating window. You can snooze an alarm for any number of minutes, hours or days; or dismiss it. If multiple alarms are pending, you can snooze/dismiss them individually or select the "Apply to all" checkbox to snooze or dismiss all of them. Double-clicking an event in the alarm window will launch BusyCal and select that event.

Alarm Window

Removing alarms on subscribed calendars

When subscribing to a calendar, all alarms on that calendar will be synced with your computer. If you wish to remove the alarms from your computer without affecting the alarms on the host, double-click the calendar to open the Calendar Info sheet and check the Remove Alarms checkbox.


Font Styles

Global Font Styles

You can set a global font face and size for all events in your calendar in BusyCal > Preferences > General.

Default Font

Event Font Styles

You can apply custom fonts and styles to selected events using the Font menu.

Fonts

Applying Font Styles to Notes

You can apply font styles to notes in the info panel or the List View notes pane. In the List View, the notes pane shows a ruler with additional formatting controls.

List Notes Pane

If you'd prefer not to display rich text in your calendar, you can toggle the display of styled text by selecting View > Show Rich Text.


You may perform a search by entering text in the search field in the upper right corner. BusyCal will search for all events whose title, location, notes or tags match the search criteria and filter the current view to show the matching events. Only matching events in the current calendar date range are shown. You can then page backward and forward through the current view (Month, Week, Day) by clicking the arrow buttons or typing Command-Left/Right arrow to see matching events in the past or future. You can also switch to the List View and set a wider date range (like a year or a decade) to see more results.


Date and Time Format

BusyCal displays dates and times based on the format you have specified in System Preferences. It should work with all standard formats but may not always work with custom formats. To set a standard date and time format, open System Preferences > Language & Text > Formats, and select one of the regions from the Region menu.

Dateformat

If you wish to display times in a non-standard format, such as 24-hour time, you'll have to customize the time format as described in the following article.

http://www.macworld.com/article/132049/2008/02/ical24hr.html

Time Zones

All events created in BusyCal are scheduled in local time. If your time zone is set to Eastern time, any events you create will be in Eastern time. If you change your time zone, the events in your calendar will shift to reflect the new time zone.

For example, if you live in New York and your time zone settings in System Preferences are set to US/Eastern time, when you create a "Dinner Meeting" at 6:00 PM, it will be scheduled in your local time of 6:00 PM Eastern time. If you travel to California and change your time zone settings in System Preferences to US/Pacific time, the "Dinner Meeting" will appear in your calendar at 3:00 PM, because 6:00 PM Eastern time is 3:00 PM Pacific time.

If you want to avoid this time shifting, you have several options:

Each option is described below.

Option 1: Enable the Time Zone menu in BusyCal

BusyCal provides a Time Zone menu that can be used to dynamically display all of the events in your calendar in a different time zone. This is useful when traveling between different time zones. It allows your computer's system clock to be set to a new time zone, while BusyCal continues to display events in your home time zone.

To enable the Time Zone menu, select BusyCal > Preferences > Advanced, and check "Show time zone menu in toolbar". You may also check "Use long time zone names" to display a city name along with the time zone.

Timezonepref

This will reveal a time zone popup in the upper right corner of the calendar.

Timezonemenu

Assuming you live in New York (US/Eastern) and travel to California (US/Pacific), here's an example workflow:

Note: This applies to the iPhone as well. The iPhone will automatically change your time zone when you travel and all of the events in your calendar may shift. If so, you can enable time zone support on the iPhone in Settings > Mail, Contacts, Calendars > Time Zone Support, to achieve the same results as described above.

Option 2: Don't change time zones in System Preferences

Your time zone is set in System Preferences > Date & Time > Time Zone. In Snow Leopard and Lion, the time zone is set automatically. Therefore, when you travel, your time zone settings may change without being aware of it. If your time zone settings in System Preferences change, all of the events in your calendar will shift to reflect the new time zone. For example, if your home time zone is US/Eastern time, and your time zone settings are changed to US/Pacific time, all of the events in your calendar will be displayed 3 hours earlier.

You can avoid this time shifting by manually setting your Time Zone in System Preferences to your home time zone, as follows:

Systempref Timezone Systempref Dateandtime

Now your computer will think it's still in your home time zone and all of the events in your calendar will continue to display in their originally scheduled times.

Option 3: Schedule events in Floating Time

In addition to scheduling events for a specific time zone, you can schedule events in Floating time. An event scheduled at 9:00 AM Floating time, will appear at 9:00 AM in all time zones.

This may be useful if you are located in New York (US/Eastern) and are sending a meeting invitation to a client in San Francisco (US/Pacific) for a face to face meeting. If you schedule the lunch at noon Eastern and email the invitation to your client in San Francisco, the lunch appointment will appear at 9:00 AM on your client's computer. However, if you schedule the appointment for noon Floating Time, the event will display at noon regardless of what time zone you are in. Then, when you travel to San Francisco to meet with your client, you'll both show up for lunch at noon, regardless of what time zone is set on each computer.

Floating

On the other hand, if you're scheduling a conference call with your client in San Francisco while you are in New York, you should not use Floating Time. You'll want each participant in the conference call to see the event in their local time zone, since a call scheduled for noon Eastern will occur at 9:00 AM Pacific.

Warning: Floating Times are not well supported in Google Calendar. If you are sharing calendars with others through Google Calendar, Floating Time events may lead to unpredictable results.

Displaying Time Zones in the Info Panel

If you wish to display or change the time zone for an event, you can select BusyCal > Info Panel Preferences, and select the Start and End time zone options.

If you enable the Start time zone, a single time zone popup will display below the event end time. A single time zone popup is sufficient for events that begin and end in the same time zone, like a conference call that is being scheduled for 9:00 AM Pacific and Noon Eastern.

Start Time Start Time2

If you enable the End time zone field, separate popups will appear for the start and end time. This is useful if you are scheduling an event that spans time zones, like a cross-country flight that departs at 9:00 AM Pacific and arrives at 5:00 PM Eastern.

End Time End Time2

Google Calendar Time Zones

If you are syncing with Google Calendar and events are appearing in the wrong time zone (like GMT), you may have a timezone setting misconfigured on Google. Login to Google Calendar on the web, and verify that the global and per calendar time zones are correct. Here's where to set the time zones on Google:

After that, new events you create should have the correct timezone set. Existing events may need to be edited for them to get their time zones updated. The easiest way to do that is to unsubscribe/resubscribe or unpublish/republish any calendars you are syncing.


Keyboard Shortcuts

Calendar shortcuts
Arrow keys Select different day in calendar
Command (⌘)-Right Arrow Go to the next day, week, or month
Command (⌘)-Left Arrow Go to the previous day, week, or month
Trackpad 2 or 3 finger swipe Go to next/previous day, week or month
Option-scroll Change the hours shown in Day and Week view
Command (⌘)-click any calendar’s checkbox Select or deselect all the active calendars in the Calendars list
Space bar Select or deselect the active calendar in the Calendars list
Control-click a calendar Display a contextual menu for editing the selected calendar
Double-click a calendar date Create a new event on selected date
Option-Command (⌘) click-and-drag in Day or Week View Create a new event in a time slot where events already exist
Event shortcuts
Tab Select the next event or to-do item in the main calendar view
Shift-Tab Select the previous event or to-do item in the main calendar view
Command (⌘)-E,
Command (⌘)-I, or
Command (⌘)-Return
Toggle the selection between the info panel and calendar view and commit your changes
today
tomorrow
next week
mon
15
8/15
8.15
aug 15
You may enter many different abbreviated date formats in the date field and hit tab to enter the complete date
now
130
130p
1:30
1.30
1:30p
1:30PM
1330
13:30
You may enter many different abbreviated time formats in the time field and hit tab to enter the complete time
Option-drag an event Create a copy of the event
Control-click an event Display a contextual menu for editing the selected event(s)
Option-click a graphic Select the graphic
Command (⌘)-/ when graphic selected Minimizes the selected graphic
Command (⌘)-/ when sticky selected Minimizes the selected sticky
Click title bar of sticky, then Delete-key Deletes the selected sticky
BusyCal menu shortcuts
Command (⌘)-comma Open BusyCal preferences
Option-Command (⌘)-comma Open Info Panel Preferences
Command (⌘)-H Hide the BusyCal application
Option-Command (⌘)-H Hide all other applications
Command (⌘)-Q Quit the BusyCal application
File menu shortcuts
Command (⌘)-N Create a new event
Command (⌘)-K Create a new to-do item
Command (⌘)-U Create a new undated to-do item
Command (⌘)-B Create a new banner (all-day event)
Command (⌘)-Y Create a new sticky
Command (⌘)-J Create a new journal
Shift-Command (⌘)-N Create a new calendar group
Command (⌘)-I Show or hide the info panel for the selected calendar, event, or to-do item
Command (⌘)-W Close the BusyCal window
Command (⌘)-P Print calendars and to-do items
Edit menu shortcuts
Command (⌘)-Z Undo your last action
Shift-Command (⌘)-Z Redo your last action
Command (⌘)-X Cut the selected text or event
Command (⌘)-C Copy the selected text or event
Command (⌘)-V Paste the cut or copied text or event
Option-Shift-Command (⌘)-V Paste the cut or copied text and match the existing style
Command (⌘)-A Select all text or all events in the current calendar
Command (⌘)-D Duplicate the selected text or event
Command (⌘)-/ Mark selected to-do as Done or Not Done
Command (⌘)-F Make the BusyCal search field active
Font menu shortcuts
Shift-Command (⌘)-F Show Fonts
Shift-Command (⌘)-B Make selected text bold
Shift-Command (⌘)-I Make selected text italic
Shift-Command (⌘)-U Make selected text underline
Command (⌘)-Plus Make selected text bigger
Command (⌘)-Minus Make selected text smaller
Shift-Command (⌘)-C Show colors
Option-Command (⌘)-C Copy style of selected text
Option-Command (⌘)-V Paste the cut or copied text style
Shift-Command (⌘)-P Change style of the selected text to plain text
Calendar menu shortcuts
Command (⌘)-R Refresh all calendars
Shift-Command (⌘)-R Refresh all WebDAV subscribed calendars
View menu shortcuts
Command (⌘)-1 Switch to Day view
Command (⌘)-2 Switch to Week view
Command (⌘)-3 Switch to Month view
Command (⌘)-4 Switch to List view
Command (⌘)-Right Arrow Go forward in the main calendar view
Command (⌘)-Left Arrow Go backward in the main calendar view
Command (⌘)-T Show today’s date in the main calendar view
Shift-Command (⌘)-T Show a specific date in the main calendar view
Option-Command (⌘)-T Show or Hide the To Do List
Option-Command (⌘)-I Show or Hide the Info Panel
Shift-Command (⌘)-W Enable or disable word wrap in the calendar view
Shift-Command (⌘)-H Show rich text or plain text in the calendar view
Shift-Command (⌘)-K Show or hide weekends
Shift-Command (⌘)-S Scroll the current calendar view by Days or Weeks
Window menu shortcuts
Command (⌘)-M Put the BusyCal window in the Dock
Option-Command (⌘)-A Show or hide the Address panel
Command (⌘)-0 Show the BusyCal window

Overview of iCloud

How iCloud works

iCloud functions as a CalDAV server where all calendars are hosted. Each Mac and iOS device (iPad, iPhone, and iPod Touch) functions as a CalDAV client and subscribes to the calendars hosted on iCloud. Once subscribed, calendars can be edited on any client and the changes will sync to the host and to all other clients.

Caldav Host

Calendars hosted on iCloud

All calendars you wish to sync between your Mac, iPhone, and other users, must be hosted on iCloud.

For best results, you should do all of your calendar sharing through iCloud.

Sharing calendars with others through iCloud

You can share calendars with others through iCloud. This is an ideal method of sharing calendars, especially if you have users in different locations, need to sync your calendar while traveling, or have an iPhone. It enables each user to make changes on any computer or device in any location, and those changes will sync to all other users and devices through the cloud.

Mobileme Sharing

To learn more about sharing calendars on iCloud, see:

Syncing with an iPhone, iCloud and Google Calendar

If you have calendars hosted on both iCloud and Google, you can configure BusyCal and the iPhone to subscribe to both services.

Icloud Google Mac Iphone

In this example, there are some calendars hosted on Google and some calendars hosted on iCloud. BusyCal is subscribed to the calendars on both services, and the iPhone is subscribed to the calendars on both services.

To sync BusyCal and the iPhone with both iCloud and Google, see:


Syncing with iCloud

BusyCal allows you to synchronize calendars with iCloud and other CalDAV servers. Once you subscribe to calendars hosted on iCloud any changes you make to events in BusyCal or on iCloud will sync in both directions.

Busycal Mobileme

Syncing with iCloud

To connect to iCloud (and other CalDAV servers), select Connect to iCloud/CalDAV Server from the Calendar menu and enter your account username and password.

Connect To Icloud Connect

Once you've entered your iCloud account settings, the iCloud server and its calendars appear in the source list and begin syncing. You may now edit events on those calendars and the changes will be synchronized with the server.

Caldav Sub Color

Server Settings

Once you are connected to iCloud (or another CalDAV server), you can alter the server settings by control-clicking the server and choosing Server Settings. You may change your username, password, server address, and refresh interval. Push will be enabled by default, if the server supports it.

Server Settings Menu

Removing a Server

To remove a server, click the Disconnect button. Any calendars you are subscribed to will be removed from BusyCal, but the calendars will remain intact on the server.

Caldav Server Settings

Hosting calendars on iCloud

iCloud functions as a CalDAV server where all calendars are hosted. Each Mac and iOS device (iPad, iPhone, and iPod Touch) functions as a CalDAV client and subscribes to the calendars hosted on iCloud. Once subscribed, calendars can be edited on any client and the changes will sync to the host and to all other clients.

Caldav Host

Calendars hosted on iCloud

All calendars you wish to sync between your Mac, iOS device and iCloud, must be hosted on iCloud.

Moving calendars to iCloud

If you have a local, LAN, or Google calendar that you want to host on iCloud, you can move it to iCloud or merge it with an existing calendar on iCloud.

To move a calendar to iCloud

For this example, let's say you have a local calendar called "Work" that you want to host on iCloud. Here's how you can move it to iCloud:

  1. Make sure you are syncing with iCloud and your iCloud Account appears in the left sidebar.
  2. Control-click on the calendar that you want to move to iCloud and choose Move to iCloud.
  3. Icloud Move
  4. iCloud requires you to store events and to dos on separate calendars, so the Work calendar will be transformed into two calendars on iCloud — one for events and one for to dos.The to do calendar will be indicated with a checkmark next to its name.
  5. Local Icloud

To merge a calendar with a calendar on iCloud

For this example, let's say you have a local calendar called "Work" that you want to merge with an existing calendar on iCloud called "Fred". Here's how to do it:

  1. Export the Work calendar by selecting it in the left sidebar and choosing File > Export, and save it to your desktop. Then delete the Work calendar from BusyCal by control-clicking on it and choosing Delete (or Unsubscribe if it's a LAN or Google Calendar subscription).
  2. Export Local
  3. Select File > Import, select the file you exported in step 1, select the option to Import events into Existing Calendar, and choose the Fred calendar (which is hosted on iCloud). This will add the events from the Work calendar to the Fred calendar on iCloud.
  4. Import Icloud

    Note: iCloud stores events and to dos on separate calendars. Therefore, during the import process, the events will be imported but the to dos will be rejected and moved to the BusyCal Conflicts calendar. To import the to dos, you must repeat this step and import into an existing calendar on iCloud that supports to dos.

  5. After successfully importing into an existing calendar on iCloud, you may delete the BusyCal Conflicts calendar where all the rejected events were placed by control-clicking on it and choosing Delete.

Tip: After merging the calendars, you can remove duplicate events by selecting Help > Find Duplicates.


Syncing between home and work

You can sync BusyCal between your Mac at work and home through iCloud. Once you connect to iCloud, any events you create or edit on your Mac at work will be synced to your Mac at home through iCloud and vice versa.

Caldav Home Work

All calendars you wish to sync between work and home must be hosted on iCloud. Unique data types in BusyCal (Stickys, Journals, Graphics, Attachments, Tags, Recurring To Dos, etc.) will sync between home and work through iCloud with some limitations. See iCloud limitations for more info.


Sharing calendars with others

BusyCal enables you to share calendars with other iCloud users. Once each user has configured BusyCal to sync with their personal iCloud account, you can then share calendars with each other through iCloud. Once a calendar is shared through iCloud, events can be edited by any user and changes will sync between them.

Mobileme Sharing

To share a calendar with other iCloud users

  1. Login to your calendar on the web at icloud.com.
  2. Click the Share Calendar button to the right of the calendar you want to share.
    Mobileme Share Button
  3. Choose Private Calendar, then type the iCloud user's email address and press Return.
    Mobileme Share Private
  4. Choose the user’s calendar privileges from the View & Edit menu, click Share, and then click OK in the confirmation window that appears.
    Mobileme Share Privileges
  5. The Shared Calendar button appears green in the Calendars list, indicating that the calendar is shared.
    Mobileme Share Button2
  6. Once you have shared a calendar with someone, they must accept the shared calendar on icloud.com before it will appear on their iCloud and sync to their Mac and iOS devices.

If you need to share calendars with more than two or three users, see Sharing calendars with iCloud in a large workgroup.


Sharing with a large workgroup

If you have many users in your workgroup that you wish to share calendars with, you may want to configure one of the iCloud accounts as the master where all of the shared calendars are hosted. This will simplify the setup and maintenance of the shared calendars and designate one user as the owner and administrator of the shared calendars.

Mobileme Sharing Cascade

In the example above, John is hosting all of the shared calendars on his account and is sharing the calendars with Fred, Dave and Mary.

If you need to share calendars in a workgroup where some users use iCloud and some do not, you can setup a hybrid workflow where you are sharing calendars with others through iCloud and over a LAN.


Syncing with iCloud & Google

BusyCal can sync with both iCloud and Google Calendar simultaneously.

Subscribing to calendars on iCloud and Google

If you have calendars hosted on both iCloud and Google, you can configure BusyCal and the iPhone to subscribe to both services.

Icloud Google Mac

In this example, there are some calendars hosted on Google and some calendars hosted on iCloud. BusyCal is subscribed to the calendars on both services.

To sync BusyCal with both iCloud and Google, see:

Calendars hosted on Google cannot be published to iCloud, but calendars hosted on iCloud can be published to Google, as described below. Although republishing an iCloud calendar to Google is possible, it is not recommended. Ideally, you should only subscribe to calendars hosted on each service, as described above.

Publishing iCloud calendars to Google

If you are subscribed to an iCloud calendar with BusyCal, you can republish that calendar to Google.

To Publish an iCloud calendar to Google, control-click on the iCloud calendar and choose Publish to google.

Mobileme Google

Note: Your default Google Calendar is hosted on Google. Since calendars hosted on Google cannot be published to iCloud, it is not possible to sync your default Google Calendar with iCloud.


Syncing with iCloud and on a LAN

BusyCal can sync with iCloud and over a LAN simultaneously.

Publishing iCloud calendars on a LAN

You can publish iCloud calendars on your LAN for others to subscribe to. iCloud will only sync calendars that are hosted on iCloud. So, if Fred wants to sync calendars over the LAN with Mary while also syncing those calendars with iCloud, then the calendars must be hosted on Fred's iCloud account and republished over the LAN for Mary to subscribe to, like this:

Mobileme Lan Repub

If both Fred and Mary are syncing with iCloud, then they should share calendars with each other through iCloud rather than over the LAN.

If you need to share calendars in a workgroup where some users use iCloud and some do not, you can setup a hybrid workflow where the iCloud users share calendars through iCloud, and the non-iCloud users sync over the LAN.

Sharing calendars with both iCloud and non-iCloud users

You can set up one of the Macs on your LAN as a server that republishes the iCloud calendars over the LAN for non-iCloud users to subscribe to.

In this example, the LAN server is syncing with the widgetco@me.com iCloud account and republishing the iCloud calendars over the LAN for the non-iCloud clients to subscribe to. Those who have iCloud accounts (dave@me.com and mary@me.com), are not syncing over the LAN. Instead, they are sharing calendars with each other through iCloud.

Caldav Lan Host

iCloud limitations

There are some limitations to be aware of when syncing with iCloud.


Syncing with Google Calendar

BusyCal allows you to synchronize calendars with Google Calendar. You can subscribe to calendars hosted on Google, and/or publish calendars hosted in BusyCal to Google. In either case, changes made in BusyCal or on Google Calendar will sync in both directions.

Busycal Google

Note: Google Calendar does not provide an API for third-party developers for syncing To Dos. Therefore, BusyCal does not sync To Dos with Google Calendar; it only syncs Events.

Connect to Google Calendar

In order to sync with Google Calendar, you must enter your Google account login and password by selecting Calendar > Connect to Google Calendar. BusyCal supports both regular Google accounts and Google Apps for Your Domain accounts and you can even sync with multiple Google Accounts.

Google Login

Settings

Enter the following in the Google Server Settings dialog:

  1. Google Login and Password.
  2. Specify how often you want to sync with Google. Every 15 minutes is the default.
  3. Select Use SSL if you want to encrypt your data when syncing with Google Calendar.
Busycal Google Settings

Alarms

By default, Alarms are not synced between BusyCal and Google Calendar. If you wish, you may choose to sync Message Alarms in BusyCal to one of the following Google Alarm types by selecting the Sync message alarms checkbox and choosing one of the following options:

Google Alarms

For example, if you sync message alarms to SMSs on Google, then any events you create in BusyCal with a message alarm will map to an SMS alarm on Google. And vice versa, any events created in Google Calendar with an SMS alarm, will map to a message alarm in BusyCal.

Note: when enabling Alarm syncing, the change is not retro-active and will only affect new events that you create and not existing events in your calendar. If you wish to make it retro-active, you must unpublish and/or unsubscribe from the calendars you are syncing with Google, enable the Alarm syncing preference, and then republish or re-subscribe to the calendars.

Date Range

You can minimize the amount of data you publish to Google by selecting a date range limit from the "Don't publish events older than" popup. This will speed up syncing and reduce the chances of running into a Google quota error (Google limits the amount of data you can sync to protect against spam/abuse).

Date Range

Note: this setting only applies to calendars you are publishing to Google and does not apply to calendars you are subscribed to on Google.

Subscribe to Google

Once you've entered your Google Account settings, the Google Account appears in the source list, and the calendars hosted on Google appear below it in gray.

Busycal Google Sub

You may subscribe to a Google calendar by clicking the checkbox next to its name. When doing so, all of the events on that calendar will be synced to BusyCal. If you have write privileges, you may edit events on that calendar and those changes will be synchronized with Google.

Busycal Google Sub

Publish to Google

In addition to being able to subscribe to calendars hosted on Google, you can also publish calendars from BusyCal to Google. To publish a calendar to Google, control-click on the calendar and select Publish to <google account>.

Busycal Google Pub

An icon will appear next to the calendar name indicating that it is being published to Google. The calendar will be automatically created on Google and any events you create or edit on that calendar in BusyCal or Google will sync both ways.

Publish Icon

Server Settings

Once you've added a Google Account, you can alter your Google Sync Settings by control-clicking the Google Account and choosing Server Settings.

Google Server Settings

Removing a Google Account

To remove a Google Account, click the Disconnect button. This will clear your Google publish and subscribe settings — any calendars you are publishing to Google will be removed from Google and any calendars you are subscribed to from Google will be removed from BusyCal, and the Google Account will be removed from your Calendar source list.

Google Disconnecct

Syncing between home and work

You can keep your calendars in sync between your Home and Work computers by syncing both of them to the same Google Calendar account. For example, Fred has a computer at work and a computer at home and they are both configured to sync with the same Google Calendar account. So, if Fred makes a change on his calendar at work, that change will be sync'd to Google Calendar, and from there it will be sync'd to his home computer.

Google Work Home

It is not even necessary to use Google Calendar's web interface — you can just use Google Calendar as a conduit between your home and work computers. This is a great way to keep remote Macs in sync (like home and work, a husband and wife, or a boss and an assistant), particularly if you travel a lot and need to be able to sync from any location. You could even use a Windows PC at work running Google Calendar Sync to sync Outlook with Google Calendar and a Mac at home running BusyCal/BusySync.

In this example, we start out with a Mac at Work hosting the Work calendar, Google hosting the Fred calendar, and a Mac at Home hosting the Home calendar.

Google Work Home1

To sync calendars between home and work using Google Calendar as a conduit, both the Mac at home and the Mac at work must be syncing with the same Google Calendar account. Once both Macs are configured to sync with Google, they can each subscribe to the Fred calendar that is hosted on Google.

Google Work Home2

Fred publishes his Work calendar to Google. Once published to Google, the calendar automatically shows up in BusyCal at home and can be subscribed to.

Google Work Home3

Likewise, Fred publishes his Home calendar to Google. Once published to Google, the calendar automatically shows up in BusyCal at work and can be subscribed to.

Google Work Home4

The end result shows all of the calendars being synchronized between Work, Google, and Home. Any changes made on a calendar at any location, will sync between all of them.

To simplify things, you may want to host all calendars on Google and set up each Mac to subscribe to Google.

Note: Google does not support syncing of To Dos. BusyCal will allow you to create To Dos locally on calendars you are syncing with Google, but the To Dos will not be synced to Google. Therefore, you cannot sync To Dos between Home and Work using the method described above. However, iCloud does support To Dos. So, if syncing To Dos is important to you, you may want to sync with iCloud instead of Google.


Sharing calendars with others

Users in remote locations can sync calendars with each other through Google Calendar without having to share a single Google Calendar account. Each of the users can sync with their personal Google Calendar account, and then use Google Calendar's sharing features to share calendars with each other.

Google Remote2

For example, Fred syncs to his personal Google Calendar account, and Mary syncs to her personal Google Calendar account. Then Fred shares a calendar with Mary using the Google Calendar sharing interface, so that the calendar shows up on Mary's Google Calendar. Once there, it will sync to Mary's Mac. And Mary can make changes to that calendar on her Mac and it will sync back to Fred's Mac through Google Calendar.

Google Calendar Sharing

In this example, we start out with Fred and Mary each syncing BusyCal with their personal Google Calendar accounts, but they are not yet sharing calendars with each other.

Google Remote3

Fred can share his calendar on Google Calendar with Mary by logging into Google Calendar on the web and clicking Settings > Calendars > Share this calendar.

Google Fred Share2

In the next dialog, Fred enters Mary's Google Calendar account ID in the Person field, and sets the Permission Settings (Make changes to events, See all event details, or See only free/busy time) for the calendar. In effect, Fred is Publishing his calendar to Mary's Google Calendar account.

Google Fred Mary2

Once Fred has shared his calendar with Mary, it will show up on Mary's Google Calendar, and from there it will automatically sync to BusyCal on Mary's Mac where she can subscribe to it.

Google Remote4

Now Fred and Mary can both make changes to the Fred calendar in BusyCal and the changes will sync back and forth through Google. This process can be repeated with other calendars that Fred or Mary wish to share with each other or with other Google Calendar users.


Hosting calendars on Google

The publisher of a calendar is the host and the subscriber is the client. When syncing with Google Calendar, your calendars can be hosted locally in BusyCal and published to Google, or the calendars can be hosted on Google and subscribed to in BusyCal, or a combination. To simplify things, you may wish to consolidate the calendars and host them all on Google.

Google Host3

You can move a calendar that is hosted locally on your Mac to Google Calendar, or you can merge it with an existing calendar on Google. Following are instructions for each.

To move a local calendar to Google

For this example, let's say you have a calendar hosted on your Mac called Home that you want to host on Google. Here's how you can move it to Google:

  1. Export the local Home calendar by selecting the calendar and choosing File > Export, and save it to your desktop. After successfully exporting the Home calendar, delete it by control-clicking it and selecting Delete.
  2. Login to Google Calendar on the web, click the "Create" link below "My calendars" and create a new calendar called "Home".
  3. In BusyCal, subscribe to the Home calendar you just created on Google Calendar. Then, double-click the file you exported in step 1 to import it. When prompted, choose to import the events into the Home calendar (which is now hosted on Google). This will add the events from the old Home calendar to the new Home calendar on Google.

To merge a local calendar with a calendar on Google

For this example, let's say you have a calendar hosted on your Mac called "Home", and you want to merge it with an existing calendar on Google called "Fred". Here's how to do it:

  1. In BusyCal, subscribe to the Fred calendar hosted on Google.
  2. Export the local Home calendar by selecting the calendar and choosing File > Export, and save it to your desktop. After successfully exporting the Home calendar, delete it by control-clicking it and selecting Delete.
  3. Double-click the file you exported in step 1 to import it. When prompted, choose to import the events into the Fred calendar (which is hosted on Google). This will add the events from the old Home calendar to the Fred calendar on Google.

Syncing with multiple accounts

You can sync BusyCal with multiple Google accounts. For example, if you have a personal gmail account and a business Google Apps account, you can configure BusyCal to sync with both of them.

Google Multi2

Add Google Login

For each Google account you wish to sync with, select Calendar > Add Google Login, and enter your Google account login details.

Google Login Busycal Google Settings

Note: This method of syncing with multiple Google accounts requires that you enter the google login and password for each account. This is fine for an individual with multiple google accounts. However, if you want to sync with other Google Calendar users without sharing your personal Google Account password, you should follow the instructions for Syncing calendars with remote users using Google Calendar as a conduit.

Subscribing to calendars on multiple Google accounts

Once you've configured BusyCal to sync with multiple Google Accounts, each account will appear in the source list and you can subscribe to the calendars on those Google Accounts by checking them.

Google Multi Sub

Publish calendars to multiple Google accounts

In addition to being able to subscribe to calendars hosted on Google, you can also publish calendars hosted in BusyCal to Google. To publish a calendar to Google, control-click on the calendar and select Publish to <google account>. If you are syncing with multiple google accounts, you can publish to any/all of them by selecting the appropriate account name in the menu.

Google Multi Pub


Syncing calendars on a LAN

BusyCal allows you to sync calendars with other BusyCal users on your local area network using Bonjour zero-configuration networking. When syncing calendars on your LAN, any changes made by one user are automatically synchronized within seconds to all users on the network.

Lan2

BusyCal uses a publish and subscribe model, where users publish calendars on the LAN that others can subscribe to.

Publish

To publish a calendar on your LAN, control-click on the calendar and select Publish to LAN.

Publish To Lan

An icon will appear next to the calendar name indicating that it is being published.

Publish Icon

Publish Options

To set access privileges for the published calendar, double-click on the calendar to open the Calendar Info sheet. The Publish Options section allows you to specify the access privileges for a calendar by setting a combination of read-only and read-write passwords. When a user subscribes to a calendar they will be granted the appropriate privileges based on the password they enter.

Publish Info

There are four possible combinations of access privileges as follows:

Everyone can read and write — Leave both passwords blank to allow everyone full read-write access to your calendar without requiring a password.

Password A2

Everyone can read; Write protected — Leave the read-only password blank and enter a read-write password to allow everyone read access, while requiring a password for read-write access.

Password B2

Read and Write protected — Enter a password in both fields to require a password to read or edit your calendar. Use a different password for each so subscribers will be granted the appropriate privileges based on the password they enter (either a read-only password or read-write password).

Password C2

Read protected; No write access — Enter a read-only password and leave the read-write password blank to require a password for reading, while prohibiting write access.

Password D2

Once a calendar is being published on the LAN, other BusyCal users on the LAN can subscribe to it.

Subscribe

If a BusyCal user on your network is publishing calendars, the calendars will automatically appear in your source list in gray.

Subscribe Gray  Subscribed

You may subscribe to a calendar by clicking the checkbox next to its name and the events on that calendar will be synced to your computer. If the calendar is password protected, you’ll be prompted to enter a password for read-only or read-write access. If you have write privileges, you may edit events on that calendar and those changes will be synchronized with the host that is publishing the calendar.

Note: If calendars being published by others on your LAN do not appear in your source list, make sure that "Show Unsubscribed Calendars" is checked in the Calendar menu on your computer, and that the publisher has their system Firewall configured properly.

Subscribe Options

When subscribing to a calendar, all Events, To Dos, Alarms, and Attachments will be synced with your computer. If you wish, you can remove To Dos, Alarms and/or Attachments by double-clicking the calendar to open the Calendar Info sheet and selecting the appropriate Remove checkboxes.

Busycal Subscribe Options

Note: If you subscribe to a calendar with the same name as an existing calendar, a "(2)" will be appended to the subscribed calendar's name (e.g. "Home (2)"). You may rename a subscribed calendar by double-clicking the calendar and entering a new name in the Calendar Info sheet. The name change will only affect your computer and not the host that is publishing the calendar.

Unsubscribe

Once you've subscribed to a calendar, you can toggle the display of that calendar by checking its checkbox. Even when a subscribed calendar is not being displayed, it will remain in sync with the host. If you wish to unsubscribe, you may control-click the calendar and choose Unsubscribe.

Unsubscribe


Syncing on a shared computer

BusyCal will allow you to sync calendars between multiple user accounts on a single Mac. Syncing calendars on a shared computer is the same as syncing calendars on a LAN — each user account on your Mac will appear as if it is a separate computer on your LAN.

Shared

Fast user switching

To sync calendars between different user accounts, you must enable fast user switching and periodically login to all user accounts so that BusyCal is running simultaneously on all user accounts so it can sync calendars between them. If only one account is logged in, any calendar edits made on that account will be treated as offline edits and will be synchronized the next time all accounts are logged in.


Hosting calendars on a server

The publisher of a calendar is the host and the subscriber is the client. There is only one host for each calendar, but there can be multiple clients. You may wish to consolidate all of the calendars you wish to share on your network and publish them from a single host computer or dedicated server.

Host

Publishing calendars on a central host

To publish all calendars from a central host, you'll need to transfer the calendars you wish to share to the host computer.

  1. On each client, export the calendars you want to move to the host by selecting the calendar and choosing File > Export. After successfully exporting each calendar, delete it on the client by control-clicking on it and choosing Delete. Then transfer the exported calendar files to the host computer (via email or file sharing).
  2. On the host, double-click the calendar files to import them. Then publish the calendars on the LAN.
  3. On each client, subscribe to the calendars being published by the host.

Syncing over the internet (WAN)

BusyCal is designed to automatically share calendars with other BusyCal users on your local area network via Bonjour. If you wish to share calendars with a BusyCal user in a remote location, you may do so by configuring BusyCal for remote access over the public internet (WAN). This method requires a public IP address and port-forwarding on your router, and is recommended for advanced users only.

Wan1

Note: Port Forwarding is a complex topic and is recommended for advanced users only. As an alternative to port-forwarding, you can sync BusyCal calendars between Home and Work or with remote users using Google Calendar as a conduit. This can be achieved without making any modifications to your router and enables you to sync from any location, even while traveling.

Port forwarding

To configure BusyCal for remote access requires a static public IP address for your Cable/DSL Modem, a static private IP address for the Mac on your LAN that is Publishing calendars on the LAN with BusyCal, and port-forwarding on your router (which may be your Cable/DSL Modem, an Airport Extreme Base Station, or some other device) configured to forward all incoming requests on a certain port (4990 is the default for BusyCal) to your Mac's private IP address.

It is beyond the scope of this user's guide to explain how to configure port-forwarding on your router, but the following resources may prove helpful:

If you are comfortable with port-forwarding and wish to use this method, you may continue with the following instructions for configuring one Mac to publish calendars over the internet, and the other Mac(s) to subscribe to calendars over the internet.

Publishing calendars over the internet

To publish calendars for other BusyCal users to access over the internet, you will have to configure BusyCal to listen for incoming traffic on a static port and configure your router to forward incoming traffic on that port to your computer.

Bonjour Pref
  1. Select BusyCal > Preferences > Bonjour, select the Static radio button, and enter a port number between 1000 and 65535 (BusyCal will default to port 4990). Optionally, you may use SSL to encrypt the data. If you wish to use a different port number, see well known TCP ports used by Apple software products to choose a unique one.
  2. Configure your router to forward all incoming traffic on the port specified above to your computer's private local IP address. See the documentation that came with your router for information on how to configure port forwarding.
  3. You must publish calendars on the LAN for them to be accessible over the internet.

Note: You should designate one Mac as the central host where all calendars are published. The central host is the computer that should be configured for port-forwarding, as described above.

Subscribing to calendars over the internet

BusyCal automatically displays all of the calendars being published on your LAN in the source list. If you wish to subscribe to calendars over the internet, you will have to configure BusyCal to connect to the remote publisher by selecting Connect to Remote BusyCal User from the Calendar menu.

Busycal Server
  1. Enter the remote user's public IP address or domain name followed by a colon and the port number (e.g. 62.188.79.140:4990 or my.example.com:4990). If no port is specified, the default port 4990 will be used.
  2. Select how often you would like BusyCal to check for changes (every 5 minutes is recommended). Note: any changes you make will be sync'd to the server immediately. Otherwise, BusyCal will check with the server at the specified interval to see if any events have been changed by others.

The remote server will be added to the source list. You can change the server IP address, alter the refresh interval, or disconnect from the server in the Server Settings dialog, by control-clicking the server name and selecting Server Settings.

Server Settings

Note: You can subscribe to a server in your office via Bonjour and then connect to it remotely while at home or traveling by following the steps above. When doing so, BusyCal will recognize that the server you are connecting to remotely is the same server that you have connected to via Bonjour, and will bind the two together as one entry in the source list. And BusyCal will automatically choose the best method for connecting to that server (it will connect via Bonjour when you're on the same LAN, otherwise it will connect over the internet).


Syncing with iCloud

You can sync BusyCal with the iPad/iPhone/iPod Touch via iCloud. Any events you create or edit on your iPad/iPhone/iPod Touch will sync with BusyCal, and vice versa, when you sync with iCloud.

Iphone Mobileme

To sync your iPad/iPhone/iPod Touch with iCloud:

  1. On your Home screen, tap Settings.
  2. Tap iCloud.
  3. Enter your iCloud username and password then tap Next.
  4. Turn on Calendars.
  5. If prompted, choose “Merge with iCloud” to make sure the calendars already on your device sync with iCloud.
Iphone Settings Icloud   Icloud Account   Iphone Settings Icloud Calendars

You are now syncing BusyCal with your iPad/iPhone/iPod Touch via iCloud. Any events you create on your iPad/iPhone/iPod Touch will sync to iCloud and BusyCal and vice versa.

Note: iCloud requires Mac OS X 10.7 Lion and iOS 5 or later.


Syncing with Google

You can sync BusyCal with the iPad/iPhone/iPod Touch via Google Calendar. Any events you create or edit on your iPad/iPhone/iPod Touch will sync with BusyCal through Google Calendar.

Iphone Google

You must first configure BusyCal to sync with Google Calendar, then perform the following steps on your iPad/iPhone/iPod Touch.

To sync your iPad/iPhone/iPod Touch with Google Calendar:

  1. Tap Settings on your device's home screen, then tap Mail, Contacts, Calendars.
  2. Tap Add Account...., then tap Gmail.
  3. Enter your Name, Email, Password and Description, then tap Next.
  4. Turn Calendars ON.
    Settings  Iphone Add Account Google  Gmail
  5. By default, Google will only sync your primary Google Calendar with your iPad/iPhone/iPod Touch. If you want to sync more than one calendar, go to www.google.com/calendar/iphoneselect and sign in to your account.
    Note: If you're using a Google Apps account, go to this URL: google.com/calendar/hosted/your_domain/iphoneselect, and replace "your_domain" with your Google Apps domain name (e.g., widgetco.com).
  6. Select the calendars you want to sync with your iPad/iPhone/iPod Touch.

Iphone Google2

Your iPad/iPhone/iPod Touch is now syncing with Google Calendar. You can now add and edit calendar events on your iPad/iPhone/iPod Touch and they will sync to Google wirelessly, and from there they will sync to BusyCal.

Note: You can also sync an iPhone with Google Calendar using Exchange Active Sync.


Syncing with Google via Exchange

You can sync BusyCal with the iPad/iPhone/iPod Touch via Google Calendar. Any events you create or edit on your iPad/iPhone/iPod Touch will sync with BusyCal through Google Calendar.

Iphone Google

You must first configure BusyCal to sync with Google Calendar, then perform the following steps on your iPad/iPhone/iPod Touch.

To sync your iPad/iPhone/iPod Touch with Google Calendar:

  1. Open the Settings application on your device's home screen.
  2. Open Mail, Contacts, Calendars.
  3. Tap Add Account....
  4. Select Microsoft Exchange.
    Settings  Iphone Add Account Exchange  Exchange Account
  5. In the Email field, enter the name of the account (anything you'd like).
  6. Leave the Domain field blank.
  7. Enter your full Google Account email address as the Username.
  8. Enter your Google Account password as the Password.
  9. Tap Next at the top of your screen.
  10. A new Server field will appear. Enter m.google.com.
  11. Press Next at the top of your screen again.
  12. Turn Calendars ON.
  13. By default, only your primary Google Calendar will sync with your iOS device. To sync additional calendars, do the following, depending on whether you use a standard Google Account or a Google Apps Account:

    Standard Google Account:

    • Open the Safari browser on your iOS device and go to http://m.google.com/sync.
    • Sign in with your account and select your device from the list of devices you've set up for Google Sync.
    • Bookmark this page so you can return to it easily.

    Google Apps Account:

    • Open the Safari browser on your phone and go to http://m.google.com.
    • Click on Google Apps user? at the bottom of the screen.
    • Enter your domain name (e.g., YourDomain.com).
    • Click the Sync icon in your domain area (this section has a green background).
    • Sign in if required.
    • Select your device to configure Calendars.

Iphone Google2

Your iPad/iPhone/iPod Touch is now syncing with Google Calendar via Exchange Active Sync. You can now add and edit calendar events on your iPad/iPhone/iPod Touch and they will sync to Google wirelessly, and from there they will sync to BusyCal.

Note: If you're using Google Apps, you will need to enable ActiveSync for your Google Apps account before you can use Google Mobile Sync.


Syncing with Google & iCloud

If you have calendars hosted on both iCloud and Google, you can configure BusyCal and the iPhone to subscribe to both services.

Icloud Google Iphone

In this example, there are some calendars hosted on Google and some calendars hosted on iCloud. The iPhone is subscribed to the calendars on both services.

To sync the iPhone with both iCloud and Google, see:


Syncing with iTunes

You can sync BusyCal with the iPad/iPhone/iPod Touch via iTunes. Any events you create or edit on your iPad/iPhone/iPod Touch will sync to BusyCal, and vice versa, when you sync with iTunes.

Iphone Itunes

To sync BusyCal with your iPad/iPhone/iPod Touch via iTunes:

  1. Launch iTunes, dock your iPad/iPhone/iPod Touch, and select your iPad/iPhone/iPod Touch in the iTunes source list.
  2. Click the Info tab.
  3. Select the "Sync iCal calendars" checkbox
  4. Optionally, on your first sync, you may wish to overwrite the iPad/iPhone/iPod Touch by selecting the "Calendars" checkbox under "Replace information on this iPad/iPhone/iPod Touch".
  5. Click Apply

Iphone 600


Syncing WebDAV calendars

You can subscribe to read-only WebDAV calendars, like holidays and sports schedules, in BusyCal by selecting Subscribe to WebDAV Calendar or Find WebDAV Calendars from the View menu. Once subscribed to a WebDAV calendar in BusyCal (and iCal) you can sync the calendar to your iOS device through iCloud. WebDAV calendars will not appear on icloud.com, but they will appear in BusyCal (and iCal) and on your iOS device.

Subscriptions US Holidays

To sync a WebDAV calendar subscription between your Mac and iOS device through iCloud:

  1. Control-click on the subscribed calendar and select Get Info.
    Busycal Subscribe Getinfo
  2. Change the location from On My Mac to your iCloud account and click OK.
    Busycal Webdav Location
  3. The WebDAV calendar subscription will appear on the iPhone after it syncs with iCloud.
    Iphone Webdav

Syncing with CalDAV Servers

In addition to syncing with iCloud, BusyCal can also sync with other CalDAV Servers including Lion iCal Server and Snow Leopard iCal Server. It may also work with other third-party CalDAV Servers (Kerio, Zimbra, Communigate and Oracle Beehive) but has only been tested with Apple's iCal Server.

To sync with a CalDAV Server

Select Connect to iCloud/CalDAV Server from the Calendar menu.

Connect To Icloud

Select CalDAV from the popup menu and enter your Login, Password and Server address. The server address for most CalDAV servers is the server's fully qualified domain name, e.g. "caldavserver.fredco.com". Some CalDAV servers are running in non-standard configurations and require a fully qualified path to your calendar, e.g. "https://caldavserver.fredco.com:8443/CalDAV/calendars/". Your IT administrator or provider should be able to help you with this information.

Caldav Other

The CalDAV server and its calendars will appear in the source list and begin syncing. You may now edit events on those calendars and the changes will be synchronized with the server.

Caldav Sub Color

Server Settings

Once you are connected to a CalDAV server, you can alter the server settings by control-clicking the server and choosing Server Settings. You may change your username, password, server address, and refresh interval. Push will be enabled by default, if the server supports it.

Server Settings Menu

Removing a Server

To remove a server, click the Disconnect button. Any calendars you are subscribed to will be removed from BusyCal, but the calendars will remain intact on the server.

Caldav Server Settings

Backup and Restore

Backup

You can manually backup your calendars by selecting File > Back up BusyCal, and saving the backup file to your desktop.

Automatic Backup

BusyCal automatically backs up your calendars every 24 hours and saves your last 10 backups in ~/Library/Application Support/BusyCal/Backup. You can increase the frequency and number of backups to keep in BusyCal > Preferences > Backup.

Backup

Restore

If your BusyCal calendar becomes corrupted, or you have lost data, you may revert to one of the backups by clicking the Restore From Backup button. You'll be prompted to select a recent backup file and then to select the calendars you wish to restore. The default is to restore only your local calendars. Click Restore and the calendars you selected will be replaced with the data from the backup.

Restore Busycal

Reset

Select Reset from the help menu to display the following options.

Reset Busycal

Reset Sync Services

If you're encountering errors or conflicts when syncing local calendars with iCal via Sync Services, your Sync Services database may be corrupted. You can solve this by clicking Reset Sync History, which will rebuild your Sync Services database.

Reset BusyCal

If you wish to stop using BusyCal or start with a clean slate, click Reset BusyCal. This will clear your publish and subscribe settings and delete your BusyCal database. Your iCloud calendars will be preserved on iCloud, your Google Calendars will be preserved on Google, and your local calendars will be preserved in Sync Services.

Note: Any unique data in BusyCal that is not supported by iCal and Sync Services (like Journals, Stickies, Graphics and Recurring To Dos) will not be preserved. If you plan to continue using BusyCal after resetting it, and want to restore the unique BusyCal data, you may restore from a backup.


Safe Boot

If you're encountering problems, you can hold down the option-key while launching BusyCal to perform a safe boot. The BusyCal Startup Options dialog will be displayed offering a number of options that may be helpful when trouble-shooting problems.

Safeboot


Logs

The Log Window (Window > Log Window) displays a summary of what BusyCal is doing. If something isn't working right, check the log window to see if it provides any clues. When errors occur, a message is printed in the log with thee asterisks (***). For example, if you are syncing with Google Calendar and the Google server is temporarily unavailable, an error message will be printed to the log like this:

*** GoogleSync: temporary error (Service Error: Could not generate feed.)
Log Window

Send Logs to BusyMac

If you are having a problem and need help solving it, click the Email Support button. This will launch your default email application and create a new message addressed to support@busymac.com with your log files attached as a zip file. Please provide a description of the problem in the body of the message including the names/dates of specific events that are not syncing. We will examine your logs and respond promptly.


Uninstalling BusyCal

Removing BusyCal

If you wish to stop using BusyCal and return to using iCal, you should reset BusyCal and remove it, as follows:

  1. Launch BusyCal.
  2. Select Reset from the Help menu.
  3. Click the Reset BusyCal button.
  4. Launch iCal.
  5. Delete BusyCal from the Applications folder.
  6. Optionally, delete the files located in:
    /Users/username/Library/Application Support/BusyCal
    /Users/username/Library/Caches/com.busymac.busycal/Logs.

Credits

AsyncSocket by Dustin Voss

UKCrashReporter by Uli Kusterer

GData Library & Google Toolbox for Mac

Copyright (c) 2007 Google Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Libical

Libical is distributed under both the LGPL and the MPL. The MPL notice, reproduced below, covers the use of either of the licenses.
The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL. Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
The Original Code is libical. The Initial Developer of the Original Code is Eric Busboom. All Rights Reserved. Contributor(s): See individual source files. Alternatively, the contents of this file may be used under the terms of the LGPL license, in which case the provisions of LGPL License are applicable instead of those above. If you wish to allow use of your version of this file only under the terms of the LGPL License and not to allow others to use your version of this file under the MPL, indicate your decision by deleting the provisions above and replace them with the notice and other provisions required by the LGPL License. If you do not delete the provisions above, a recipient may use your version of this file under either the MPL or the LGPL License."

Sparkle

Copyright (c) 2006 Andy Matuschak
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.