[opensource-dev] XMPP group chat questions

Gez Linden gez at lindenlab.com
Tue Feb 1 11:30:41 PST 2011


Latif,

Thank you for summarizing your questions and jumping in on this so quickly.
 My team just reviewed your questions and we have the following responses
for you:

> 1) To which xmpp server should we connect. I'm assuming there will be
> > a new field in the xmlrpc login response specifying it?
>

Yes.  'xmpp_host' will be on aditi soon, as its the only grid that will have
servers available initially.


> > 2) Apart from the login reponse to find out to which xmpp server to
> > connect to, would there be any other dependency on sims, like getting
> > a CAP to give you authenticated username? (Similar CAP is used to
> > obtain Vivox voice server credentials).
>

Nope

> 3) Assuming there are no additional dependencies on sims, will the
> > same credentials (username/password) be used to authenticate to xmpp
> > server as those to login to SL?
>

The XMPP JID will be 'slid at chat.$grid.lindenlab.com', and password
same as SL password. Make sure to use SSL/TLS, as the SASL mechanism
is PLAIN.

> 4) Is group chat implemented based on standard MUC (multi user chat)
> > specification XP-0045?
>

Yes.

> 5) Assuming MUC is used, how is the client supposed to construct
> > addresses of the conferees it's supposed to join.
> > (conference_name at some.xmpps.host.com)
>

For groups with only letters, numbers, and spaces, convert the spaces to '-'
and you are good to go (that's - (dash) not _ (underscore))

The muc room jids will be
'your-group-name at conference.chat.aditi.lindenlab.com', where
your-group-name follows the munging convention.

We'll be posting the project viewer code that shows how we munge more
complex group names to build the conference names, and we'll document it on
the public wiki when we get closer to public release.

> 6) Will XMPP server be sending participant list that can be used in SL
> > clients? We would need to know UUID of the participant in order to
> > provide the functionality in the viewer, such us opening profiles,
> > etc. (are we glad we have display names yet? :)
>

The XMPP server will provide a room roster, yes, but will not provide
UUIDs. For that, you'll need to connect to the People API via its sim
capabilities to look up the SLID-to-UUID mapping. We are looking into
how to provide a Display Name in the XMPP user information response,
but it's not clear yet if we'll do this and which fields will contain
that data if we do.

> 7) Is one of the design goals to allow pure xmpp clients to connect
> > and participate in the group chat?
>

Its a side benefit of our implementation rather than a design goal.  We are
still working on the long term product plan for chat, and how we should
handle pure xmpp clients, so at the moment, its best to consider their
support experimental and subject to change.


> > 8) Proposed bridge between two group chat system for the transitional
> > period, will it be sim <-> xmpp server or xmp server <-> legacy group
> > chat backend
>

We have a few different ideas for how we're going to be supporting this.  We
are performing a few investigative dives after we release the project viewer
to you guys, and we'll discuss transition strategy.

Thanks again for firing up this conversation.  The team is excited to work
with you all on this and see us move to XMPP.

- Gez
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.secondlife.com/pipermail/opensource-dev/attachments/20110201/9938ff97/attachment-0001.htm 


More information about the opensource-dev mailing list