Diff

plugins/mod_mam/mod_mam.lua @ 11268:e3f6f0b39e7b

mod_mam: Advertise extended MAM 0.7.x behind a feature flag In order to ease testing until the extended feautres are all implemented. Also TODOs for all the sub-features.
author Kim Alvefur <zash@zash.se>
date Mon, 30 Nov 2020 21:00:45 +0100
parent 11260:08b397c21805
child 11269:342ac5d806fb
line wrap: on
line diff
--- a/plugins/mod_mam/mod_mam.lua	Tue Jan 12 19:19:15 2021 +0100
+++ b/plugins/mod_mam/mod_mam.lua	Mon Nov 30 21:00:45 2020 +0100
@@ -1,7 +1,7 @@
 -- Prosody IM
 -- Copyright (C) 2008-2017 Matthew Wild
 -- Copyright (C) 2008-2017 Waqas Hussain
--- Copyright (C) 2011-2017 Kim Alvefur
+-- Copyright (C) 2011-2020 Kim Alvefur
 --
 -- This project is MIT/X11 licensed. Please see the
 -- COPYING file in the source package for more information.
@@ -10,6 +10,7 @@
 --
 
 local xmlns_mam     = "urn:xmpp:mam:2";
+local xmlns_mam_ext = "urn:xmpp:mam:2#extended";
 local xmlns_delay   = "urn:xmpp:delay";
 local xmlns_forward = "urn:xmpp:forward:0";
 local xmlns_st_id   = "urn:xmpp:sid:0";
@@ -512,8 +513,18 @@
 module:hook("message/bare", message_handler, 0);
 module:hook("message/full", message_handler, 0);
 
+local advertise_extended = module:get_option_boolean("mam_advertise_extend", false);
+-- TODO before-id, after-id
+-- TODO ids
+-- TODO page flipping
+-- TODO archive metadata query
+-- TODO delete feature flag option
+
 module:hook("account-disco-info", function(event)
 	(event.reply or event.stanza):tag("feature", {var=xmlns_mam}):up();
+	if advertise_extended then
+		(event.reply or event.stanza):tag("feature", {var=xmlns_mam_ext}):up();
+	end
 	(event.reply or event.stanza):tag("feature", {var=xmlns_st_id}):up();
 end);