mod_csi_simple_compat: Module for Prosody 0.11 that adds a setting available from Prosody 0.12
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mod_csi_simple_compat/README.markdown Fri May 01 00:54:32 2020 +0200
@@ -0,0 +1,31 @@
+# About
+
+This module allows using the [mod_csi_simple][doc:modules:mod_csi_simple]
+setting `csi_important_payloads` (added in trunk/0.12) in Prosody 0.11.x.
+
+# Config
+
+```
+modules_enabled = {
+ -- other modules etc
+ "csi_simple",
+ "csi_simple_compat",
+}
+
+csi_important_payloads = {
+ -- Anything in this namespace:
+ "{urn:example:important-namespace}",
+ -- Specific element name and namespace:
+ "{urn:example:xmpp:priority}super-important",
+}
+```
+
+# Example
+
+``` lua
+csi_important_payloads = {
+ -- XEP-0353: Jingle Message Initiation
+ "{urn:xmpp:jingle-message:0}",
+}
+```
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mod_csi_simple_compat/mod_csi_simple_compat.lua Fri May 01 00:54:32 2020 +0200
@@ -0,0 +1,14 @@
+local st = require "util.stanza";
+
+local important_payloads = module:get_option_set("csi_important_payloads", { });
+
+module:hook("csi-is-stanza-important", function (event)
+ local stanza = event.stanza;
+ if st.is_stanza(stanza) then
+ for important in important_payloads do
+ if stanza:find(important) then
+ return true;
+ end
+ end
+ end
+end);