Bluetooth, Nokia e63 et Mandrivalinux : la synchronisation

Si vous espériez mettre MandrivaLinux sur votre smartphone, vous vous êtes trompé d’article. J’utilise Nokia PC Suite sous windows pour synchroniser mes contacts et mon agenda, récupérer mes photos... Nous allons essayer de faire pareil sous linux...

Auparavant vous avez lu, retenu et réussi tout ce qui est écrit dans la première partie.

prérequis

Nous aurons besoin de l’outil graphique multisync et des plugins de "opensync" suivant :

 libopensync-plugin-syncml (pour dialoguer avec notre nokia)
 libopensync-plugin-sunbird (Seulement si vous utilisez l’agenda Mozilla Sunbird)
 libopensync-plugin-evolution2 (Seulement si vous utilisez le logiciel Evolution)
 libopensync-plugin-kdepim (Seulement si vous utilisez kontakt, korganiser, kmail...)
 libopensync-plugin-google-calendar (Seulement si vous utilisez google calendar)
 libopensync-plugin-outlook (euh, non ! Là je blague, hein !)

Utilisez le gestionnaire logiciel ou urpmi comme indiqué dans la première partie

Collecte des informations utiles

Vous vous souvenez donc de notre utilitaire sdptool browse. On le relance mais cette fois on s’intéresse au service suivant :

Service Name: SyncMLClient
...
...
    Channel: 10
  "OBEX" (0x0008)

C’est celui-là que l’on va exploiter maintenant.

Toutes les manipulations qui suivent permettent de connecter des informations dans votre Nokia. Mais si vous avez le même que moi, vous pouvez vous dispenser de cette étape :ce sera les mêmes valeurs.

Prenez donc en main votre téléphone. Bouton "maison", puis icone "outils" puis icone "sync". Sélectionnez "PC Suite" puis bouton "options"—> "Modifier mode". On ne va rien modifier ! Tenez-le vous pour dit. Le premier qui change quelque chose, il se démerde ensuite (par contre, vous pouvez clôner ce mode si ça vous chante : ça fait une sauvegarde rapide). Sélectionnez "parametres de connexion". Vous devriez lire :

 Version du serveur 1.1


 Porteuse de données Bluetooth
 Adresse de l’hôte PC Suite
 nom d’utilisateur Aucun
 mot de passe ****
 Autoriser dmdes sync Oui
 Accepter demandes sync Oui

