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=' [EMAIL PROTECTED]/desktop'
to='[EMAIL PROTECTED]'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<invite to='[EMAIL PROTECTED]'/>
</x>
</message>
--
secondwitch receives:
--
<message from='[EMAIL PROTECTED]/firstwitch'
to='[EMAIL PROTECTED]/laptop'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<invite to='[EMAIL PROTECTED]'>
</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='[EMAIL PROTECTED]''
to='[EMAIL PROTECTED]'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<decline to='[EMAIL PROTECTED]'/>
</x>
</message>
--
(not shown - decline message from darkcave to firstwitch)
secondwitch receives:
--
<message from='[EMAIL PROTECTED]'
to='[EMAIL PROTECTED]/laptop'
type='groupchat'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<item affiliation='none'
jid='[EMAIL PROTECTED]'/pda'
role='outsider'/>
<decline to='[EMAIL PROTECTED]'/>
</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