Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to use MongoDB for storing ejabberd messages?

I am using ejabberd as an XMPP server. But i wish to store the messages that go through the server and also when was the message sent and to whom and by who. I googled it but could not find how to do it. Help?

like image 452
lovesh Avatar asked Nov 03 '22 05:11

lovesh


1 Answers

You probably need to write a hook in Erlang. See the ejabberd documentation for events and hooks Specifically this one :

user_send_packet(From, To, Packet) -> ok

Use the erlang driver for mongodb . If that's "not possible"/"too difficult", i suggest you call a PHP/Python/Ruby script that just stores the message into mongodb. Its easy to do, but won't scale too well.

Hope this helps.

Some links : mongodb-erlang Erlang driver examples

PS : It's been sometime since i used eJabberd. Any corrections are welcome.

like image 169
Adil Avatar answered Nov 08 '22 03:11

Adil