Installer MUCkl avec ejabberd

De Wiki JabberFR
Aller à la navigation Aller à la recherche

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 utilisateur, qui sera utilisé par MUCkl pour se connecter au salon (par exemple MUCkl)

Configurer MUCkl

Vous pouvez choisir entre HTTP Polling ou Binding,les deux configurations sont supportées par ejabberd. Il est recommandé de choisir HTTP Binding, qui est compatible avec davantage de navigateurs (Firefox, Chrome, ..).

Éditez le fichier config.js (remplacez polling par binding si besoin):

/* 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>/http-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 grâce à un client Jabber.

Liens