Mercurial > 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 |
| 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); |
