Mercurial > prosody-modules
view mod_csi_compat/mod_csi_compat.lua @ 4212:593fd9e0a435
mod_s2s_keepalive: Fix response handler (thanks Ge0rG)
So there are no 'iq-{result,error}/host' events, mod_iq only fires
events for result stanzas that include the full 'id' attr.
This fixes it by hooking the stanza router event.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 16 Oct 2020 13:18:11 +0200 |
parents | db8b256f51ff |
children |
line wrap: on
line source
local st = require "util.stanza"; module:depends("csi"); module:add_feature("google:queue"); module:hook("iq-set/self/google:queue:query", function(event) local origin, stanza = event.origin, event.stanza; (origin.log or module._log)("debug", "Google queue invoked (CSI compat mode)") local payload = stanza:get_child("query", "google:queue"); if payload:get_child("enable") then module:fire_event("csi-client-inactive", event); elseif payload:get_child("disable") then module:fire_event("csi-client-active", event); end -- <flush/> is implemented as a noop, any IQ stanza would flush the queue anyways. origin.send(st.reply(stanza)); return true; end, 10);