{"id":816,"date":"2011-02-05T19:06:29","date_gmt":"2011-02-05T18:06:29","guid":{"rendered":"http:\/\/www.stenyak.com\/?p=816"},"modified":"2011-02-05T19:06:29","modified_gmt":"2011-02-05T18:06:29","slug":"cliente-libre-de-mensajeria-en-la-nube-part-2","status":"publish","type":"post","link":"https:\/\/www.stenyak.com\/?p=816","title":{"rendered":"Cliente *libre* de mensajeria en la nube (part 2)"},"content":{"rendered":"<p><em>(\u2026continuaci\u00f3n de la <\/em><em><a class=\"vt-p\" href=\"http:\/\/www.stenyak.com\/archives\/790\/cliente-libre-de-mensajeria-en-la-nube\">parte 1<\/a><\/em><em>)<\/em><\/p>\n<p>Bueno, andabamos en las nubes con el tema de mensajer\u00eda. Para recapitular, el objetivo era:<\/p>\n<ul>\n<li><strong>Conectividad 24\/7<\/strong><\/li>\n<li><strong>Acceso a todas nuestras  redes<\/strong> de IM con el m\u00ednimo  esfuerzo<\/li>\n<li><strong>Software libre<\/strong> por donde se pueda.<\/li>\n<\/ul>\n<p>En <a class=\"vt-p\" href=\"http:\/\/www.stenyak.com\/archives\/790\/cliente-libre-de-mensajeria-en-la-nube\">la primera parte<\/a>, hemos solucionado la papeleta mediante GNU Screen, <a class=\"vt-p\" href=\"http:\/\/developer.pidgin.im\/wiki\/Using%20Finch\">Finch<\/a> y una conexi\u00f3n SSH. La soluci\u00f3n mola porque es completa, y no hace falta ning\u00fan software &#8220;raro&#8221; en los ordenadores cliente (solamente un cliente ssh). Para hacernos a la idea, quedaba tal que as\u00edn:<\/p>\n<p style=\"text-align: center;\"><a class=\"vt-p\" href=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/cloud-im-part1.png\"><img loading=\"lazy\" class=\"size-medium wp-image-819  aligncenter\" title=\"IM en la nube - Primera soluci\u00f3n\" src=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/cloud-im-part1-297x300.png\" alt=\"IM en la nube - Primera soluci\u00f3n\" width=\"297\" height=\"300\" \/><\/a><\/p>\n<p>Pero tiene algunos defectos:<\/p>\n<ul>\n<li>Hay que <strong>usar exclusivamente el teclado<\/strong> (finch + screen + rat\u00f3n es algo lioso de configurar, yo no lo he conseguido).<\/li>\n<li>Los enlaces <strong>multil\u00ednea<\/strong> pueden <strong>no ser reconocidos<\/strong> en su totalidad por el emulador de terminal que usemos, as\u00ed que en esos casos, toca copy-paste de los cachos de enlace que haya en cada l\u00ednea.<\/li>\n<li>Puede ser <strong>poco responsivo<\/strong> dado que, al fin y al cabo, screen+ssh es como un VNC de texto plano&#8230; y se nota cuando escasea el ancho de banda.<\/li>\n<\/ul>\n<p>As\u00ed pues, intentaremos arreglar esos defectos:<\/p>\n<h2>Segunda soluci\u00f3n: Bitlbee + Quassel IRC<\/h2>\n<p>Ahora vamos a ponernos en la piel de un <em>Ubuntero<\/em> t\u00edpico de hoy en d\u00eda: apesta andar con conexiones ssh, y m\u00e1s a\u00fan aprenderse que <code>alt+n<\/code> es para el siguiente tab de finch, o que <code>ctrl+a,F<\/code> redimensiona los contenidos del screen a nuestra terminal, etc&#8230;<\/p>\n<p>As\u00ed pues, vamos a intentar tener un <strong>cliente de IM <em>gr\u00e1fico<\/em><\/strong>: en el que se pueda hacer copy-paste con el rat\u00f3n, hacer clicks para hablar con las personas, y ese tipo de cosillas que se vienen haciendo <a class=\"vt-p\" href=\"http:\/\/en.wikipedia.org\/wiki\/Windows_3.0\">desde hace 2 d\u00e9cadas<\/a>. Por desgracia, no conozco ninguna soluci\u00f3n  tan <em>elegante<\/em> como la primera, por lo que esta vez va tocar\u00e1  instalar una aplicaci\u00f3n en cada cliente que usemos, con un m\u00ednimo de configuraci\u00f3n. Tampoco es mucho pedir, no? \ud83d\ude42<\/p>\n<p>Pasos a seguir:<\/p>\n<ol>\n<li>Instalar Quassel Core en el servidor (ponerlo en un bucle o demonio para que est\u00e9 siempre rulando)<\/li>\n<li>Instalar Bitlbee en el servidor (ponerlo tb a lo demonio)<\/li>\n<li>Instalar al menos un cliente de Quassel para hacer la configuraci\u00f3n inicial.<\/li>\n<\/ol>\n<p>Pero vamos por partes.<\/p>\n<p><a class=\"vt-p\" href=\"http:\/\/quassel-irc.org\/\"><strong><strong> <\/strong><\/strong><\/a><strong><strong><a class=\"vt-p\" href=\"https:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/quasselirc.png\"><img loading=\"lazy\" class=\"alignleft size-full wp-image-831\" title=\"quasselirc\" src=\"https:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/quasselirc.png\" alt=\"\" width=\"100\" height=\"100\" \/><\/a><\/strong>Quassel IRC<\/strong> es un cliente de IRC que tiene una estructura cliente-servidor para la interfaz gr\u00e1fica. Es decir, puedes tener o no tener una ventana (Quassel Client) abierta, y puede estar en el mismo o en otro ordenador que el servidor (Quassel Core). Lo mismo que hace MLDonkey y Amule, para entendernos.<\/p>\n<p>Podeis pensar que vaya chorrada, que para eso ya hay otros protocolos estandard como <a class=\"vt-p\" href=\"http:\/\/en.wikipedia.org\/wiki\/Virtual_Network_Computing\"> VNC<\/a>, o el propio <a class=\"vt-p\" href=\"http:\/\/tldp.org\/HOWTO\/XDMCP-HOWTO\/ssh.html\">SSH con X-Forwarding<\/a> habilitado para usar unas Xorg remotas. El tema es que el protocolo de Quassel est\u00e1 especializado en&#8230; en sus cosas, por lo que es mucho m\u00e1s eficiente, m\u00e1s rapido, y a veces hasta te plancha la ropa. No hay color, vamos&#8230; si habeis usado VNC o X remotas, sabeis a qu\u00e9 me refiero.<\/p>\n<p><a class=\"vt-p\" href=\"http:\/\/www.bitlbee.org\"><img loading=\"lazy\" class=\"alignleft size-full wp-image-830\" title=\"bitlbee\" src=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/bitlbee.png\" alt=\"\" width=\"108\" height=\"91\" \/><strong>Bitlbee<\/strong><\/a>, por otro lado, es una jartada de software que b\u00e1sicamente hace de pasarela desde diversas redes de IM hacia\/desde IRC. Es decir, Bitlbee te permite interactuar con MSN, ICQ, Jabber, incluso <a class=\"vt-p\" href=\"http:\/\/wiki.bitlbee.org\/HowtoTwitter\">Twitter<\/a> y <a class=\"vt-p\" href=\"http:\/\/wiki.bitlbee.org\/HowtoFacebook\">Facebook<\/a>, mediante cualquier cliente de IRC. Se puede decir, por tanto, que es literalmente un <a class=\"vt-p\" href=\"http:\/\/en.wikipedia.org\/wiki\/IRC_daemon\">servidor de IRC<\/a> (uno muy curioso, s\u00ed xD).<\/p>\n<p>Bitlbee utiliza un canal IRC especial, el <code>#&amp;bitlbee<\/code>, dentro del cual mete como participantes a todos tus contactos de IM (del messenger, gtalk, etc). De esta forma, si coges un cliente IRC para conectarte a ese canal, la lista de participantes es realmente tu lista de contactos multiprotocolo. Obviamente, al usar IRC como pasarela, perdemos features (como los avatares del contacto, las razones de estar <code>\/away<\/code>, etc). Basta tirar un <code>\/query<\/code> a cualquier contacto para iniciar una conversaci\u00f3n con esa persona.<\/p>\n<p>As\u00ed que la idea es, usar un cliente de IRC (Quassel Client) en cada ordenador que queramos conectar a las redes IM, y conectarnos al servidor IRC Bitlbee que a\u00fana todas ellas en un solo punto centralizado y nuboso.<\/p>\n<p>Existe una posible pega: si nuestro build de Bitlbee no tiene libpurple como backend (s\u00ed, el mismo que usa Pidgin y Finch, entre otros), no hay soporte de pasarela para redes IRC, con lo que tenemos que configurar nuestras redes IRC en cada cliente\/ordenador que usemos. La cosa quedar\u00eda tal que as\u00edn:<\/p>\n<p style=\"text-align: center;\"><a class=\"vt-p\" href=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/cloud-im-part2.png\"><img loading=\"lazy\" class=\"size-medium wp-image-835  aligncenter\" title=\"IM en la nube - Segunda soluci\u00f3n\" src=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/cloud-im-part2-300x261.png\" alt=\"IM en la nube - Segunda soluci\u00f3n\" width=\"300\" height=\"261\" \/><\/a><\/p>\n<p><a class=\"vt-p\" href=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/cloud-im-part2.png\"><\/a>Si os atrev\u00e9is a montar todo este l\u00edo, los pasos un poco m\u00e1s detallados de configuraci\u00f3n inicial son:<\/p>\n<ol>\n<li><strong>Instalar como demonio Bitlbee<\/strong> en el servidor. Si no vamos a usar tel\u00e9fonos moviles, podemos limitarlos a conexiones en 0.0.0.0 (conexiones del core de Quassel, que est\u00e1 en la misma m\u00e1quina) para mayor seguridad.<\/li>\n<li><strong>Instalar como demonio Quassel Core<\/strong> en el servidor.<\/li>\n<li><strong>Instalar un Quassel client<\/strong> en un sobremesa o portatil y <strong>conectarlo al core<\/strong>.<\/li>\n<li>Una vez conectados al core, le <strong>a\u00f1adimos el servidor IRC de bitlbee<\/strong> en &#8220;localhost&#8221; (el propio servidor nuboso), con puerto default. Adicionalmente, podemos configurarle nuestras redes de IRC habituales (Freenode, etc), a menos que las vayamos a meter en el propio Bitlbee (solo si tiene libpurple de backend, como ya he mencionado).<br \/>\nToda esta configuraci\u00f3n se guardar\u00e1 en el core, as\u00ed que no hay que hacerlo de nuevo nunca m\u00e1s.<\/li>\n<li>Al conectarnos al servidor IRC de bitlbee, se unir\u00e1 al canal #&amp;bitlbee autom\u00e1ticamente. Aqu\u00ed es donde toqueteamos los settings de Bitlbee (todas las redes de IM, etc).<br \/>\nPrimero, <strong>nos registramos en Bitlbee<\/strong> con una contrase\u00f1a, para poder guardar los settings: <code>register &lt;contrase\u00f1a&gt;<\/code><\/li>\n<li>Ahora <strong>a\u00f1adimos las cuentas de IM a Bitblee<\/strong> con unos comandos especiales: <code>account add &lt;par\u00e1metros&gt;<\/code>. Para m\u00e1s informaci\u00f3n, aqu\u00ed hay <a class=\"vt-p\" href=\"http:\/\/en.linuxreviews.org\/Bitlbee#Getting_started\">una gu\u00eda r\u00e1pida de Bitlbee<\/a>.<\/li>\n<li>Una vez a\u00f1adidas las cuentas IM, <strong>guardamos estos settings en Bitlbee<\/strong> con:\u00a0<code>save<\/code><\/li>\n<li>Y ya, si queremos, podemos configurar Quassel para que autom\u00e1ticamente ejecute un <code>\/identify &lt;contrase\u00f1a&gt;<\/code> al conectar, para que se autentique en Bitlbee y nos cargue toda la configuraci\u00f3n del tir\u00f3n (lo mismo que la autenticaci\u00f3n de la mayor\u00eda de servers IRC, vamos).<\/li>\n<\/ol>\n<p>Si a estas alturas segu\u00eds despiertos, entonces hab\u00e9is configurado por fin vuestro mol\u00f3n cliente de IM en la nube! <strong>Congratulations!<\/strong> \ud83d\ude00<\/p>\n<p>Y para terminar, as\u00ed es como pinta la cosa una vez hecho todo:<\/p>\n<p style=\"text-align: center;\"><a class=\"vt-p\" href=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/quassel-n-bitlbee.png\"><img loading=\"lazy\" class=\"size-medium wp-image-840   aligncenter\" style=\"border: 4px solid black;\" title=\"quassel-n-bitlbee\" src=\"http:\/\/www.stenyak.com\/wp-content\/uploads\/2011\/02\/quassel-n-bitlbee-300x187.png\" alt=\"quassel-n-bitlbee\" width=\"300\" height=\"187\" \/><\/a><\/p>\n<p>Una vez escrito el post, veo que al final puede ser o parecer un poquillo m\u00e1s complicado que la primera soluci\u00f3n, por lo que si ten\u00e9is alguna duda, y yo algo de tiempo libre, pod\u00e9is preguntarme aki abajo (o en mi buzz, o donde quer\u00e1is, con tal que sea un sitio p\u00fablico para que el resto del internet se pueda beneficiar de las explicaciones), y os intento echar un cable.<\/p>\n<p><em>Hasta la pr\u00f3xima, frikoman\u00edacos!<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>(\u2026continuaci\u00f3n de la parte 1) Bueno, andabamos en las nubes con el tema de mensajer\u00eda. Para recapitular, el objetivo era: Conectividad 24\/7 Acceso a todas nuestras redes de IM con el m\u00ednimo esfuerzo Software libre por donde se pueda. En la primera parte, hemos solucionado la papeleta mediante GNU Screen, Finch y una conexi\u00f3n SSH. [&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\/816"}],"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=816"}],"version-history":[{"count":0,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/posts\/816\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}