0

我们结合 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 时没有更多结果。

谢谢。

4

0 回答 0