annotate mod_support_room/mod_support_room.lua @ 6253:502963b86fbc

:multble modules: fix tab-> space diff --git a/mod_admin_blocklist/README.md b/mod_admin_blocklist/README.md --- a/mod_admin_blocklist/README.md +++ b/mod_admin_blocklist/README.md @@ -24,9 +24,9 @@ admin_blocklist_roles = { "prosody:opera # Compatibility Prosody-Version Status - -------------- ------ - trunk* Works - 13 Works - 0.12 Works + ------------ ------ + trunk* Works + 13 Works + 0.12 Works *as of 2025-06-13 diff --git a/mod_csi_grace_period/README.md b/mod_csi_grace_period/README.md --- a/mod_csi_grace_period/README.md +++ b/mod_csi_grace_period/README.md @@ -16,9 +16,9 @@ pocket is not the best use of radio time Works with [mod_csi_simple][doc:modules:mod_csi_simple] which is included with Prosody. - ------- ------- - trunk* Works - 13 Works - 0.12 Works + ------- ------- + trunk* Works + 13 Works + 0.12 Works *as of 2025-06-13 diff --git a/mod_http_upload_external/README.md b/mod_http_upload_external/README.md --- a/mod_http_upload_external/README.md +++ b/mod_http_upload_external/README.md @@ -87,10 +87,10 @@ Compatibility ============= Prosody-Version Status - ---------------- -------------------- - trunk Works as of 25-06-13 - 13 Works - 0.12 Works + ---------------- -------------------- + trunk Works as of 25-06-13 + 13 Works + 0.12 Works Implementation ============== diff --git a/mod_muc_moderation/README.md b/mod_muc_moderation/README.md --- a/mod_muc_moderation/README.md +++ b/mod_muc_moderation/README.md @@ -27,11 +27,10 @@ modules_enabled = { # Compatibility - ------- --------------- - trunk Works^[as of 2025-06-13] - 13 Works - 0.12 Works - ------- --------------- + ------- --------------- + trunk Works^[as of 2025-06-13] + 13 Works + 0.12 Works ## XEP version diff --git a/mod_s2s_idle_timeout/README.md b/mod_s2s_idle_timeout/README.md --- a/mod_s2s_idle_timeout/README.md +++ b/mod_s2s_idle_timeout/README.md @@ -25,10 +25,9 @@ Compatibility ============= Prosody Version Status - ----------------- ----------- - trunk[^1] Works - 13 Works - 0.12 Works - ----------------- ----------- + ----------------- ----------- + trunk[^1] Works + 13 Works + 0.12 Works [^1]: as of 2025-06-13 diff --git a/mod_s2s_keepalive/README.md b/mod_s2s_keepalive/README.md --- a/mod_s2s_keepalive/README.md +++ b/mod_s2s_keepalive/README.md @@ -34,10 +34,9 @@ Compatibility ============= Prosody Version Status - ----------------- ----------- - trunk[^1] Works - 13 Works - 0.12 Works - ----------------- ----------- + ----------------- ----------- + trunk[^1] Works + 13 Works + 0.12 Works [^1]: as of 2025-06-13
author Menel <menel@snikket.de>
date Fri, 13 Jun 2025 09:58:51 +0200
parents f72aa8840042
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3426
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 local mm = require "core.modulemanager";
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 local st = require "util.stanza";
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 local jid_host, jid_prep = import("util.jid", "host", "prep");
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 local invite_to_room = assert(jid_prep(module:get_option_string(module.name)),
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 "The option " .. module.name .. " must be set");
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 local inviter = module:get_option_string(module.name .. "_inviter", module.host);
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 local invite_reason = module:get_option_string(module.name .. "_reason");
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 module:hook("user-registered", function (event)
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 local user_jid = event.username .. "@" .. event.host;
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 local muc = mm.get_module(jid_host(invite_to_room), "muc");
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 if not muc then
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 module:log("error", "There is no MUC service '%s'", jid_host(invite_to_room));
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 return;
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 end
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 local room = muc.get_room_from_jid(invite_to_room);
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 if room then
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 room:set_affiliation(true, user_jid, "member", invite_reason, { reserved_nickname = event.username });
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 -- Invite them to the room too
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 module:send(st.message({ from = inviter, to = user_jid })
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 :tag("x", { xmlns = "jabber:x:conference", jid = invite_to_room, reason = invite_reason }):up());
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23 else
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
24 module:log("error", "The room %s does not exist, can't invite newly registered user", invite_to_room);
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
25 end
f72aa8840042 mod_support_room: Module that invites newly registered users to a room
Kim Alvefur <zash@zash.se>
parents:
diff changeset
26 end);