Nouveautés autour d’omnipresence
Omnipresence qu’est-ce que c’est ?
Omnipresence est un logiciel dont j’ai déjà parlé indirectement ici, il s’agit du logiciel qui fait tourner Presence.jabberfr.org. Pour ceux qui ne suivent pas, il s’agit d’une petite application pour Jabber permettant d’afficher vos informations de présence Jabber sur une page web. On peut comme ça mettre une petite icône disant si on est connecté, afficher son avatar Jabber, bref plein de petites choses qui a défaut d’être très utiles sont sympathiques.
Nouveautés
Ces nouveautés ne sont pas nouvelles pour tout le monde, il s’agit en fait des améliorations que j’ai faites au cours des derniers mois.
- Intégration de PEP : j’en parlais cet été, omnipresence permet d’afficher la musique qu’on écoute, son humeur et son activité.
- Internationalisation : une grosse partie du code a été revu pour permettre la traduction de l’application. Pour l’instant seul le français et l’anglais sont disponibles. Le choix de la langue est automatique, votre client jabber et votre navigateur annoncent normalement quelle langue vous préférez.
- L’export : alors ça par contre c’est vraiment une nouveauté, vu que ça a été codé hier soir. C’est une petite fonctionnalité permettant d’intégrer plus facilement omnipresence dans vos applications.
L’export
Comme je disais donc, l’export permet d’intégrer plus facilement omnipresence dans une applications, notamment dans les applications web. Avant, pour récupérer des informations comme le message d’état, il fallait interroger la page http://presence.jabberfr.org/[hash-md5]/text-fr.txt. Si on voulait récupérer l’humeur il fallait interroger une autre page, et ainsi de suite. Donc si on voulait avoir toutes les informations possibles il fallait demander pleins de page. Maintenant on peut demander une page d’export qui permet d’avoir toutes ces informations dans un format exploitable.
Pour l’instant 3 types d’exports sont supportés :
- L’export XML : http://presence.jabberfr.org/[hash-md5]/export/xml.xml . Cela donne les informations dans un petit fichier XML, facilement lisible dans n’importe quel langage de programmation.
- L’export JSON : http://presence.jabberfr.org/[hash-md5]/export/json , également lisible avec à peu près n’importe quel langage.
- L’export Javascript : http://presence.jabberfr.org/[hash-md5]/export/javascript.js c’est comme l’export en JSON sauf que ça met la valeur directement dans une variable JavaScript, très pratique pour l’afficher avec du JavaScript ensuite.
L’export Javascript
Concrètement pour intégrer omnipresence dans une page web avec l’export javascript vous pouvez faire un truc du genre :
<script type="text/javascript" src="http://presence.jabberfr.org/[hash-md5-du-jid]/export/javascript.js"></script>
<script type="text/javascript" src="omnipresence.js"></script>
<script type="text/javascript">
op = new Omnipresence(omnipresence_data);
document.write(op.get_status());
</script>
Cela va afficher votre message d’état. Ce bout de script utilise la bibliothèque omnipresence.js, qui permet de se simplifier un peu la vie (même si elle n’a rien d’extraordinaire), l’objet Omnipresence à aussi d’autres méthodes, comme get_mood(), get_tune() et get_activity().
Widget Jabber pour wordpress
A la base je voulais faire un article juste pour parler de ce widget, je me rends compte que j’ai pas mal divergé de mon but initial, mais c’est pas forcément un mal.
Il y’a déjà quelques temps j’avais fait un petit plugin pour afficher un widget Jabber dans wordpress, ce plugin utilise Omnipresence. Suite à un changement de la politique de Free j’ai été obligé de le recoder un peu pour qu’il utilise Javascript pour afficher les infos et plus PHP directement. Ce plugin utilise la nouvelle fonction d’export JavaScript d’omnipresence pour fonctionner. Vous pouvez le télécharger là.
A vous de jouer !
Comme vous l’avez vu intégrer omnipresence dans une page web avec du JavaScript n’a rien de compliqué, lancez-vous donc ! Cette intégration est une occasion de parler de Jabber à vos visiteurs qui ne connaissent pas encore.