openfire 4.0.2
https://github.com/igniterealtime/REST-API-Client
我正在使用REST API客户端将用户添加到房间。 查看调试信息,它似乎返回成功201.但是,用户未添加到聊天室。
1 > POST http://10.10.20.160:9090/plugins/restapi/v1/chatrooms/coffeeroom/members/steve@localhost.localdomain
1 > Authorization: Basic YWRtaW46Zm9ydW0xOA==
1 > Content-Type: application/xml
Apr 06, 2016 12:31:51 AM org.glassfish.jersey.filter.LoggingFilter log
INFO: 1 * Client response received on thread http-nio-8080-exec-2
1 < 201
1 < Access-Control-Allow-Credentials: true
1 < Access-Control-Allow-Headers: origin, content-type, accept, authorization
1 < Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS, HEAD
1 < Access-Control-Allow-Origin: *
1 < Content-Length: 0
1 < Date: Tue, 05 Apr 2016 17:31:51 GMT
1 < Expires: Thu, 01 Jan 1970 00:00:00 GMT
1 < Set-Cookie: JSESSIONID=153sgnfp1oi1x16rjo68kvbwz8;Path=/;HttpOnly
1 < X-Frame-Options: deny
我已使用REST API成功创建了新的群聊室,但无法将任何用户添加到其中。使用此代码。
mRestXmppClient.getRestApiClient().addMember(roomName, username);
只是想知道这个工作我是否需要为用户,房间,角色添加任何特定设置以将用户添加到聊天室?
根据权限(房间附属机构) 我已将steve@localhost.localdomain添加到此会议室的成员中。
但是,我仍然无法将成员添加到群聊室。我在这里错过了什么吗?我想知道是否有任何设置我需要修改房间才能使其工作。这些是我试图添加成员的房间的属性。
任何额外的帮助都会很感激。
答案 0 :(得分:5)
我猜你误解了流程/设计是如何工作的。 通过将REST API上的用户添加到成员/ admin / outcast / owner列表并不意味着用户将作为具有此角色/从属关系的占用者放置在那里。
这意味着用户只关注联盟(是普通会员或管理员等)。关于MUC XMPP术语的非常好的概述是XEP:http://xmpp.org/extensions/xep-0045.html#terms-general
如果您想成为占用者,则需要连接到服务器并加入频道。在此之后,您将作为一个可能具有特定角色的占用者出现。
我建议您在此处阅读有关多用户聊天的更多信息:http://xmpp.org/extensions/xep-0045.html