diff options
author | Matthew Wild <mwild1@gmail.com> | 2012-08-05 17:18:35 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2012-08-05 17:18:35 +0100 |
commit | e1cf1cf3880e871b4d28c6dc18d97eefa0122f32 (patch) | |
tree | 2bc3c28f6b3a561701f8e44d2b42add48edbb793 | |
parent | 9abda66396832482b9b1a1c16038485934ad5988 (diff) | |
download | prosody-e1cf1cf3880e871b4d28c6dc18d97eefa0122f32.tar.gz prosody-e1cf1cf3880e871b4d28c6dc18d97eefa0122f32.zip |
hostmanager, mod_disco: Show optional 'name' option from the config in disco#items queries (fixes use-case in #292) (thanks diSabler, mva)
-rw-r--r-- | core/hostmanager.lua | 2 | ||||
-rw-r--r-- | plugins/mod_disco.lua | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/core/hostmanager.lua b/core/hostmanager.lua index 66275d96..3c90dbb9 100644 --- a/core/hostmanager.lua +++ b/core/hostmanager.lua @@ -84,7 +84,7 @@ function activate(host, host_config) end hosts[host] = host_session; if not host:match("[@/]") then - disco_items:set(host:match("%.(.*)") or "*", host, true); + disco_items:set(host:match("%.(.*)") or "*", host, host_config.core.name or true); end for option_name in pairs(host_config.core) do if option_name:match("_ports$") or option_name:match("_interface$") then diff --git a/plugins/mod_disco.lua b/plugins/mod_disco.lua index 6587d435..72c9a34c 100644 --- a/plugins/mod_disco.lua +++ b/plugins/mod_disco.lua @@ -111,8 +111,8 @@ module:hook("iq/host/http://jabber.org/protocol/disco#items:query", function(eve if node and node ~= "" then return; end -- TODO fire event? local reply = st.reply(stanza):query("http://jabber.org/protocol/disco#items"); - for jid in pairs(get_children(module.host)) do - reply:tag("item", {jid = jid}):up(); + for jid, name in pairs(get_children(module.host)) do + reply:tag("item", {jid = jid, name = name~=true and name or nil}):up(); end for _, item in ipairs(disco_items) do reply:tag("item", {jid=item[1], name=item[2]}):up(); |