Porteuse de données Bluetooth nous rassure. L’adresse de l’hôte, on devra le copier exactement à l’identique dans notre configuration sur notre PC. Qu’il n’y ait pas de nom d’utilisateur ne doit pas vous inquiéter : on rame suffisamment sans s’ajouter des épreuves supplémentaires. Par contre Autoriser et Accepter doivent être à Oui (c’est pour synchroniser dans un sens ou dans l’autre.

Revenons à la page d’avant et sélectionnons "Applications". Vous avez alors plusieurs applications : Contacts, Agenda, Notes, etc... Dans chacune de ces applications, nous irons chercher la valeur de "base de données distante" soit :

 Contacts pour l’application Contacts
 Calendar pour l’application Agenda
 Notes pour l’application Notes
 ... (moi je m’arrête-là mais si vous voulez creuser plus loin, voici la piste)

Donc nous avons maintenant collecté tout ce dont nous avons besoin pour remplir notre outil de synchronisation.

msynctool ou multisync

msynctool et multisync permettent tous deux de préparer et effectuer notre synchronisation. Le premier fonctionne en ligne de commande donc plus rébarbatif MAIS avec des messages d’erreur plus complet. Le second est en interface graphique, donc plus facile. Ce qui sera fait avec msynctool sera visible dans multisync et inversement.

Ajoutons un groupe et choisissons lui un nom évocateur : masynchro.

msynctool --addgroup masynchro

Avec l’outil graphique "multisync" (que l’on trouve dans le menu OUTILS->Plus->multisync), utilisez le bouton "+" et donnez-lui un nom.

Ensuite, ajoutons-lui notre liaison bluetooth->Nokia

msynctool --addmember masynchro syncml-obex-client

ou en graphique : group masynchro -> modifier -> "Add member" et sélectionnez "syncml-obex-client

Puis configurons-le :

msynctool --configure masynchro 1

ou le bouton "modifier" de l’application mutisync.

Vous devez y mettre tout ce que nous avons collecté donc remplacer l’adresse bluetooth par celle de votre Nokia, le "channel", l’"identifier", le "contact_db", le "calendar_db" :

<?xml version="1.0"?>
<config>
  <!-- (Only for bluetooth) The bluetooth address if the bluetooth mode is selected -->
  <bluetooth_address>00:00:00:00:00:00</bluetooth_address>
  
  <!-- (Only for bluetooth) The bluetooth channel to use. <span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+c2RwdG9vbCBicm93c2UgJE1BQzwvY29kZT4="></span> to search for the correct channel -->
  <bluetooth_channel>10</bluetooth_channel>
  
  <!-- (Only for USB) The usb interface number of the SYNCML-SYNC target. use syncml-obex-client -u (you will need access to the USB raw device) to find it. -->
  <interface>0</interface>
  
  <!-- The string that the plugin will use to identify itself. Some devices need a special string here. -->
  <identifier>PC Suite</identifier>
  
  <!-- The syncml version to use: 0 for 1.0, 1 for 1.1 and 2 for 1.2 -->
  <version>1</version>
  
  <!-- if the plugin should use wbxml -->
  <wbxml>1</wbxml>
  
  <!-- The username to use. Leave empty to not require a username -->
  <username></username>
  
  <!-- the password for the username -->
  <password></password>
  
  <!-- sets the connection type to use. 5 means obex over usb, 2 means obex over bluetooth -->
  <type>2</type>
  
  <!-- If wbxml is enabled, defines wether the wbxml should use string tables -->
  <usestringtable>1</usestringtable>
  
  <!-- Never send ADD command, but send REPLACE (not needed normally) -->
  <onlyreplace>0</onlyreplace>

  <!-- Workaround around for mobile phones which only use local timestamps and _no_ UTC timestamps! -->
  <onlyLocaltime>0</onlyLocaltime>
  
  <!-- Sets the maximum allowed size in bytes of incoming messages (some device need this option set). Example: 10000 -->
  <recvLimit>0</recvLimit>
  
  <maxObjSize>0</maxObjSize>
  
  <!-- The name of the contacts db. Must be the same as the phones sends -->
  <contact_db>Contacts</contact_db>
  
  <!-- The name of the calendar db. Must be the same as the phones sends -->
  <calendar_db>Calendar</calendar_db>
  
  <!-- The name of the note db. Must be the same as the phones sends -->
  <note_db></note_db>
</config>

ATTENTION : une majuscule oubliée et c’est la panne !

Vous avez noté que je ne synchronise pas les notes mais vous pouvez essayer. J’ai juste vu des forums où les utilisateurs disaient que ça empêchait la synchronisation de se terminer. Comme je n’utilise pas trop les notes, je ne prends pas le risque.

Ensuite, il faut ajouter un deuxième membre : celui de votre logiciel à synchroniser donc

msynctool --addmember masynchro evo2-sync

pour Evolution.

Remplacez Evo2-sync par kdepim-sync pour kontact & korganiser...Etc pour un autre (voir opensync-plugin cité dans les pré-requis).

Généralement ce deuxième membre n’a pas besoin de configuration. Vous êtes maintenant prêt à essayer.

Synchro !!!

Avec msynctool, vous taperez :

msynctool sync masynchro

L’application graphique a un bouton "Actualiser" qui fait la même chose.

Cas n°1 : ça marche. Bravo !

Cas n°2 : ça démarre mais ça plante. testez sans les notes.

Cas n°3 : décidément, non ! ça ne va pas. Vérifiez TOUT puis éteignez votre Nokia et rallumez-le. Que ce soit sous Windows (avec Nokia PC suite) ou Linux, après plusieurs essais, la liaison automatisée est bloquée : il faut supprimer la liaison sur les 2 appareils (ou plutôt la mémoire de cette liaison : supprimer dans la liste des périphériques connus et autorisés), redémarrer le Nokia, reprendre à zéro à partir de l’échange de code numérique et ressayer. Bonne nuit blanche... Utilisez de préférence l’outil non graphique msynctool qui sera plus bavard pendant la synchronisation.

Conclusion

Nous avons synchronisé notre Nokia avec notre Mandriva Linux.


Post-Scriptum :

J’ai utilisé pour arriver à mes fins plusieurs tutoriaux plus ou moins adaptés à mon cas :
Au départ, celui-là qui s’est vite montré inopérant (gnokii ne va pas avec mon modèle de téléphone et kitchensync n’était pas disponible pour mdv2010 x86_64)

http://davesource.com/Solutions/200... pour la partie montage du système de fichier (sauf fstab qui ne fonctionnait pas de la même façon)
http://ubuntuforums.org/showthread.... pour la partie synchronisation Evolution sauf "calendar" trouvé plutôt ici et également dans mes recherches celui-ci