Mercurial > prosody-modules
diff mod_groups_shell/mod_groups_shell.lua @ 4431:8b69e0b56db2
mod_groups_shell: add an admin shell command for updating bookmarks
author | Jonas Schäfer <jonas@wielicki.name> |
---|---|
date | Fri, 05 Feb 2021 15:45:55 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_groups_shell/mod_groups_shell.lua Fri Feb 05 15:45:55 2021 +0100 @@ -0,0 +1,31 @@ +module:set_global() + +local modulemanager = require "core.modulemanager"; + +local shell_env = module:shared("/*/admin_shell/env") + +shell_env.groups = {}; + +function shell_env.groups:sync_group(host, group_id) + local print = self.session.print; + + if not host then + return false, "host not given" + end + + local mod_groups = modulemanager.get_module(host, "groups_internal") + if not mod_groups then + return false, host .. " does not have mod_groups_internal loaded" + end + + if not group_id then + return false, "group id not given" + end + + local ok, err = mod_groups.emit_member_events(group_id) + if ok then + return true, "Synchronised members" + else + return ok, err + end +end