Software /
code /
prosody-modules
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 |
parent | 2275:7f228bf82fe5 |
child | 2277: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); |