[standards-jig] gateway handling of legacy contact lists

Joe Hildebrand JHildebrand at jabber.com
Thu Dec 11 20:50:01 UTC 2003

With the caveat that the gateway, on receiving a <presence
type='subscribe'/>, will check to see if you are already subscribed to that
contact on the other side of the gateway.  If so, it just responds <presence
type='subscribed'/>.  If not, it should subscribe (or add to your buddy
list, or whatever) on the other side of the gateway.

This gets rid of a few race conditions.

Joe Hildebrand


> -----Original Message-----
> From: Peter Saint-Andre [mailto:stpeter at jabber.org] 
> Sent: Thursday, December 11, 2003 1:37 PM
> To: standards-jig at jabber.org
> Subject: [standards-jig] gateway handling of legacy contact lists
> Currently, some gateways to legacy IM services handle legacy 
> contact lists by sending <presence type='subscribed'/> from 
> each legacy contact.
> However, this behavior is disallowed in XMPP-IM in order to 
> plug an existing hole in the protocol, which can enable a 
> kind of roster spam.
> There are several possible solutions:
> 1. Change the XMPP-IM spec. Not my preferred approach at this 
> point. The change would be: if the user receives a subscribed 
> stanza from a legacy contact and the user is subscribed to 
> the hostname of the contact's JID (e.g., I'm subscribed to 
> yahoo.jabber.dk and receive a subscribed from 
> 'myfriend at yahoo.jabber.dk), then let it through. This feels 
> like a hack ("special-casing" if you prefer that term) and I 
> really would prefer not to make any changes to the XMPP specs 
> at this point just to enable this gateway behavior, much as I 
> don't like breaking existing functionality.
> 2. Put the onus on the client -- whenever my client receives 
> presence from someone through the gateway, it checks to see 
> if that contact is in the Jabber roster; if not, perform a 
> roster set to add that contact.
> This doesn't give the user the pleasant feeling of "I've 
> registered with the gateway, and look: here are all my contacts!"
> 3. After I register with the gateway, it sends a 
> jabber:x:roster message to me containing all my contacts.
> Option #3 seems like the right way to go, since that is what 
> the jabber:x:roster protocol is for, after all. ;-)
> http://www.jabber.org/jeps/jep-0093.html
> Thoughts?
> Peter
> --
> Peter Saint-Andre
> Jabber Software Foundation
> http://www.jabber.org/people/stpeter.php
> _______________________________________________
> Standards-JIG mailing list
> Standards-JIG at jabber.org
> http://mailman.jabber.org/listinfo/standards-jig

More information about the Standards mailing list