<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pi's Blog</title>
	<atom:link href="http://www.pirules.org/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.pirules.org/blog</link>
	<description>gContactSync, Thunderbird, and more</description>
	<lastBuildDate>Sun, 06 May 2012 01:15:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>gContactSync Version 0.4.0 Alpha 4</title>
		<link>http://www.pirules.org/blog/?p=382</link>
		<comments>http://www.pirules.org/blog/?p=382#comments</comments>
		<pubDate>Sun, 06 May 2012 01:15:04 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=382</guid>
		<description><![CDATA[Version 0.4.0a4 I&#8217;ve released version 0.4.0a4 that adds contact merging during imports.  You can now import your Facebook friends into the address book you sync with Google to get their photos and let gContactSync merge your contacts.  The Facebook API doesn&#8217;t expose phone numbers or e-mail addresses, however. If you try it please let me [...]]]></description>
			<content:encoded><![CDATA[<h1>Version 0.4.0a4</h1>
<p>I&#8217;ve released version 0.4.0a4 that adds contact merging during imports.  You can now import your Facebook friends into the address book you sync with Google to get their photos and let gContactSync merge your contacts.  The Facebook API doesn&#8217;t expose phone numbers or e-mail addresses, however.</p>
<p>If you try it please let me know.  I have a few more changes to make before releasing the beta.</p>
<p>You can download it <a href="https://addons.mozilla.org/en-US/thunderbird/addon/gcontactsync/">here</a>.  Scroll to the bottom and expand <strong>Developer Channel</strong>.  If you already downloaded a development version it will automatically update.</p>
<h2>Changes since version 0.3</h2>
<h3>Features</h3>
<ul>
<li>The first sync merges existing contacts and groups/mailing lists</li>
<li>Postal addresses are synchronized by default</li>
<li>gContactSync uses Thunderbird’s existing address fields now that Google parses addresses</li>
<li>Added Postbox 3 support</li>
<li>Minor Accounts dialog changes</li>
<li>Added an option to sync only the selected address book to the AB context menu</li>
<li>Prevents a duplicate master password prompt when Thunderbird is started</li>
<li>Miscellaneous improvements to <strong>importing contacts</strong></li>
</ul>
<ul>
<li><strong>Contacts are merged when possible</strong>.  Note that most sources only have display names and photos, so gContactSync only merges contacts with identical names (or primary e-mail address for Plaxo).</li>
<li>Better UI for picking the destination address book</li>
</ul>
<li>Removed the &#8220;Other&#8221; tab on the preferences dialog.  This just caused confusion and I don&#8217;t know of anyone who actually used it.  The feature is still there, but only customizable through the Config Editor.</li>
<li>Better handling and mitigation of 503 (Service Unavailable) errors.</li>
<li>Button to clean up old contact photos (TB and gContactSync can both leave old photos behind)</li>
<h3>Bug Fixes</h3>
<ul>
<li>Treat infinite last modified dates as being older</li>
<li>Fixed a strict JavaScript warning (no functional change)</li>
<li>Support for empty extended property value names (Other tab of the Preferences dialog)</li>
<li>Prevents a duplicate master password prompt when Thunderbird is started</li>
<li>
<div>Makes sure that the dummy e-mail address is added to a contact if it is being edited from the mailing list.</div>
</li>
<li>Bug fix for the preference to not sync contact photos (if a new Thunderbird contact had a photo gContactSync would add it to Google)</li>
<li>Photos synchronized or imported by gContactSync will still work when gContactSync is disabled or uninstalled (NOTE &#8211; this only applies to contacts synchronized or imported starting with 0.4.0a3)</li>
</ul>
<h2>Changes since 0.4.0a1</h2>
<h3>Features</h3>
<div>
<ul>
<li>Miscellaneous improvements to <strong>importing contacts</strong>
<ul>
<li><strong>Contacts are merged when possible</strong>.  Note that most sources only have display names and photos, so gContactSync only merges contacts with identical names (or primary e-mail address for Plaxo).</li>
<li>Better UI for picking the destination address book</li>
</ul>
</li>
<li>Added an option to sync only the selected address book to the AB context menu</li>
<li>Better handling and mitigation of 503 (Service Unavailable) errors.</li>
<li>Button to clean up old contact photos (TB and gContactSync can both leave old photos behind)</li>
</ul>
</div>
<h3>Bug fixes</h3>
<div>
<ul>
<li>Bug fix for the preference to not sync contact photos (if a new Thunderbird contact had a photo gContactSync would add it to Google)</li>
<li>Photos synchronized or imported by gContactSync will still work when gContactSync is disabled or uninstalled (NOTE &#8211; this only applies to contacts synchronized or imported starting with 0.4.0a3)</li>
</ul>
<h2>Future Changes in 0.4</h2>
<ul>
<li>Include number of errors in the summary</li>
<li><del>New first sign in dialog</del> (this is probably going to pushed out to v0.5)</li>
<li>Minor Accounts dialog improvements</li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=382</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Version 0.4.0 Alpha 1 Released</title>
		<link>http://www.pirules.org/blog/?p=379</link>
		<comments>http://www.pirules.org/blog/?p=379#comments</comments>
		<pubDate>Sun, 01 Jan 2012 19:33:51 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=379</guid>
		<description><![CDATA[Version 0.4.0 Alpha 1 has been released.  If you&#8217;re already using a pre-release of 0.4.0 it should automatically update, everyone else can get it here (go down to Development Channel at the bottom).  This is an alpha release, meaning it doesn&#8217;t have all the features that 0.4.0 will have, and hasn&#8217;t been as thoroughly tested [...]]]></description>
			<content:encoded><![CDATA[<p>Version 0.4.0 Alpha 1 has been released.  If you&#8217;re already using a pre-release of 0.4.0 it should automatically update, everyone else can get it <a href="https://addons.mozilla.org/en-US/thunderbird/addon/gcontactsync/">here</a> (go down to Development Channel at the bottom).  This is an alpha release, meaning it doesn&#8217;t have all the features that 0.4.0 will have, and hasn&#8217;t been as thoroughly tested as the latest stable version, version 0.3.4.</p>
<h2>Changes since version 0.3</h2>
<h3>Features</h3>
<ul>
<li>The first sync merges existing contacts and groups/mailing lists</li>
<li>Postal addresses are synchronized by default</li>
<li>gContactSync uses Thunderbird&#8217;s existing address fields now that Google parses addresses</li>
<li>Added Postbox 3 support</li>
<li>Minor Accounts dialog changes</li>
<li>Prevents a duplicate master password prompt when Thunderbird is started</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li>Treat infinite last modified dates as being older</li>
<li>Fixed a strict JavaScript warning (no functional change)</li>
<li>Support for empty extended property value names (Other tab of the Preferences dialog)</li>
<li>Prevents a duplicate master password prompt when Thunderbird is started</li>
<li>
<div>Makes sure that the dummy e-mail address is added to a contact if it is being edited from the mailing list.</div>
</li>
</ul>
<h2>Changes since 0.4.0a1pre2</h2>
<h3>Features</h3>
<div>
<ul>
<li>Cleaned up contact merging during the first sync</li>
<li>Added group/mailing list merging during the first sync</li>
<li>Moved the disable synchronization checkbox to the basic settings section of the Accounts dialog</li>
<li>Added Postbox 3 support</li>
</ul>
</div>
<h3>Bug fixes</h3>
<div>
<ul>
<li>Treat infinite last modified dates as being older</li>
<li>Fixed a strict JavaScript warning (no functional change)</li>
<li>Support for empty extended property value names (Other tab of the Preferences dialog)</li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=379</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Version 0.3 Feedback, Version 0.4</title>
		<link>http://www.pirules.org/blog/?p=374</link>
		<comments>http://www.pirules.org/blog/?p=374#comments</comments>
		<pubDate>Sun, 02 Oct 2011 22:57:28 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>
		<category><![CDATA[dummy email address]]></category>
		<category><![CDATA[duplicates]]></category>
		<category><![CDATA[gcontactsync]]></category>
		<category><![CDATA[postal addresses]]></category>
		<category><![CDATA[reset]]></category>
		<category><![CDATA[version 0.4]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=374</guid>
		<description><![CDATA[Version 0.3 and Duplicates Version 0.3 is getting a bad reputation for creating duplicates.  I haven&#8217;t heard from any of these people&#8211;please send me an e-mail at least explaining any problems you may have instead of just posting a review with no details I can use to help you or fix the problem.  Feel free [...]]]></description>
			<content:encoded><![CDATA[<h2>Version 0.3 and Duplicates</h2>
<p>Version 0.3 is getting a bad reputation for creating duplicates.  I haven&#8217;t heard from any of these people&#8211;<strong>please send me an e-mail at least explaining any problems you may have instead of just posting a review with no details I can use to help you or fix the problem</strong>.  Feel free to post reviews but please let me help you or at least others by giving me some details.  Also keep in mind how much you paid for gContactSync when you write a review <img src='http://www.pirules.org/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>I believe that at least one of those problems may be due to syncing the same address book with the same account using two add-ons.  This is a bad idea; don&#8217;t try it.  Other than that I think people are importing their contacts from Google into TB either manually or with Google&#8217;s CSV export then synchronizing those contacts (or switching synchronization add-ons and reusing their old address book without deleting contacts).  <strong>gContactSync 0.3 expects an empty address book and treats any contacts in it as brand new, so it adds Thunderbird&#8217;s contacts to Google and adds Google&#8217;s contacts to Thunderbird during the first sync without attempting to merge contacts</strong>. <strong>You should start with a new address book when synchronizing contacts.  </strong>One exception to this is if you&#8217;ve already sync&#8217;ed that AB with gContactSync in which case it will recognize contacts it synchronized in the past.<strong><br />
</strong></p>
<p>I plan on addressing this in 0.4 by, during the first sync only, getting all Google contacts and checking each TB contact to see if any names or e-mail addresses match.  If so it&#8217;ll pretend that contact was already synchronized a very long time ago.  It&#8217;s going to be a very dumb/simplistic merge, and during the actual first sync those contacts in TB will be updated from their Google contact.  This will probably be in 0.4.0a1, release date TBA.</p>
<h2>Resetting Address Books</h2>
<p>There was some confusion over what exactly &#8220;resetting&#8221; an address book does in gContactSync which resulted in a 1 star review.  There are two types of resets in gContactSync:</p>
<ul>
<li><strong>Reset (replace from server)</strong> &#8211; this is also what the button in the Advanced preferences tab does and what happens if your mailing lists break.</li>
</ul>
<p style="padding-left: 60px;">This deletes the local copy of all contacts and mailing lists from Thunderbird only.  <strong>Your Google contacts are not deleted and gContactSync backs up your address book first</strong>.  Due to multiple bugs in Thunderbird with mailing lists and deleting address books you must restart Thunderbird after choosing this reset option.  After you restart Thunderbird and sync, gContactSync will pull in your contacts and groups from Google then sync like normal.</p>
<ul>
<li><strong>Replace to server</strong></li>
</ul>
<p>This option tells gContactSync to push all your local Thunderbird contacts to Google.  <strong>No contacts are deleted in either location</strong>.</p>
<h2>Fake e-mail Addresses (nobody&#8230;@nowhere.invalid)</h2>
<p>I&#8217;ve also received several e-mails and forum posts, along with some bad reviews, about the fake e-mail addresses that gContactSync adds to some contacts.  Thunderbird does not allow contacts without e-mail addresses in mailing lists, so in order to sync groups with mailing lists, gContactSync adds a fake e-mail address to that contact in Thunderbird only. <strong>These fake e-mail addresses will never be added to Google.</strong> I know it is ugly, but the alternative is having a broken, unsynchronizable address book.  I often refer to these as dummy e-mail addresses.</p>
<h2>Postal Addresses</h2>
<p>Google is now converting postal addresses between their structured (separate fields for street address/city/state/zip/country) and formatted (one field for everything) flavors.  When I created version 0.3 Google had said they would do this, but didn&#8217;t implement it yet so I turned off postal address synchronization by default and left in the new formatted address fields that gContactSync 0.2.0 added.  It should be safe to turn it on now, but you still do so at your own risk.  See this for instructions &#8211; http://pirules.org/addons/gcontactsync/faq.php#addresses</p>
<h2>Version 0.4</h2>
<p>I&#8217;m starting to work on version 0.4, which will turn on postal address synchronization by default.  It also removes the formatted address fields that gContactSync 0.2 and 0.3 added since they are no longer needed.  I will put development versions of 0.4 on <a href="https://addons.mozilla.org/en-US/thunderbird/addon/gcontactsync" target="_blank">addons.mozilla.org</a> (look at the bottom of the page under Development Channel).</p>
<p>I&#8217;d like to make it more difficult for people to have problems with duplicates quickly, so I will push back my plans to sync with other sources to version 0.5.</p>
<p>I don&#8217;t know when I&#8217;ll get the basic merging done.  I&#8217;m going to be an uncle any day now and I will be spending some time with my family next weekend.</p>
<h3>Roadmap</h3>
<p><strong>0.4.0a1pre</strong> has been released on <a href="https://addons.mozilla.org/en-US/thunderbird/addon/gcontactsync" target="_blank">AMO</a> (under Development Channel) with postal address synchronization enabled.  It also removes formatted address fields.</p>
<p>0.4.0a1 &#8211; Basic merging during first sync</p>
<p>0.4.0a2 &#8211; Basic merging during imports</p>
<h2>Lung</h2>
<p>My lung is doing well.  I&#8217;ve biked several hundred miles this summer (almost 400 so far) without any problems.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=374</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Progress Update</title>
		<link>http://www.pirules.org/blog/?p=355</link>
		<comments>http://www.pirules.org/blog/?p=355#comments</comments>
		<pubDate>Sat, 07 May 2011 01:55:57 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[gcontactsync]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=355</guid>
		<description><![CDATA[Just thought I ought to give a progress update since I&#8217;ve been quiet for a while now&#8230; I have just graduated from Michigan Tech with a BS in Computer Engineering (a mix of Computer Science [software] and Electrical Engineering [hardware]) and I start working full-time on May 16th as a Firmware Engineer. I am now [...]]]></description>
			<content:encoded><![CDATA[<p>Just thought I ought to give a progress update since I&#8217;ve been quiet for a while now&#8230;</p>
<p>I have just graduated from Michigan Tech with a BS in Computer Engineering (a mix of Computer Science [software] and Electrical Engineering [hardware]) and I start working full-time on May 16th as a Firmware Engineer.</p>
<p>I am now recovering from &#8220;video-assisted thoracoscopy&#8221; which I got a week ago to prevent further lung collapses.  My lung decided to collapse for the third time at the end of 2010 so I decided to get the problem fixed before I work full-time.  I&#8217;m doing pretty well now and glad that I won&#8217;t really have to worry about this in the future. <img src='http://www.pirules.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2>gContactSync &#8211; Thunderbird</h2>
<p>Now that I&#8217;m less busy I should be able to release 0.3.3 with some new locales soon and possibly a bugfix or two.  I haven&#8217;t started on 0.4 but I hope to at least figure out what it will do soon.</p>
<p>I requested that gContactSync get reviewed by the addons.mozilla.org team last year and still haven&#8217;t heard anything.  That would get rid of it&#8217;s &#8220;Experimental&#8221; tag, allow it to update automatically, and would allow contributions (donations) again through addons.mozilla.org.</p>
<h2>Android</h2>
<p>I got an Android phone to play around with while in the hospital and now that I can tolerate coding for a fair amount of time, I decided to see what I do with it today.  I noticed that the Contacts app only shows and syncs contacts in your &#8220;My Contacts&#8221; system group, but my contacts are nicely organized in various groups.  I made a quick app as a proof-of-concept that will get all your groups for the selected Google Account on your phone then gets the contacts in the selected group.  It doesn&#8217;t do much right now, but remember this was done in a few hours and I&#8217;ve never developed anything or really researched developing on the Android yet:</p>
<p>The first or second screen.  First it will ask you which linked account you wish to get contacts for if you have more than one Google Account linked with your device.  This is only shown once, and you can switch accounts easily later.</p>
<p>Once the account is selected Android will ask you if you want to allow gContactSync to access your contacts.  This is only shown once if you click Allow.</p>
<div id="attachment_360" class="wp-caption alignnone" style="width: 330px"><a href="http://www.pirules.org/blog/wp-content/uploads/2011/05/gcs_android_permission.png"><img class="size-full wp-image-360" title="gcs_android_permission" src="http://www.pirules.org/blog/wp-content/uploads/2011/05/gcs_android_permission.png" alt="" width="320" height="480" /></a><p class="wp-caption-text">Request to give gContactSync access to your contacts</p></div>
<p>Once you allow gContactSync to access your contacts it will get a list of your groups, plus an entry to show all contacts.  Right now you have to long-press a group to show contacts in that group.</p>
<div id="attachment_365" class="wp-caption alignnone" style="width: 490px"><a href="http://www.pirules.org/blog/wp-content/uploads/2011/05/gcs_android_groups_3.png"><img class="size-full wp-image-365" title="gcs_android_groups_3" src="http://www.pirules.org/blog/wp-content/uploads/2011/05/gcs_android_groups_3.png" alt="A list of contact groups" width="480" height="320" /></a><p class="wp-caption-text">A list of contact groups</p></div>
<p>After selecting a group gContactSync will fetch and display the contacts in that group.  The back button will bring you back to the list of groups.</p>
<p>Right now contact data isn&#8217;t displayed, but it is stored (except for the photo at the moment).  I just have to figure out how to best display the data.</p>
<div id="attachment_364" class="wp-caption alignnone" style="width: 490px"><a href="http://www.pirules.org/blog/wp-content/uploads/2011/05/gcs_android_contacts_2.png"><img class="size-full wp-image-364" title="gcs_android_contacts_2" src="http://www.pirules.org/blog/wp-content/uploads/2011/05/gcs_android_contacts_2.png" alt="" width="480" height="320" /></a><p class="wp-caption-text">A list of contacts in the selected groups</p></div>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=355</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Phone Numbers</title>
		<link>http://www.pirules.org/blog/?p=343</link>
		<comments>http://www.pirules.org/blog/?p=343#comments</comments>
		<pubDate>Fri, 24 Dec 2010 17:18:31 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=343</guid>
		<description><![CDATA[First of all, happy holidays to everyone!  I may edit this article in the near future with more screenshots to hopefully make things a bit more clear. I have received quite a few questions about phone numbers in gContactSync so I&#8217;m hoping this can help explain what it does and why I chose to do [...]]]></description>
			<content:encoded><![CDATA[<p>First of all, happy holidays to everyone!  I may edit this article in the near future with more screenshots to hopefully make things a bit more clear.</p>
<p>I have received quite a few questions about phone numbers in gContactSync so I&#8217;m hoping this can help explain what it does and why I chose to do things this way.</p>
<h2>Address Book Window Terms</h2>
<p>There are a few terms I use when talking about the address book:</p>
<h3>Directory Tree (Address Books list)</h3>
<p>This is where all your address books and mailing lists appear on the left side of the window.</p>
<h3>AB Results Tree (Contacts list)</h3>
<p>This is the list of contacts in the selected address book or mailing list.  This is on the top right part of the window.</p>
<h3>Contact View Pane</h3>
<p>The contact view pane is at the bottom right of the window with the details of the selected contact or mailing list.</p>
<h2>Phone Number Types</h2>
<p>Google allows multiple phone numbers and has a &#8220;type&#8221; for each phone number (Mobile, Home, Work, Pager, etc.) while Thunderbird by itself only has 5 fields, each with a predetermined type.  I personally like Google&#8217;s approach more as it is more flexible.  Some people may have multiple phones of the same type (like me since my phone I have for home doesn&#8217;t work where I go to college, and that phone has poor reception at home) and I don&#8217;t know a whole lot of people with a pager.</p>
<p>So, I decided to add phone number types to Thunderbird and added two phone number fields to get the total to 7.  I felt this was a reasonable limit to the number of phone numbers that might be associated with one individual, and it fit in the new/edit contact dialog well at the time.  I changed the labels to ordinal numbers (First, Second, Third, etc.)</p>
<p>So synchronization of phone numbers is done in the order in which they appear in Gmail.  The first goes into the top field in TB, which used to be the work number, and the type is set to whatever it was in Gmail.  This seems to work well, but, as many people have noticed, it doesn&#8217;t work as well for the phone number columns.</p>
<p>Quite a few people have asked me to leave the phone numbers alone, so I added a preference that will have gContactSync not use phone number types and synchronize the phone number fields as they are.  If you have more than one phone number of a given type that TB supports than only the first is synchronized.  This preference is especially useful if you use other synchronization applications in which case they probably use Thunderbird&#8217;s phone number fields the way they were intended to be used.</p>
<p>In 0.3 this preference is found under:</p>
<p><strong>gContactSync -&gt; Preferences -&gt; Main -&gt; Add phone number type fields (ignore existing field names)</strong></p>
<p>You can also just edit the preference:</p>
<p><strong>extensions.gContactSync.phoneTypes</strong></p>
<p><em><span style="text-decoration: underline;">Once you do this I highly recommend resetting all synchronized address books:</span></em></p>
<p><strong>gContactSync -&gt; Preferences -&gt; Advanced -&gt; Reset All Synced ABs</strong></p>
<h3>With phone types</h3>
<p><a href="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types_2.png"><img class="alignnone size-full wp-image-349" title="phone_types_2" src="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types_2.png" alt="" width="766" height="152" /></a></p>
<h3>Without phone types</h3>
<p>Notice the numbers are not in the same order, and that not all numbers are shown in Thunderbird.</p>
<p><a href="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types_3.png"><img class="alignnone size-full wp-image-350" title="phone_types_3" src="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types_3.png" alt="" width="702" height="162" /></a></p>
<h2>Phone Number Columns</h2>
<p>Thunderbird has a list of contacts when you click on an address book or mailing list.  You can add or remove columns easily and sort by one of them.  When Thunderbird didn&#8217;t have phone number types one could sort by work or home phone numbers, for example, and easily see the home phone number for a given contact, for example.  Now that there are types, one must select the contact and look at the contact view pane to see which phone number is which.</p>
<p>To make the column labels more consistent, gContactSync renames them to First Number, Second Number, etc.  If you don&#8217;t like this then uncheck:</p>
<p><strong>gContactSync -&gt; Preferences -&gt; Interface -&gt; Rename the phone column labels</strong></p>
<p>or edit:</p>
<p><strong>extensions.gContactSync.phoneColLabels</strong></p>
<h2>Mobile and Pager Numbers</h2>
<p>There is one more issue related to phone number types and synchronizing based on index.  When the new/edit contact dialog was reworked the pager and mobile numbers were swapped relative to Thunderbird 2.  Now there is an inconsistent ordering of phone numbers as shown in this picture below:</p>
<h3>Before:</h3>
<p><a href="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types.png"><img class="alignnone size-full wp-image-344" title="phone_types" src="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types.png" alt="" width="754" height="160" /></a></p>
<p>gContactSync swaps the mobile and pager number fields<strong> if and only if phone types are enabled</strong> to make it more consistent with the old dialog and the contact view pane.  To disable this swap, manually edit the preference <strong>extensions.gContactSync.swapMobilePager</strong> to <strong>false</strong>.  This preference was added after gContactSync was translated so it isn&#8217;t in the preferences dialog.</p>
<h3>After:</h3>
<p><a href="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types_2.png"><img class="alignnone size-full wp-image-349" title="phone_types_2" src="http://www.pirules.org/blog/wp-content/uploads/2010/12/phone_types_2.png" alt="" width="766" height="152" /></a></p>
<h2>gContactSync 0.3 Progress Update</h2>
<p>I&#8217;m still working on gContactSync 0.3.  I had to prioritize work, job hunting, and college over gContactSync for a while.  I was the project leader and developer for two software teams for college so I was pretty busy.  I apologize for the lack of progress and responsiveness to questions and problems.  Please resend your question if I missed you.  The good news is I only have one semester left.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=343</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>gContactSync 0.3.0 Beta 1 Available</title>
		<link>http://www.pirules.org/blog/?p=339</link>
		<comments>http://www.pirules.org/blog/?p=339#comments</comments>
		<pubDate>Sun, 13 Jun 2010 22:17:11 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>
		<category><![CDATA[address book]]></category>
		<category><![CDATA[gcontactsync]]></category>
		<category><![CDATA[gcontactsync 0.3]]></category>
		<category><![CDATA[google contacts]]></category>
		<category><![CDATA[import contacts]]></category>
		<category><![CDATA[synchronization]]></category>
		<category><![CDATA[thunderbird]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=339</guid>
		<description><![CDATA[I&#8217;ve just released the first beta version of 0.3.0. I feel it is ready to be in a beta as there are no known bugs other than some quirks with postal addresses in Google&#8217;s API.  For now postal address synchronization is disabled by default, but you can enable it in the Advanced tab of the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just released the first beta version of 0.3.0. I feel it is ready to be in a beta as there are no known bugs other than some quirks with postal addresses in Google&#8217;s API.  For now postal address synchronization is disabled by default, but you can enable it in the Advanced tab of the Preferences dialog.</p>
<p>This version adds support for importing friends from Facebook, including photos.  It can also import contacts from Plaxo and usernames/photos from your friends on MySpace.  Right now the import does not attempt to match contacts that it finds with existing contacts and imports from Facebook and MySpace do not include e-mail addresses.</p>
<p>As a recap, here&#8217;s a quick list of the features.  Download link at the bottom.</p>
<h2><strong>Features:</strong></h2>
<ul>
<li> Can synchronize your Google Contacts (external link) (Gmail, Google Apps, etc.) with Mozilla Thunderbird (external link).</li>
<li> Supports multiple Google Accounts and Address Books</li>
<li> Groups in Google can be synchronized with individual Address Books or mailing lists in one AB</li>
<li> Each Address Book can be synchronized with one of the following:
<ul>
<li> All contacts and all groups with mailing lists</li>
<li> One specific group</li>
<li>All contacts</li>
</ul>
</li>
<li> <span style="text-decoration: underline;">Every synchronized AB can have its own custom settings</span></li>
<li> You can choose to complete synchronize your contacts (so Thunderbird  matches Google), to only read changes from Google but never apply TB&#8217;s  changes, or to only write to Google and never apply changes made  remotely.</li>
<li> <span style="text-decoration: underline;">Contact photos</span> are synchronized (only visible in Thunderbird 3 &amp; Seamonkey 2)</li>
<li> Supports <span style="text-decoration: underline;">importing contacts/friends from Facebook, MySpace, and Plaxo</span>, including photos.</li>
</ul>
<h2><strong>Changes from 0.2:</strong></h2>
<ul>
<li> The Accounts section of the Preferences dialog has been moved to its own dialog</li>
<li> Each Address Book now can have its own preferences (defaulting to  their previous value in 0.2) and synchronization settings</li>
<li> New fields (&#8220;People&#8221;) and types for existing fields (many more phone number types)</li>
<li> Contact photos are synchronized (only visible in Thunderbird 3 &amp; Seamonkey 2)</li>
<li> The birthday field in Thunderbird 3 is synchronized</li>
<li> More links in the gContactSync menu</li>
<li>The Sync button can now be customized like a normal toolbar button  in Thunderbird. However, you must go to View -&gt; Toolbars -&gt;  Customize and add the button to the toolbar yourself</li>
<li> You can synchronize from the main Thunderbird window</li>
<li>The import functionality is new.</li>
</ul>
<p><strong>You can download the latest version of 0.3 <a href="http://pirules.org/forum/index.php/topic,89.msg630.html#msg630">here</a>.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=339</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Note to gContactSync Users &#8211; Please update ASAP</title>
		<link>http://www.pirules.org/blog/?p=326</link>
		<comments>http://www.pirules.org/blog/?p=326#comments</comments>
		<pubDate>Thu, 25 Mar 2010 15:13:06 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=326</guid>
		<description><![CDATA[I received numerous reports of gContactSync showing errors about mailing lists, deleting contacts, and/or duplicating contacts. I believe the cause is a recent (unannounced?) change to the API that gContactSync 0.2 uses as well as the newer API that 0.3 alphas use. For some reason, it looks like Google changed the self URL of contacts [...]]]></description>
			<content:encoded><![CDATA[<p>I received numerous reports of gContactSync showing errors about mailing lists, deleting contacts, and/or duplicating contacts.</p>
<p>I believe the cause is a recent (unannounced?) change to the API that gContactSync 0.2 uses as well as the newer API that 0.3 alphas use.</p>
<p><span style="text-decoration: line-through;">For some reason, it looks like Google changed the self URL of  contacts to use HTTPS rather than HTTP (a good idea, but not so good  when done in APIs that are supposed to be stable without any  sort of notice&#8230;).</span></p>
<p>There is an <a href="http://www.google.com/support/forum/p/apps-apis/thread?tid=6fde249ce2ffe7a9&amp;hl=en">&#8220;Issue&#8221; with Google&#8217;s Contacts API</a> that causes the IDs of contacts to now use HTTPS instead of HTTP.  gContactSync uses this URL as the ID of the  contact.  The end of the URL contains the actual ID, but back in 0.1 I  decided to store the entire URL as the ID (because the full URL contains the account&#8217;s e-mail address).  gContactSync matches your  Thunderbird contacts with your Google contacts based on this ID.  It looks like this change isn&#8217;t permanent, but it has not been fixed as of late March 25th (Eastern), so I will permanently add the fix to gContactSync.</p>
<p>So  where the URL of a contact used to be something like this:<br />
<a href="http://www.google.com/m8/feeds/contacts/username%40gmail.com/full/682280958b46a123" target="_blank">http://www.google.com/m8/feeds/contacts/username%40gmail.com/full/682280958b46a123</a></p>
<p>It  now looks like this, which makes gContactSync determine that the two contacts are not, in fact, the same<br />
<a href="https://www.google.com/m8/feeds/contacts/username%40gmail.com/full/682280958b46a123" target="_blank">https://www.google.com/m8/feeds/contacts/username%40gmail.com/full/682280958b46a123</a></p>
<p>Additionally, some contacts store the groups they are in with the old <strong>http://www.google.com&#8230; </strong>link while others use <strong>https://www.google.com&#8230;</strong> which causes problems with group synchronization (whether you are synchronizing one group or many, gContactSync cannot always accurately tell which groups a contact is in due to this problem).  This will be addressed in 0.2.15</p>
<p>The following steps should fix the problem (thanks to bblackmoor on the forum for some additional steps with changing group preferences &#8211; http://pirules.org/forum/index.php/topic,127.msg503.html#msg503)</p>
<p><strong>Before doing anything else, please go http://contacts.google.com and Export all of your contacts.</strong></p>
<p><strong>Version  0.2:</strong></p>
<ul>
<li><strong>Update to <a href="https://addons.mozilla.org/en-US/thunderbird/addon/8451">0.2.15</a></strong> or greater</li>
<li>Go to  Tools -&gt; Add-ons and click <strong>Preferences</strong> under gContactSync</li>
<li>Switch to the <strong>Main</strong> tab</li>
<li>Uncheck  <strong>Synchronize contacts automatically</strong></li>
<li>Go  to the <strong>Accounts</strong> tab</li>
<li>Click <strong>Reset All Synced ABs</strong></li>
<li>Restart  Thunderbird and re-enable automatic synchronization if you wish</li>
</ul>
<p><strong>Version  0.3</strong></p>
<ul>
<li><strong>Update to </strong><strong><a href="http://pirules.org/forum/index.php?topic=89">0.3.0a5</a></strong> or greater.  Remember that 0.3 is still in its Alpha stage, meaning it is still being worked on and tested.  Use 0.2 if you want a more stable and tested add-on.  0.3 will be put on addons.mozilla.org when it is ready</li>
<li>Go to  Tools -&gt; Add-ons and click <strong>Preferences</strong> under gContactSync</li>
<li>Uncheck  <strong>Synchronize contacts automatically</strong> under the Main tab</li>
<li>Go to the <strong>Advanced</strong> tab</li>
<li>Click <strong>Reset All Synced ABs</strong> if it is there (depending on the version you have)</li>
<li>If the reset button is not in that tab:
<ul>
<li>Open  the Address Book window</li>
<li>Go to gContactSync -&gt; Accounts</li>
<li>Click  <strong>Reset All Synced ABs</strong></li>
</ul>
</li>
<li>Restart Thunderbird and re-enable  automatic synchronization if you wish</li>
</ul>
<p><strong>If you have updated and reset all address books and gContactSync still isn&#8217;t working as expected please send me at least part of the log so I can figure out the cause: <a href="http://www.pirules.org/extensions/submit_error.php?ext=gContactSync">http://www.pirules.org/extensions/submit_error.php?ext=gContactSync</a></strong></p>
<p><span style="text-decoration: underline;">If any of your contacts were deleted and you do not have a backup, please read<a href="http://www.pirules.org/blog/?page_id=312"> this for instructions on how to recover those contacts from Thunderbird</a>.</span></p>
<p>Thanks to everyone who reported this issue, and I apologize for the problems it caused.</p>
<p>PS &#8211; I have an exam today, one Monday, one Tuesday, a ton of homework due tomorrow, and some recruitment events that I need to attend, so I apologize if I am slow to respond.  I haven&#8217;t tested 0.2.14 or 0.3.0a4 nearly as much as I usually do since I just discovered the problem and have to go to a meeting then take an exam very soon.  If anything is wrong I&#8217;ll try to get another update out late tonight or tomorrow.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=326</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Two new add-ons and gContactSync Update</title>
		<link>http://www.pirules.org/blog/?p=306</link>
		<comments>http://www.pirules.org/blog/?p=306#comments</comments>
		<pubDate>Tue, 05 Jan 2010 23:47:11 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>
		<category><![CDATA[mozilla]]></category>
		<category><![CDATA[contact photos]]></category>
		<category><![CDATA[gcontactsync 0.3]]></category>
		<category><![CDATA[gravatar]]></category>
		<category><![CDATA[save email format]]></category>
		<category><![CDATA[thunderbird]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=306</guid>
		<description><![CDATA[I worked on two new Thunderbird/Seamonkey add-ons over winter break.  The names aren&#8217;t very creative, so let me know if you can think of a better name for either of them. Contact Photos This add-on displays the photo of the contact from whom the message was sent in the message header of Thunderbird 3 and [...]]]></description>
			<content:encoded><![CDATA[<p>I worked on two new Thunderbird/Seamonkey add-ons over winter break.  The names aren&#8217;t very creative, so let me know if you can think of a better name for either of them.</p>
<h2><a href="https://addons.mozilla.org/en-US/thunderbird/addon/57991">Contact Photos</a></h2>
<p><a href="http://www.pirules.org/blog/wp-content/uploads/2010/01/ContactPhotos_01.png"><img class="alignnone size-medium wp-image-307" title="ContactPhotos_01" src="http://www.pirules.org/blog/wp-content/uploads/2010/01/ContactPhotos_01-300x33.png" alt="" width="300" height="33" /></a></p>
<p>This add-on displays the photo of the contact from whom the  message was sent in the message header of Thunderbird 3 and Seamonkey 2.   If a photo cannot be found for the sender then a <a href="http://outgoing.mozilla.org/v1/8b193435d08848f6100746470e899b594e1ddd3c/http%3A//en.gravatar.com/">Gravatar</a> is used.</p>
<p>Please let me know if you have suggestions for this add-on because I just started it today.  One possible addition I may make is to replace the default photo with a Gravatar in the Address Book window and new/edit contact dialog as well.  I&#8217;d also like to center the image in the header.</p>
<p>Also see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=469517">Bug 469517</a>.</p>
<p><a href="https://addons.mozilla.org/en-US/thunderbird/addon/57991">Download here</a>.</p>
<h2><a href="https://addons.mozilla.org/en-US/thunderbird/addon/57612">File Type Selector</a></h2>
<p>This isn&#8217;t technically new, but I recently added it to AMO.</p>
<p>This add-on allows you to customize the default format in which e-mail messages  are saved when you manually choose to save one or more messages.  It works in Thunderbird 2 and 3 as well as Seamonkey 2.  The default in Thunderbird is hardcoded as .eml and cannot be changed when saving multiple messages as far as I can tell.</p>
<p><a href="https://addons.mozilla.org/en-US/thunderbird/addon/57612">Download here</a>.</p>
<h2>gContactSync Updates</h2>
<h3>Version 0.3</h3>
<p>I plan on releasing 0.3.0a1 before I go back to school on January 11th.</p>
<p><a href="http://pirules.org/forum/index.php?topic=88.0">Pre-alpha (early testing) download information</a></p>
<p>Here&#8217;s a basic summary of its features.  <a href="http://www.pirules.org/tikiwiki/tiki-index.php?page=Version+0.3+Alpha">This wiki article</a> has more details.</p>
<ul>
<li>Can synchronize your <a rel="external" href="http://www.google.com/contacts" target="_blank">Google Contacts</a> (Gmail, Google Apps, etc.) with <a rel="external" href="http://www.mozillamessaging.com/" target="_blank">Mozilla  Thunderbird</a>.</li>
<li>Supports multiple Google Accounts and Address Books</li>
<li>Groups in Google can be synchronized with individual Address  Books or mailing lists in one AB</li>
<li>Each Address Book can be synchronized with <strong>one</strong> of the  following:
<ul>
<li>All contacts and all groups with mailing lists</li>
<li>One specific group</li>
<li>All contacts</li>
</ul>
</li>
<li>Every synchronized AB can have its own custom  settings</li>
<li>You can choose to complete synchronize your contacts (so  Thunderbird matches Google), to only read changes from Google but never  apply TB&#8217;s changes, or to only write to Google and never apply changes  made remotely.</li>
<li>Contact photos are downloaded and displayed in Thunderbird 3  &amp; Seamonkey 2.</li>
</ul>
<h3>Version 0.2</h3>
<p>Here&#8217;s a brief changelist since the last post.  Download <a href="https://addons.mozilla.org/en-US/thunderbird/addon/8451/">here</a>.</p>
<h4>Version 0.2.9</h4>
<ul>
<li>Fixes some bugs with read-only mode</li>
<li>Compatible with  Seamonkey 2.0</li>
</ul>
<h4>Version 0.2.10</h4>
<ul>
<li>Fixes a bug encountered when manually deleting a contact from  Thunderbird</li>
</ul>
<h4>Version 0.2.11</h4>
<ul>
<li>Fake/dummy e-mail addresses are now only added to new contacts  when  necessary (only when the contact is in one or more mailing lists).    Reset and sync again to remove the unnecessary addresses, or just  edit  the contact.</li>
<li>Adds a Korean (ko-KR) locale &#8211; thanks to Han,  Dong-yoo</li>
<li>Updated Spanish (es-ES) locale &#8211; thanks to RigoNet</li>
<li>Improved name parsing for Asian names (thanks to Han, Dong-yoo)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=306</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>gContactSync 0.2.8</title>
		<link>http://www.pirules.org/blog/?p=301</link>
		<comments>http://www.pirules.org/blog/?p=301#comments</comments>
		<pubDate>Wed, 23 Sep 2009 02:16:08 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>
		<category><![CDATA[gcontactsync]]></category>
		<category><![CDATA[google contacts]]></category>
		<category><![CDATA[seamonkey 2]]></category>
		<category><![CDATA[synchronization]]></category>
		<category><![CDATA[thunderbird]]></category>
		<category><![CDATA[thunderbird 3 beta 4]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=301</guid>
		<description><![CDATA[Brief version history for gContactSync 0.2 and a basic description of 0.3 (in development)]]></description>
			<content:encoded><![CDATA[<p>gContactSync version 0.2.8 has been released.  I realized that I have been forgetting to make a quick blog post about each release, so here&#8217;s a basic summary of recent versions.</p>
<p><strong><a href="https://addons.mozilla.org/en-US/thunderbird/addon/8451">Download here</a>.</strong></p>
<p>The best way to stay up-to-date on new versions is probably through Twitter: <a href="http://twitter.com/gcontactsync">gcontactsync</a></p>
<h2>Supported Applications</h2>
<ul>
<li>Thunderbird 2</li>
<li>Thunderbird 3 (all versions, including beta 4 and 3.0pre)</li>
<li>Thunderbird 3.1a1pre</li>
<li>Seamonkey 2 (all versions, including beta 2 and 2.0pre)</li>
</ul>
<h3>Version 0.2.8</h3>
<ul>
<li>Fixes &#8216;broken&#8217; usernames that were able to get an authentication token but failed when trying to get contacts or groups. (usernames only without a domain or with spaces at the beginning or end)</li>
<li>Fixed the install.rdf file for Seamonkey</li>
</ul>
<h3>Version 0.2.7</h3>
<ul>
<li>Bug fix for renewing expired authentication tokens</li>
</ul>
<h3>Version 0.2.6</h3>
<ul>
<li>Updated the Portuguese translation</li>
<li>Mailing Lists (groups) in Thunderbird now use their translated names</li>
<li> The log moved to the main profile directory</li>
</ul>
<h3>Version 0.2.5</h3>
<ul>
<li>Adds the following new languages:
<ul>
<li>Portuguese (devezas on BabelZilla)</li>
<li>Russian (Glk63)</li>
<li> Spanish (with help from Guillermo Klew from VisualBeta.es)</li>
</ul>
</li>
</ul>
<h3>Version 0.2.4</h3>
<ul>
<li>Fixed a bug with adding or renaming groups</li>
<li> Minor updates to the Italian translation (thanks ZaZy)</li>
</ul>
<h2>Version 0.3 Update</h2>
<p>This deserves its own blog post, but here is a basic summary.  I don&#8217;t have a tentative release date yet since this is just a hobby, not a job. <img src="http://pirules.org/forum/Smileys/default/wink.gif" border="0" alt="Wink" /></p>
<p><strong>The main delay is described <a href="https://www.mozdev.org/bugs/show_bug.cgi?id=21042">here</a>.</strong> College (a full 18 credits) and my job (programming) don&#8217;t exactly leave me with much free time, either.</p>
<h3><strong></strong><strong>Features</strong></h3>
<ul style="margin-top: 0pt; margin-bottom: 0pt;">
<li><a href="https://www.mozdev.org/bugs/show_bug.cgi?id=21039" target="_blank">Support for Google&#8217;s new API</a></li>
<li>Support for downloading contact photos*</li>
<li>Synchronized birthday field**</li>
<li>&#8216;Relation&#8217; fields (Mother, Father, Coworker, etc.</li>
<li>More phone number types</li>
</ul>
<h3><strong>Potential Features</strong></h3>
<ul style="margin-top: 0pt; margin-bottom: 0pt;">
<li>The individual address fields may be synchronized instead of using the new address fields</li>
<li>Support for adding, updating, and removing contact photos</li>
</ul>
<p>*I (among others) worked on <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=119459" target="_blank">contact photos</a> for the Address Book in Thunderbird 3 beta 4/Seamonkey 2.0 Beta 2.  gContactSync 0.3 and up will download photos in all supported applications, but you&#8217;ll have to use TB 3 or SM 2 to see them.<br />
**I worked on a <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=13595" target="_blank">birthday field</a> for the address book in Thunderbird 3/Seamonkey 2.  If you use TB 2 the values are synchronized but not displayed.  Google also added a birthday field after the changes were made in Thunderbird.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=301</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>gContactSync Updates</title>
		<link>http://www.pirules.org/blog/?p=297</link>
		<comments>http://www.pirules.org/blog/?p=297#comments</comments>
		<pubDate>Thu, 11 Jun 2009 03:28:41 +0000</pubDate>
		<dc:creator>Pi</dc:creator>
				<category><![CDATA[gContactSync]]></category>
		<category><![CDATA[mozilla]]></category>

		<guid isPermaLink="false">http://www.pirules.org/blog/?p=297</guid>
		<description><![CDATA[Google Contacts API Update Google announced a new version, 0.3, of their contacts data API yesterday. It adds a significant amount of flexibility, several new fields, and enhances existing fields. Some of the major changes include: Structured Postal Addresses &#8211; It is now possible to keep the structured address fields that Thunderbird has without converting [...]]]></description>
			<content:encoded><![CDATA[<h2>Google Contacts API Update</h2>
<p>Google announced a new version, <a href="http://googledataapis.blogspot.com/2009/06/new-contacts-data-api-features-are-here.html">0.3</a>, of their contacts data API yesterday.  It adds a significant amount of flexibility, several new fields, and enhances existing fields.  Some of the major changes include:</p>
<ul>
<li>Structured Postal Addresses &#8211; It is now possible to keep the structured address fields that Thunderbird has without converting them.</li>
<li>A birthday field &#8211; I am currently working on <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=456024">enhancing</a> the <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=13595">birthday field</a> that will be present in Thunderbird 3, so the birthday values will be synchronized by default.  If you use Thunderbird 2 the values will still be stored and displayed once you upgraded to 3.</li>
<li>Website fields with various types (<a href="http://code.google.com/apis/contacts/docs/3.0/reference.html#gcWebsite">list</a>)</li>
<li>More phone number types</li>
<li>A nickname field</li>
</ul>
<p>It doesn&#8217;t look like all of the changes are available in Gmail yet, but you can see a few of them <a href="http://www.google.com/contacts">here</a>.</p>
<h2>Version 0.3</h2>
<p>I am going to start working on Version 0.3 sometime this week which will use the new API and hopefully include some of the most frequently requested enhancements.  For those of you familiar with Bugzilla, I have a <a href="https://www.mozdev.org/bugs/show_bug.cgi?id=21040">bug tracking my changes</a>.  I am going to focus heavily on Thunderbird 3 starting with version 0.3 and may drop support for 2 with future versions.  If you are opposed to this please let me know and I will reconsider.</p>
<p>Here are some potential features.    Please keep in mind that I have a full time internship that involves programming and am starting an online class soon, so I may have to delay some of these.  The links are to bugs where I will track my progress.</p>
<ul>
<li>Code refactoring.  This isn&#8217;t the most popular feature request, but I would like to like to reorganize the existing code with the new API and these enhancements in mind.</li>
<li><a href="https://www.mozdev.org/bugs/show_bug.cgi?id=20901">Contact photos</a>.  I am working on <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=119459">contact photos in Thunderbird 3</a> and have a modified version of gContactSync 0.2.4 that will download photos from Google when adding contacts for the first time.  Due to time constraints, 0.3 may be limited to downloading photos only in TB 3.</li>
<li>Synchronizing all fields that only Thunderbird has and allow for customization of that data.</li>
<li><a href="https://www.mozdev.org/bugs/show_bug.cgi?id=21044">Adding a new &#8216;Relation&#8217; field</a>.  This describes the relationship between you and the contact (brother, sister, mother, father, child, coworker, <a href="http://code.google.com/apis/contacts/docs/3.0/reference.html#gcRelation">etc</a>.).  I haven&#8217;t found an existing request for Thunderbird in Bugzilla, so maybe I could add it in Thunderbird rather than just gContactSync.</li>
<li><a href="https://www.mozdev.org/bugs/show_bug.cgi?id=21041">Several more types of phone numbers</a>. (<a href="http://code.google.com/apis/gdata/docs/2.0/elements.html#gdPhoneNumber">list</a>)</li>
<li><a href="https://www.mozdev.org/bugs/show_bug.cgi?id=21048">Website field types, and possibly more fields</a>.</li>
<li>More advanced synchronization with a more intuitive wizard (pick an account, then all groups w/ mailing lists, one group, or no groups/all contacts, plus a few options).  Syncing individual groups with address books instead of mailing lists would prevent nearly all error reports that I get.</li>
<li>A button or context menu to synchronize only one directory.</li>
</ul>
<h2>Version 0.2</h2>
<p>There have been a few new versions of gContactSync 0.2.  It is currently up to version 0.2.3 that handles mailing list bugs a bit more gracefully.  <a href="https://addons.mozilla.org/en-US/thunderbird/addon/8451/">Download</a>.</p>
<p>Since the development of 0.3 is going to take some time, I am going to slow down development of 0.2 and let it get translated to more languages.</p>
<h3>Locales</h3>
<ul>
<li><a href="http://www.zazy.it/index.asp?area=home&amp;page=main">ZaZy</a> was kind enough to translate gContactSync to Italian (it).  Updates to the locale will be in 0.2.4</li>
<li>A Russian (ru-RU) translation is being worked on courtesy of <a href="http://www.babelzilla.org/forum/index.php?showuser=12871">Glk63</a> on BabelZilla.</li>
<li>A French (fr-FR) translation is in progress by <a href="http://www.babelzilla.org/forum/index.php?showuser=7809">afroxav</a>.  Another translation was done by LaGrange.</li>
</ul>
<h3>Lessons Learned</h3>
<ol>
<li>Mailing lists are evil.  Just kidding, but they can be broken easily rending them (and their parent address book) useless.  The cause of nearly every error report I have received so far is directly related to mailing lists.</li>
<li>The nobody&lt;id&gt;@nowhere.invalid workaround helps but it is still possible to break mailing lists with this workaround.</li>
<li>People would like to see gContactSync in their native language.</li>
<li>People have good ideas and valuable suggestions.  I have received a lot of feedback and requests.  While I don&#8217;t have the time to implement every suggestion, I can at least try to add the more popular suggestions</li>
<li>Creating a <a href="http://pirules.org/forum/index.php">forum</a> was a good idea.</li>
</ol>
<h2>Helping with Development</h2>
<p>If you know a bit about JavaScript, XML, XUL, and/or CSS or even if you would like to learn I wouldn&#8217;t mind letting others fix bugs or enhance gContactSync.  The code has a decent amount of comments and I generated some <a href="http://www.pirules.org/extensions/gcontactsync/jsdoc/index.html">JsDoc of 0.2</a>.</p>
<p>Or if you are good with icons and could make at least a sync button image I&#8217;m sure everyone would appreciate it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pirules.org/blog/?feed=rss2&#038;p=297</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

