comparison mod_spam_reporting/mod_spam_reporting.lua @ 2276:1b12ccbbd9b2

mod_spam_reporting: Continue looking for spam reports even when one <item> does not have one
author Kim Alvefur <zash@zash.se>
date Sat, 20 Aug 2016 17:15:14 +0200
parents 7f228bf82fe5
children bad5dd466427
comparison
equal deleted inserted replaced
2275:7f228bf82fe5 2276:1b12ccbbd9b2
8 8
9 module:hook("iq-set/self/urn:xmpp:blocking:block", function (event) 9 module:hook("iq-set/self/urn:xmpp:blocking:block", function (event)
10 for item in event.stanza.tags[1]:childtags("item") do 10 for item in event.stanza.tags[1]:childtags("item") do
11 local report = item:get_child("report", "urn:xmpp:reporting:0"); 11 local report = item:get_child("report", "urn:xmpp:reporting:0");
12 local jid = item.attr.jid; 12 local jid = item.attr.jid;
13 if not report or not jid then return end 13 if report and jid then
14 local type = report:get_child("spam") and "spam" or 14 local type = report:get_child("spam") and "spam" or
15 report:get_child("abuse") and "abuse" or 15 report:get_child("abuse") and "abuse" or
16 "unknown"; 16 "unknown";
17 local reason = report:get_child_text("reason") or "no reason given"; 17 local reason = report:get_child_text("reason") or "no reason given";
18 module:log("warn", "Received report of %s from JID '%s', %s", type, jid, reason); 18 module:log("warn", "Received report of %s from JID '%s', %s", type, jid, reason);
19 end
19 end 20 end
20 end, 1); 21 end, 1);