Converse.js: Remove setting MAM Preferences on a MUC

Created on 13 Aug 2019  路  1Comment  路  Source: conversejs/converse.js

After logging in, Converse performs a MAM 'prefs' request (spec):

<iq type="get" xmlns="jabber:client" id="e58699cc-c86b-453b-89b8-2788c2b47985:sendIQ">
   <prefs xmlns="urn:xmpp:mam:2"/>
</iq>

Openfire and its Monitoring plugin does not support this, and returns an appropriate error:

<iq xmlns="jabber:client" type="error" id="e58699cc-c86b-453b-89b8-2788c2b47985:sendIQ" to="[email protected]/converse.js-112879704">
   <error code="501" type="cancel"><feature-not-implemented xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error>
</iq>

Unexpectedly, Converse logs a warning that MAM is not supported. MAM is supported, but not its prefs feature (which the XEP defines as optional).

Reproduced with Converse 5.0.0, Openfire 4.4.0 and the Openfire Monitoring plugin 1.8.0.

MUC bug

Most helpful comment

Hi,

MAM-Preference allows you to control what is put into an specific archive

'always' - all messages are archived by default.
'never' - messages are never archived by default.
'roster' - messages are archived only if the contact's bare JID is in the user's roster.

There is only one archive per MUC on a server and not one archive per remote JID that joins a MUC.

So it would make not much sense to allow any remote JID that joins a MUC now set the the archiving preferences to lets say never. This would disable the archive for everyone.

MAM Preferences are there so a JID can change the preferences on its own account MAM.

The options itself just make no sense for MUC in gerneral. If an Admin wants to disable MAM for a MUC he just opens the MUC configuration and disables it (if the server provides that option) or enables it. There is just no need to have MAM Preferences for a MUC.

So i would rename this issue to: Remove setting MAM Preferences on a MUC

>All comments

Hi,

MAM-Preference allows you to control what is put into an specific archive

'always' - all messages are archived by default.
'never' - messages are never archived by default.
'roster' - messages are archived only if the contact's bare JID is in the user's roster.

There is only one archive per MUC on a server and not one archive per remote JID that joins a MUC.

So it would make not much sense to allow any remote JID that joins a MUC now set the the archiving preferences to lets say never. This would disable the archive for everyone.

MAM Preferences are there so a JID can change the preferences on its own account MAM.

The options itself just make no sense for MUC in gerneral. If an Admin wants to disable MAM for a MUC he just opens the MUC configuration and disables it (if the server provides that option) or enables it. There is just no need to have MAM Preferences for a MUC.

So i would rename this issue to: Remove setting MAM Preferences on a MUC

Was this page helpful?
0 / 5 - 0 ratings