Software /
code /
prosody-modules
File
mod_unsubscriber/mod_unsubscriber.lua @ 5833:76b57bcfe1b2
mod_pubsub_serverinfo: Warm-up opt-in cache
By warming up the cache that contains the opt-in data, the first publication has a better chance of including domain names for remote domains that opt-in.
Without this change, those domains are named only after the _second_ publication, which can take a while. New users are likely thrown off by that.
author | Guus der Kinderen <guus.der.kinderen@gmail.com> |
---|---|
date | Thu, 04 Jan 2024 16:19:55 +0100 |
parent | 5168:e00dc913d965 |
line wrap: on
line source
assert(module:get_host_type() == "component", "This module should be loaded as a Component"); local st = require "util.stanza"; module:hook("presence/bare", function(event) local origin, stanza = event.origin, event.stanza; if stanza.attr.type == "probe" then -- they are subscribed and want our current presence -- tell them we denied their subscription local reply = st.reply(stanza) reply.attr.type = "unsubcribed"; origin.send(reply); return true; elseif stanza.attr.type == nil then -- they think we are subscribed and sent their current presence -- tell them we unsubscribe local reply = st.reply(stanza) reply.attr.type = "unsubcribe"; origin.send(reply); return true; end -- fall trough to default error end);