XMPP es la cumbia

XMPP es la cumbia

Mucha gente en mi país usa la expresión “es la cumbia” para decir que algo es sorprendente, debido a que es uno de los ritmos bailables populares y mejor adaptados a nuestra idiosincrasia. Buscando un tema sobre el cual escribir, no sé por qué se me había pasado el tópico de XMPP por tanto tiempo, a pesar de que es uno de los protocolos que más utilizo en mi tiempo libre. No digo programa, porque permite ser utilizado por varios programas, tanto para escritorio, como para móvil, y en los distintos sistemas operativos conocidos por el hombre.

¿Pero qué es esto del XMPP? ¿Para qué sirve? ¿Por qué lo uso?

Son parte de las preguntas que quiero responder en esta entrada

Breve Historia de xmpp

XMPP El encuentro

Mi historia con los protocolos de mensajería instantánea se remonta quizás a la más antigua forma de comunicación conocida por un niño a fines de los 90, las salas de chat. Luego de eso pasé por años al MSN de Microsoft (2006-2013). Sin embargo, después de cerrar esa red, y de aburrirme de mi estancia en Facebook, traté de probar con protocolos libres, y durante mi autoexódo a todo lo libre decidí probar xmpp durante el año 2014 y y no he salido de ahí hasta hoy, e incluso tengo mi propio servidor personal de xmpp, que fue levantado gracias a la ayuda de mi Senpai, con lo cual puedo decir que soy dueño de mi independencia en mensajería instantánea.

Un resumen de una historia poco conocida

XMPP (Protocolo extensible de mensajería y comunicación de presencia) o también conocido como Jabber es un protocolo, es decir unos parámetros y especificaciones que permiten que dos programas diferentes (o bien dos direcciones) puedan intercambiar mensajes. Debido a su enfoque simple, su carácter libre y la extensa documentación que existe al respecto, es y ha sido adoptado por muchos programas de mensajería en algún momento de su existencia, especialmente cuando dichos programas o aplicaciones se encontraban recién partiendo y no tenían una cuota gigante del mercado, como lo fue con Facebook Messenger, Google Talk o el mismo Whatsapp.

XMPP, que primero recibió el nombre de Jabber; fue desarrollado por Jeremy Miller debido a la poca existencia de estándares para la mensajería a diferencia de lo que existía para el intercambio de e-mails. En 1999, ya tenía una demo lo suficientemente buena como para anunciarla oficialmente, por lo que se lanzó el primer servidor (y proveedor de direcciones Jabber , el cual permitía la transferencia de mensajes escritos en XML aún en activo jabber.org

En la actualidad, XMPP el protocolo se encuentra mantenido por una red de voluntarios y numerosas funcionalidades son accesibles vía plugins lo que lo hace configurable según los requerimientos del usuario/servidor.
De hecho, es posible agregarle encriptación vía otr, omemo o gnugpg, lo que lo hace una vía independiente y segura para tus propias comunicaciones.

Características y funcionamiento

Voy a ser bien poco técnico, por lo que mencionaré las características principales:

1. Es Descentralizado

Hay cientos de servidores en los cuales puedes obtener una dirección xmpp (que parece una dirección de correo electrónico), o en su defecto, si posees un nombre de dominio, puedes crear tu propio servidor. Lo bueno de esto es que no existe nadie que controle toda la información de los usuarios de xmpp, del mismo modo, si un servidor cae, el resto de la red sigue en activo. De esta forma, se puede escoger aquel servidor que tendrá tus datos.

2. Es multiplataforma

Puede usarse en todos los sistemas operativos creados por el hombre, al menos como cliente, mientras que para servidor se encuentra disponible para MacOS, Windows, GNU/Linux y Sistemas BSD. Al ser un protocolo libre, no habría muchos problemas al escribir un programa que cumpla con los requerimientos- No necesitas número telefónico, sino tu usuario/contraseña y un programa para xmpp/jabber en tu sistema operativo de cabecera.

3. Es configurable

Bueno, aquí depende un poco de las opciones que haya permitido tu servidor. Por ejemplo, la subida de archivos u otros datos. Los clientes (es decir el programa o aplicación que descargar para interactuar con el protocolo) pueden modificarse para permitir leer/recibir mensajes encriptados mediante complementos externos, o plugins escritos por sus propios desarrolladores.

Interactuando con XMPP

Servidor

Primero hay que distinguir el servidor o nodo, con el cliente o programa utilizado para conectar a la red.

La elección del servidor- que es donde obtienes tu dirección xmpp- siempre debe ser hecha a consciencia, teniendo en cuenta las siguientes variables:

1. Ubicación del Servidor. Siempre entendiendo que cada servidor tiene una legislación aplicable diferente. En este sentido si no me gusta la NSA no debería escoger un servidor localizado en Estados Unidos. Si me interesa tener la privacidad máxima, debería escoger un país con una legislación fuerte en ese aspecto.

2. Tiempo de Funcionamiento:. Mientras más viejo sea el servidor, mayor es su posibilidad de permanencia en el tiempo. Proyectos o servidores nuevos tienden a ser volátiles, por lo que pueden desaparecer de improviso.

3. Tiempo en Línea. Si el servidor pasa caído mucho tiempo, poco podrá cumplir la función para la que fue creado, por lo que mientras más cercano al 100, mayor será su porcentaje de utilidad.

De todos modos, para tener control social, siempre es bueno tratar de levantar un pequeño servidor autogestionado para ti, tus amigos cercanos o tu familia.

Aquí es posible encontrar una lista de servidores, y su año de funcionamiento. En lo personal, mi primera cuenta fue en el servidor alemán ck3kr.net, antes de tener mi servidor personal de xmpp, que es lo uso en la actualidad.

Luego de registrarse la dirección será: usuario@servidor. En mi caso son gallux@ck3kr.net y astheroth@cybercratia.cl

Clientes

Como mencioné, los clientes son aquellos programas o aplicaciones que puedes instalar en tu aparato para interactuar con la red. Hay varios, pero en lo personal, y luego de probar durante varios años, me he decantado por Pidgin, Psi+ para pc y Conversations para Android, sin perjuicio que he usado otros programas como loqui.im, para el difunto Firefox OS y que por lejos es el mejor cuidado en términos de interfaz de usuario.

Por tanto y basado en mi experiencia eminentemente personal, recomiendo:

Escritorio

Pidgin

Psi IM

Ambos programas multiplataforma para GNU/Linux y Windows. Psi+ incluso está para Haiku.

Android

Conversations El pero de este programa es que si lo descargas por Google Play tendrás que pagar, pero si usas fdroid (el catálogo de aplicaciones libres para android) es gratis.

Otros programas y aplicaciones pueden verse en este enlace.

Conclusiones

XMPP es un protocolo versátil, configurable, libre y adaptable a las necesidades del usuario. Si en realidad estás en contra de que otros como Facebook o Google controlen toda tu información, o simplemente no quieres darle tu número telefónico a nadie; está es una buena opción. Hay que tener en cuenta que todos los mensajes no quedan alojados en el servidor una vez que se entregan por lo que todo el almacenamiento de los mismo es en la memoria cache de los clientes que utilices (al menos por defecto; ya que hay un módulo que permite guardar las conversaciones en el servidor). Por tanto, los mensajes entre diferentes clientes tienden a perderse un poco. Fuera de eso es una opción económica, fiable y al alcance de cualquiera si tiene el interés de independizarse un poco de los Gigantes.

Fuentes

Comunícate Libremente
Sitio Web XMPP

Deja un comentario