Subject: Muc members can't retrieve member list
I'm having an issue, where only the room owner can retrieve the member list, and the members cannot.
Here is the room configuration I submit:
As you can see, "muc#roomconfig_getmemberlist" allows participants/visitors/moderators to get the member list. And "muc#roomconfig_whois" is set to anyone.
But when a member requests to retrieve member list:
Response from server:
Here is the response when the owner requests the member list:
As you can see, "88888@mydomain.net" is a member, so he should be able to retrieve the member list.
Is there another setting I need to set before I submit the room configuration?
Here is the room configuration I submit:
- <iq id="MX_15" type="set" to="abc-1496980564842@muc.mydomain.net" xmlns="jabber:client">
- <query xmlns="http://jabber.org/protocol/muc#owner">
- <x type="submit" xmlns="jabber:x:data">
- <field var="muc#roomconfig_roomname" type="text-single">
- <value>Group Chat</value>
- </field>
- <field var="muc#roomconfig_roomdesc" type="text-single">
- <value></value>
- </field>
- <field var="muc#roomconfig_persistentroom" type="boolean">
- <value>1</value>
- </field>
- <field var="muc#roomconfig_publicroom" type="boolean">
- <value>1</value>
- </field>
- <field var="muc#roomconfig_moderatedroom" type="boolean">
- <value>0</value>
- </field>
- <field var="muc#roomconfig_membersonly" type="boolean">
- <value>1</value>
- </field>
- <field var="muc#roomconfig_passwordprotectedroom" type="boolean">
- <value>0</value>
- </field>
- <field var="muc#roomconfig_roomsecret" type="text-single">
- <value></value>
- </field>
- <field var="muc#roomconfig_anonymity" type="list-single">
- <value>semianonymous</value>
- </field>
- <field var="muc#roomconfig_changesubject" type="boolean">
- <value>1</value>
- </field>
- <field var="muc#roomconfig_enablelogging" type="boolean">
- <value>0</value>
- </field>
- <field var="logging_format" type="list-single">
- <value>html</value>
- </field>
- <field var="muc#maxhistoryfetch" type="text-single">
- <value>10</value>
- </field>
- <field var="tigase#presence_delivery_logic" type="list-single">
- <value>PREFERE_PRIORITY</value>
- </field>
- <field var="tigase#presence_filtering" type="boolean">
- <value>0</value>
- </field>
- <field var="tigase#presence_filtered_affiliations" type="list-multi" />
- <field var="muc#roomconfig_getmemberlist" type="list-multi">
- <value>moderator</value>
- <value>participant</value>
- <value>visitor</value>
- </field>
- <field var="muc#roomconfig_whois" type="list-single">anyone</field>
- </x>
- </query>
- </iq>
As you can see, "muc#roomconfig_getmemberlist" allows participants/visitors/moderators to get the member list. And "muc#roomconfig_whois" is set to anyone.
But when a member requests to retrieve member list:
- <iq id="MX_5" to="abc-1496980564842@muc.mydomain.net" type="get" xmlns="jabber:client">
- <query xmlns="http://jabber.org/protocol/muc#admin">
- <item affiliation="member" />
- </query>
- </iq>
Response from server:
- <iq to="88888@mydomain.net/MatriX-Touch" id="MX_5" type="error" from="abc-1496980564842@muc.mydomain.net" xmlns="jabber:client">
- <query xmlns="http://jabber.org/protocol/muc#admin">
- <item affiliation="member" />
- </query>
- <error code="403" type="auth">
- <forbidden xmlns="urn:ietf:params:xml:ns:xmpp-stanzas" />
- </error>
- </iq>
Here is the response when the owner requests the member list:
- <iq to="abc@mydomain.net/MatriX-for-Android" id="MX_16" type="result" from="abc-1496980564842@muc.mydomain.net" xmlns="jabber:client">
- <query xmlns="http://jabber.org/protocol/muc#admin">
- <item jid="88888@mydomain.net" affiliation="member" />
- <item jid="0000@mydomain.net" affiliation="member" />
- </query>
- </iq>
Is there another setting I need to set before I submit the room configuration?