Software /
code /
prosody-modules
File
mod_muc_members_json/README.md @ 5603:d2561c1d26f5
mod_client_management: Allow revoking a specific client version
Could be useful in case of a security issue affecting a particular
version. Even if in that case, the more likely use case is revoking all
older versions except the fixed one(s), this can be done with a loop or
improved later.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 14 Jul 2023 15:16:06 +0200 |
parent | 5586:30b9f78b5058 |
child | 5677:31e56562f9bd |
line wrap: on
line source
--- labels: - 'Stage-Beta' summary: 'Import MUC membership info from a JSON file' ... Introduction ============ This module allows you to import MUC membership information from an external URL in JSON format. Details ======= If you have an organization or community and lots of members and/or channels, it can be frustrating to manage MUC affiliations manually. This module will fetch a JSON file from a configured URL, and use that to automatically set the MUC affiliations. It also supports hats/badges. Configuration ============= Add the module to the MUC host (not the global modules\_enabled): Component "conference.example.com" "muc" modules_enabled = { "muc_members_json" } You can define (globally or per-MUC component) the following options: Name Description --------------------- -------------------------------------------------- muc_members_json_url The URL to the JSON file describing memberships muc_members_json_mucs The MUCs to manage, and their associated configuration The `muc_members_json_mucs` setting determines which rooms will be managed by the plugin, and how to map roles to hats (if desired). ``` muc_members_json_mucs = { myroom = { member_hat = { id = "urn:uuid:6a1b143a-1c5c-11ee-80aa-4ff1ce4867dc"; title = "Cool Member"; }; }; } ``` JSON format =========== ``` { "members": [ { "jids": ["user@example.com"] }, { "jids": ["user2@example.com"] }, { "jids": ["user3@example.com"], roles: ["janitor"] } ] } ``` Each member must have a `jids` field, and optionally a `roles` field. Compatibility ============= ------- ------------------ trunk Works 0.12 Works ------- ------------------