From f0ec18a8b7e8621384970c9803d56c9b1eb92178 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Mon, 8 Aug 2011 18:23:53 +0200 Subject: core.modulemanager, mod_disco: Add support for XEP-0128: Service Discovery Extensions --- plugins/mod_disco.lua | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'plugins/mod_disco.lua') diff --git a/plugins/mod_disco.lua b/plugins/mod_disco.lua index 907ca753..c3a9c54d 100644 --- a/plugins/mod_disco.lua +++ b/plugins/mod_disco.lua @@ -54,6 +54,12 @@ local function build_server_disco_info() done[feature] = true; end end + for _,extension in ipairs(module:get_host_items("extension")) do + if not done[extension] then + query:add_child(extension); + done[extension] = true; + end + end _cached_server_disco_info = query; _cached_server_caps_hash = calculate_hash(query); _cached_server_caps_feature = st.stanza("c", { @@ -81,8 +87,10 @@ end module:hook("item-added/identity", clear_disco_cache); module:hook("item-added/feature", clear_disco_cache); +module:hook("item-added/extension", clear_disco_cache); module:hook("item-removed/identity", clear_disco_cache); module:hook("item-removed/feature", clear_disco_cache); +module:hook("item-removed/extension", clear_disco_cache); -- Handle disco requests to the server module:hook("iq/host/http://jabber.org/protocol/disco#info:query", function(event) -- cgit v1.2.3