Currently the version caps bundle exposed by gabble is huge and has all of the 3-4 OLPC namespaces in, in both their bare and +notify forms, even on clients who have absolutely no interest in OLPC-specific stuff.
I'd like to see the OLPC-specific features moved into an "olpc" bundle, and only enabled if a tp client interacts with the OLPC interfaces in any way. A general-purpose "ensure we have these caps enabled" function which can be sprinkled liberally in the relevant functions would be good, and probably useful for other similar PEP stuff (geolocation, etc).
Additionally, the bare versions (without +notify) of the XMLNS don't appear to be used anywhere, so we can just put the +notify ones in the olpc bundle.
Doesn't this mean that, when using OLPC stuff, we'll have more traffic? (Send updated presence node with new bundle, resulting caps disco queries?)
It would be so bad if Gabble trusted capability bundles with the same node/version as itself.
(In reply to comment #1)
> Doesn't this mean that, when using OLPC stuff, we'll have more traffic? (Send
> updated presence node with new bundle, resulting caps disco queries?)
> It would be so bad if Gabble trusted capability bundles with the same
> node/version as itself.
Gabble does trust versions and bundles which it's aware of, so no, this will not cause any additional traffic. Any Gabble of an appropriate version that sees http://tfo/xmpp/gabble#olpc will know what it means already.
Proposed fix: http://monkey.collabora.co.uk/telepathy-gabble-gadget/
I created another branch containing only this fix: http://monkey.collabora.co.uk/telepathy-gabble-olpc-bundle/
Merged to HEAD.