Fino a qualche anno fa XMPP era una parola sconosciuta anche a Google.
Oggi è sulla bocca di molte persone e sicuramente sullo schermo di moltissimi sviluppatori di software.
Cos'è e a cosa serve il protocollo XMPP?
XMPP sta per Extensible Messaging and Presence Protocol, un protocollo aperto per la comunicazione in tempo reale che utilizza XML (Extensible Markup Language) come linguaggio base per scambiare le informazioni.
In estrema sintesi XMPP è un meccanismo per inviare piccole porzioni di codice o informazioni XML a un altro ente in tempo pressoché reale.
Perché sta assumendo grande rilevanza questo protocollo?
XMPP ha fondamentalmente tre caratteristiche che lo rendono desiderabile.
- Supporta tanti servizi che permettono l’implementazione delle più disparate applicazioni, come vedremo dopo. Per citare solo alcuni dei servizi disponibili: sessioni peer-to-peer, liste di utenti, messaging di gruppo, notifica, crittografia e autenticazione…
- Si tratta di un protocollo aperto, quindi chiunque lo può implementare.
- Caratteristica unica di XMPP è quella che viene chiamata transport: la possibilità, tramite opportuni gateway presenti su Internet, di interconnettere servizi differenti. Con XMPP sul client non serve avere un software per ogni tipo di servizio, ma basta che esistano i gateway per quel servizio.
Detto in altre parole un client che supporta XMPP può collegarsi a tutti i servizi che supportano XMPP anche senza avere un software specifico per quel servizio.
I software che implementano le specifiche XMPP sono parecchi, ne cito solo alcuni: GoogleTalk, Miranda, Trillian, Kopete… (Vedi elenco completo).
Quali applicazioni supporta XMPP?
Le applicazioni che si possono implementare usando i servizi messi a disposizione da XMPP sono:
- chat di gruppo;
- instant messaging;
- giochi;
- sistemi di geolocalizzazione;
- Cloud Computing;
- sistemi di monitoraggio;
- Voip;
- servizi di Identity Management.
Con queste premesse credo che il protocollo avrà lunga vita, ma probabilmente lo useremo in maniera inconsapevole: saranno i software che usiamo a implementarlo, noi saremo stupiti dalla velocità delle comunicazioni, anche fra persone distribuite geograficamente.
Avremo delle chat veloci e centralini Voip in grado di segnalare la presenza degli interni in tempo reale ovunque essi si trovino e qualunque sia il dispositivo che hanno in mano.
Se il futuro sarà così, dovremo ringraziare Jeremie Miller che ha inventato questo protocollo nel lontano 1998.