{"id":790,"date":"2011-02-03T23:59:40","date_gmt":"2011-02-03T22:59:40","guid":{"rendered":"http:\/\/www.stenyak.com\/?p=790"},"modified":"2011-02-03T23:59:40","modified_gmt":"2011-02-03T22:59:40","slug":"cliente-libre-de-mensajeria-en-la-nube","status":"publish","type":"post","link":"https:\/\/www.stenyak.com\/?p=790","title":{"rendered":"Cliente *libre* de mensajeria en la nube (part 1)"},"content":{"rendered":"<p>Vamos a darle un poco de ca\u00f1a al blog, que lo tengo abandonao! Voy a explicar como tener un cliente de <strong>mensajer\u00eda instant\u00e1nea en &#8220;la nube&#8221;<\/strong>. Antes de nada,\u00a0 vamos a explicar el concepto.<\/p>\n<p style=\"text-align: center;\"><a class=\"vt-p\" href=\"https:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/bushclouds.jpg\"><img loading=\"lazy\" class=\"aligncenter size-full wp-image-796\" title=\"Mario clouds are bushes!\" src=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/cloud.png\" alt=\"Mario clouds are bushes!\" width=\"501\" height=\"391\" \/><\/a><\/p>\n<h2>El Concepto<\/h2>\n<p>Tradicionalmente, nuestro usuario Joe tiene:<br \/>\n&#8211; Un chat en <a class=\"vt-p\" href=\"https:\/\/www.facebook.com\/sitetour\/chat.php\" target=\"_blank\" rel=\"noopener\">Facebook<\/a><br \/>\n&#8211; Un chat en Gmail (<a class=\"vt-p\" href=\"http:\/\/www.google.com\/talk\" target=\"_blank\" rel=\"noopener\">Google Talk<\/a>)<br \/>\n&#8211; Un chat en su PC (<a class=\"vt-p\" href=\"http:\/\/explore.live.com\/windows-live-messenger\" target=\"_blank\" rel=\"noopener\">Microsoft Messenger<\/a>)<br \/>\nY algunos frikis tenemos adem\u00e1s cuentas de <a class=\"vt-p\" href=\"http:\/\/www.icq.com\" target=\"_blank\" rel=\"noopener\">ICQ<\/a>, <a class=\"vt-p\" href=\"http:\/\/www.jabber.org\/\" target=\"_blank\" rel=\"noopener\">Jabber<\/a>, <a class=\"vt-p\" href=\"http:\/\/freenode.net\/\" target=\"_blank\" rel=\"noopener\">IRC<\/a>, y qui\u00e9n <a class=\"vt-p\" href=\"http:\/\/messenger.yahoo.com\/\" target=\"_blank\" rel=\"noopener\">sabe<\/a> <a class=\"vt-p\" href=\"http:\/\/www.imqq.com\/\" target=\"_blank\" rel=\"noopener\">qu\u00e9<\/a> <a class=\"vt-p\" href=\"http:\/\/www.aim.com\/\" target=\"_blank\" rel=\"noopener\">m\u00e1s<\/a>.<\/p>\n<p>Tanta nube, tanta nube, pero necesitamos configurar <strong>un cliente de IM en cada ordenador<\/strong> (sobremesa, netbook, oficina&#8230;). Los clientes multiprotocolo  (como <a class=\"vt-p\" href=\"http:\/\/kopete.kde.org\/\" target=\"_blank\" rel=\"noopener\">Kopete<\/a> o <a class=\"vt-p\" href=\"http:\/\/www.pidgin.im\/\" target=\"_blank\" rel=\"noopener\">Pidgin<\/a>) ayudan un poco. Pero cuidado como intentes <strong>conectarte desde varios ordenadores a la misma cuenta<\/strong> de MSN o de ICQ (porque es <em>t\u00e9cnicamente imposible<\/em>). Y si adem\u00e1s quieres <strong>buscar algo en tu historial<\/strong> de conversaciones, te har\u00e1 falta mucho caf\u00e9, algunas aspirinas, conectividad a <em>todos<\/em> los ordenadores y webs por las que hayas hablado, y una buena dosis de <a class=\"vt-p\" href=\"http:\/\/www.commandlinefu.com\">bash-fu<\/a> para parsear todos los logs.<\/p>\n<p>Lo suyo ser\u00eda olvidarse de tanto protocolo, y usar <a class=\"vt-p\" href=\"http:\/\/googlewavedev.blogspot.com\/2010\/12\/introducing-apache-wave.html\">Apache Wave<\/a>, pero como a la gente no le gusta el cambio, voy a presentar no una, sino <strong>DOS<\/strong> soluciones a este problema. En ambos casos, nos hace falta una nube, es decir, un servidor que vaya a estar online permanentemente. Ya sea alg\u00fan hierro viejo encendido en el trastero, o un servidor alquilado a terceros en la vasta red.<\/p>\n<h3>Ambas soluciones permiten:<\/h3>\n<ul>\n<li>Estar <strong>conectado 24\/7<\/strong> a <strong>todas nuestras redes de IM<\/strong>, sin necesitar un solo ordenador encendido en casa.<\/li>\n<li>Tener el <strong>historial<\/strong> de conversaciones en un sitio <strong>centralizado<\/strong>.<\/li>\n<li>Poder acceder a esas redes <strong>simult\u00e1neamente<\/strong> desde varios ordenadores, sin ning\u00fan problema en absoluto.<\/li>\n<li><strong>No necesitar configurar<\/strong> nuestras redes de IM en cada ordenador que toquemos.<\/li>\n<li>No depender de software propietario para nada.<\/li>\n<\/ul>\n<h2>Primera soluci\u00f3n: ssh + screen + finch<\/h2>\n<p>Si eres un frik\u00f3n como dios manda, conocer\u00e1s <a class=\"vt-p\" href=\"http:\/\/www.gnu.org\/software\/screen\/\">GNU screen<\/a>. Esta utilidad permite tener sesiones de terminal abiertas &#8220;<em>en background<\/em>&#8220;, pudiendo verlas en pantalla u ocultarlas cuando se quiera.<\/p>\n<p>SSH, obviamente, es una forma de conectarte de un ordenador a otro, ya sea con putty, openssh, o el cliente de turno.<\/p>\n<p>Y finalmente, <a class=\"vt-p\" href=\"http:\/\/developer.pidgin.im\/wiki\/Using%20Finch\">Finch<\/a> es, para entendernos, un Pidgin portado a la terminal. Es un cliente IM multiprotocolo, que en vez de GTK o QT, usa <a class=\"vt-p\" title=\"libgnt\" href=\"http:\/\/www.site.uottawa.ca\/~schow031\/gnt\/gntgaim-statusbox.html\">letras en tu terminal<\/a>. De hecho, tanto Finch como Pidgin se apoyan internamente en <a class=\"vt-p\" href=\"http:\/\/developer.pidgin.im\/wiki\/WhatIsLibpurple\">libpurple<\/a>, una librer\u00eda de IM multiprotocolo.<\/p>\n<p>Como montamos el tinglado entonces?<\/p>\n<ol>\n<li>Instalamos <strong>screen<\/strong> y <strong>finch<\/strong> en nuestro servidor.<\/li>\n<li>Configuramos nuestras cuentas de mensajer\u00eda en ese finch, una sola vez.<\/li>\n<li>Creamos un bucle\/demonio\/cron que mantenga finch arrancado en un screen todo el rato (por si peta, que se arranque de nuevo \u00e9l solo).<\/li>\n<\/ol>\n<p>Una vez hecho esto, basta conectarnos v\u00eda <strong>SSH<\/strong> al servidor, y acceder al screen donde est\u00e1 finch encendido. Por ejemplo:<\/p>\n<blockquote>\n<pre>$ ssh stenyak@servidor.com\n$ screen -x miFinch<\/pre>\n<\/blockquote>\n<p>Y en pantalla veremos nuestro cliente, con su lista de contactos, sus pesta\u00f1as para cada conversaci\u00f3n, etc.<\/p>\n<p>Por ejemplo, he aqu\u00ed una sesi\u00f3n de Finch conectado a GTalk, MSN y un canal IRC en Freenode:<\/p>\n<p style=\"text-align: center;\"><a class=\"vt-p\" href=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/finch-screen.png\"><img loading=\"lazy\" class=\"aligncenter size-full wp-image-791\" style=\"border: 2px solid black;\" title=\"finch-screen\" src=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/finch-screen.png\" alt=\"\" width=\"419\" height=\"259\" \/><\/a><\/p>\n<p>(por si alguien se pregunta donde entra Facebook en todo esto, comentar que el chat de Facebook  tira desde hace bastantes semanas del protocolo Jabber. No es 100%  compliant, pero cualquier cliente de Jabber decente deber\u00eda poder  conectarse a \u00e9l)<\/p>\n<p>Como pod\u00e9is comprobar, es una soluci\u00f3n solo apta para muy frikis. Los logs est\u00e1n todos legibles en texto plano en <code><strong>~\/.purple\/logs<\/strong><\/code>.<\/p>\n<h2>Segunda soluci\u00f3n<\/h2>\n<p>Pero a estas alturas de la vida, muchos linuxeros prefieren poder hacer clics y cosas as\u00ed; por ello existe otra segunda soluci\u00f3n, que como es un poco tarde, explicar\u00e9 en el siguiente post.<\/p>\n<h4>Stay tuned!<\/h4>\n<p><em>(contin\u00faa en la <a href=\"http:\/\/www.stenyak.com\/archives\/816\/cliente-libre-de-mensajeria-en-la-nube-part-2\/\">parte 2<\/a>&#8230;) <\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vamos a darle un poco de ca\u00f1a al blog, que lo tengo abandonao! Voy a explicar como tener un cliente de mensajer\u00eda instant\u00e1nea en &#8220;la nube&#8221;. Antes de nada,\u00a0 vamos a explicar el concepto. El Concepto Tradicionalmente, nuestro usuario Joe tiene: &#8211; Un chat en Facebook &#8211; Un chat en Gmail (Google Talk) &#8211; Un [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[4],"tags":[13],"_links":{"self":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/posts\/790"}],"collection":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=790"}],"version-history":[{"count":0,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/posts\/790\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=790"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=790"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=790"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}