Monday, February 4, 2013

Thunderbird using GMail Calendar for Meetings

I have been using Thunderbird for quite some time and have grown to like it very much.  The only issue I have had in the past is the ability to accept invitations.  I can easily receive and accept the invitations, but I don't want them stored on the local calendar, I want them stored on my Google calendar.  If I accept and copy/move the invitation, then all users get updates seeming to show me as the organizer.  I have tried to change this in the past, but I was unsuccessful, until today.

Most of the time, when accessing my Google calendar through Thunderbird  I was using lightning and the Provider for Google Calendar.  This sets up an iCal connection, and when I edited the config to make the Google Calendar the default, it never worked.  So, I have moved to a new method, setting up the calendar using a CalDAV connection and then modifying the config to make this calendar default.

Setup CalDAV 

I followed the information in this post to setup the CalDAV connection. 
  • Open your Calendar pane and select New Calendar from the menu on the left.
  • Choose On the Network
  • Select CalDAV from the options and for the location enter  https://www.google.com/calendar/dav[Your Google Calendar ID]/events
    • If you are using your standard calendar, Your Google Calendar ID is your email address.
    • Since I am using a specific calenader, I had to enter the Calendar ID found on the Calender Settings page, it will be [long string of number]@group.calendar.google.com
  • Click Next and complete the wizard.  

Google Calendar as Default

To set the newly created calendar as default takes a bit of under the hood configuration of Thunderbird.

  • Open Tools / Options / Advanced / Config Editor
  • Search for calendar.registry
  • You will be present with a list of items that show you all your calendars.  The one thing to pay attention to is the number in each string.  The values all relate to the same calendar.
  • Find the string associated with your current primary calendar and look for a value calendar.registry.[srting of numbers].calendar-main-default
    • Toggle this value to False
  • Find the string associated with the calendar you want to make your default.
    • There should be a string calendar.registry.[string of numbers].calendar-main-in-composite, right click on this and select Copy Name
    • Right click again and select New -> Boolean
    • In the preference pane, past the copied string and then modify it to say calendar.registry.[srting of numbers].calendar-main-default and click OK
    • When prompted for the value, set it to True
  • Restart Thunderbird 
Now when you accept an email invitation, you should be able to toggle which calendar the event will be applied