我们在应用程序中结合Openfire 3.7.1和Mysql数据库添加了jappix迷你聊天功能。
在Openfire管理控制台中启用HTTP绑定。
聊天在另一台服务器上运行良好,但似乎我们不能再从客户端获得名单了。 在构建联系人列表(伙伴)时,我们总是从Openfire获得以下空响应:
获取请求:
<body xml:lang='fr' rid='827616' sid='ad92bb0e' xmlns='http://jabber.org/protocol/httpbind' key='26620f678e64cc9f04ea31b69525db88c9655545' >
<iq xmlns="jabber:client" type="get" id="1" xml:lang="fr">
<query xmlns="jabber:iq:roster"/>
</iq>
</body>
回应:
<body xmlns='http://jabber.org/protocol/httpbind'>
<iq xmlns="jabber:client" type="result" id="1" to="atinel@domain/Chat (1452607565973)">
<query xmlns="jabber:iq:roster"/>
</iq>
</body>
可以在浏览器网络日志或Openfire的审核日志中看到此响应。 我只是设法在两个用户之间创建新名单时获得名单。
可以在数据库和管理控制台中找到名单,我们在其中看到其中两个用于此精确用户(atinel)。 我们还检查了“ofRoster”表上的SQL查询是否为每个用户连接正确形成。
这是预期的回应:
<body xmlns='http://jabber.org/protocol/httpbind'>
<iq xmlns="jabber:client" type="result" id="1" to="atinel@domain/Chat (1452608051572)">
<query xmlns="jabber:iq:roster">
<item jid="team@domain" name="IT Team" subscription="both"/>
<item jid="userdemo@domain" name="Demo user" subscription="both"/>
</query>
</iq>
</body>
你有什么想法解决这个问题吗? 也许我在配置Openfire时错过了一个属性?
我已经清除了名单(和所有其他)缓存,没有任何变化,升级到3.9.3时没有更多结果。
感谢。