Cos’è XMPP/Jabber?
XMPP è un protocollo aperto di messaggistica istantanea basato su linguaggio XML. XMPP (in origine “Jabber”) è uno dei pochissimi sistemi di messaggistica aperti, non in mano a delle aziende.
L'architettura di XMPP è simile a quella della posta elettronica (e-mail); non esistono server centrali dominanti (è decentralizzato) e chiunque può realizzare il proprio server XMPP. E’ un sistema decentralizzato e federato, ovvero tutti i server comunicano tra loro senza la necessità di appartenere allo stesso fornitore di servizio, proprio come nel caso dell’ e-mail: ti puoi registrare con qualunque gestore e scrivere a chiunque abbia un indirizzo XMPP, anche di altri gestori, usando i programmi che preferisci. Il gestore è indicato dalla parte che viene dopo la `@` nel tuo indirizzo JID (Jabber ID).
Con soluzioni centralizzate come WhatsApp sei obbligato ad iscriverti a quel servizio, ad utilizzare i loro server e la loro app predefinita oltreché ad aderire alle loro politiche sui dati personali. Quindi puoi contattare solo gli altri utenti che hanno fatto la medesima scelta. Immagina WhatsApp come un servizio XMPP “defederato”, cioè isolato da tutti gli altri servizi, e “chiuso”, cioè solo chi gestisce WhatsApp sa come funziona internamente.
XMPP è utilizzato da più di vent’anni da milioni di persone ovunque nel mondo, quindi è ben rodato, sicuro ed affidabile. Questo il sito di riferimento: https://xmpp.org/
In generale, usare XMPP è un poco meno comodo e immediato dell'esperienza tipica di una app commerciale, ma questo è dovuto al fatto che le applicazioni (in questo caso i client con i quali ti interfacci), sono sviluppate da volontari appassionati di tecnologia e non da impiegati aziendali, dunque non esiste una filosofia unica nello sviluppo di una applicazione open-source (https://it.wikipedia.org/wiki/Open_source).
Così come un servizio mail, per poter messaggiare con gli altri utenti della rete XMPP, bisogna avere un account su di un server che offra il servizio XMPP ed una applicazione sul proprio dispositivo - i cosiddetti “client”.