Message Archiving

I have install ejabberd 15.03 by using ejabberd-15.03-linux-x86_64-installer.run on ubuntu 14.04. I have enabled the mysql support for this.

Now I want to save all the message in database.

How to enable/install the Message Archiving module?

Where can I get the required database tables and other setting details (changes required in ejabberd.yml file) ?

Thanks

We are currently working on

We are currently working on releasing our mod_mam version. It will not go into ejabberd 15.04, but it is likely to be ready for the next version.
In the meantime, you can use mod_mam and store your messages in Mnesia database.

Hi all. I'm too try to

Hi all.

I'm too try to install mod_mam. Still unsuccesfully.
After installing ejabberd-15.03 from binary package I run it with my old config - all works fine. Then installed without errors module mod_mam by this document https://blog.process-one.net/easy-installer-and-structure-for-ejabberd-c....
And added a single line in config in modules section:
mod_mam: {}

But after restart ejabberd gave errors in log:
----------------------
2015-04-09 18:18:39.241 [critical] <0.38.0>@gen_mod:start_module:90 Problem starting the module mod_mam for host <<"myhost.ru">>
options: []
error: undef
[{mod_mam,start,[<<"myhost.ru">>,[]],[]},
{gen_mod,start_module,3,[{file,"src/gen_mod.erl"},{line,82}]},
{lists,foreach,2,[{file,"lists.erl"},{line,1323}]},
{ejabberd_app,start,2,[{file,"src/ejabberd_app.erl"},{line,68}]},
{application_master,start_it_old,4,
[{file,"application_master.erl"},{line,269}]}]
2015-04-09 18:18:39.241 [critical] <0.38.0>@gen_mod:start_module:95 ejabberd initialization was aborted because a module start failed.
---------------------------

What I doing wrong and how to start working mod_mam?

How did you install it ?

How did you install it ?

System Arch LInux x64. Using

System Arch LInux x64. Using x64 binary package from https://www.process-one.net/en/ejabberd/downloads.

# ejabberdctl modules_update_specs
# ejabberdctl module_install mod_mam
ok
# ./ejabberdctl modules_installed
mod_mam Message Archive Management (XEP-0313)

After this I add to /opt/ejabberd-15.03/conf/ejabberd.yml single line in a modules block:
mod_mam: {}

After restart ejabberd I get the error message in ejabberd.log.

Error says the compiled

Error says the compiled module is not there.

It is likely that you have an issue with the install right on your system.

You should check if mod_mam.beam is in ~ejabberd/.ejabberd-modules (assuming "ejabberd" is the correct user name).

Thanks for you answer,

Thanks for you answer, mremond. I try to check your idea:

[root@TEST-chat bin]# ls /root/.ejabberd-modules/
mod_cron sources
[root@TEST-chat bin]# ./ejabberdctl module_install mod_mam
ok
[root@TEST-chat bin]# ls /root/.ejabberd-modules/
mod_cron mod_mam sources
[root@TEST-chat bin]# vim ../conf/ejabberd.yml ##### <- adding line mod_mam:{}
[root@TEST-chat bin]# ./ejabberdctl stop
[root@TEST-chat bin]# ./ejabberdctl start

And again I see same errors in log file.

On this host I work under root only, I see what ejabberd works with correct module direcotry.
-----
I was try other way:
[root@TEST-chat bin]# cp /root/.ejabberd-modules/mod_mam/ebin/mod_mam.beam /opt/ejabberd-15.03/lib/ejabberd-15.03/ebin/
[root@TEST-chat bin]# ./ejabberdctl module_uninstall mod_mam
[root@TEST-chat bin]# ./ejabberdctl start

------ error log ----
2015-04-14 18:05:47.769 [error] <0.422.0>@gen_mod:stop_module_keep_config:126 {{badmatch,{error,not_found}},[{mod_mam,stop,1,[{file,"src/mod_mam.erl"},{line,171}]},{gen_mod,stop_module_keep_config,2,[{file,"src/gen_mod.erl"},{line,125}]},{gen_mod,stop_module,2,[{file,"src/gen_mod.erl"},{line,112}]},{ext_mod,'-uninstall/1-lc$^0/1-0-',2,[{file,"src/ext_mod.erl"},{line,179}]},{ext_mod,uninstall,1,[{file,"src/ext_mod.erl"},{line,179}]},{ejabberd_ctl,call_command,3,[{file,"src/ejabberd_ctl.erl"},{line,293}]},{ejabberd_ctl,try_call_command,3,[{file,"src/ejabberd_ctl.erl"},{line,269}]},{ejabberd_ctl,process2,3,[{file,"src/ejabberd_ctl.erl"},{line,218}]}]}
-----------------------
[root@TEST-chat bin]# ./ejabberdctl stop
[root@TEST-chat bin]# ./ejabberdctl start

And no errors in log file. I think module loaded and worked... But can test with client only tomorrow.
Is this correct? Unfortunately I still can't understand erlang logs :(

I have been told that you

I have been told that you solve your issue by moving the archive beam file in the ejabberd ebin directory.

Other option will be to test with version 15.04 as some path issues have been solved in that upcoming version.

i'm trying to setup ejabberd

i'm trying to setup ejabberd with postgresql on top of centos .
i used latest ejabberd code from git.

there is no problem to run ejabberd load all mod, but no message go to my db. and i'm not able to register user. it is still possible to setup ejabberd 15 with postgresql? or i should try mysql?

jianghuan wrote: no message

jianghuan wrote:

no message go to my db.

As Mickaël said above, the mod_mam version that's in the ejabberd-contrib repository doesn't support SQL storage yet. This feature is on the TODO list, though.

jianghuan wrote:

and i'm not able to register user.

Do you get an error message?

Syndicate content