I am trying to write an XMPP client using Smack, and am hosting my own XMPP server (Prosody), which has MAM enabled. Using other clients MAM works fine, and message histories are restored. However, when trying to implement this code myself, I have run into the issue that MamManager.isSupported() returns false.
I have searched for this issue but haven’t found much about it I have probably made some stupid mistake. I am confident the issue is client-side as MAM works with other clients.
Here is the code, which I call after having authenticated with the server:
Hello, thank you for your replies, and sorry for this late response. I have attempted to get a stanza trace. Here is an excerpt; I seem to be declaring a mam feature, though possibly it is the wrong version. I’ve cut things that I think are irrelevant, hope I haven’t missed anything important.
It’s feasible that I’ve done something stupid in setting up the server, which would explain why seemingly nobody else has had this issue.
Your server seems to only support MAM version 2 as suggested by this line:
Smack however only supports MAM version 1 (for now).
I’m pretty sure that prosody can be configured to also support MAM:1, so you might want to look into that.
I suggest joining the prosody support chat if you need help configuring your server
Hey, thanks for the reply again.
The guys on the Prosody support chat say Prosody no longer supports MAM 1 (or 0), so I guess this is now a feature request: are there any plans to introduce MAM 2 support for Smack? If so, when?
Thanks.
Edit: Just in case anyone else ever happens to have the same issue, I have now got it working by installing an old version of the mod_mam module from the community repo Thank you to Paul and Flow!
Glad to hear that your problem is (sort of) fixed for now
I recently had a discussion with @Flow and we came to the conclusion that MAM:2 support probably isn’t too hard to do as there were only very slight changes to the protocol in between versions, so MAM:2 may come pretty soon™.