Mercurial > prosody-modules
view mod_csi_compat/mod_csi_compat.lua @ 5803:f55e65315ba0
mod_pubsub_serverinfo: implemented all basic features
This commit replaces the earlier proof-of-concept to a solution that:
- reports on remotely-connected domains
- uses disco/info to detect if those domains opt-in
- publishes domain names for remote domains that do so
- caches the disco/info response
author | Guus der Kinderen <guus.der.kinderen@gmail.com> |
---|---|
date | Wed, 03 Jan 2024 23:05:14 +0100 |
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);