5

我正在玩 strophe 和 Openfire 3.7.1(带有用户服务和监控插件)。

我在http://xmpp.org/extensions/xep-0136.html(7.2 检索集合)中阅读了我可以检索存档消息的内容。我已经将monitoring.jar 插件安装到我的openfire 服务器并启用了归档。我读过我需要打开存档来查询存档,但是这个功能已经在监控插件中。

引用监控插件自述文件:“监控插件增加了对 Openfire 聊天存档和服务器统计的支持。它支持生成关于服务器统计的各种报告,以及管理、查看和报告聊天日志。”

我可以在监控 GUI 中看到存档的消息,但我想在我使用 strophe.js 库制作的客户端中检索它。我不知道该怎么做。在 XEP-0136 示例中,他们创建了这样的 IQ:

<iq type='get' xmlns='jabber:client'><retrieve xmlns='urn:xmpp:archive' with='test@localhost'>set</retrieve></iq> { nodeTree=iq, node=retrieve}

但是openfire似乎没有回复。我不确定我是否应该使用开放存档插件,因为如果我检查我的监控选项卡,存档已经在那里。此外,大多数关于开放存档的帖子都有 2 年的历史,所以我不确定它是否仍然受支持。请指教。

最好的祝福,

史蒂文森·李

4

2 回答 2

2

应该是这样的

<iq type='get' id='juliet1'>
  <list xmlns='urn:xmpp:archive'
        with='juliet@capulet.com/chamber'>
  </list>
</iq>


<iq type='get' id='page1'>
  <retrieve xmlns='urn:xmpp:archive'
            with='juliet@capulet.com/chamber>
    <set xmlns='http://jabber.org/protocol/rsm'>
      <max>100</max>
    </set>
  </retrieve>
</iq>

还是你做了别的事情

于 2012-04-12T13:40:45.223 回答
1

我能够让它工作。我基本上必须设置服务器并使用符合 xep-0136 的客户端(vacuum im)对其进行测试。我的 IQ 请求有一些错误,导致服务器错误。正确的请求最初应该是获取聊天列表的列表请求。以及获取特定对话详细信息的检索请求。希望它可以帮助遇到同样问题的人。Vacuum 有一个很棒的 xml 控制台,它向我展示了我建议使用它的需要。我确实在构建它时遇到了问题。但我能够构建和运行我从他们的 svn (http://code.google.com/p/vacuum-im/source/checkout) 获得的 src

于 2011-12-09T17:29:10.683 回答