Software /
code /
prosody-modules
File
mod_muc_members_json/README.md @ 6112:4c0e3fe57e92
mod_compliance_latest: Gracefull error logging on missing dependency.
diff --git a/mod_compliance_latest/README.md b/mod_compliance_latest/README.md
--- a/mod_compliance_latest/README.md
+++ b/mod_compliance_latest/README.md
@@ -9,13 +9,15 @@ rockspec:
# Introduction
-This module will always require and load to the lastest compliance tester we have in the community modules.
-Currently this is [mod_compliance_2023].
+This meta-module will always `require` (and therefore auto-load) the lastest compliance tester we have in the community modules.
+Currently this is [mod_compliance_2023]. See the linked module for further details.
+
+If you do not use the *Prosody plugin installer* this module will likely have limited value to you.
+You can also just install the current compliance tester manually.
# Configuration
-Just load this module as any other module and it will automatically install [mod_compliance_2023] if you use the Prosody plugin installer.
-See the linked module for further details.
+Just load this module as any other module and it will automatically install and load [mod_compliance_2023] if you use the *Prosody plugin installer*.
# Compatibility
diff --git a/mod_compliance_latest/mod_compliance_latest.lua b/mod_compliance_latest/mod_compliance_latest.lua
--- a/mod_compliance_latest/mod_compliance_latest.lua
+++ b/mod_compliance_latest/mod_compliance_latest.lua
@@ -1,1 +1,6 @@
-module:depends("compliance_2023");
+local success, err = pcall(function() module:depends("compliance_2023") end)
+
+if not success then
+ module:log("error", "Error, can't load module: mod_compliance_2023. Is this module downloaded in a folder readable by prosody?")
+ return 1, "Error: Couldn't load dependency mod_compliance_2023."
+end
author | Menel <menel@snikket.de> |
---|---|
date | Mon, 23 Dec 2024 12:58:03 +0100 |
parent | 5716:6696075e26e2 |
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). ``` lua muc_members_json_mucs = { -- This configures hats for the myroom@<this MUC host> MUC myroom = { -- The optional field 'member_hat' defines a hat that will be -- added to any user that is listed in the members JSON -- (regardless of what roles they have, if any) member_hat = { id = "urn:uuid:6a1b143a-1c5c-11ee-80aa-4ff1ce4867dc"; title = "Cool Member"; }; -- The optional field 'team_hats' defines one or more hats -- that will be assigned to users that have the specified -- roles in the JSON. team_hats = { janitor = { id = "urn:uuid:ec32f550-7d5f-11ee-81ee-6b139cac3bf6"; title = "Janitor"; } } }; } ``` JSON format =========== ``` json { "members": [ { "jids": [ "user@example.com", "user2@example.com" ] }, { "jids": ["user3@example.com"], "roles": ["janitor"] } ] } ``` The JSON format must be an object with a `members` array. Each member must have a `jids` field, and optionally a `roles` field (both are arrays of strings). Compatibility ============= ------- ------------------ trunk Works 0.12 Works ------- ------------------