view mod_uptime_presence/mod_uptime_presence.lua @ 4629:0e60ce83205c

mod_s2s_keepalive: Ignore errors from the local server If a stanza can't be delivered and instead an bounce is generated, the origin of the error, when different from the stanza 'from' should be indicated in the 'by' attribute of the <error>, which we look for here so this doesn't count as a successful ping. An error that does come from the remote means we have connectivity, but probably no XEP-0199 handling. This is fine. We care about connectivity, not protocol.
author Kim Alvefur <zash@zash.se>
date Wed, 21 Jul 2021 15:57:13 +0200
parents d3497b81a3b5
children
line wrap: on
line source

local st = require"util.stanza";
local datetime = require"util.datetime";

local presence = st.presence({ from = module.host })
	:tag("delay", { xmlns = "urn:xmpp:delay",
		stamp = datetime.datetime(prosody.start_time) });

module:hook("presence/host", function(event)
	local stanza = event.stanza;
	if stanza.attr.type == "probe" then
		presence.attr.id = stanza.attr.id;
		presence.attr.to = stanza.attr.from;
		module:send(presence);
		return true;
	end
end, 10);