我成功地将消息存储在表archive
中,但我不确切知道如何检索它们并在打开对话时将它们绘制在屏幕上。
我在点击联系人时尝试发送此iq:
var iq = $iq({type: 'set'}).c('query', {xmlns: 'urn:xmpp:mam:1'}).
c('x',{xmlns:'jabber:x:data',type:'submit'}).c('field',{var:'FORM_TYPE',type:'hidden'})
.c('value','urn:xmpp:mam:1').up().up().c('field',{'var':'with'}).c('value',userID);`
创建了这个:
<iq type="set" xmlns="jabber:client">
<query xmlns="urn:xmpp:mam:1">
<x xmlns="jabber:x:data" type="submit">
<field var="FORM_TYPE" type="hidden">
<value>urn:xmpp:mam:1</value>
</field>
<field var="with">
<value>"to@jid"</value>
</field>
</x>
</query>
</iq>
我也试过这个:
conn.mam.query("from@jid", {
"with": "to@jid",
onMessage: function(message) {
console.log("Message from ", $(message).find("forwarded message").attr("from"),
": ", $(message).find("forwarded message body").text());
return true;
},
onComplete: function(response) {
console.log("Got all the messages");
}
});
但他们都没有给我任何合作。
那么,我该如何获取这些消息呢?
此致!!
修改 我得到的就是这个:
<iq from='me@jabber.local' to='me@jabber.local/42842339324235106273178' type='result'>
<fin xmlns='urn:xmpp:mam:1' complete='true'>
<set xmlns='http://jabber.org/protocol/rsm'>
<first>1462872928907929</first>
<last>1462948310651516</last>
<count>6</count>
</set>
</fin>
</iq>