Hi, catching up with the discussion now that I have more free time again. The ver attribute looks like what I need for XEP-0189 and stoarge in general.
Peter Saint-Andre wrote: > I've added text about the 'ver' attribute to XEP-0060. It's perhaps a > bit underspecified right now. Feedback welcome. See also: > > http://xmpp.org/extensions/tmp/xep-0060-1.13.html > > ###### > > 7.1.2.4 Item Versioning > > If configured to do so (via the "pubsub#versioning" configuration > field), the service can include the "version" of the published data when > it generates notifications. > > Example 105. Service Notifies Subscribers > > <message from='pubsub.shakespeare.lit' to='[email protected]' id='foo'> > <event xmlns='http://jabber.org/protocol/pubsub#event'> > <items node='princely_musings' > ver='some-version-string'> > <item id='ae890ac52d0df67ed7cfdf51b644e901' > publisher='[email protected]'> > [ ... ENTRY ... ] > </item> > </items> > </event> > </message> > > > Definition: The 'ver' attribute is a string that identifies a particular > version of the data published at a node. The value MUST be generated > only by the server and MUST be treated by the client as opaque. The > server can use any appropriate method for generating the version ID, > such as a hash of the published data (e.g., of all the current items > cached at the node) or a strictly-increasing sequence number. Sounds good to me > 6.5.9 Requesting All Items Since a Given Version > > The subscriber can request all items published since a particular > version of the published data by specifying the Node ID and 'ver' > attribute (about which see Item Versioning). > > Example 87. Subscriber requests items since a given version > > <iq type='get' > from='[email protected]/barracks' > to='pubsub.shakespeare.lit' > id='items3'> > <pubsub xmlns='http://jabber.org/protocol/pubsub'> > <items node='princely_musings' > ver='some-version-string'/> > </pubsub> > </iq> > > > The service would then return all the items published since that version > of the data published at the node. What happens with deleted items? E.g. you have items 1, 2, 3 and the current version has 1, 3, 4. The server sends 4 in <items> but must have a way to signal that 2 is gone now. I have another request for the ver attribute: initial message after subscription. We have pubsub#send_last_published_item and I would like to suggest new possible values such as only_ver_on_sub_and_presence and only_ver_on_sub. Instead of sending the last item as PEP does, only send the version when a new client subscribes or gets online with auto-subscription. For the persistent storage using pubusb I would like to send my presence status to the server with the auto-subscription hash and receive the ver attributes of all my storage nodes (pubkeys, bookmarks) and fetch the changed items. Dirk -- ACK and you shall receive.
