Installer MUCkl avec ejabberd
MUCKl est un logiciel permettant de joindre un salon de discussion Jabber via une interface web simple, sans client particulier.
Comment installer MUCKl avec Ejabberd
Plate-forme: Debian Sarge/Ubuntu Dapper
Installer et configurer Ejabberd
Pour installer, c'est très simple :
apt-get install ejabberd
EJabberd vient déjà avec un composant http polling, dont nous aurons besoin pour MUCKl.
Editez le fichier /etc/ejabberd/ejabberd.cfg. Vérifiez que la ligne suivante est bien décommentée :
{5280, ejabberd_http, [http_poll, web_admin]}]}.
Démarrez Ejabberd (s'il n'est pas déjà démarré):
/etc/init.d/ejabberd start
Le serveur http polling est disponible dès le lancement du serveur Jabber à l'url :
http://<mon ip>:5280/http-poll/
Installer et configurer MUCKl
Téléchargez MUCKl et décompressez le dans le document root de votre serveur web. Créez avec un client Jabber un user, qui sera utilisé par MUCKl pour se connecter au salon (par exemple MUCKl)
Configurer MUCKl
Éditez le fichier config.js :
/* BACKENDTYPE - the type of backend to be used * * Either 'polling' for HTTP Polling * Or 'binding' for HTTP Binding */ //var BACKENDTYPE = 'binding'; var BACKENDTYPE = 'polling'; <- on utilise le http polling avec ejabberd
/* HTTPBASE - base URI to contact HTTP Polling service * * This must be local to your web server which serves MUCkl. If * HTTP Polling service is not local to your web server you have to * define a rewrite rule which matches this address and redirects to * the real HTTP Polling URI. * * [refers to step 2 of installation instructions] */
var HTTPBASE = "http-poll/"; <- l'url par laquelle on va accèder au service d'http polling
var XMPPDOMAIN = "myserver.com"; // domain name of jabber service to be used
var MUCKLJID = "muckl"; // username du compte qui est utilisé pour se connecter au salon var MUCKLPASS = "muckl"; // password /* ROOMS * * Which chat room to join * * [refers to step 4 of installation instructions] */
var ROOMS = [ { name:'ma room', description:'Mon salon de discussion', server:'conference.mysrver.com' <- adresse du service de salon de discussion d'ejabberd } ];
/* CONFERENCENOHIST * whether to not show room history upon joining */ var CONFERENCENOHIST = true; <- true si on veut que l'historique apparaisse lorsque l'on joint le salon
var timerval = 1000; <- intervalle de rafraichissement du chat
Configurer Apache
Le module mod_proxy_http doit etre installé et configuré :
a2enmod proxy /etc/init.d/apache2 restart
Le service d'http polling tourne (par défaut) sur le port 5280. MUCKl, quant à lui tourne sur un serveur Apache qui n'est pas sur le même port. Il faut donc indiquer que lorsque MUCKl cherche à accèder au http polling via l'url http://<ip apache>:<port apache>/<muckl dir>/htt-poll la requête doit être redirigée vers http://<ip>:5280/http-poll. Pour cela, il faut ajouter un fichier .htaccess dans le répertoire d'installation de MUCKl, contenant les informations suivantes :
AddDefaultCharset UTF-8 Options +MultiViews <IfModule mod_rewrite.c> RewriteEngine On RewriteRule http-poll/ http://localhost:5280/http-poll/ [P] </IfModule>
Voilà, MUCKl est installé, il reste juste à configurer le salon de discussion.
Configurer le salon
Il faut maintenant rendre votre salon persistant grace à un client Jabber.
Liens
- Rendre un salon de discussion persistant
- Install MUCkl (en anglais)