Guys, this discussion has moved to wave preview a long time ago. Those of you who have accounts, can find the relevant waves by searching "group:[email protected]".
It has already been agreed that: - We will use XMPP. - The protocol as we define it will be just the minimum necessary to establish proper communications between the client and server. This means: handshake, capabilities negotiation, basic transport protocol (sending deltas etc), maybe a bit more than that. - Any further capabilities will be added later as extentions to this protocol. There is a beginning of a white paper in a wave called "Wave Client Protocol Whitepaper Brainstorm", which can be found here https://wave.google.com/wave/#restored:wave:googlewave.com!w%252BwU_O9mZcQ . Afaik the current effort is to build an experimental client/server pair to experiment on. I will quote the whitepaper wave (without the discussions) for those of you who do not have access: ------------------------------------- Wave content follows - Wave Client Protocol Whitepaper Brainstorm ------------------------------------- Related Waves: Interaction Flow: Wave Client Protocol Interaction flow Google Wave Conversation Model(Copied From Whitepaper): Google Wave Conversation Model Wave Definitions: Wave Definitions List Of Programming Languages Put Forward For Implementation: List Of Programmers Wave Data Model: Wave Data Model Requirements Functionality * Handshaking * Capabilities MUST have * XML Schema? * Operation Schemas (adding,OTing, etc) * Recovery * Persistent Changes / Temporary Storage * Annotations (standard names as well? or just provisions) * Push-based protocol. (must not rely on polling as the only means of fetching updates) * Authentication agnostic (use OAuth in examples?) SHOULD have * XMPP-based transport * Compatible with BOSH / HTTP transports. * Meta-Wavelets (Unread/Read Blips should be standardised) * Bandwidth Throttling (blip by blip, character by character, word by word) * RESTful design. (operations in terms of CRUD operations on resource) * Distinct URI for every element of wave. (blips, wavelets, etc.) MAY have * PGP signing * Support for alternate serializations. (json, yaml, etc.) Actions Wave * create * add wavelet * read * all history [a summary] * fetch changes (requires index number, as given by "all history") Wavelet * create * add participant * remove participant (no consensus on permissions, but at the present only bots can be removed) * add blip * read Blip * create * modify * add contributor * read * delete Events Wave * new Wavelet Wavelet * contributor added * contributor removed * special? * new blip Blip * live update * commit update * header update (summary of changes, no content sent) * deleted Extensions Search and Index Waves References Wave * Expand On Federation Protocol Spec (http://www.waveprotocol.org/ draft-protocol-specs/draft-protocol-spec) using a XMPP extension * Wave Data Model: Wave Data Model * Wave Definitions: Wave Definitions * Conversation Model Spec Here: http://www.waveprotocol.org/draft-protocol-specs/wave-conversation-model (Google Wave Conversation Model ) * FedOne Client and Server Here: http://code.google.com/p/wave-protocol * Whitepapers (including a Google C/S Protocol): www.waveprotocol.org/whitepapers * Access Controls: http://www.waveprotocol.org/whitepapers/access-control * Wave Client Protocol Interaction flow XMPP * Put Good XMPP Protocol Links here: Good XMPP Protocol Links Atom * Atompub over XMPP: http://tools.ietf.org/html/draft-saintandre-atompub-notify-07 * OpenSearch: http://www.opensearch.org/ Languages * Implementation Languages: Python and/or Java (put your preferences here: List Of Programming [reference implementation] Languages ) -- You received this message because you are subscribed to the Google Groups "Wave Protocol" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/wave-protocol?hl=en.
