我试图根据房间JID
从特定群组中获取加入的会员列表,有几种方法存在,如下所述:
XMPPError: forbidden - auth
XMPPError: forbidden - auth
但是没有一个工作得到异常XMPPError: forbidden - auth
,似乎隐私存在问题,我无法弄明白。
注意:JID表格中的房间名称" roomName @ service"
答案 0 :(得分:0)
根据xmpp文档,房间/组应该是非匿名的,以检索所有成员列表。因此,请尝试在服务器端的.yml或配置文件中设置anonymous = false,或者您也可以在创建会议室时在配置中进行设置。
请至少不要隶属关系来检索成员列表
答案 1 :(得分:-1)
Use this :
multiUserChatManager = MultiUserChatManager.getInstanceFor(XMPPConnection);
MultiUserChat muc =multiUserChatManager.getMultiUserChat("dopee@conference.104.155.155.5");
try {
List<Affiliate> admin=muc.getAdmins();
System.out.println("Admin=====>>>"+admin);
List<String> userlist=muc.getOccupants();
List<Affiliate> member=muc.getMembers();
List<Occupant> memBer=muc.getParticipants();
List<Affiliate> owner=muc.getOwners();
System.out.println("userlist=====>>>"+ userlist.toString());
System.out.println("usercount=====>>>"+ muc.getOccupantsCount());
} catch (SmackException.NoResponseException e) {
e.printStackTrace();
} catch (XMPPException.XMPPErrorException e) {
e.printStackTrace();
} catch (SmackException.NotConnectedException e) {
e.printStackTrace();
}