IM e Microblogging: tutta la potenza dell’XMPP (Parte 1)
Scritto da Enrico Bertini | 7 Marzo 2008
![]()

L’Extensible Messaging and Presence Protocol (XMPP) è un protocollo per la gestione di comunicazioni in tempo reale utilizzabile da parte di diversi tipi di applicazioni Internet, come quelle di instant messaging, di telepresenza, di whiteboarding, di sindacazione di contenuti, ecc., ed in generale da larga parte delle applicazioni di collaborazione online: il protocollo è altresì utilizzabile per l’instradamento (routing) di strutture dati XML. L’XMPP è stato inizialmente sviluppato nel 1999 dalla comunità open source Jabber, per poi divenire in seguito uno standard IETF, uno standard che attualmente viene costantemente esteso dalla XMPP Standards Foundation (XSF), una fondazione non a scopo di lucro che opera seguendo una propria XSF Roadmap. La missione nonché gli obbiettivi che la Fondazione XSF sta quindi perseguendo riguardano la creazione di una infrastruttura Internet di comunicazione e di collaborazione online decentralizzata, nonché di tipo aperto, standardizzata, sicura, e con numerosissime funzionalità estendibili. Inoltre, l’XMPP è una tecnologia derivata dall’XML, lo Extensible Markup Language, nata con l’originario obbiettivo di creare su Internet un meccanismo distribuito di comunicazione, il quale praticamente operasse instradando (routing) dati ed informazioni in tempo reale.
Attraverso un processo di sviluppo partecipativo, basato su discussioni e su votazioni, nonché revisionato dallo XMPP Council, nel corso del tempo sono state sviluppate svariate estensioni dell’XMPP, e moltissime altre si trovano nella fase di approvazione finale oppure sono state proposte come drafts: tutte queste estensioni hanno già aggiunto od aggiungeranno diverse funzionalità al protocollo stesso, tra le quali il File Transfer (XEP-0096), le comunicazioni P2P (Jingle), la crittografazione delle comunicazioni (XEP-0116), la gestione di Privacy Lists (XEP-0016), la gestione di Bookmarks condivisi (XEP-0048), il Service Discovery (XEP-0030), il SOAP Over XMPP (XEP-0072), l’archiviazione dei messaggi (XEP-0136), le misure anti-spam, anti-phishing, o quelle contro gli attacchi Dos che potrebbero interessare gli XMPP Servers di pubblico dominio, ecc. E l’elenco completo delle XMPP Extensions si trova qui.
Dato il successo ottenuto dalle applicazioni di microblogging e di social messaging (come ad esempio Twitter), c’è un nuovo crescente interesse per l’XMPP e per gli XMPP servers, anche e soprattutto nel settore mobile.
Per quanto riguarda proprio Twitter, ad esempio, in occasione di alcuni crashes della popolarissima piattaforma di microblogging, causati dal sovraccarico che si è trovata a gestire, si è parlato molto dei suoi problemi di scalabilità, e si è ipotizzata una sua decentralizzazione, basata sulla generazione di Twitter RSS feeds individuali ed aggregabili. Sempre nelle suddette occasioni, molti hanno invece parlato anche di piattaforme di microblogging Twitter-like, ma nativamente distribuite e basate sul protocollo XMPP.
Sul suo blog Russell Beattie ha paragonato ad esempio Twitter ad un IM bot, argomentando che "To me, at the core Twitter is what I call "echo bot". Just like any other IM bot, it signs on as another user which you add to your buddy list, and you send it messages and it gives responses. The idea with an echo bot is that all it does is take whatever message you send it and repeats it to everyone *else* who is in its buddy list. In other words, it echoes what you say to anyone else that has that particular bot as a friend. The bot script could easily write the messages its passing to a log, or act as a gateway to various other transports such as mail or SMS, right? So if you were to host your own echobot (which is really nothing more special than a long-lived python or perl script that reads and writes to a socket), and had all your friends add the bot’s user ID to their IM buddies, it would meet much of the functionality that Twitter does".
Ciò non risolverebbe d’acchitto l’intera problematica della decentralizzazione di Twitter (o di un sistema Twitter-like), diceva ancora Russell Beattie, ma costituirebbe il primo passo verso l’implementazione di bots federati a supporto di un sistema di microblogging distribuito.
Va inoltre precisato però che esistono diversi progetti nonché programmi software che utilizzano in vari modi l’XMPP, praticamente tutti nell’area open source, ed i quali, se integrati, consentirebbero di costruire una piattaforma distribuita (multidominio) di instant messaging, di microblogging, di social messaging, di event messaging, nonché di multi-user chat messaging e di social networking, una piattaforma capace altresì di interoperare con Twitter, con Jaiku, con vari servizi di instant messaging, nonché con diversi altri servizi Web, ma anche utilizzabile via SMS, interfacciabile con il Giant Global Graph ed il web semantico, e magari pure self-hostabile ed amministrabile da WordPress.
Davvero niente male!
Categorie: Social Messaging, Software
Supporta Stalkk.ed
Questo è un blog di Open Consulting.
Hai trovato interessante questo articolo?
Considera di linkarlo: IM e Microblogging: tutta la potenza dell’XMPP (Parte 1).
Considera anche di sottoscrivere il feed RSS di Stalkk.ed, oppure di utilizzare il motore di ricerca Stalkk.ed BNS per le tue ricerche sulla tecnologia.
Articoli Correlati
Commenti
Lascia una risposta

