Mercurial > prosody-modules
view mod_admin_probe/mod_admin_probe.lua @ 5585:5b316088bef5
mod_rest: Use logger of HTTP request in trunk
In Prosody trunk rev c975dafa4303 each HTTP request gained its own log
sink, to make it easy to log things related to each request and group
those messages. Especially where async is used, spreading the request
and response apart as mod_rest does with iq stanzas, this grouped
logging should help find related messages.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 07 Jul 2023 00:10:37 +0200 |
parents | f78661861e98 |
children |
line wrap: on
line source
-- Prosody IM -- Copyright (C) 2014 Florian Zeitz -- -- This project is MIT/X11 licensed. Please see the -- COPYING file in the source package for more information. -- local presence = module:depends("presence"); local send_presence_of_available_resources = presence.send_presence_of_available_resources; local hosts = prosody.hosts; local core_post_stanza = prosody.core_post_stanza; local st = require "util.stanza"; local is_admin = require "core.usermanager".is_admin; local jid_split = require "util.jid".split; module:hook("presence/bare", function(data) local origin, stanza = data.origin, data.stanza; local to, from, type = stanza.attr.to, stanza.attr.from, stanza.attr.type; local node, host = jid_split(to); if type ~= "probe" then return; end if not is_admin(from, module.host) then return; end if 0 == send_presence_of_available_resources(node, host, from, origin) then core_post_stanza(hosts[host], st.presence({from=to, to=from, type="unavailable"}), true); end return true; end, 10);