Esbozo de manual de instalación de MUCKl

Contenido archivado

El contenido de la web se encuentra archivado y no se podrá crear nuevo contenido. Más información.

Falta revisar el contenido del manual, la ortografía, el estilo, formatearlo correctamente (los archivos de configuración no se distinguen bien del resto del texto, y algunas secciones en las que hay varios pasos habría que hacer que se distinguieran claramente también) y añadir algún enlace, quien quiera puede modificarlo sin problemas y sin necesidad de avisarme ni nada, esto ha sido escrito prácticamente del tirón y no es publicable hasta que no se le pegue un buen repaso, cuando tenga un rato seguiré trabajando en él.

Requisitos para instalar Muckl:

  • Acceso a un servidor de HTTP Polling (ej: ejabberd, http://servidor.com:5280/http-poll/) o HTTP Binding
  • Un servidor web que soporte reescritura de direcciones (address rewriting), en el caso de apache necesitaremos tener cargados los modulos mod_rewrite, y pueda hacer de proxy, mod_proxy (y mod_proxy_html si tenemos apache2). También necesitamos que el servidor admita archivos .htaccess y que tenga una directiva AllowOverride FileInfo en la configuración dgeneral de apache. O bien, configurar todo en la configuración general del servidor

Instalación:

1) Descomprimir

Descomprimimos MUCkl en un directorio al que tenga acceso tu servidor web.

2) Configurar el servidor web.

Este paso es el que puede traer más complicaciones. MUCKl está escrito en javascript. Debido a cuestiones de seguridad la mayoría de navegadores impiden que javascript tenga acceso a datos externos al dominio desde el que ha sido cargado. Los navegadores basados en Gecko (firefox, mozilla, ...) van más lejos e impiden incluso acceder a diferentes puertos del mismo dominio.

Para poder acceder al servidor de HTTP Polling que queremos utilizar (ej: http://jabberes.org:5280/http-poll/), si hemos descomprimido el MUCKl en www.miservidor.com/MUCKl/ debemos hacer que MUCKl pueda acceder al servidor HTTP Polling a través de www.miservidor.com/MUCKl/http-poll/ , por ejemplo, hemos de escribir una regla de reescritura que redireccione las peticiones de www.miservidor.com/MUCKl/http-poll/ a http://jabberes.org:5280/http-poll/

Usando apache esto se consigue mediante los siguientes pasos:

  1. Asegurate que mod_rewrite y mod_proxy (además de mod_proxy_html para apache2) están activados, si el servidor no es tuyo puedes preguntarselo a tu proveedor.
  2. Asegurate de tu servidor hace caso de los archivos .htaccess , para esto puedes crear dentro del directorio del MUCl un fichero .htaccess erroneo, que contenga por ejemplo la frase "hola mundo". Si entonces intentas acceder al MUCKl y el servidor te responde "Internal Server Error" es que funciona. Una vez comprobado elimina el fichero erroneo.
  3. Escribe una regla de redirección en el directorio donde has instalado el MUCKl, esto se consigue creando un fichero .htaccess (esta vez correcto) que contenga (obtenido de http://wiki.jabberfr.org/Installer_MUCKl_EJabberd):


    AddDefaultCharset UTF-8
    Options +MultiViews
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule http-poll/ http://miservidor.com:5280/http-poll/ [P]
    </IfModule>


    en nuestro caso de ejemplo en el que usamos jabberes como servidor de HTTP-Polling sería:


    AddDefaultCharset UTF-8
    Options +MultiViews
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule http-poll/ http://jabberes.org:5280/http-poll/ [P]
    </IfModule>

3) Configurar la cuenta jabber.

Para realizar este paso necesitamos un cliente jabber (por ejemplo gajim, disponible tanto para windows y linux, falta algo para Mac OS X).

Seguimos algún manual y creamos una cuenta que será la que utilizará MUCKl con todos los que se conecten utilizándolo.

Si nuestro servidor Jabber soporta SASL anonimo no sería necesario crear una cuenta, sino uqe se le puede dejar usarle, de forma que cree cuentas aleatorias y las borre.

4) Configurar la sala de charla.

Utilizamos una cuenta jabber diferente que será el propietario de la sala. Para crear la sala simplemente entramos en ella utilizando un cliente como Gajim o tkabber para configurarla (explicado en otro manual), asegurate de no hacer la sala privada, solo accesible por invitación, ni protegida por password, ya que MUCKl no soporta estas características.

5) Configurar MUCKl.

Ahora que tenemos todo lo que se necesita para hacerlo funcionar, vamos a configurar el MUCKl propiamente dicho. Para hacer esto modificamos el archivo www.miservidor.com/MUCKl/config.js



/* BACKENDTYPE - the type of backend to be used
*
* Either 'polling' for HTTP Polling
* Or 'binding' for HTTP Binding
*/
//var BACKENDTYPE = 'binding'; <- comentamos esta linea
var BACKENDTYPE = 'polling'; // <- le decimos al MUCKl que utilice http-polling para conectarse. Si el servidor jabber soporta binding, activalo en vez de polling


/* 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/"; // <- la direccion de nuestro servidor para acceder al servicio de http-polling


var XMPPDOMAIN = "jabberes.org"; // <- Dominio del servidor jabber que utilizaremos


var MUCKLJID = "nick"; // Nombre del usuario que hemos creado para el MUCKl
var MUCKLPASS = "contraseña"; // Contraseña del usuario.

/* ROOMS
*
* Which chat room to join
*
* [refers to step 4 of installation instructions]
*/


var ROOMS =
[
{
name:'sala_que_hemos_creado',
description:'Descripcion de la sala',
server:'conf.jabberes.org' // Dirección del servicio de salas de charla.
}

{
name:'otra_sala_que_hemos_creado',
description:'Descripcion de la otra sala',
server:'conf.jabberes.org' // Dirección del servicio de salas de charla.
logo: 'http://zeank.darktech.org/spongebob.png' // Si quieres que se muestre un logo con esta sala de charla.
}
];


/* CONFERENCENOHIST
* whether to not show room history upon joining
*/
var CONFERENCENOHIST = true; // true si quieres que aparezca lo último que se ha dicho en la sala antes de que te conectas, sino false.


var timerval = 2000; // Intervalo de actualización del chat en milisegundos

Créditos

Este manual ha sido escrito tomando información del archivo README del propio MUCKl y del wiki de jabberfr: http://wiki.jabberfr.org/Installer_MUCKl_EJabberd , hay muchas partes que están tomadas literalmente y simplemente traducidas.