Mercurial > prosody-modules
annotate mod_spam_report_forwarder/mod_spam_report_forwarder.lua @ 5794:174c77da03f5
mod_server_info: New module to add custom service extension forms to disco
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 12 Dec 2023 19:08:28 +0000 |
parents | 94472eb41d0a |
children | 37e38ee534ea |
rev | line source |
---|---|
5238
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 local st = require "util.stanza"; |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 local destinations = module:get_option_set("spam_report_destinations", {}); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 function forward_report(event) |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 local report = st.clone(event.report); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 report:text_tag("jid", event.jid, { xmlns = "urn:xmpp:jid:0" }); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
8 |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
9 local message = st.message({ from = module.host }) |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 :add_child(report); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
12 for destination in destinations do |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
13 local m = st.clone(message); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 m.attr.to = destination; |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 module:send(m); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
16 end |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
17 end |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 module:hook("spam_reporting/abuse-report", forward_report, -1); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 module:hook("spam_reporting/spam-report", forward_report, -1); |
94472eb41d0a
mod_spam_report_forwarder: Forward spam/abuse reports to one or more JIDs
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
21 module:hook("spam_reporting/unknown-report", forward_report, -1); |