用于存储消息的 ejabberd mod_archive_odbc 表

Posted

技术标签:

【中文标题】用于存储消息的 ejabberd mod_archive_odbc 表【英文标题】:ejabberd mod_archive_odbc tables for storing messages 【发布时间】:2014-10-01 07:37:32 【问题描述】:

我正在使用 Ejabberd 来实现聊天应用程序,我将 ejabberd 配置改为使用 ODBC (mysql) 而不是使用默认的 Mnesia数据库。

现在我编译并配置了 mod_archive_odbc 并重新启动了服务器。

查询是: 默认情况下不创建用于归档邮件的表。那么我是否需要手动运行 sql 查询来创建表,或者这是我的配置有问题,所以没有创建表?

任何帮助将不胜感激。

【问题讨论】:

如果您使用的是 14.x 版本,如果您能告诉我您如何设置 mod_archive 以使其正常工作,那就太好了。 【参考方案1】:

您需要运行查询。

您可以在here 中找到.sql 文件,这可能就是您要查找的内容。

【讨论】:

感谢您的回答。我已经做到了。它工作正常。 嗨@GopalSRathore 你有机会分享你的config.yml 文件的样本吗?我正在尝试使用与您相同的堆栈设置消息存档,但我很难做到这一点? @rastko ...确定...您使用的是哪个版本? 我使用的是 15.04。提前致谢!【参考方案2】:

mod_archive 实现 XEP-0136: Message Archiving,现在替换为 XEP-0313: Message Archive Management。

mod_mam 包含在 ejabberd 15.06 中,现在这是归档的参考模块。我建议你转向这个版本。

【讨论】:

以上是关于用于存储消息的 ejabberd mod_archive_odbc 表的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Ejabberd 中归档消息并存储在 MongoDB 中

ejabberd 不将未确认的消息存储到离线存储

如何强制eJabberd将加密的消息存储到数据库(mod_mam)而不是将消息存储为纯文本?

Ejabberd:MUC 中的其他消息类型

Mnesia数据库设计,用于存储将来需要发送的消息

Strophe & Ejabberd:发送消息后重新认证的问题