aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2013-04-25 20:37:20 +0100
committerMatthew Wild <mwild1@gmail.com>2013-04-25 20:37:20 +0100
commite434ebac40c0c7d6ebf5b5593907ce7fe1bb8a55 (patch)
tree0f587a95354aa54cd7e6365fde97fb1050c6c7da
parent3158aca12e6df520df40a51509caae4e588e80c9 (diff)
downloadprosody-e434ebac40c0c7d6ebf5b5593907ce7fe1bb8a55.tar.gz
prosody-e434ebac40c0c7d6ebf5b5593907ce7fe1bb8a55.zip
mod_admin_telnet: Add muc:create(room) (thanks SkyBlue)
-rw-r--r--plugins/mod_admin_telnet.lua14
1 files changed, 12 insertions, 2 deletions
diff --git a/plugins/mod_admin_telnet.lua b/plugins/mod_admin_telnet.lua
index e1b90684..2622a5f9 100644
--- a/plugins/mod_admin_telnet.lua
+++ b/plugins/mod_admin_telnet.lua
@@ -903,13 +903,23 @@ local console_room_mt = {
end;
};
-function def_env.muc:room(room_jid)
- local room_name, host = jid_split(room_jid);
+local function check_muc(jid)
+ local room_name, host = jid_split(jid);
if not hosts[host] then
return nil, "No such host: "..host;
elseif not hosts[host].modules.muc then
return nil, "Host '"..host.."' is not a MUC service";
end
+ return room_name, host;
+end
+
+function def_env.muc:create(room_jid)
+ local room, host = check_muc(room_jid);
+ return hosts[host].modules.muc.create_room(room_jid);
+end
+
+function def_env.muc:room(room_jid)
+ local room_name, host = check_muc(room_jid);
local room_obj = hosts[host].modules.muc.rooms[room_jid];
if not room_obj then
return nil, "No such room: "..room_jid;