目前,为我们的应用程序运行的ejabberd服务器实例未在mysql中存储脱机消息。示例:user' foo'将消息发送给其名单中的另一个用户' bar。消息未显示在mysql数据库的存档表中,配置了ejabberd,直到bar连接到ejabberd服务器。
这意味着来自foo的消息存储在mnesia表中,直到bar联机,然后在mysql的归档表中。我需要在bar连接之前访问此数据。两种方式: -
哪种方式更好,如何实现相同?
(这里假设离线数据存储在mnesia中。我没有验证相同但在线文章指向相同的内容)
更新
mod_offline仅设为odbc。我刚刚发现的是离线消息存储在假脱机表中,直到用户连接到ejabberd,之后它们被推送到归档表
答案 0 :(得分:0)
在你的ejabberd.yml(配置文件)中设置以下行 -
mod_offline:
access_max_user_messages: max_user_offline_messages
db_type: odbc
如果ejabberd连接到mysql,它就可以工作。ejabberd mysql connection configuration is here