Moving away from Google Talk to a real Jabber/XMPP service

Posted on Fri 20 February 2015 in HowTo, Linux • Tagged with chat, Google, gtalk, im, jabber, xmpp

I've been recently concerned about the future of Google Talk service and all the implications related to recent changes to the existing service. What has been a nice implementation of the Jabber/XMPP protocol once, now is just a closed and proprietary service. The main problem with these changes are:

  • Jabber/XMPP users of other services won't be able to talk anymore to Google Talk users
  • Google is killing some of their native clients (like the Windows one) and forcing users to Chrome or Android/iOS versions
  • Google has disabled the possibility to turn off chat recording (you can still do it individually, for each contact)

So, what are the alternatives to Google Talk? Luckly you have at least three options.

Using an existing Jabber/XMPP service

This is surely the easiest way to get a Jabber/XMPP account. There is a list of free services available here: https://xmpp.net/directory.php registering a new account is usually very easy. Most of the clients have an option that let you register the account while you are configuring it. For example if you are using Pidgin and you want to register an account with DukGo service, you can configure it in this way:

add account

Using an hosted Jabber/XMPP service with your domain

A service called HostedIM offer a very nice service. Basically if you already have a domain, you can register an account on hosted.im, setup your DNS following their instructions and create an account directly on their dashboard. You can create up to 5 accounts for free. If you need more, they offer a paid service for that. In my case all I had to do was updating my DNS with the following configuration:

_xmpp-client._tcp.andreagrandi.it. IN SRV 10 0 5222 xmpp1.hosted.im.
_xmpp-client._tcp.andreagrandi.it. IN SRV 20 0 5222 xmpp2.hosted.im.
_xmpp-server._tcp.andreagrandi.it. IN SRV 20 0 5269 xmpp2.hosted.im.
_xmpp-server._tcp.andreagrandi.it. IN SRV 10 0 5269 xmpp1.hosted.im.
_jabber._tcp.andreagrandi.it. IN SRV 20 0 5269 xmpp2.hosted.im.
_jabber._tcp.andreagrandi.it. IN SRV 10 0 5269 xmpp1.hosted.im.

Hosting your own Jabber/XMPP service

If you have a VPS and some syasdmin skills, why not hosting your own XMPP server? There are different options available, but I can suggest you three in particular:

I haven't tried any of these personally, because for the moment I'm using the service offered by hosted.im. I'm curious anyway to configure at least one of them and when I will do it I will publish a dedicated tutorial about it.

Conclusion

Given the recent changes that Google is doing to all their services, I'm more than happy when I can abandon one of them, because I personally don't like to rely (and bind myself) to a single company, expecially if that company closes a service whenever they want and try to lock you inside their ecosystem.


Ridimensionare immagini automaticamente con un batch e ImageMagick

Posted on Sun 05 July 2009 in HowTo, Linux • Tagged with batch, foto, fotoritocco, image, imagemagick, immagini, magick, ridimensionare, script

Spesso capita di dover compiere azioni noiose e ripetitive su delle immagini, come ad esempio ridimensionarle o salvarle in formati diversi da quello originale. Queste operazioni possono richiedere moltissimo tempo, soprattutto se abbiamo a che fare con una grande quantità di immagini.

Per chi usa Linux è disponibile però l'utility ImageMagick, che unita ad un pizzico di script in bash ci permette di risolvere agevolmente il problema.

Per prima cosa è necessario installare il tool sulla propria distribuzione. Su Ubuntu (o in qualsiasi altra distribuzione basata su Debian) procedere nella seguente maniera:

sudo apt-get install imagemagick

