Annotate

mod_muc_auto_member/mod_muc_auto_member.lua @ 5602:eae5599bc0b4

mod_client_management: Add way to revoke (one) client by software This is a bit hacky but it works.
author Kim Alvefur <zash@zash.se>
date Fri, 14 Jul 2023 15:01:56 +0200
parent 5162:243c156074d3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5162
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 module:hook("muc-occupant-joined", function (event)
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2 local room = event.room;
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 local occupant_jid = event.occupant.bare_jid;
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4 local aff = room:get_affiliation(occupant_jid);
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5 if aff then return; end -- user already registered
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
6 module:log("debug", "Automatically registering %s as a member in %s", occupant_jid, room.jid);
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7 room:set_affiliation(true, occupant_jid, "member");
243c156074d3 mod_muc_auto_member: New module to automatically make MUC participants members
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8 end);