Plugins 如何使用strophe archive pluggin获取特定日期之前的所有聊天记录?

Plugins 如何使用strophe archive pluggin获取特定日期之前的所有聊天记录?,plugins,archive,strophe,Plugins,Archive,Strophe,一、 像往常一样,使用strophe或其中一个插件在互联网上搜索给定功能的文档。在这种情况下是这样的:。 RSM上的规范可能有点让我摸不着头脑,但基本上,如果使用这个插件,一个人如何在一段时间内获得用户和另一个用户之间的所有消息。 我发现这是唯一可用的示例代码: 另一方面,由于缺乏关于strophe、插件等的最新开发和强大文档,这是几乎没有人再使用的东西吗 这里:在调整了我链接的代码之后,我设法让它工作了,有点像。我不想(目前)限制结果集,但第二个参数和rsm变量就是用于此的。 此外,一旦获得集

一、 像往常一样,使用strophe或其中一个插件在互联网上搜索给定功能的文档。在这种情况下是这样的:。 RSM上的规范可能有点让我摸不着头脑,但基本上,如果使用这个插件,一个人如何在一段时间内获得用户和另一个用户之间的所有消息。 我发现这是唯一可用的示例代码:


另一方面,由于缺乏关于strophe、插件等的最新开发和强大文档,这是几乎没有人再使用的东西吗

这里:在调整了我链接的代码之后,我设法让它工作了,有点像。我不想(目前)限制结果集,但第二个参数和rsm变量就是用于此的。 此外,一旦获得集合,就会有一个回调,您可以迭代集合并获取消息。Somecallback应该处理这些消息。Strophe RSM pluggins在这里是需要的,我认为在内部是通过归档插件实现的

connection.archive.listCollections(fullJID, null, fromDate, function (collections, responseRsm) {
//Loop the collections
for (var int = 0; int < collections.length; int++) {
    var lastCollection = collections[int]; 
    rsm = new Strophe.RSM({}); 
    lastCollection.retrieveMessages(rsm, function (messages, responseRsm) {
        someCallback(fullJID, messages);
    });
}

});
listCollections: function(jid, rsm, fromDate, callback) {
var xml = $iq({type: 'get', id: this._connection.getUniqueId('list')}).c('list', {xmlns:Strophe.NS.ARCHIVE, 'with': jid, 'from':fromDate});