GContactSync
Uit DeVliegendeWiki
Vanaf juli 2011 is gContactSync de beste oplossing die we kennen om adressen te synchroniseren tussen Thunderbird, Gmail en Android. Het onderhoudt een één-op-één-correspondentie tussen een Gmailaccount en een Thunderbird-adressenboek, en dat miste in eerdere oplossingen die we gebruikten.
gContactSync lijkt een degelijk product te zijn, goed te werken, en ondersteund te worden door een actieve gemeenschap. Het punt is echter, dat het weerbarstige materie is waar het zich mee bezighoudt: Adressenkaarten zijn in Thunderbird en Gmail afwijkend ingericht; Mailings Lists in Thunderbird heeft bugs, en Gmail is een vrij complex product waarin niet alles even intuïtief werkt. Daarnaast maakt de MoreFunctionsForAddressBook-add-on het er niet gemakkelijker op
Inhoud |
Ingebruikname
DEZE PROCEDURE IS ACHTERHAALD: Het adressenboek in Thunderbird zit vol bugs. Daarom adressenkaarten zo snel mogelijk uploaden naar het bijbehorende Gmail-account, en daar de boel organiseren.
1. Adressenboeken archiveren
- Android: Adressen vanuit verschillende accounts exporteren naar de SD-kaart. Alle adressen uit een account worden in een Vcard-bestand met de extentie .vcf ondergebracht. Deze bestanden zijn leesbaar met een editor;
- Thunderbird: .mab-bestanden copieren vanuit de profielmap;
- Gmail: Dat hebben we nog niet nodig gehad
2. Oude synchronisatiemechanismen uitschakelen
Om adressenboeken voorafgaand aan synchronisatie op te schonen, is het handig om alles in Thunderbird te importeren, omdat dat waarschijnlijk de gemakkelijkste plek is om dat soort werk te doen.
Daarvoor is het wijsheid om eerst oude synchronisatiemechanismen uit te schakelen, om te voorkomen dat tussentijdse resultaten en incomplete adressenboeken propageren naar andere adressenboeken.
3. Alles importeren in Thunderbird
Thunderbird kan standaard niet overweg met Vcard-bestanden. Met de add-on MoreFunctionsForAddressBook is dit te verhelpen.
Deze import loopt echter niet vlekkeloos:
- Soms lijken telefoonnummers te zijn verdwenen;
- Telefoonnummers worden vaak als 'vierde telefoonnummer' aangemerkt. Gmail en Android lijken daar trouwens geen probleem mee te hebben.
De bijbehorende Vcard-bestanden zijn gelukkig met een editor te lezen, dus je kunt incidenteel handmatig ontbrekende gegevens uit deze bestanden vissen.
4. Opschonen in Thunderbird
De add-on die ik tot op heden gebruikte voor synchronisatie met Gmail, heb ik verwijderd.
In Thunderbird heb ik de inhoud van de vier adressenboeken samengevoegd in addressenboek Personal Address Book.
In Thunderbird kun je met drag & drop adressen verplaatsen tussen adressenboeken, maar niet als er groepen bij zitten. Ik heb dus alleen de adressen verplaatst. Die groepen had ik sowieso niet nodig. 'Groepen' bevatten pointers naar de achterliggende adressen. Als je een Groep verwijdert, verwijder je dus alleen de pointers. Niet de eigenlijke adressen.
Gmail en/of Android hebben zelf een handjevol Groepen. Als je die verwijdert, worden ze automatisch weer aangemaakt.
5. Gmail & Android leegmaken
Om er zeker van te zijn dat alleende adressen in Thunderbird worden gebruikt, kan het handig zijn om alle adressen in Gmail en Android te verwijderen.
6. gContactSync installeren
Niet zo moeilijk. Ik geloof dat Android automatisch de adresen overneemt als deze eenmaal in Gmail zitten.
7. gContactSync op additionele computers installeren
gContactSync Kan probleemloos op additionele computers worden geïnstalleerd. Ook daar geldt dat het handig is om adressenboeken eerst leeg te maken, en om oudere synchronisatiemechanismen eerst uit te schakelen. Zie hoofdstuk over Synchronisatie voor details omtrent synchronisatie en conflicten.
Datamodel
Adressenkaarten in Thunderbird en Gmail zitten verschillend in elkaar. Niet alleen tav. velden, maar ook tav. labels bij velden, en relaties met groepen.
Primaire sleutels
Standaardvelden Thunderbird
De adressenkaart is in Thunderbird standaard nogal beperkt. Er zijn vijf tabbladen. Je kunt geen labels wijzigen, en geen velden toevoegen.
Velden Gmail
De adressenkaart in Gmail is erg flexibel: Je kunt veel soorten velden toevoegen, inclusief zelf te bepalen labels.
Velden Thuderbird + gContactSync
De adressenkaart in Thunderbird is nogal beperkt tov. die in Gmail. Dat kan problemen geven bij synchronisatie. Daarom breidt gContactSync de adressenkaart van Thunderbird uit met twee tabbladen. Je hebt nu dus zeven tabbladen in totaal:
Velden Thuderbird + gContactSync + MoreFunctionsForAddressBook
MoreFunctionsForAddressBook breidt eveneens het aantal velden en tabbladen uit, bovenop de uitbreidin van gContactSync. Da's niet handig, want die velden worden nou juist niet gesynchroniseerd. Bij elkaar heb je nu tien tabbladen. Oa. Categorieën, waar ik zelf nogal fan van ben, is geïmplementeerd in MoreFunctionsForAddressBook. Da's jammer, want die kan ik dus niet gebruiken, als synchronisatie maar belangrijk genoeg voor me is.
Mailing Lists & Groups
In Thunderbird kun je contactpersonen groeperen in Mailing Lists. Het equivalent hiervan in Gmail heet Groups. In beide gevallen bevatten de groepen pointers of references naar de achterliggende adreskaarten. Als je zo'n groep verwijdert, verwijder je dus alleen de pointers, en niet de achterliggende adreskaarten. Synchroniseren van contactgegevens wil nog wel eens problematisch zijn indien er gebruik wordt gemaakt van groepen.
Mailing Lists is buggy [1]. Thunderbird kan bv. niet goed overweg met adreskaarten zonder e-mailadressen. Daarom maakt gCS voor deze adreskaarten dummy-e-mailadressen aan van de vorm nobody...@...nowhere.invalid. Ook kunnen Mailing Lists niet bewerkt wordne middels drag & drop.
In Gmail lijkt de truuk te zijn dat adressen primair in My Contacts moeten zitten, en niet in Other Contacts.
De zekerste manier om groepen goed te laten synchroniseren, is door het in Gmail op orde te krijgen, en daarna te synchroniseren [2].
Categorieën
Outlook kent zoiets als categorieën: Een soort free tagging-systeem, waarbij je objecten (bv. contactpersonen) kunt associëren met een of meer categorieën. Dat vond ik verrekte handig.
Gmail lijkt geen categorieën te kennen.
Thunderbird kent categorieën dankzij de add-on MoreFunctionsForAddressBook. Probleem daarmee is echter, dat het niet gesynchroniseerd wordt met Gmail. Als synchronisatie erg belangrijk is, kun je dus geen categorieën gebruiken. Persoonlijk heb ik daarom voor gekozen om geen categorieën te gebruiken: Het adressenboek in Thunderbird is al lastig genoeg, en synchronisatie met Gmail ook. Deze kans om het nog lastiger te maken, sla ik daarom over.
Fysieke adressen
Standaard worden fysieke adressen (postal addresses) niet gesynchroniseerd, omdat de betreffende API van Google nog niet af zou zijn. Je kunt de betreffende instelling in GCS aanpassen via Preferences.
Daarnaast gaan adressen verloren door een bug in Thunderbird: Als je een kaart naar een groep sleept, gaan oa. de adressenvelden verloren. Oplossing: Kaarten alleen in Gmail associëren met groepen.
Locaties & prioriteit
Je kunt op tweede en derde tabblad adressen bijhouden, en op het zevende. Zie schermafdrukken hieronder. Het is handig om alleen het zevende tabblad voor adressen te gebruiken:
- Dit betreffen 'voorgevormde' adressenvelden: Het is een groot veld, en Gmail bepaalt daarna wat er staat. Dat is intuïtief (althans voor mij), en het lijkt goed te werken: Gmail identificeert inderdaad de postcode, de straatnaam, het huisnummer, etc.
- In Thunderbird gebruik ik bij voorkeur Gmail-velden, omdat Gmail z'n zaakjes beter voor elkaar lijkt te hebben wat adressenboeken betreft.
Wanneer wordt er gesynchroniseerd?
Tijdens het werken met de adressenboeken heb ik twee keer meegemaakt dat ik in Thunderbird een adres verwijderde, synchroniseerde, en de betreffende verandering niet in Gmail werd doorgevoerd. Blijkbaar wordt synchronisatie getriggered door toevoegen van informatie, en niet door verwijderen van informatie.
Adressen terugzetten vanaf Gmail
Het is handig om adressen in Gmail te organiseren (bv. aan groepen toekennen), en niet in Thunderbird, omdat het adressenboek in Thunderbird vol bugs zit. Daarna moet het betreffende adressenboek in Thunderbird waarschijnlijk opnieuw opgebouwd worden. Zie onderstaande afbeeldingen:
Vragen & antwoorden
Beantwoord
- Kan ik .vcf-adressenboekbestanden importeren in Thunderbird? --> Ja, zie eerder in dit artikel;
- Welke synchronisatieconflictresolutiemechanismen bestaan er? --> Beperkt: Tijdens synchronisatie vermeldt het statusrapport synchronisatieconflicten, maar je moet dat wel handmatig oplossen, anders gaat de locale versie van de betreffende adressenkaart verloren bij de volgende synchronisatie. Zie verder hoofdstuk over synchronisatie.
- Als ik in Thunderbird een nieuw adres aanmaak, kan ik dan bepalen in welk adressenboek dat belandt? --> Ja: Bovenaan de adressenkaart staat een dropdownbox waarmee je het betreffende account kunt kiezen. Hetzelfde geldt in Android.
- Wat betekent 't als Thunderbird e-mailadressen zoals nobody... @ ... nowhere... geeft? --> Dat is bewust gedaan, om storingen in Thunderbird te vermijden met mailinglijsten zonder e-mailadressen [3];
- Wat zijn de verschillende indelingen van adressenkaarten die Thunderbird, Gmail en Android gebruiken? Hoe verhouden die zich tot elkaar? Wat zijn de primaire sleutels? --> Zie hoofdstuk over Datamodel. Thunderbird en Gmail gebruiken beide een eigen primaire sleutel.
- Bestaat er een synchronisatieconflictresolutiemechanismen zoals bij Dropbox, dus dat er automatisch een tweede exemplaar van een object wordt aangemaakt? --> gContactSync waarschuwt vantevoren. Als je niet accoord gaat met een mutatie, wordt synchronisatie voor het betreffende account uitgezet.
- waarom gaat synchronisatie mis bij groepen? Hoe zit dat precies, want een keer kwam gCS zelfds met een foutmelding (zie schermafdruk) --> Gaat niet mis. Alleen belangrijk dat adressenkaarten eerst in Gmail correct zijn. De implementatie van groepen in Thunderbird is vrij beroerd.
- Hoe werken groepen precies in Gmail en Thunderbird? --> Zie elders in dit artikel.
- Thunderbird kent Categorieen, maar die lijkt Gmail niet te kennen, of wel? Categorieen lijken niet te worden gesynchroniseerd naar andere instanties van Thunderbird. Klopt dat? --> Zie desbetreffende hoofdstuk
- Waar komen precies de extra tabbladen in het Thunderbird-adressenboek vandaan? Waar worden Categorieen precies bijgehouden --> Zie hoofdstuk Datamodel;
- Hoe kan het dat fysieke adressen verloren lijken te gaan? --> Door een bug in Thunderbird: Als je een kaart versleept naar een groep, gaan oa. adresvelden verloren. Oplossing: Uitsluitend in Gmail adressen met groepen associëren.
Open
- Bij importeren van .vcf-bestanden in Thunderbird, raakte ik telefoonnummers kwijt, en belandden telefoonnummers op rare locaties. Hoe zit dat?
Bronnen
- https://addons.mozilla.org/nl/thunderbird/addon/gcontactsync/?src=collection&collection_id=83164377-f8d2-daf9-3f8a-106a6943464e
- http://en.wikipedia.org/wiki/VCard
- http://nic-nac-project.de/~kaosmos/morecols-en.html
- http://www.pirules.org/extensions/gcontactsync/tutorial/intro.php
- http://www.pirules.org/extensions/gcontactsync/faq.php
- http://www.pirules.org/blog/?p=343 - Telefoonnummers in Gmail & Thunderbird
- http://www.pirules.org/tikiwiki/tiki-index.php?page=Troubleshooting+gContactSync - Troubleshooting gContactSync
- http://pirules.org/forum/index.php - Forum
