MUC: Switch hats to new presence APIs
authorMatthew Wild <mwild1@gmail.com>
Sat, 11 Apr 2020 16:45:27 +0100
changeset 10718 9ecad2304297
parent 10717 38159b9adf9f
child 10719 ad86b93093a3
MUC: Switch hats to new presence APIs
plugins/muc/hats.lib.lua
--- a/plugins/muc/hats.lib.lua	Sat Apr 11 16:43:57 2020 +0100
+++ b/plugins/muc/hats.lib.lua	Sat Apr 11 16:45:27 2020 +0100
@@ -1,11 +1,12 @@
 local st = require "util.stanza";
+local muc_util = module:require "muc/util";
 
 local xmlns_hats = "xmpp:prosody.im/protocol/hats:1";
 
-module:hook("muc-broadcast-presence", function (event)
-	-- Strip any hats claimed by the client (to prevent spoofing)
-	event.stanza:remove_children("hats", xmlns_hats);
+-- Strip any hats claimed by the client (to prevent spoofing)
+muc_util.add_filtered_namespace(xmlns_hats);
 
+module:hook("muc-build-occupant-presence", function (event)
 	local aff_data = event.room:get_affiliation_data(event.occupant.bare_jid);
 	local hats = aff_data and aff_data.hats;
 	if not hats then return; end