[JDEV] MUC problems
jabber at dsutton.legend.uk.com
Mon Feb 10 21:51:18 CST 2003
On Mon, Feb 10, 2003 at 03:25:11PM +0100, Mats Bengtsson wrote:
> Hi all,
> I'm experimenting with muc (0.3) (using jabber:iq:browse) and my Tcl JabberLib,
> and have
> a few question marks:
> In creating a room I get:
> jlib0 muc create girls at conference.localhost mats callback
> SEND: <presence id='1007' to='girls at conference.localhost/mats'>
> <x xmlns='http://jabber.org/protocol/muc'/></presence>
> RECV: <message type='groupchat' to='xxx at localhost/coccinella' from='girls at conference.localhost'>
> <body>This room supports the MUC protocol.</body></message>
> <presence id='1007' to='xxx at localhost/coccinella' from='girls at conference.localhost/mats'>
> <x xmlns='http://jabber.org/protocol/muc#user'>
> <item jid='xxx at localhost/coccinella' affiliation='owner' role='moderator'/></x>
> <created xmlns='http://jabber.org/protocol/muc#owner'/></presence>
> I get a welcome message before confirmation that the room has been created.
> Shouldn't the order be reversed?
The presence packet at the end signifies that you are now able to
communicate in the room. The sequence goes as follows: other users
presence, room messages, your presence.
> The browse component doesn't push the newly created room, as I think it should.
> If I "manually" browse the muc the room shows up as expected, however.
I'm not sure what you mean by 'pushing'?
> The servers browse component seems to use a hex string as a resource where
> it should use my nickname. Seems to be something from the jabber:iq:conference
> component. When exiting the room, the presence package has the correct /nickname
> resource. Very confusing.
> SEND: <iq type='get' id='1011' to='girls at conference.localhost'><query xmlns='jabber:iq:browse'/></iq>
> RECV: <iq type='result' id='1011' to='xxx at localhost/coccinella' from='girls at conference.localhost'>
> <conference xmlns='jabber:iq:browse' name='girls' type='public'>
> <user name='mats' jid='girls at conference.localhost/13c6a01dc31309e331c2b018640b9c03b8534327'/></conference></iq>
The hex string is actually a SHA1 hash of the users real jid. Its used
to reference a user, but not reveal the true jid. If the room is set up
to allow people to see the real jid, then just browse
girls at conference.localhost/13c6a01dc31309e331c2b018640b9c03b8534327 and
it will show you the true jid. This also helps to keep compatability to
existing clients that are used to this form with the
groupchat/conferencing module. The real jid is used as the reference, as
a person can keep changing their nick throughout a session, but they
can't change their real jid
> SEND: <presence to='girls at conference.localhost' type='unavailable'/>
> RECV: <presence type='unavailable' to='xxx at localhost/coccinella' from='girls at conference.localhost/mats'/>
> Best Wishes, Mats
> jdev mailing list
> jdev at jabber.org
Email: dsutton at legend.co.uk
Jabber: peregrine at legend.net.uk
More information about the JDev