It’s currently unspecified in XEP-0045 § 7.8.2 what should be done when
multiple mediated invitations are sent, or when an invitation is sent to
someone already in the room.
Part of me wants to just duplicate the wording in XEP-0249 § 4[1],
because it’s fairly straight forward on the server end to just blindly forward
invitations, and clients may be able to reuse logic for XEP-0249.
OTOH, since it’s a mediated invitation, the MUC service already has
state about pending invitations and room occupants. I don’t see a way for the
service to determine that an invitation was successfully sent to a given JID
(the JID may be offline, the JID’s server may silently drop messages from
contacts not in its roster, the JID may simply be ignoring the invitation), so
in that case it’s probably best to simply send an invitation to the JID when a
mediated invitation is requested.
However, in the case that a JID is already in a room it’s probably
better to just ignore the mediated invitation, however this doesn’t provide any
feedback to the inviter that the invitee is already there — but this is true in
direct invitations as well — and supplying that information may allow a form of
harvesting in anonymous rooms: if an inviter suspects a person is in a room,
they can send a mediated invitation to the room to the suspect and see if
there’s an “already in room” response.
Given this, I’m leaning on just duplicating the behavior of XEP-0249.
-bjc
[1]If a client receives multiple invitations to the same room (e.g., a mediated
invitation as defined in XEP-0045 and a direct invitation as defined here), the
client SHOULD present only one of the invitations to a human user. If a client
receives an invitation to a room in which the user is already an occupant, the
client SHOULD silently discard the invitation.
_______________________________________________
Standards mailing list
Info: http://mail.jabber.org/mailman/listinfo/standards
Unsubscribe: [email protected]
_______________________________________________