Question

J'essaie de décoder un message SyncML codé WBXML depuis un Nokia N95. Ma première tentative a été d'utiliser le module python pywbxml qui englobe les appels à libwbxml. Le décodage du message avec cela donnait beaucoup de & Lt; unknown & Gt; balises et un gros morceau de binaire dans un < Collection > étiquette. J'ai essayé de lancer le contenu de & Lt; Collection & Gt; par lui-même mais cela a échoué. Y a-t-il quelque chose qui me manque?

Aussi, est-ce que quelqu'un connaît une implémentation python pure d'un analyseur wbxml? Si vous ne parvenez pas à décoder ces messages à l'aide d'une ligne de commande ou d'un outil en ligne, il serait beaucoup plus facile pour moi d'écrire mes propres ...

Était-ce utile?

La solution 2

J'ai fini par écrire un analyseur python moi-même. J'ai réussi à le faire en suivant les spécifications ici: http://www.w3.org/TR/wbxml/

Ensuite, prenez les tables de codes du cvs de horde.org.

Le site et la documentation de l'alliance mobile ouverte sont terribles. Ce projet était très éprouvant: (

Autres conseils

Curieusement, j’ai travaillé sur le même problème. Je suis sur le point d’écrire mon propre analyseur syntaxique Python WBXML pur, mais il n’est pas encore assez complet pour être utile, et j’ai très peu de temps pour y travailler maintenant.

Ceux < Inconnu > les balises peuvent être parce que pywbxml / libwbxml n'a pas le vocabulaire de balise chargé chargé. WBXML représente les balises par un numéro d'index afin d'éviter de transmettre le même nom de balise des centaines de fois, et le tableau qui mappe les numéros d'index sur les noms de balises doit être fourni séparément du document WBXML lui-même. D'un vague regard sur la source libwbxml , il semble que libwbxml a un tas de tables de balises codées en dur. Il a des tables pour SyncML 1.0-1.2; Je pense que mon Nokia E71 envoie SyncML 1.3 (dans l’affirmative, votre N95 en fait probablement aussi), ce qui semble indiquer que libwbxml ne prend pas encore en charge.

Le faire fonctionner peut être aussi simple que d’ajouter un tableau SyncML 1.3 à libwbxml. Ceci dit, la dernière fois que j'ai essayé, pywbxml ne compile pas contre le source vanwib libxbxml, vous devez donc d'abord appliquer des correctifs ... donc & "Simple &"; peut être un terme relatif.

J'ai utilisé pywbxml , Juste un patch dans pywbxml.pyx:

params.lang dans la fonction wbxml2xml autour de

scroll top