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.


Reply via email to