Java XMPPError:不可接受-尝试将用户踢出房间时进行修改
Java Smack lib具有以下方法:Java XMPPError:不可接受-尝试将用户踢出房间时进行修改,java,xmpp,ejabberd,smack,Java,Xmpp,Ejabberd,Smack,Java Smack lib具有以下方法: public void kickParticipant(String nickname, String reason) 但是有昵称作为参数。我有用户JID的。。。所以,我试着给用户取一个昵称: mChats.get(room).getMembers().forEach(user -> LOG.debug(user.getNick() + ", " + user.getJid())); 我明白了: null, 4_1@localhost nu
public void kickParticipant(String nickname, String reason)
但是有昵称
作为参数。我有用户JID的。。。所以,我试着给用户取一个昵称:
mChats.get(room).getMembers().forEach(user -> LOG.debug(user.getNick() + ", " + user.getJid()));
我明白了:
null, 4_1@localhost
null, 113_1@localhost
我试图通过用户登录(例如“113_1”),但出现错误:
org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPPError: not-acceptable - modify
如文中所述,它的意思是
我尝试以不同的格式传递昵称
,roomname@domen/昵称
,nickname@host
。也犯了同样的错误
但是对于C#,我使用矩阵库。还有一种方法:
KickUser(Jid room, string nickname);
当我尝试将用户登录(例如,113_1
)作为参数传递到此处时,它工作正常
我将用户登录作为参数传递给kick方法,对吗?如果是,如何避免此错误