Ce blog a déménagé et parle maintenant uniquement anglais.

This blog has moved and now only speaks English.

blog.floriancargoet.com

See you there!

/home/florian

le blog de florian cargoet : du linux, du web et du logiciel libre



Modification du paquet Debian ejabberd

3 July, 2008 (16:25) | Forge Evolix | Florian Cargoet

Je l’ai dit précédemment, le paquet Debian d’ejabberd n’intègre pas la dernière version du module mod_ctlextra qui contient des commandes qui pourraient beaucoup nous aider.

En effet, ejabberdctl ne permet pas de lister les shared rosters et les utilisateurs inscrits dans ces rosters ce qui nous oblige à :

  • soit recréer les rosters et les remplir à chaque fois que l’on veut synchroniser les groupes GForge et les groupes Jabber, ce qui est très long car il faut les créer un par un (quelques secondes pour une poignée d’utilisateurs, imaginons pour 10 000 ou 100 000 utilisateurs…).
  • soit utiliser une base de données auxiliaire pour stocker cette information et ainsi de modifier que les rosters qui en ont besoin.
  • rajouter ces fonctionnalités à ejabberd. Ce n’est pas très compliqué car le code est déjà écrit et est disponible dans le repository de mod_ctlextra.

C’est la première option que j’ai utilisée dans un premier temps, ça fonctionne mais, comme prévu, c’est très long ne serait-ce que pour 5 utilisateurs dans 4 groupes…

Je dois donc me tourner vers la troisième option. J’aurais consideré un peu plus la deuxième si le code n’était pas déjà écrit car ejabberd est codé en Erlang, langage avec lequel je n’ai pas encore beaucoup d’expérience.

Pour avoir un déploiement le plus simple possible et également pour apporter ma pierre à l’édifice, j’ai choisi de modifier le paquet Debian. Si la procédure vous intéresse, elle est disponible sur le wiki.

Cette modification a été proposée en wishlist au mainteneur du paquet.

En projet : modifier le script qui créer les groupes pour tenir compte de ces nouvelles commandes.

Article précédent :
«
Article suivant :
»