Table des matières

, ,

Synchroniser ses données Kontact grâce à SyncML

Ce tutoriel décrit comment synchroniser les données personnelles gérées par Kontact avec des ressources accessibles à travers le protocole SyncML. Depuis KDE 4, l'accès aux données est du ressort d'Akonadi, Kontact n'étant plus qu'un client permettant de traiter les données. Synchroniser les données manipulées à travers Kontact, revient donc à synchroniser des ressources gérées par Akonadi.

Position du problème

Akonadi permet de travailler avec des ressources externes ce qui le conduit nécessairement à gérer des problèmes de synchronisation entre les copies locales de ces données et les ressources réelles. Mais Akonadi ne sait pas (encore ?) synchroniser une ressource qu'il gère avec une ressource distante accessible à travers le protocole normalisé SyncML.

Bien que Kontact soit utilisable sous Gnome (tout comme Evolution est utilisable sous KDE), nous allons supposer que nous utilisons Kontact sous KDE et que le système est configuré pour n'exploiter que des sessions KDE. En quelque sorte, nous allons partir du principe que nous travaillons sous Kubuntu…

Pré-requis

Installer syncevolution pour KDE

Nous allons installer un client SyncML capable de prendre en charge des ressources Akonadi. À l'heure actuelle (oct 2015), syncevolution est compatible avec KDE. Les développements jadis expérimentaux ont été intégrés aux paquetages standards.

installer les paquetages nécessaires

$ sudo apt-get install syncevolution syncevolution-libs-kde sync-ui

Accepter les dépendances.

Si vous rencontrez des problèmes d'intégration avec kwallet, il sera nécessaire d'installer également le trousseau de clés de Gnome. Celui-ci gérera les mots de passes des comptes sur les serveurs SyncML que vous utiliserez.

$ sudo apt-get install gnome-keyring

Configuration de la synchronisation

Cette configuration est propre à chaque utilisatrice/teur et n'affecte que des fichiers auxquels elle/il à tous les droits d'accès (la commande sudo n'est plus nécessaire).

syncevolution permet de synchroniser plusieurs ressources à travers plusieurs serveurs. La configuration se déroule donc en deux étapes :

  1. définir les ressources Akonadi ("locales") que l'on souhaite synchroniser
  2. définir avec quelles ressources distantes ont souhaite les synchroniser

Afin de simplifier l'explication on va supposer que vous n'utilisez qu'une ressource "contacts" et qu'une ressource "calendrier" et "todo". Si vous en utilisez plusieurs, c'est que vous connaissez suffisamment Akonadi pour savoir ce que vous faites.

Définition des ressources locales par défaut

Pour voir quelles sont les ressources Akonadi reconnues par syncevolution taper les commande :

$ syncevolution --print-databases

en fin de liste, vous devriez voir apparaître quelque chose ressemblant à :

  ...
KDE Address Book = KDE Contacts = kde-contacts:
Database "akonadi" opened using driver "QMYSQL"
   akonadi_vcard_resource_0 (akonadi:?collection=8) <default>

KDE Calendar = kde-calendar:
   akonadi_ical_resource_0 (akonadi:?collection=9) <default>

KDE Task List = KDE Tasks = kde-tasks:
   akonadi_ical_resource_0 (akonadi:?collection=9) <default>

KDE Memos = kde-memos:

Prendre note des nombres figurant à droite de chaque "collection=" et les reporter dans la commande suivante :

$ syncevolution --configure \
                keyring=KDE \
                addressbook/backend=kde-contacts \
                addressbook/database=akonadi:?collection=8 \
                calendar/backend=kde-calendar \
                calendar/database=akonadi:?collection=9 \
                todo/backend=kde-tasks \
                todo/database=akonadi:?collection=9 \
                @default addressbook calendar todo

Définition de la ressource distante

Afin de simplifier la fin de configuration et l'utilisation ultérieure, il est préférable d'utiliser une interface graphique. Celle-ci peut être invoquée depuis le lanceur d'application (Sync) ou depuis la ligne de commande (sync-ui).

Les informations à fournir dépendent du serveur SyncML utilisé. Les mots de passe seront stockés dans le trousseau de clés de Gnome.

Pour illustration, voici à quoi cela ressemblerait avec un compte sur un serveur local funambol :

Première synchronisation

En général la première "syncrhonisation" correspond à l'initialisation des ressources (contact, calendrier, tâches) sur l'ordi depuis le serveur ou sur le serveur depuis l'ordi. Ce type de synchronisation fait partie du protocole SyncML. Dans l'interface graphique il porte le nom de "syncrhonisation d'urgence". Pas de quoi s'affoler…

Synchronisation ultérieures

Les synchronisations ultérieures se feront simplement en cliquant sur le bouton "Synchroniser".

Désinstallation et mise à jour

Désinstallation

Le plus simple est d'utiliser la ligne de commande :

$ sudo apt-get remove syncevolution syncevolution-libs-kde sync-ui

Mise à jour

Les paquetages standards de syncevolution étant désormais compatibles avec KDE, la mise jour se fait comme pour tout autre paquetage fourni par les dépôts standard.

Voir aussi


Contributeurs principaux : bleck.