Software /
code /
prosody
File
plugins/mod_stanza_debug.lua @ 10036:045209b41b3a 0.11
mod_pep: Handle presence based subscription outside of util.pubsub (fixes #1372)
Subscriptions were updated for each incoming presence stanza from
contacts. Each subscription change triggered a configuration save, which
would filter out the presence based subscriptions and usually end up
replacing the existing data with identical data. With many subscribed
nodes this adds up to a fair bit of IO bound work that is avoided by
keeping them separate.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 30 May 2019 15:16:56 +0200 |
parent | 8348:c3de5b454ec4 |
child | 10111:0f335815244f |
line wrap: on
line source
module:set_global(); local tostring = tostring; local filters = require "util.filters"; local function log_send(t, session) if t and t ~= "" and t ~= " " then session.log("debug", "SEND: %s", tostring(t)); end return t; end local function log_recv(t, session) if t and t ~= "" and t ~= " " then session.log("debug", "RECV: %s", tostring(t)); end return t; end local function init_raw_logging(session) filters.add_filter(session, "stanzas/in", log_recv, -10000); filters.add_filter(session, "stanzas/out", log_send, 10000); end filters.add_filter_hook(init_raw_logging); function module.unload() filters.remove_filter_hook(init_raw_logging); end