File

mod_unsubscriber/mod_unsubscriber.lua @ 6303:d73cae8d80ce

mod_cloud_notify: actually fix labels diff --git a/mod_cloud_notify/README.md b/mod_cloud_notify/README.md --- a/mod_cloud_notify/README.md +++ b/mod_cloud_notify/README.md @@ -1,7 +1,7 @@ ---- --labels: --- 'Stage-Beta' --summary: 'XEP-0357: Cloud push notifications' +labels: +- 'Stage-Beta' +summary: 'XEP-0357: Cloud push notifications' ---- # Introduction
author Menel <menel@snikket.de>
date Fri, 13 Jun 2025 10:48:20 +0200
parent 5168:e00dc913d965
line wrap: on
line source

assert(module:get_host_type() == "component", "This module should be loaded as a Component");

local st = require "util.stanza";

module:hook("presence/bare", function(event)
	local origin, stanza = event.origin, event.stanza;
	if stanza.attr.type == "probe" then
		-- they are subscribed and want our current presence
		-- tell them we denied their subscription
		local reply = st.reply(stanza)
		reply.attr.type = "unsubcribed";
		origin.send(reply);
		return true;
	elseif stanza.attr.type == nil then
		-- they think we are subscribed and sent their current presence
		-- tell them we unsubscribe
		local reply = st.reply(stanza)
		reply.attr.type = "unsubcribe";
		origin.send(reply);
		return true;
	end
	-- fall trough to default error
end);