Jabber (was Re: [Twisted-Python] Closing Jabber connection)

Glyph Lefkowitz glyph at divmod.com
Tue May 3 17:30:19 MDT 2005


Ralph Meijer wrote:
> On Tue, May 03, 2005 at 03:17:34PM -0500, Peter Saint-Andre wrote:
> 
>>[..]
>>
>>As I said, I know of several folks in the Jabber community who
>>are quite interested in building a reference XMPP/Jabber server
>>in Python, and I'm wondering if Words is the place to point them.
> 
> 
> Besides that, one could argue that XMPP/Jabber doesn't belong in Words
> alltogether because IM is just one possible use of XMPP/Jabber.

One could argue that, but one would also be wrong :)

Any protocol can be repurposed.  Just look at some of the ridiculous 
things being done with HTTP that are not at all related to the dubious 
heading of "hypertext", which is what "web" originally meant.  Or, 
consider how many proprietary ad-hoc systems use IRC as a message 
transport or router.  Nevertheless, we classify these protocols 
according to their original intentions; IRC is not going into 
Twisted.ORB any time soon.

Twisted Words is the place in Twisted for soft-real-time messaging 
protocols with human endpoints.  They don't have to be transporting 
plain text, and they don't have to be using TCP (or even IP!).

The ultimate goal is to provide a hub where messages can arrive over one 
protocol and be sent out over another.  That's why the client and server 
halves of the protocols are in the same place, although previous 
projects (gaim, jabber, ircd) have separated these domains with a brick 
wall.  A primary function of a Words server would be to act as a client 
to some other server so that it can provide a more civilized (say, 
Jabber, or Q2Q-Chat) interface to a legacy IRC or OSCAR server.  This 
usually involves  pretending to be at least one client.

This may even include a co-dependency with Twisted Web for, for example, 
routing XMLRPC requests over Jabber into regular HTTP XMLRPC requests. 
However, initially it would be good to just have a multi-protocol 
messaging abstraction available which would allow for that sort of 
application.

I wish I had more time to work on a roadmap but pretty much 150% of my 
time is spoken for right now.  I am probably stealing time from somebody 
just writing this email!  I hope that it has been useful.





More information about the Twisted-Python mailing list