Accueil du site > INFORMATIQUE > Linux/Ubuntu > Synchronisation PDA, Smartphones et PC sous Linux
La quête du Graal ?
lundi 5 mars 2007, par
J’avais déjà essayé de synchroniser mes contacts, mon agenda et mes taches sous Linux il y a quelques temps entre Evolution, un Palm T3 et un Nokia 7650. Je n’y étais parvenu que partiellement. Je suis tombé récemment sur cet article, Synchronisation Google Calendar avec Evolution (Etch) où l’auteur cite l’article à la source de sa révélation.
Les utilisateurs professionnels de PDA sous Windows Mobile connaissent bien la synchronisation de leur PDA avec leur messagerie Exchange. Bien que certains problèmes surviennent comme l’apparence de doublons lorsqu’on migre la synchronisation de Microsoft ActiveSync (cable ou GPRS/Edge) vers des solutions comme Orange Bureau par exemple, on peut dire que cela fonctionne bien. C’est le moins qu’on puisse demander à une solution intégrée. De plus cette solution est complète, car elle englobe non seulement les contacts, le calendrier (rendez-vous) et les taches mais aussi les emails, ce qui est moins courant.
Pour les particuliers, certaines solutions existent. Orange possède une application via son site (par inscription à « Mon compte »), mais qui date d’au moins une année. Elle fonctionne très bien, mais aucune mise à jour n’a été effectuée, donc impossible de faire du syncML avec tout les mobiles récents. Pour certaines taches comme la synchronisation spécifique de Google Calendar avec un mobile, certaines solutions spécifiques existent : GooSync et GCALSYNC.
Sous Linux, pourquoi la quête du Graal ? Personnellement j’utilise :
Thunderbird pour la messagerie avec sa propre liste de contacts
Evolution pour les taches, agenda personnel et agendas publics, contacts
Palm T3 avec également contacts, taches et agenda
Un veux Nokia 7650 avec ses contacts, son agenda et ses taches
Je voudrais que la liste des contacts, l’agenda et les taches soient les mêmes pour les 4 logiciels ou matériels (j’exclu les mails personnellement). Utopie ? Presque, effectivement parfois je me dis que je m’embête pour rien. Mais on est un geek ou on ne l’est pas, et c’est la difficulté d’atteindre cet objectif qui rend la chose intéressante !
Autant le dire tout de suite, je ne suis pas arrivé totalement à mes fins. Je m’étais déjà attaqué à ce problème il y a 4 mois et j’étais parvenu à la situation suivante :
Evolution me sert de point central pour mon agenda, contacts et taches
La synchro avec le Palm est très bien gérée sous Gnome par le “cradle” et l’applet “Gnome-Pilot” et son plugin pour Evolution. De plus j’ai été agréablement surpris par l’application J-Pilot, l’équivalent de Palm Desktop sous Windows. Ce ce point de vue j’estime avoir atteint un degré d’utilisation du Palm identique à la paire Palm Desktop / Outlook sous Windows, à l’exception de la synchronisation des courriels.
Je n’étais pas parvenu à intégrer le Nokia dans la chaine. A ce titre la réussite où non de la communication entre votre téléphone et Linux dépend beaucoup de votre modèle de téléphone et de la version des outils linux utilisés. Pour ma part, avant même de parler de synchronisation, je me suis cassé les dents sur les outils suivant :
je suis donc parvenu à réaliser des synchronisations entre le Nokia et Evolution grâce au plugin SyncMl pour Multisync, tous les deux étant disponibles dans Synaptic. Malheureusement encore une fois le résultat est désastreux. Les contacts sont dupliqués, voire corrompus à chaque synchronisation, même si aucune information n’a été modifiée de chaque côté. Au vu de ce que j’ai pu lire dans les forums, il semble que bon nombre de personnes aient des problèmes avec Multisync. Le résultat est tout de même très dépendant de la version de Multisync utilisée. Ma version est celle disponible dans les dépôts pour ma distribution Ubuntu qui n’est pas très récente. De plus les dernières versions de Multisync utilisent maintenant Opensync, donc le résultat peut changer avec une configuration différente.
En dehors de la chaine de synchronisation, ma découverte de SyncML m’a permis de tester la synchronisation on-line en ouvrant un compte gratuitement sur le site Mobical [*]. Dans ce contexte la synchronisation marche parfaitement. Dans le paramétrage de SyncML du Nokia, soit on veut pouvoir effectuer une synchronisation de n’importe où en indiquant un point d’accès GPRS, soit on synchronise uniquement chez soi pour ne rien payer on utilise sa connexion adsl.
Au bout du compte, pour avoir le mobile synchronisé avec Evolution et le Palm, j’étais obligé de faire la manipulation suivante :
Synchro entre le Palm et Evolution.
Redémarrage du PC sous Windows en dual boot.
Synchro de mon Palm avec Outlook (conduites Outlook sans passer par Palm Desktop)
Synchro Nokia avec PC Suite en ayant paramétré Outlook comme [PIM]
Ouf ! Mon espoir d’abandonner Windows pour la synchronisation ou la connectivité aux appareils en prend un coup. De plus vous noterez que pour l’instant Thunderbird n’est pas concerné du tout.
J’en étais resté à ce point il y a 4 mois lorsque récemment j’ai commencé à me servir de Google Agenda (Google Calendar). En déplacement j’ai mon agenda normalement sur le Palm ou le mobile, mais dans Evolution j’ai commencé à afficher certains agendas publics qui m’intéressent. Ces agendas utilisant le standard ICalendar, le seul moyen de les visualiser à l’extérieur est d’utiliser un calendrier permettant de les utiliser. Plusieurs solutions existent mais étant déjà utilisateur des services Google et de sa page Google personnalisée, je veux utiliser dans ce cadre l’Agenda Google qui permet d’afficher des calendriers publics en plus de son propre calendrier. Oui, mais comment ne pas tout avoir à ressaisir ? Comme indiqué en entête, en faisant des recherches sur ce sujet je suis tombé sur cet article, Synchronisation Google Calendar avec Evolution (Etch) où l’auteur cite l’article à la source de sa révélation.
Je vous laisse lire les articles de ces deux liens. En résumé, le site ScheduleWorld est une application serveur pour les mobiles, gratuite (pour combien de temps ?) et basée sur Funambol. Elle fournit une source globale de synchronisation des agendas, des contacts, des tâches et notes pour un grand nombre de mobiles, PDA et logiciels supportant SyncML. La synchronisation entre ScheduleWorld et Evolution demande l’installation de l’utilitaire en ligne de commande SyncEvolution, spécialement conçu pour synchroniser avec un serveur de type Funambol utilisant SyncML comme ScheduleWorld.
Exemple de synchronisation entre Evolution et ScheduleWorld
Le site propose une interface permettant de gérer directement l’agenda et les tâches en ligne, mais aucune pour les contacts. Mais nous n’en avons pas besoin car nous utiliserons le serveur uniquement comme interface entre nos différents PIM.
L’intérêt pour moi est triple :
pouvoir utiliser ce serveur comme source de synchronisation avec le Nokia au lieu de Mobical et ainsi intégrer le mobile à la chaine de synchronisation
ScheduleWorld supporte la synchronisation directement avec l’Agenda Google. Si vous saisissez un évènement dans Google Calendar et demandez une synchronisation de votre mobile ou d’Evolution, l’évènement est directement récupéré !
Pouvoir enfin intégrer Thunderbird à la chaine de synchronisation (contacts). Il existe deux plugins SyncML pour Thunderbird, TSync listé dans les clients compatibles sur le site de ScheduleWorld, et SyncSW, tout récent mais avec des mises à jour tout les jours où presque en ce moment.
Résultat des courses
La synchronisation des contacts pose le plus de problèmes. Les limitations proviennent des différents PIM utilisés. J’ai relevé les problèmes suivants :
Certains PIM gèrent plus d’informations que d’autres ou gèrent des informations qui sont propriétaires et ne sont pas récupérées par les autres PIM. Plus vous avez de PIM intervenants dans votre chaine, plus ce problème prend de l’importance. Par exemple dans ma chaine de synchronisation, Evolution est le plus riche, mais certains des champs disponibles n’existent pas dans la norme vCard.
Le point précédent ne serait pas un problème si tous les outils de synchronisation savaient fusionner leur informations avec celles qu’ils mettent à jour au lieu de les écraser. C’est ce qui se passe pour l’instant avec SyncSW pour Thunderbird. Au moment où je l’ai testé, lorsque une modification provient d’un contact Thunderbird, tous les champs non gérés par ce dernier sont effacés dans les autres PIM après synchronisation. J’ai averti l’auteur qui doit corriger ce problème.
Certains PIM contiennent quelque bugs. Par exemple bien que le Nokia gère les types d’email Autre, Travail et Domicile, lorsqu’un contact est récupéré dans Evolution suite à une modification dans le Nokia, les trois emails se retrouvent avec le type Autre dans Evolution.