A questo punto basta posizionarsi nella cartella dove si trovano le immagini (vi consiglio di crearvi una copia a parte delle immagini da modificare, visto che lo script andra' a lavorare direttamente su quelle originali) ed eseguire un comando come questo:

find ./ -iname '*.JPG' -exec convert '{}' -resize '1024' '{}' \;

Questo comando convertirà tutte le immagini .JPG che trova in un formato di 1024 pixel di larghezza, mantenendo ovviamente le proporzioni dell'immagine originale.


Scanner Mustek ScanExpress 1248 USB su Ubuntu Linux

Posted on Wed 17 December 2008 in HowTo, Linux • Tagged with mustek, scanner

scanner mustek

Lo scanner Mustek ScanExpress 1248 USB è pienamente compatibile con Linux, però purtroppo non basta connetterlo per farlo funzionare. Ubuntu Linux 8.10 non distribuisce il firmware necessario al suo funzionamento, però è possibile reperirlo ed installarlo con molta facilità.

Per prima cosa dobbiamo assicurarci di avere il modello esatto di questo scanner. Per scoprirlo è sufficiente dare il comando lsusb da terminale. Dovremmo ottenere una stringa come la seguente:

Bus 002 Device 003: ID 055f:021f Mustek Systems, Inc. SNAPSCAN e22

A questo punto possiamo scaricare il suo firmware da un sito che li raccoglie tutti (quelli che sono compatibili ovviamente): http://www.meier-geinitz.de/sane/gt68xx-backend/firmware/SBSfw.usb

Questo file va messo all'interno della cartella /usr/share/sane/gt68xx/ (occorrono i permessi di root per poterlo fare, quindi il file andra' copiato tramite il comando sudo cp SBSfw.usb /usr/share/sane/gt68xx/ ).

Infine dobbiamo assicurarci di aver installato tutti i pacchetti necessari a farlo funzionare:

sudo apt-get install sane libsane sane-utils libsane-extras xsane xsane-common

Lo scanner è adesso pronto per funzionare.

Nota: nella Ubuntu 12.04 la directory /usr/share/sane/gt68xx/ non è presente di default e va creata manualmente con sudo mkdir /usr/share/sane/gt68xx/****


Utilizzare webcam V4L2 con Flash su Linux

Posted on Tue 25 November 2008 in HowTo, Linux • Tagged with flash, V4L1, V4L2, webcam

flash

Introduzione

Il supporto per le webcam su Linux non è mai stata una cosa molto semplice. I motivi principali per cui le webcam non sono ben supportate sono principalmente due: la scarsa collaborazione dei produttori di hardware, che dovrebbero fornire almeno le specifiche a chi sviluppa i driver per Linux e il quasi completo disinteresse di chi scrive le applicazioni per l'utente finale (in particolare Microsoft con MSN e Skype che utilizzano entrambi un protocollo proprietario e non documentato).

Da diverso tempo si stanno diffondendo applicazioni scritte in Flash che permettono di utilizzare la webcam: dalle videochat, all'applicazione di Youtube che permette di pubblicare un video registrandolo direttamente, fino ai recenti servizi di streaming video come ad esempio JustinTV e UStream.

Il plugin Flash della Adobe, purtroppo ha iniziato a supportare le webcam su Linux utilizzando il protocollo V4L1 quando ormai la maggior parte di esse funzionava solo con il nuovo protocollo V4L2.

A partire dalla versione 10 di Flash, finalmente la Adobe ha iniziato a supportare il protocollo V4L2, anche se il supporto non è ancora completo. Modelli differenti di webcam infatti utilizzano svariati formati di trasmissione video. Fortunatamente lo sviluppatore che lavora per Adobe si è reso disponibile per ricevere il feedback da parte degli utenti e per implementare questi formati in modo da supportare il maggior numero possibile di webcam. Per chi volesse contribuire è possibile seguire le istruzioni su questa pagina: http://blogs.adobe.com/penguin.swf/2008/07/paparazzi_v2_1.html

gstfakevideo: un workaround per emulare V4L1

Visto che il supporto per le webcam che utilizzano V4L1 è molto piu' stabile, l'ingegno della community Linux non è stato ad aspettare con le mani in mano. Il metodo utilizzato è basato su quello che veniva usato su Skype per supportare un maggior numero di webcam: in pratica viene creato un device virtuale V4L1 sul quale viene redirezionato l'output della webcam V4L2.

Il codice originale purtroppo aveva bisogno di alcuni aggiustamenti, mi sono permesso quindi di modificarlo e di applicarli.

La compilazione non dovrebbe comportare particolari problemi: è sufficiente eseguire make all'interno della cartella dei sorgenti.

Per testare il funzionamento della webcam è sufficiente esegurie lo script che si trova all'interno della cartella. Verrà avviato Firefox con il supporto per le webcam V4L1. Visitando uno dei siti web che hanno un'applicazione Flash che utilizza la webcam citati all'inizio, sara' possibile verificarne il corretto funzionamento.

Riferimenti: le istruzioni in questo post sono state in parte prese da questo sito web (in inglese): http://www.jtolds.com/newsletter/2008/7/27/how-to-get-v4l2-devices-to-work-with-flash