Not true. Or, not true for long. Some people are talking about putting an open federation spec together: http://piratepad.net/HET5ojzCXM
But thats still not really answering your question. As far as I know, the client-server protocol for wave in a box is pretty stable at this point. Its documented here: http://www.waveprotocol.org/protocol/design-proposals/clientserver-protocol ... Though that documentation is probably out of date. Sad to say it, but the real spec for wiab is the code. The client and server talk by sending protobuf messages encoded as JSON over a socket.io connection. Protobufs are quite formally defined - so you can see what the messages look like by looking at a few files in the repository: The RPC wrapper: http://code.google.com/p/wave-protocol/source/browse/src/org/waveprotocol/box/server/rpc/rpc.proto The meat: http://code.google.com/p/wave-protocol/source/browse/src/org/waveprotocol/box/common/comms/waveclient-rpc.proto http://code.google.com/p/wave-protocol/source/browse/src/org/waveprotocol/wave/federation/federation.protodevel The encoding to JSON uses this project: http://code.google.com/p/protobuf-java-format ... which basically makes every proto message a JSON object with keys = the proto field ID. Repeated values are expressed in JSON lists. The JSON is then encoded into a string, which is wrapped by another JSON object. So, all messages sent over the socket.io connection end up looking something like this, if I recall correctly: {"class":"ProtoMessage","message":"{\"1\":....,\"2\":[....]}"} <-- that string is a proto encoded as JSON, then encoded again as a JSON string. The turtles don't go all the way down. :) For authentication, I think you can get a token from a user through OAUTH and pass that down the socket.io connection using the special authentication message. But, I'm not 100% sure that works. I know we talked about it, but I haven't touched that code in about 6 months now, so I can't quite remember. If you care about the client/server API enough to dig through the code, writing up some proper documentation describing what you find would be great. -J On Sat, Jul 9, 2011 at 2:36 AM, Thomas Wrobel <darkfl...@gmail.com> wrote: > I have to point out, none of these solutions are actually federated - > and thus unsuitable for anyone wishing to make a open network where > anyone can run a server. Bunchs of individual OT projects are great > for specific uses, but for anyone wanting a open network, their not > really relevant. > WFP is still pretty unique for the moment. > > Anyone from the actual wiab want to jump in here? > > -Thomas > > > > ~~~~~~ > Reviews of anything, by anyone; > www.rateoholic.co.uk > Please try out my new site and give feedback :) > > > > On 8 July 2011 18:27, Joseph Gentle <jose...@gmail.com> wrote: >> Heh - that looks like sharejs: >> https://github.com/josephg/ShareJS/ >> >> I don't have a committee, but I've got OT-based syncronization of >> arbitrary JSON objects working. So you can write web apps and keep >> complex data structures synced up. >> >> There's a lot of little OT projects popping up at the moment. I don't >> think you're alone in fleeing from fedone's code base. >> >> -J >> >> On Thu, Jul 7, 2011 at 4:31 AM, Rohit Rai <rohitb...@gmail.com> wrote: >>> Hi Guys, >>> >>> I haven't been able to invest much time on wave... found it the code too >>> cumbersome to work with... but thats a long rant I won't bother with. >>> >>> I just keep tabs on the development of the project. I was only interested in >>> the OT part of it and it was not documented and lack of documented >>> client/server protocol didn't help! GWT was the final deal breaker :D >>> >>> But when I left wave for and started looking for something else, I found >>> many things on the way... but the one that took my attention was >>> http://opencoweb.org/ >>> >>> An OT framework, both for Python and Java with a lot of documentation and a >>> well defined Javascript client API and a proper documented client/server API >>> based on Bauyex. >>> >>> I hope it can help to establish a good client server protocol base for >>> others too. >>> >>> Regards, >>> Rohit >>> >>> The diamond cannot be polished without friction, nor man perfected without >>> trials >>> http://mytechrantings.blogspot.com >>> >>> >>> On Wed, Jul 6, 2011 at 9:29 PM, Thomas Wrobel <darkfl...@gmail.com> wrote: >>> >>>> I wondered if there was any interest again in helping push forward a >>>> stable client/server protocol for wiab? >>>> >>>> A few weeks back there was a thread started >>>> ( >>>> http://mail-archives.apache.org/mod_mbox/incubator-wave-dev/201106.mbox/thread >>>> ), >>>> which then developed into a interesting discussion on protocols for >>>> wave (and wave-like) systems in general. >>>> >>>> However, the original intention (at least, from my perspective) of >>>> trying to push for a simple c/s interface for wiab...allowing anyone >>>> to write a client and connect to any standard wiab server.....seemed >>>> to have been lost. >>>> So I wondered if anyone was up for trying to work on it? I'm willing >>>> to help out as much as I can - although I'm mostly a java client >>>> coder, with little knowledge of the inner code of wiab. I could mock >>>> up basic clients to test the protocol with a lot easier then making >>>> wiab modifications. However, in either case, I'm willing to learn and >>>> put in the time if it means getting this functionality added. >>>> >>>> I'm assuming any c/s for wiab will be still based around there proposal >>>> here; >>>> http://www.waveprotocol.org/protocol/design-proposals/clientserver-protocol >>>> >>>> -Thomas Wrobel >>>> arwave.org >>>> >>>> >>>> >>>> ~~~~~~ >>>> Reviews of anything, by anyone; >>>> www.rateoholic.co.uk >>>> Please try out my new site and give feedback :) >>>> >>> >> >