Buddy list URI proposal, revised slightly.

C. Scott Ananian cscott at laptop.org
Wed Feb 20 16:06:47 EST 2008


On Wed, Feb 20, 2008 at 11:45 AM, C. Scott Ananian <cscott at laptop.org> wrote:
> Rather than invent a new 'friend' URI scheme, an alternative is to use
>  the standard XMPP scheme:
>   xmpp:xo at nickname.xxx.school.country.xs.laptop.org?roster;name=Full%20Name
>  (see http://www.xmpp.org/extensions/xep-0147.html )  (Thanks, Robert McQueen.)
>
>  The xmpp server on the laptop responds to roster and chat requests at
>  that address like a 'normal' jabber client, so that we interoperate
>  with iChat, etc.  When a school server is present, it may publish a
>  SRV record for _xmpp-server._tcp.nickname.xxx.school.country.xs.laptop.org
>  specifying that it is handling xmpp requests for that user.  (See
>  http://tools.ietf.org/html/rfc3921#page-88 ).
>
>  When attempting to connect to the xmpp server on an XO, we extend
>  rfc3921 in one regard: after (or in parallel with) attempting to
>  resolve the hostname via DNS, we hash it into a link-local address and
>  attempt to contact an xmpp server at that address.

Tomeu asked me to elaborate on the user-facing use case that this
proposal is addressing.

Fundamentally, I'm trying to get us out of the 'directory' business.
We need to provide developers the opportunity to implement other means
to find friends and activity partners, whether via established
technology (facebook, livejournal, wiki, static web pages, google talk
friends lists) or new ideas (Cerebro, "friend finder" activities,
etc).  Without discounting the neighborhood view entirely for
location-specific queries (where's the nearest person who wants to
play chess?) this opens the door for other ways to find buddies, esp.
non-local buddies.

More relevant for Peru, this mechanism as described can also function
without the interaction of any server.  Of course, I'm not
(immediately) addressing the question of how the friends are
discovered -- but the point is to allow lots of different solutions to
the discovery process to exist.  Maybe you type them in by hand, maybe
you use the camera to scan a bar code, maybe you use mDNS, etc, etc.
All I'm defining is what a buddy address looks like after you
'discover' it, and how you can establish a direct IP connection to
your buddy.
 --scott
-- 
 ( http://cscott.net/ )



More information about the Devel mailing list