[Standards] Meta-Contacts: implementation notes

Pedro Melo melo at simplicidade.org
Thu Apr 3 07:29:00 UTC 2008

On Apr 2, 2008, at 11:55 PM, Peter Saint-Andre wrote:
> Pedro Melo wrote:
> <snip/>
> I'll let the XEP authors comment on your feedback. :)
>> 5. Final thoughts
>> I must admit that the lack of private storage in the GTalk service  
>> is a
>> big turn off for us.
> Perhaps they will deploy PEP someday. :)

Well, if our hopes are good for anything, maybe then will deploy PEP/ 
PIP first, and simulate private-storage over PIP.

That would be my best-case scenario.

>> If we are willing to loose the order attribute (and I would not like
>> that, but I want something that just works), there is a fallback
>> protocol that requires only the usual roster to keep meta- 
>> contacts. If
>> we assume that roster items with the same name + groups  
>> (basically, if
>> the tag algorithm above yields the same hash for your roster entries)
>> belong to the same meta-contact, we can implement meta-contacts  
>> without
>> the need of any extra storage, just the roster.
>> The two down-sides are:
>>  1. you must rename the roster entries and stick them in the same  
>> groups
>> if they belong to the same meta-contact: personally I have no  
>> problems
>> with this, because it works pretty well even if I log in with a  
>> contact
>> without meta-data support.
>>  2. you loose the user-order of contacts inside a meta-contact: so  
>> you
>> have to revert to the usual presence priority.
>> We used this method (client-side calc of hash based on the above
>> algorithm) in our windows client for 5 years now, with good results.
> This is interesting. Are you saying that we don't need private data
> storage or PEP at all for Metacontacts? That would certainly simplify
> the deployment task. :)


For more than 5 years now, this is being used in production at SAPO.  
If several contacts have the same hash (based on the algorithm above)  
then the client displays them in the same meta-contact.

No need for extra storage.

As I said, you loose the order attribute inside a meta-contact, but  
the other problems, like renaming, are straight forward then.

Best regards,
Pedro Melo
Blog: http://www.simplicidade.org/notes/
XMPP ID: melo at simplicidade.org

More information about the Standards mailing list