OneWeb demonstrates the power of XMPP inside the browser
Posted by Mickaël Rémond on November 26, 2009We have just released an experimental extension for Firefox that adds XMPP interactions to the Mozilla browser.
OneWeb Firefox extension is a good exemple of Firefox hackability and shows how XMPP integration in the browser can bring value for real-time web interactions.
XMPP stands for eXtensible Messaging and Presence Protocol. The protocol is mostly known as an Instant Messaging protocol, but it has actually been designed as a generic messaging protocol that can do much more that chat. OneWeb Firefox extension demonstrates a small part of what you can do when you integrate XMPP by design into the browser behaviour.
Note that this is an early alpha version developed in a few days to demonstrate our purpose. There is still room for many improvements and contributions are of course welcome.
Description
OneWeb alpha version is able to do the following:
- It gives an interface to interact remotely with your opened Firefox browser. You can interact with opened Firefox from another browser running OneWeb or from an XMPP instant messaging client (supporting adhoc commands). You can thus control your Firefox browser from your desktop or even from a mobile device.
- It gives a way to share and broadcast your favorite pages with your contact on your XMPP account. Simply click "Share page" in contextual menu and a shared bookmark will be created, distributed to your contact and notified by their OneWeb plugin.
- It can synchronize your bookmarks with your other Firefox browsers. This feature is experimental. Backup your bookmark before installing OneWeb on your Firefox.
Video
Download
The module can be downloaded from ProcessOne Labs.
Code source is available on ProcessOne Labs.
You need an XMPP account to test this software but you can get a development XMPP account for free on our XMPP Sandbox.
Update: We recommand you to use the XMPP Sandbox for ease of use. Your XMPP server needs supports for Pubsub and PEP which is not a common feature.
Categories: Jabber / XMPP Mozilla
Share article:
Tweet this
Make delicious
Stumble upon
Comments
Great idea indeed, though I couldn’t get it to work (but my server might have been the culprit here, I’ll look into it later).
Add some Jingle-based TCP tunneling on top of that, and you wouldn’t be that far from an FOSS Opera Unite alternative. But maybe it’s the plan already? ;)
Posted by Olivier M. on 26 Nov 2009 at 16:58I also cannot get it to work in FF 3.5.2 or FF 3.6b3. Boo!
Posted by rjp on 26 Nov 2009 at 17:39For those who do not manage to get it work: It might be that your server does not support Pubsub and PEP (Personal Eventing).
Could you please try on the XMPP sandbox for example ?
have you guys heard of xmpp4moz
https://addons.mozilla.org/en-US/firefox/addon/3632
https://addons.mozilla.org/en-US/firefox/addon/3633
it was there for ages!!
Posted by Irakli Gozalishvili on 26 Nov 2009 at 20:43I tried on the sandbox and that didn’t work either. However it is working on this FF 3.5.2 from portableapps.com with my server (ejabberd 1.1.1, I think). It did pop up a box saying my certificate was invalid because it was self-signed though.
On the non-working browser, I get errors from this._trace not being defined but not in this one. Some weird Javascript strict mode in later versions kicking in?
So now it’s working, how do I make it do clever things?
Posted by rjp on 26 Nov 2009 at 21:07Aha, cool, once you get two browsers up and connected, the menu of commands appears. Very nice. This is very handy.
Posted by rjp on 26 Nov 2009 at 22:08So… any chance we can have access to the git repository the build process is complaining about not finding?
I’d personally also be interested in following the process closer then watching out for new tar-balls to appear.
Cool, the next step could be saving bookmarks on the xmpp server.
Posted by B on 27 Nov 2009 at 20:35quite boring.
Posted by oli on 28 Nov 2009 at 11:24I downloaded the source code and tried to build with make:
fatal: Not a git repository: ‘/devel/oneweb’
then I tried to push everything in a git repository by myself.
fatal: cannot describe ‘302210a116b4d6967ac07e2f23b231f060757ec1’
Can we clone from your git repository somewhere ?
Posted by B on 28 Nov 2009 at 11:28Looks like OneWeb is sending this to my server:
<auth >ZkA3ZjAwMDAwMS5vcmc=Zg=Ob3QgcmVhbGx5IG15IHBhc3N3b3Jk</auth>
This is obviously not valid base64. The code, however, looks right to me (but I Am Not A Programmer).
Posted by f on 28 Nov 2009 at 19:11Sooo. Could this be built to make a real-nice, decentralised «there’s a new comment on page X» feature?
And/or maybe look that your friends are browsing the same site?
Or for collaboration directly on the pages? Leave comments there etc?
Posted by Odin Hørthe Omdal on 01 Dec 2009 at 12:35What’s the advantage about using xmpp for that stuff ? Isn’t HTTP(s) & REST sufficient to do such things ?
Posted by Kaoul on 10 Dec 2009 at 15:46@Kaoul: No, HTTP rest is not sufficient. One of the missing thing is that HTTP / Rest is not addressable. You have no address associated to a REST HTTP call.
REST has no real generic push infrastructure per see like pubsub.
Many other differences, that makes XMPP the perfect match for that.
Posted by Mickaël Rémond on 10 Dec 2009 at 15:49Have you seen Project Blue Spruce from IBM?
http://www.youtube.com/watch?v=CqUK4YHXVmM
It uses XMPP in the browser for cooperative JavaScript web applications, plus adds audio/video conferencing.
Posted by Peter Parente on 11 Dec 2009 at 20:24Um. I’ve installed One Web. I wasn’t able to log in to my jabberd servers but the xmppsandbox works. Kind of. I’m logged in. It says “OneWeb” at the bottom right corner. If I left-click it - new windows pops up with two tabs - “New Bookmarks” and “All Bookmarks”. Nothing to click there. If I right-click OneWeb I have two options. Logout and Preferences. Doh.
However I wonder - can OneWeb be used to show my other friends some tabs I’m looking at? That would be nice. Some kind of URL feeder.
Posted by ike on 15 Dec 2009 at 22:36@ike: You need to:
- Add contacts to your xmpp-sandbox.org accounts (your friends).
- Try using the module with the same account on browser from two locations.
It is not fun if you are alone :)
Posted by Mickaël Rémond on 15 Dec 2009 at 22:38I’d personally also be interested in following the process closer then watching out for new tar-balls to appear.
Posted by explore talent on 31 Dec 2009 at 11:17As explained on:
http://www.process-one.net/en/blogs/article/oneweb_works_on_firefox_mobile/
Github repository contain the code:
http://github.com/processone/OneWeb
Um. I’ve installed One Web. I wasn’t able to log in to my jabberd servers but the xmppsandbox works. Kind of. I’m logged in. It says “OneWeb” at the bottom right corner. If I left-click it - new windows pops up with two tabs - “New Bookmarks” and “All Bookmarks”. Nothing to click there. If I right-click OneWeb I have two options. Logout and Preferences. Doh.
Posted by TamDosya on 20 Jan 2010 at 01:31Add comment

Stay Informed
Subscribe to our RSS feed or follow us on Twitter to receive alerts when we post new news stories and blogs.
Subscribe to ProcessOne RSS feed
Follow ProcessOne on Twitter
Follow Mickaël on Twitter
Search our blogs
To make it easier for you to find blogs on topics that you are interested in, we have grouped them into categories depending on the different themes addressed in each blog. Categories include:
ProcessOne
Jabber / XMPP
ejabberd
Erlang
CEAN
Information Technology
Misc
Tsung
French
Mozilla
Employment opportunities
IMtrends
All categories
Become a ProcessOne partner
Find out about the benefits of joining ProcessOne’s partnership programme.
Click here
Our products and services
We offer packaged solutions comprising all of the server-side and client-side technology necessary to create valuable new instant messaging applications. In addition, we offer a range of services for delivering customised solutions.
Click here for full details