#1129 mod_mam_muc support for mam:2 on Prosody 0.10
What steps will reproduce the problem?
1. Install recent version of prosody-modules
2. Open Conversations XMPP client
3. Open MUC settings for details
What is the expected output?
- Settings show: mam_muc: yes
What do you see instead?
- Settings view shows: mam_muc: no
- No MAM support for MUCs :-(
What version of the product are you using? On what operating system?
prosod-modules version of 2018-04-17
Please provide any additional information below.
Configuration was not changed in the meantime - only prosody-modules update triggered and new Conversations App version. Maybe there is some imcompatibility with the new Conversations app. Not sure if this is maybe related: https://hg.prosody.im/prosody-modules/rev/39994c6bb314
Exactly the same on my server in association with the Conversations app since version 2.0
Hi folks, thanks for the report.
The current mod_mam_muc does not support the latest version of MAM when used with Prosody 0.10 (it works with trunk only). On 0.10 it uses the previous version of MAM.
I've therefore converted this issue to a feature request.
titleMAM_MUC not supported on Conversations
mam_muc worked fine with prosody 0.10 until the latest update. I had to downgrade mod_mam_muc to fix this. Bug or feature?
Clients: Conversations 2.x, converse.js / inverse.js
@Frank which version are you running now?
This is because Conversations tries to use only mam:2 OR mam:0, while Prosody 0.10 announces mam:1.
Prosody should announce mam:0 too.
same issues here : prosody 0.10 and lastest module update.
Revert of mod_mam_muc to old version solved my issue.
Just want to post a summary of this issue.
The problem is:
There are two versions of MAM in use, version 1 and version 2. mod_mam_muc supports version 2 when running with Prosody trunk, and supports version 1 when running with Prosody 0.10.
Conversations only supports version 2 (it checks that the server announces version 2 support).
mod_mam_muc had a bug where it announced support for version 2, even when it was running on 0.10. This broke some clients (e.g. Gajim, see #1118). Based on user reports, it seems Conversations somehow works even when version 1 is used but version 2 is announced. My guess is that Conversations in this mode will quietly use twice as much bandwidth (because it will sync from MAM all the messages it already received).
The solutions are:
- Use Prosody trunk nightly builds, where version 2 is supported and everyone is happy
- Revert this module to the buggy version, where Conversations works (inefficiently) and other clients break
- Wait for mod_mam_muc to support version 2 in Prosody 0.10. It's not clear if/when this will happen (our priority is finishing and releasing trunk), but it is a community module: if someone wanted to work on this we would support them.
Hope this helps to make the issue more clear.
@Matt this is about injecting stanza-ids into live messages right? Conversations always uses the last received message as a starting point for the catch up. If that message has a stanza-id it will be used. If not it will fall back to using the time stamp. I’m not aware of any bugs that would cause Conversations to receive the messages twice. So if this is just about Conversations it should be relatively save to revert to an old version of the module.
@Daniel: That helps further clarify the matter, thanks!
If Conversations functions ok without stanza-id, would you consider enabling MUC MAM also when the server advertises :1 support but not :2? That would make it compatible with Prosody 0.10 without needing to break the protocol or other clients.