Dear XMPP community,
 
I recently had the following requirement for a Multi-User Chat implementation:
 
User A (owner) and User B are in a members-only room. User A modifies the member list according to “9.3 and 9.5 Modifying the Member List” and adds another User C to the member list and also sends an invitation to User C.
 
The room shall then inform User B about the new member / affiliation change. But it doesn’t, because User C is not available in the room yet (he might be offline or currently doesn’t wish to participate in a discussion).
 
9.3 Granting Membership (Example 123) says:
 
“If the user is in the room, the service MUST then send updated presence from this individual to all occupants, indicating the granting of membership…”
 
So, why is there the “If the user is in the room” clause? Unfortunately with that, the above requirement can’t be met.
 
What do you think of the possibility to send the following stanza for this use case (with type=”unavailable”)?
 
<presence
    type='unavailable'
    from='[email protected]/thirdwitch'
    to='[email protected]/desktop'>
  <x xmlns='http://jabber.org/protocol/muc#user'>
    <item affiliation='member'
          jid='[email protected]/pda'
          role='participant'
          nick='thirdwitch'/>
  </x>
</presence>
 
(same is true for other affiliation changes, if the user, whose affiliation has changed is not in the room).
 
Kind regards,
Christian

Reply via email to