- 'Stage-Alpha' summary: Synchronize MUC admins/owners/members with usermanager ...
This module allows to synchronize the affiliation of a group chat room (MUC) with the members of the organization prosody is running for. The idea is that every user known the prosody's usermanager should be affiliated as a "member" of the MUC. Administrative users will receive the MUC affiliation "owner". This simple scheme allows the module to work without a complicated configuration and it only needs a list of MUC names to manage.
Note that this module will take over managing the affiliations "owner", "admin" and "member" exclusively. Every manual management of these affiliation will get overruled by this module if enabled for the specific MUC. It will not touch affiliations of type "outcast" (banned JIDs) and it will especially not remove the "outcast" affiliation for any JID (at least if a JID is not found to be owner, admin or member).
This module work especially well if you use LDAP authentication like mod_auth_ldap
.
This module should be enabled for a muc
component in your config.
It will load the configuration item muc_organization_rooms
which is a list of MUC room names to manage.
Assuming that dummy.invalid
is your domain, an example configuration would look like this:
Component "conference.dummy.invalid" "muc"
muc_organization_rooms = { "general", "off-topic" }
modules_enabled = { "muc_ldap" }
Right now all users (across all virtual hosts) in prosody's usermanager will get granted at least member permission. One could think of restricting this the a list of virtual hosts. This is not implemented right now.
It uses a timer right now to do its work regurlary, but hooking the correct places inside prosody should be complicated.