[Standards] mobile optimizations (was: Re: DevCon report)

Fabio Forno fabio.forno at gmail.com
Thu Feb 28 11:47:38 UTC 2008

On Thu, Feb 28, 2008 at 10:58 AM, Dave Cridland <dave at cridland.net> wrote:

>  No, not too old, as such.
>  Let's call our strictly increasing sequence a modseq. Every time a
>  roster item gets pushed, the server includes the current value of the
>  modseq and increments the modseq. We'll call this the roster item's
>  modseq value.
>  And we're done. No need for remembering what the changes were, no
>  need to do insanely complicated things with diffs, versioning, etc.

Clear, it seems working and it is simple, two nice features.
One further optimization in cases when the roster changes very
dynamically: make the retrieval of the whole roster optional when
there are deleted items, so the the user can decide if and when get it
(there no UI inconsistencies, since the presence of deleted items is
not received and they seem offline)

One possible problem we haven't considered yet: gateways. If I
remember well many do a roster push of only the online contacts and
the contacts aren't actually stored with the main roster (this may
change in implementations, I've seen both approaches). This fact may
be a problem while handling the modseq, since there are more than one
possible entities that may change it.

Fabio Forno, Ph.D.
Bluendo srl http://www.bluendo.com
jabber id: ff at jabber.bluendo.com

More information about the Standards mailing list