我已按如下方式编辑MongooseIM的配置文件以启用MAM
{mod_mam_odbc_prefs, [pm]},
{mod_mam_odbc_arch, [pm]},
{mod_mam_odbc_user, [pm]},
{mod_mam, []}
重新启动服务器后,当我发送消息时,它会存储在MAM的数据库表中(每条消息有2个条目,我不知道为什么)。
现在,当我发送一个IQ节来获取这些消息时,我得到了“功能未实现”错误的响应。
发送的IQ:
<iq type=”get” id=”page1″ to=”exampleserver.com”><query xmlns=”urn:xmpp:mam:tmp”/></iq>
当我尝试使用http://jabber.org/protocol/disco#info发现功能时,我得到以下回复。
<feature var=”http://jabber.org/protocol/amp”/>
<feature var=”http://jabber.org/protocol/commands”/>
<feature var=”http://jabber.org/protocol/disco#info”/>
<feature var=”http://jabber.org/protocol/disco#items”/>
<feature var=”iq”/>
<feature var=”jabber:iq:last”/>
<feature var=”jabber:iq:register”/>
<feature var=”msgoffline”/>
<feature var=”presence”/>
<feature var=”presence-invisible”/>
<feature var=”urn:xmpp:carbons:1″/>
<feature var=”urn:xmpp:carbons:2″/>
<feature var=”urn:xmpp:mam:tmp”/>
<feature var=”urn:xmpp:ping”/>
<feature var=”urn:xmpp:sic:1″/>
<feature var=”vcard-temp”/>
答案 0 :(得分:0)
您要将IQ解析为exampleserver.com
,而您应将其解析为发件人的JID(即someuser@somedomain.com
)或完全省略to
属性 - 然后服务器将假设它是针对发送者的裸JID。 Section 10.3.3 of RFC-6120描述了使用或不使用to
属性处理IQ。 The basic query example from XEP-0313在IQ元素中不使用to
属性。