Le blog du wawa

octobre 27, 2006

phpBB3 et Jabber

Classé dans : Jabber — wawax @ 12:31

En faisait un tour par hasard sur le forum de phpBB, je me suis aperçu que la future version 3 du célèbre moteur de forum intégrait un support de Jabber. Celui-ci est utilisé pour permettre d’envoyer des messages (un peu comme les messages privés) directement dans votre client de messagerie instantané.

Comment ça marche ? C’est très simple.

  • On configure dans l’interface d’administration de phpBB3 la partie qui s’appelle “Jabber Settings” :

Menu Jabber Admin

  • Il n’y a pas beaucoup de paramètes à configurer : le serveur, les infos sur le compte à utiliser, ainsi que le nombre de messages à envoyer en une fois :

Configuration Jabber

  • ensuite on va dans son propre compte utilisateur, et on entre son jabberid :

Profil Jabber de l’utilisateur

  • une fois cela fait, il suffit par exemple d’aller voir le profil de l’utilisateur auquel on veut envoyer un message :

Bouton Jabber

  • et de cliquer sur le bouton Jabber. Une fenêtre s’ouvre, qui vous demande le texte à sairir :

Envoyer un message

  • puis enfin vous recevez votre message sur votre client préféré :

Message Jabber reçu

Voilà . Bon c’est un début car on pourrait imaginer une notification d’un message privé ainsi que des alertes sur des nouveaux posts dans un thread que l’on suit etc etc…

Mais c’est déjà un début.

A noter qu’il y a aussi un support de l’annuaire LDAP (très minimaliste, mais qui fonctionne).

octobre 1, 2006

Adium 1.0 et Jabber

Classé dans : Jabber — wawax @ 9:04

J’ai toujours été un fan d’Adium. Sur Mac OS X, je trouve que c’est le client qui est le plus agréable à utiliser, et qui a la plus belle interface. Il est multi-protocole et gère jabber depuis déjà un bon moment. Par contre, c’est assez limité, comme par exemple l’impossibilité de créer un compte directement via ce client (cette fonctionnalité est implémentée dans la beta 14 d’Adium 1.0).
L’avenir de Jabber dans Adium s’annonce radieux, puisque 2 projets du Google Summer of code sont en rapport avec l’appli :

  • intégrer l’API Java Smack (de Jive) pour la gestion Jabber
  • intégrer la librairie Jingle (pour la voix et la vidéo)

A suivre de près donc (ici par exmple : http://www.adiumx.com/soc/) ;)

Sinon dans la 1.0b14 on peut diffuser facilement les morceaux que l’on écoute sur iTune (MAJ : il semble, d’après le commentaire de Sir_MesPompes que c’est mal codé).

  • dans Adium on indique dans le fenêtre de choix du statut que l’on veut utiliser iTunes :

wawa-adium-itunes.png

  • dans Psi, lorsque l’on regarde les informations de l’utilisateur, on voit apparaître ce qu’il écoute en ce moment :

wawa-usertune-psi.png
Voilà, facile non ? ;)

septembre 25, 2006

Intégration de MUCKl avec Dotclear pour RollerQuad.net

Classé dans : Jabber — wawax @ 9:19

Ca fait déjà quelque temps que je voulais monter un chat pour notre communauté de rollerquadeurs. En effet, je trouve que c’est très complémentaire d’un un site et un forum : on peut répondre plus rapidement aux questions, et ça permet de se fixer des rendez vous assez facilement, et finalement d’apprendre à se connaître.

J’ai cherché ce que je pouvais utiliser et deux choses j’avais 2 solutions :

  • IRC : je ne suis pas un fan, donc j’ai laissé tomber
  • un salon de discussion Jabber : il apporte de nombreux avantages, dont l’historisation des messages.

Une fois le choix effectué, il fallait trouver le logiciel qui me permette de mettre en place ce chat. J’ai donc opté pour MUCKl qui permet à des personnes n’ayant pas de compte Jabber de prendre part à un salon de discussion. Celui-ci repose sur la librairie Javascript JsJaC et l’utilisation du mode SASL anonmye.Sur mon domaine perso j’ai installé un serveur ejabberd et MUCKl pour faire des tests (voir mon tuto sur le wiki de jabberfr.org). J’ai commencé à diffuser l’adresse autour de moi, et je me suis aperçu que cela plaisait, et que les gens revenaient régulièrement : j’ai décidé de faire un plugin pour dotclear (le moteur de blog qui propulse RollerQuad.net) afin que l’on puisse directement se logguer sur le chat via le site.

 

MUCKl_Dotclear

Je posterai le code de mon plugin une fois que celui-ci sera finalisé (pour l’instant ça ne marche que sur Firefox).

J’ai enfin écrit un petit manuel d’utilisation de MUCKl, afin que les gens qui vont utiliser notre chat comprennent bien comment ça marche (même si c’est pas compliqué).

J’espère qu’une fois que les gens prendront l’habitude de venir sur le chat, je vais pouvoir les convaincre d’utiliser jabber (pour certains c’est déjà fait).

août 8, 2006

