[Standards] [XEP-0045 v. 1.23pre3] outsiders and 'broadcast' invitations
James Tomson
jtomson at horizonwimba.com
Sun Oct 21 14:42:54 CDT 2007
For our xmpp deployment, we mostly use MUCs for spontaneous unique
group chat rooms, rather than the irc-model of persistent, moderated
rooms.
Luckily for us, XEP-0045 is flexible enough to accommodate this, but
lacks one bit of polish in our use cases: the built-in ability to get
a list of pending invitees to the current room.
We're currently doing it by having the inviter set the message stanza
to type='groupchat' when sending the invite, so other occupants are
made aware:
(firstwitch and secondwitch are in the 'darkcave' room)
firstwitch sends invite to thirdwitch:
--
<message from=' crone1 at shakespeare.lit/desktop'
to='darkcave at macbeth.shakespeare.lit'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<invite to='hag66 at shakespeare.lit'/>
</x>
</message>
--
secondwitch receives:
--
<message from='darkcave at macbeth.shakespeare.lit/firstwitch'
to='wiccarocks at shakespeare.lit/laptop'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<invite to='hag66 at shakespeare.lit'>
</x>
</message>
(not shown - the invite message from darkcave to thirdwitch, on
behalf of firstwitch)
The new 'outsider' role makes it simple for the decline to be relayed
back to the room occupants:
thirdwitch sends decline:
--
<message from='hag66 at shakespeare.lit''
to='darkcave at macbeth.shakespeare.lit'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<decline to='crone1 at shakespeare.lit'/>
</x>
</message>
--
(not shown - decline message from darkcave to firstwitch)
secondwitch receives:
--
<message from='darkcave at sharespeare.lit'
to='wiccarocks at shakespeare.lit/laptop'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<item affiliation='none'
jid='hag66 at shakespeare.lit'/pda'
role='outsider'/>
<decline to='crone1 at shakespeare.lit'/>
</x>
</message>
--
Anyway we find this pretty handy, and allows for the client UI to
keep a nice updated display of pending invitees.
In addition to 'broadcast invitations', we have added extensions to
allow the inviter to cancel its pending invitations at any time, or
have the room do it on their behalf after a specified timeout. For
the sake of brevity I won't stanza-spam these case unless there is
interest :D
I don't know if it any of these features are useful enough to others
to consider inclusion into XEP-0045 v 1.23pre3, or some future version?
-James
---
James Tomson
james at wimba dot com
More information about the Standards
mailing list