On Tue Jun 16 08:32:39 2009, Dan Brickley wrote:
I'm crossposting this to the XMPP Social list and the W3C SocialWeb XG list, since the intro in http://labs.opera.com/news/2009/06/16/ has some interesting motivation re social network and data portability, and I've lately been wondering about design decisions where I'm setting up personal/domestic computing APIs and feel drawn to XMPP rather than HTTP mainly due to NAT/Firewall traversal issues: XMPP services on a laptop can be universally addressed, unlike HTTP services. So I wanted to ask - is there a XEP spec for proxying HTTP over XMPP? Would this be relevant to Opera Unite scenarios such as the following?

http://xmpp.org/extensions/inbox/jingle-httpft.html describes a proposal for setting up HTTP over Jingle - by which I mean an HTTP session running on a transport negotiated using the Jingle protocol over XMPP.

I think something along those lines would be the most seamless, although the firewall traversal properties of existing transports aren't exactly great - there is, of course, always IBB, and when newer transports come along, it'd simply use them.

Alternately, you could write something that actually rewrote the HTTP requests into XMPP stanzas, for a more native-XMPP feel - so HTTP methods and header fields would become XML elements within stanzas. It would probably be more efficient, but I'm less than convinced it'd be worth the effort.

The tricky bit is that you need do proxy the HTTP somewhere, and have a way of transforming the HTTP URI into a jid and back again. I'd guess something like http://example.com/~username/ => [email protected] would be the most obvious, but the tilde has i18n issues, so perhaps just http://example.com/username/ or maybe even have some way to allow clients to query what their external URI root looks like.

Dave.
--
Dave Cridland - mailto:[email protected] - xmpp:[email protected]
 - acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
 - http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade

Reply via email to