Automatic archiving of MUC messages¶
Automatic storing of MUC messages in user message archive was added as new feature to standard Message Archiving component in upcoming 1.2.0 release.
(currently available in 1.2.0-SNASHOT)
If this feature is enabled MUC messages are stored in Message Archiving repository and are added in same way as for any other messages and
jid of MUC room is used as
jid of user, so if MUC message from
email@example.com was storred then to retrieve this messages
firstname.lastname@example.org needs to be passed as
with attribute to message retrieve request. Retrieved MUC messages will be retrieved in same format as normal message with one exception - each message will contain
name attribute with name of occupant in room which sent this message.
This feature is by default disabled but it is possible to enable this by user. Additionally it is possible to change this default setting on installation level and on hosted domain level to enable this feature, disable feature or allow user to decide if user want this feature to be enabled.
It is worth to mention that even if more than on user resource joined same room and each resource will receive same messages then only single message will be stored in Message Archving repository.
It is also important to note that MUC messages are archived to user message archive only when user is joined to MUC room (so if message was sent to room but it was not sent to particular user)
As mentioned above no additional configuration options than default configuration of Message Archiving component and plugin is needed to let user decide if he wants to enable or disable this feature (but it is disabled by default). In this case user to enable this feature needs to set settings of message archiving adding
muc-save attribute to
default element of request with value set to
true (or to
false to disable this feature).
To configure state of this feature on installation level following line needs to be added to
value may be one of following values:
user- allows value to be set on domain level or by user if domain level setting allows that
true- enables feature for every user in every hosted domain (cannot be overridden by on domain or user level)
false- disables feature for every user in every hosted domain (cannot be overridden by on domain or user level)
To configure state of this feature on domain level, you need to execute vhost configuration command. In list of fields to configure domain, field to set this will be available with following values:
user- allows user to stat of this feature (if allowed on installation level)
true- enables feature for users of configured domain (user will not be able to disable)
false- disables feature for users of configured domain (user will not be able to disable)
Included in documentation