如何使用MongoDB存储ejabberd消息?

lov*_*esh 5 ejabberd mongodb

ejabberd用作XMPP服务器.但我希望存储通过服务器的消息,以及发送消息的时间以及发送给谁和谁.我用谷歌搜索但却找不到怎么做.救命?

Adi*_*dil 2

您可能需要在 Erlang 中编写一个钩子。请参阅ejabberd 文档了解事件和挂钩具体是这个:

user_send_packet(From, To, Packet) -> ok

使用mongodb 的 erlang 驱动程序。如果这是“不可能”/“太难”,我建议您调用一个 PHP/Python/Ruby 脚本,将消息存储到 mongodb 中。它很容易做到,但扩展性不太好。

希望这可以帮助。

一些链接: mongodb-erlang Erlang 驱动程序示例

PS:我已经有一段时间没有使用 eJabberd 了。欢迎任何指正。