Hi,
I configure the mod_mam like manual speaks.
mod_mam:
default: always
cache_size: 1000
cache_life_time: 3600
There are not errors in logs:
ejabberd.log
2015-07-27 16:45:35.287 [info] <0.7.0> Application inets started on node ejabberd@localhost
2015-07-27 16:45:35.334 [info] <0.463.0>@ejabberd_listener:listen_tcp:189 Reusing listening port for 5222
2015-07-27 16:45:35.334 [info] <0.464.0>@ejabberd_listener:listen_tcp:189 Reusing listening port for 5269
2015-07-27 16:45:35.334 [info] <0.466.0>@ejabberd_listener:listen_tcp:189 Reusing listening port for 4560
2015-07-27 16:45:35.334 [info] <0.467.0>@ejabberd_listener:listen_tcp:189 Reusing listening port for 5280
2015-07-27 16:45:35.334 [info] <0.37.0>@ejabberd_app:start:74 ejabberd 15.06 is started in the node ejabberd@localhost
2015-07-27 16:45:35.334 [info] <0.7.0> Application ejabberd started on node ejabberd@localhost
2015-07-27 16:45:45.257 [info] <0.467.0>@ejabberd_listener:accept:299 (#Port<0.3759>) Accepted connection 127.0.0.1:56412 -> 127.0.0.1:5280
2015-07-27 16:45:45.258 [info] <0.468.0>@ejabberd_http:init:157 started: {gen_tcp,#Port<0.3759>}
2015-07-27 16:45:45.258 [info] <0.467.0>@ejabberd_listener:accept:299 (#Port<0.3760>) Accepted connection 127.0.0.1:56413 -> 127.0.0.1:5280
2015-07-27 16:45:45.258 [info] <0.469.0>@ejabberd_http:init:157 started: {gen_tcp,#Port<0.3760>}
2015-07-27 16:45:45.258 [info] <0.467.0>@ejabberd_listener:accept:299 (#Port<0.3761>) Accepted connection 127.0.0.1:56414 -> 127.0.0.1:5280
2015-07-27 16:45:45.258 [info] <0.470.0>@ejabberd_http:init:157 started: {gen_tcp,#Port<0.3761>}
2015-07-27 16:45:45.258 [info] <0.467.0>@ejabberd_listener:accept:299 (#Port<0.3762>) Accepted connection 127.0.0.1:56415 -> 127.0.0.1:5280
2015-07-27 16:45:45.258 [info] <0.471.0>@ejabberd_http:init:157 started: {gen_tcp,#Port<0.3762>}
2015-07-27 16:45:45.259 [info] <0.467.0>@ejabberd_listener:accept:299 (#Port<0.3763>) Accepted connection 127.0.0.1:56416 -> 127.0.0.1:5280
2015-07-27 16:45:45.259 [info] <0.472.0>@ejabberd_http:init:157 started: {gen_tcp,#Port<0.3763>}
2015-07-27 16:48:57.052 [info] <0.391.0>@mod_muc_room:terminate:858 Stopping MUC room grupoteste@conference.vvdesk07
2015-07-27 16:49:02.058 [info] <0.37.0>@ejabberd_app:stop:92 ejabberd 15.06 is stopped in the node ejabberd@localhost
error.log
015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'shaper' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'modules' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'max_fsm_queue' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'loglevel' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'log_rotate_size' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'log_rotate_date' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'log_rotate_count' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'log_rate_limit' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'listen' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'auth_method' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'allow_contrib_modules' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'acl' will be likely ignored
2015-07-27 16:45:34.490 [error] <0.37.0>@ejabberd_config:validate_opts:752 unknown option 'access' will be likely ignored
I do a test using Gajim 0.16.2 Jabber client and the history are not returned on another computer. How do I test this functionality? There is a client that works? Did miss something?
Thanks.
You can look in ejabberd's
You can look in ejabberd's WebAdmin -> Nodes -> your node -> Database: if the messages are stored, you can see the numbers increasing in the table archive_msg when messages are stored.
What clients support XEP-0313? I don't know. But you can use Gajim's XML console to query the archives yourselves, to ensure server's part workshttp://xmpp.org/extensions/xep-0313.html#query
Thanks for your answer. The
Thanks for your answer.
The table archive_msg stored the messages. Now, I am trying to query the archives for Gajim's XML console. No success yet.
I get errors. commands <iq
I get errors.
commands
<iq type='set' id='juliet1'>
<query xmlns='urn:xmpp:mam:0' queryid='f27' />
</iq>
returned:
<!-- In 29/07/2015 10:50:22 -->
<iq from='icaro@ejabberd.zumpy.com.br' to='icaro@ejabberd.teste.com.br/Gajim' id='juliet1' type='error'>
<query xmlns='urn:xmpp:mam:0' queryid='f27'/>
<error code='405' type='cancel'>
<not-allowed xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
</error>
</iq>
<!-- In 29/07/2015 10:50:22 -->
<r xmlns='urn:xmpp:sm:2'/>
<!-- Out 29/07/2015 10:50:22 -->
<a xmlns="urn:xmpp:sm:2" h="65" />
I was able to retrieve the
I was able to retrieve the historical thus:
<iq type='get' id='juliet'>
<query xmlns='urn:xmpp:mam:0'>
<start>2015-07-00T00:00:00Z</start>
<end>2015-07-029T13:23:54Z</end>
</query>
</iq>
The error was on attribute type configured as 'set' and not as 'get'
Thank you.
Isn't this still a problem
Isn't this still a problem though? Readinghttp://xmpp.org/extensions/xep-0313.html#query , it appears this should be 'set' rather than 'get'. Is ejabberd implementing support for MAM differently than the protocol doc?
The protocol is the reference
The protocol is the reference in what to implement. You should try with latest code (from Github) or wait for 15.09 as we improvement and fix many things in the last month.