Manel's picture

Jabber + gTalk + MSN con el mismo cliente y con acceso Web

Jabber y gtalk vía Web:

Motivación: "No me fío un pelo de los servicios gratuitos que me ofrecen empresas privadas".

Objetivo:

- comunicarme con mis amigos de gtalk, jabber y MSN.
- No usar ningún servidor Jabber externo.
- No crear ninguna cuenta gmail.
- No necesitar instalar ningún cliente (quiero usar mi Sw en cualquier sitio): usaré un cliente Web.

Necesitaremos:

- Instalar un sevidor jabber.
- Instalar un transporte MSN.
- Instalar JwChat (client Web).

01. Instalando el servidor de jabber.

apt-get install ejabberd erlang-base erlang-nox

en el bind he dado de alta:

jabber.libresoftware.com

También he ido a la página de gestión de mi dominio (libresoftware.com) y desde allí he registrado este dominio en el DNS:

jabber.libresoftware.com.

Pondré como Host de ejabberd este mismo: jabber.libresoftware.com

También creo el usuario administrador del mismo.

Accedo a la interfaz Web de configuración para ver que todo va bien:

http://jabber.libresoftware.com:5280

# OJO: el usuario es el que hemos indicado poniendo @NOMBRE_DEL_SERVER

02. Puertos

Es necesario abrir en el router el puerto: 5269 para poder establecer
comunicaciones entre servidores de jabber.

03. Cliente.

Para hacer pruebas he instalado gaim en mi Desktop y he probado a añadir
colegas de gtalk y colegas de jabber y todo OK.

04. OJO.

Importante: lo más crítico para que funcione la conexión entre
servidores externos es asegurarse que el puerso 5269 está abierto y
que en el registro del DNS está también dado de alta el servidor, que debe
coincidir con la variable hosts del fichero de configuración
de ejabberd: /etc/ejabberd/ejabberd.conf

Y una línea como esta:

"""
{mod_disco, [{extra_domains, ["users.jabber.org", "www.libresoftware.com"]}]},

"""

05. JWCHAT.

Bajamos jwchat

http://jwchat.sourceforge.net/download.shtml

En /var/www/jwchat dejamos el contenido de lo que nos hemos bajado.

Activamos los siguientes mods en apache2:

a2enmod proxy
a2enmod proxy_html
a2enmod rewrite

En /etc/apache2/conf/jwchat.conf ponemos:

<VirtualHost *>
ServerName jabber.example.com
DocumentRoot /var/www/jwchat
<Directory /var/www/jwchat>
Options +Indexes +Multiviews
</Directory>
AddDefaultCharset UTF-8
RewriteEngine on
RewriteRule http-poll/ http://127.0.0.1:5280/http-poll/ [P]
</VirtualHost>

Modificamos el fichero /var/www/jwchat/config.js con el nombre del server, en mi
caso jabber.libresoftware.com:

var SITENAME = "jabber.libresoftware.com"
var DEFAULTCONFERENCESERVER = "conference.jabber.libresoftware.com";
var DEBUGJID = "manel@nosotromismos.org"; // which user get's debug
messages

06. Transporte para MSN (otro programa Python, cómo no!!).

wget -c http://delx.cjb.net/pymsnt/tarballs/pymsnt-0.11.2.tar.gz
tar xfvz pymsnt-0.11.2.tar.gz
apt-get install python-twisted python-imaging python-crypto python-pyopenssl
cp config-example.xml config.xml

He modificado sólo esto en config.xml:

"""
<jid>www.libresoftware.com</jid>
<spooldir>/mnt/compact/PyMSNt</spooldir>>
<website>http://jabber.libresoftware.com</website>
"""

y en ejabberd, /etc/ejabberd/ejabberd.cfg:

"""
% MSN Transport
{5557, ejabberd_service, [{ip, {127, 0, 0, 1}},
{access, all},
{host, "www.libresoftware.com", [{password, "secret"}]}]},
"""

Responder

Security question, designed to stop automated spam bots
El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Etiquetas HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Saltos automáticos de líneas y de párrafos.

Más información sobre opciones de formato