Intégrer Jabber dans le processus de développement d’un logiciel

Classé dans : Jabber — wawax @ 9:46

Il y a quelques mois, j’avais commencé à regarder s’il existait des solutions pour apporter la fonctionnalité “messagerie instantanée & présence” à mon environnement de développement habituel : Eclipse. J’étais tombé sur Eclipse Communication Framework, qui permettait de faire du travail collaboratif directement dans l’IDE.

Voilà donc je me suis motivé et j’ai testé un peu pour voir.

La plate-forme

Tous les logiciels sont installés sur un portable Dell sous Debian testing.

L’annuaire LDAP est un OpenLDAP 2.3.24, le serveur Jabber est Wildfire 3.0.1 et Flyspray est la version 0.9.8 (la 0.9.9 vient de sortir…).

  • l’annuaire LDAP : c’est lu qui centralise la gestion des utilisateurs et des groupes. J’ai réalisé un DIT très simple
    1. ou=users,dc=wawax,dc=org pour stocker les utilisateurs
    2. ou=groups,dc=wawax,dc=org pour stocker les groupes

LDAP_DIT

  • le serveur Jabber : j’ai pris Wildfire, car il marche bien, et est facile à configurer. J’ai activé le support LDAP via le fichier de config xml. Vous pourrez trouver un résumé de mes manips sur le wiki de JabberFR .

Users_Wildfire

ECF2

  • le logiciel de bugtracking : j’ai pris Flyspray, qui supporte Jabber pour les créations de comptes et les notifications.

Le but recherché

Je suis persuadé que d’ici quelques années, on utilisera Jabber pour le développement de projets informatiques. En effet de plus en plus de logiciels sont développés par des équipes qui ne se trouvent pas physiquement au même endroit. Imaginez cinq minutes que vous puissiez :

  • travailler en envoyant aux autre développeurs par exemple les logs de votre serveur d’appli directement depuis Eclipse en faisant clic droit -> envoyer à ?
  • programmer à plusieurs sur le même fichier (pour l’extreme programming) ?
  • recevoir les notifications de rapports de bugs directement dans votre IDE ?
  • avoir un tabeau blanc entre développeurs/concepteurs pour parler architecture ?

C’est justement ce que je cherche à tester, même si je suis conscient qu’à l’heure actuelle on en est encore pas là ;)

Résultats

Il y a des choses qui marchent (heureusement).

L’intégration Wildfire + LDAP se fait sans encombre. Une fois ECF installé, on se logge et on récupère tous ses concacts, classés par groupe. Pour mes tests j’ai fait des groupes par projet, mais il faudrait voir si c’est très judicieux…

J’ai remarqué que les connexions ECF ne fonctionnent pas parfaîtement. Parfois cela ne se connecte pas du tout, et je suis obligé de relancer le serveur Jabber…

Au niveau de flyspray, là c’est plus mitigé. L’outil marche et remplit bien son rôle de bugtracker, mais j’ai remarqué les points suivants :

  • il n’est pas possible de l’intégrer avec LDAP. C’est dommage, car cela nécessite de rajouter les utilisateurs à la main dans l’interface du logiciel, en précisant leurs adresses Jabber. On aurait pu tout stocker dans l’entrée utilisateur d’Open LDAP…
  • la confirmation de création de compte via Jabber marche bien
  • les envois de notifications ne fonctionnent pas comme je l’avais imaginé. En effet, elles ne se font pas en temps réel, mais doivent être programmées (par exemple dans la cron) : une page php permet de parcourir toutes les notifications en attente, et de les envoyer en messages jabber.

Réflexions concernant les informations dans LDAP

Je me pose des questions sur la manière de stocker les groupes dans l’annuaire LDAP. Pour l’instant j’ai fait 1 projet = 1 groupe… cela peut vite devenir le foutoir.

De même, le client ECF est bien loin d’un client Jabber (Psi, Gajim, etc..) : ses fonctionnalités sont très limitées (chat). Alors peut être faudrait-il penser à créer des jabberid spéciaux pour le travaill collaboratif. Chacun est libre d’utiliser un autre compte pour son usage personnel ou professionnel. Personnellement je préfererais avoir un jabberid spécialement pour le code, mais je connais d’autres personnes qui pensent justement l’inverse…

Avancées à venir

  • Concernant Wildfire, la gestion de l’annuaire est déjà bonne, donc pas grand chose de plus à espèrer.

Conclusion

A l’heure actuelle, l’intégration de tous les logiciels pré-cités est encore assez faible. Ce qu’il manque c’est le support de LDAP dans Flyspray : on aurait une administration centralisée des utilisateurs dans l’annuaire, ce qui simplifierait beaucoup l’exploitation :)

ECF mérite que je m’y penche plus sérieusement. Le but de mes tests était plus de voir que cela pouvait fonctionner que de parcourir toutes les fonctionnalités.

Pour finir, je dirais que je pense qu’il y a un avenir pour une telle intégration… que l’on pourrait complèter avec celle d’un blog (par exemple wordpress + le plugin pour recevoir des notifications par Jabber).

Publié sur WordPress.