我正在尝试从ejabberd删除邮件,但从中获取错误。
<iq xmlns="jabber:client" to="my id" from="other user id" type="error" id="8A056958-DE72-4234-8440-928E8D650948"><remove xmlns="urn:xmpp:archive" with="other user id" start="2018-08-30T10:40:00Z"/><error code="503" type="cancel"><service-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">No module is handling this query</text></error></iq>
请帮助。
答案 0 :(得分:0)
根据我在这里看到的https://www.process-one.net/en/ejabberd/protocols/
Ejabberd不支持旧的邮件归档XEP-0136,而是支持XEP-0313邮件存档管理。
以下XEP可用于在发件人和收件人http://legastero.github.io/customxeps/extensions/message-delete.html上实现消息删除
但是我不知道如何从XEP-0313邮件存档管理中删除邮件-看来ejabberd和XEP本身是不可能的。我没有看到存储在数据库https://github.com/processone/ejabberd/blob/master/src/mod_mam_sql.erl#L110
中的任何消息ID我唯一的想法是将文本消息以及删除状态存储在存档中。然后,在检索历史记录时,将这些删除信号应用于消息