Let configure the MultiUserChatServerImpl so that public rooms that are members-only may only appear in the discovery list of the user making the disco request is a member of the room.
So the conditions for a room to be discoverable are:
. Be public
. Not locked (and is not allowToDiscoverLockedRooms)
. if restrict members-only --> room is members-only and user is a member of the room (NEW)
http://www.jivesoftware.org/forums/thread.jspa?messageID=100378𘠚
patch attached.
placing on radar for next release.
New discussion with the attached diff is here http://www.igniterealtime.org/community/message/192935#192935. Sorry.
Removing the 'fix version' for all unresolved issues that were scheduled for version 7.8.2. We're releasing this version today - the remaining issues should be rescheduled later.
I've slightly modified the patch and set the default value to false, so that non-public members-only rooms cannot be discovered by members by default.
Reason: The spec says:
The service SHOULD return a full list of the public rooms it hosts (i.e., not return any rooms that are hidden).