Bugs et/ou limitations (non exhaustif).
Voici par exemple le tableau qui m’a servi à récapituler mes observations :
| vCard2.1 (Nokia/Palm) | vCard3.0 (Evol.) | Evolution | Nokia 7650 | Palm T3 [51] | Thunderbird |
| Téléphone | |||||
| TEL ;VOICE | TEL ;TYPE=VOICE | Autre tél | Tél. | ||
| TEL ;VOICE;HOME | TEL ;TYPE=HOME ;TYPE=VOICE | Tél (domicile) | Tél (domicile) | Domicile [52] [53] | |
| TEL ;VOICE;WORK | TEL ;TYPE=WORK ;TYPE=VOICE | Tél (bureau) | Tél (travail) | Bureau [52] [53] | Travail |
| TEL ;CELL | TEL ;TYPE=CELL | Tél portable | Portable | Mobile [52] [53] | Portable |
| TEL ;CELL;HOME | Portable (privé) | ||||
| TEL ;CELL;WORK | Portable (prof.) | ||||
| TEL ;FAX | TEL ;TYPE=FAX | Autre fax | Fax | Fax (convertit de TEL ;FAX;WORK) [52] [53] | |
| TEL ;FAX;HOME | TEL ;TYPE=HOME ;TYPE=FAX | Fax (domicile) | Fax (domicile) | ||
| TEL ;FAX;WORK | TEL ;TYPE=WORK ;TYPE=FAX | Fax (bureau) | Fax (travail) | ||
| TEL ;TYPE= "X-EVOLUTION-COMPANY" | Tél (société) | ||||
| TEL ;TYPE=PREF | Tél principal | ||||
| Adresse électronique | |||||
| EMAIL ;TYPE=OTHER | Autre tél | E-mail [55] [56] | E-mail (convertit en EMAIL ;INTERNET de EMAIL) [54] | ||
| EMAIL ;HOME | EMAIL ;TYPE=HOME | Domicile | E-mail (domicile) [55] [56] | Adresse alternative | |
| EMAIL ;WORK | EMAIL ;TYPE=WORK | Bureau | E-mail (travail) [55] [56] | Adresse electronique | |
| Divers | |||||
| ORG | ORG | Société | Entreprise | Société | Société |
| BDAY | BDAY | Date naissance | Anniversaire | ||
| X-EVOLUTION- ANNIVERSARY | Anniversaire | ||||
| URL | URL | Site internet | Adresse URL | ||
| URL ;HOME | Adresse URL (dom) | ||||
| URL ;WORK | Adresse URL (trav) | Site Web | |||
| NOTE | NOTE | Notes | Notes | ||
| NICKNAME | Surnom |
Pour faire fonctionner l’ensemble sans trop de problèmes, j’ai du m’astreindre à quelques règles :
Créer les enregistrements (notamment les contacts) de préférence en local dans Evolution.
Si malgré tout des contacts sont créés en dehors d’Evolution, les corriger et éditer ensuite uniquement dans Evolution
Eviter d’utiliser des champs “trop exotique” si on peut s’en passer.
Le point important est de choisir un logiciel PIM de référence pour modifier des enregistrements pour éviter la propagation d’erreurs. Ne vous servez des autres PIM qu’en visualisation ou éventuellement pour créer de nouveaux enregistrements si vous ne pouvez réellement pas le faire dans le PIM principal.
Ce n’est pas encore parfait, mais pour des besoins non professionnels et en utilisant uniquement des logiciels gratuits et/ou Open Source, je n’aurai pas imaginé lors de mon passage à Linux parvenir à un tel résultat.
[PIM] Personal Information Manager
[SyncML] SyncML : Langage de synchronisation de données (calendrier, agendas…) entre appareils portables et postes fixes, basé sur XML
[1] Site indisponible, voir PDF joint
[*] Mon propre article listant les liens pour le partage de l’accès Internet de son PC sous linux avec le Nokia en Bluetooth
[*] Article succinct en français sur Mobical
[51] Ne synchronise qu’une seule adresse postale (au choix bureau, domicile ou autre)
[52] Téléphones : ne synchronise que les SLOT 1 à 4
[53] Le téléphone Slot 1 se met automatiquement en préféré lors d’une synchro vers Evolution
[55] Lors d’une mise à jour depuis le Nokia, toutes les adresses email arrivant dans Evolution sont de type Autre
[56] Bien que les trois types d’emails soient gérés, seul les slot 1 et 2 sont synchronisés
[54] Email : ne synchronise que Slot 1 (autre)
11 Messages de forum