Diff

plugins/mod_pep.lua @ 11854:b605cbd5f13b

mod_pubsub,mod_pep: Implement 'send_last_published_item' option #1436 Default left as 'never' in mod_pubsub to preserve the previous behavior. Unclear if this is desirable, but can always be changed later. In mod_pep this allows turning off the automatic resending of most recent item.
author Kim Alvefur <zash@zash.se>
date Tue, 19 Oct 2021 18:11:50 +0200
parent 11724:86e68c0a4f05
child 11856:14a679588b7b
line wrap: on
line diff
--- a/plugins/mod_pep.lua	Tue Oct 19 16:37:32 2021 +0200
+++ b/plugins/mod_pep.lua	Tue Oct 19 18:11:50 2021 +0200
@@ -187,6 +187,7 @@
 			["max_items"] = 1;
 			["persist_items"] = true;
 			["access_model"] = "presence";
+			["send_last_published_item"] = "on_sub_and_presence";
 		};
 
 		autocreate_on_publish = true;
@@ -260,6 +261,8 @@
 end
 
 local function resend_last_item(jid, node, service)
+	local ok, config = service:get_node_config(node, true);
+	if ok and config.send_last_published_item ~= "on_sub_and_presence" then return end
 	local ok, id, item = service:get_last_item(node, jid);
 	if not (ok and id) then return; end
 	service.config.broadcaster("items", node, { [jid] = true }, item);