view mod_cloud_notify_priority_tag/mod_cloud_notify_priority_tag.lua @ 5381:32a9817c7516

mod_firewall: Initialize compiled chunk just once for all handlers This should fix a case where some stateful dependencies (such as throttles) produce separate instances for every call to new_handler(), leading to surprising behaviour (e.g. rules executed via JUMP CHAIN vs ::deliver would have separate rate limits). This also adds better error handling in case the compiled code fails to run for some reason.
author Matthew Wild <mwild1@gmail.com>
date Fri, 28 Apr 2023 13:27:06 +0100
parents d90ce7dc3f88
children
line wrap: on
line source

local xmlns_push_priority = "tigase:push:priority:0";

-- https://xeps.tigase.net//docs/push-notifications/encrypt/#41-discovering-support
local function account_disco_info(event)
	event.reply:tag("feature", {var=xmlns_push_priority}):up();
end
module:hook("account-disco-info", account_disco_info);

function handle_push(event)
	if event.important then
		event.notification_payload:text_tag("priority", "high", { xmlns = xmlns_push_priority });
	end
end

module:hook("cloud_notify/push", handle_push);