I've been working with XMPP related stuff now and here's what I've assimilated so far. XMPP and HTTP are two different protocols but when you're trying to implement a browser-based XMPP client, the XMPP traffic would pi开发者_如何学Pythonggyback on HTTP which is called XMPP-over-BOSH.
I came across Punjab which seems to be a pretty popular XMPP/BOSH connection manager and works with the common XMPP servers like ejabberd and OpenFire. These common XMPP servers like ejabberd and Openfire already seem to have inbuilt support for XMPP-over-BOSH therefore, what added functionality does Punjab provide.
Many large sites are using Punjab in their XMPP implementation but I couldn't figure out why they would be using it when you could directly have the in-broswe XMPP client connect to ejabberd or OpenFire.
Thanks.
Many of the servers with direct BOSH support did not have that support early on. It's also sometimes handy to move the BOSH proxy closer to your web infrastructure, particularly before CORS was as well-understood.
精彩评论