Monday, 11 July 2011

Blog Tips: how to sync your google calendar with Mozilla Sunbird so you can access it offline

Here are the instructions to set up Mozilla Sunbird so that you can access it offline and have your offline calendar entries update to Google calendar when you get back online.  If you have any problems check the more detailed post here.

All the files they refer to can be found in the BIN directory where you install the program.

1) Install GCALDaemon (Java 1.5 required) (don't install it in program files or the firewall will block it)

2) Start password encoder ('password-encoder.bat' or 'password-encoder.sh'). Input your Gmail password and press ENTER. Copy the encoded password.
4) Edit the 'gcal-daemon.cfg' file with your text editor.

A) Set the 'file.enabled' property to 'true'
B) Set the 'file.google.username' property to your Gmail address
C) Set the 'file.google.password' property to your encoded password
D) Set the 'file.private.ical.url' property to iCal URL, without protocol and hostname (see image)
5) The most important: Set the 'file.offline.enabled' property to 'true'!

6) Start GCALDaemon ('standalone-start.bat' or 'standalone-start.sh').
7) Launch Sunbird. Click the 'New Calendar...' menu on the Calendars page.
8) Select 'On the Network' option on 'Create New Calendar' dialog.
9) Select 'iCalendar' format, and put the local iCal file's path into the 'Location' field. Important: use the 'file:///' prefix before the file's path, and don't include backslash characters! Use standard file URL format (replace spaces to '%20', etc).
10) Input the new calendar's name (e.g. 'Google Calendar'). Click 'Next' then 'Finish'.
11) Items added (or modified/deleted) to your Sunbird calendar will now automatically appear in your Google Calendar. GCALDaemon compares your Google Calendar (if available) and local iCalendar file every 10 minutes, and does all modifications together. If it is unable to do so because the network is unavailable, it tries again when it detects network presence.
12) To set up multiple file listeners, you need to configure a path-username-password-url set for each of the Google Calendars you want to synchronize (see picture below; the first listener definition is unindexed, the others are indexed from '2'). Note: don't include backslash characters in the 'file.ical.path' properties.
1) Install GCALDaemon (Java 1.5 required).

2) Start Config Editor ('config-editor.bat' or 'config-editor.sh'). Select the second tab and disable the HTTP-based synchronizer. Select the third tab and enable the file-based synchronizer. Enable the 'dial-up connection' mode (second checkbox on this page), then click on the 'Google Accounts' button.
3) If required, you can register a new Google Account: Click on 'New Account', type in your Gmail address and password (twice), then click on 'Verify' button.
4) After the verification, click on the 'OK' button.
5) Click on the 'New' button.
6) Select/browse the appropriate Google Calendar and iCalendar file. Click on 'Copy to Clipboard' then click 'OK'. Save the changes (File/Save).
7) Launch Sunbird. Click the 'New Calendar...' menu on the Calendars page.
8) Select 'On the Network' option on 'Create New Calendar' dialog.
9) Select 'iCalendar' format, and paste [CTRL+V] the copied iCal file URL for your calendar's Private Address into 'Location' field.
10) Input the new calendar's name (e.g. 'Google Calendar'). Click 'Next' then 'Finish'.
11) Items added (or modified/deleted) to your Sunbird calendar will now automatically appear in your Google Calendar. GCALDaemon compares your Google Calendar (if available) and local iCalendar file every 10 minutes, and does all modifications together. If it is unable to do so because the network is unavailable, it tries again when it detects network presence.

No comments:

Post a Comment