mod_smacks: Refactor ack requesting to avoid some timer roundtrips
The function was too large to comprehend! Breaking it up helps
readability and reuse.
The timer round rip is only to avoid ordering weirdness when sending
from inside a stanza filter. No need when handling <r> and <a>
CSI interactions both boiled down to sending an <r> immediately.
-- Prosody IM
-- Copyright (C) 2008-2010 Matthew Wild
-- Copyright (C) 2008-2010 Waqas Hussain
--
-- This project is MIT/X11 licensed. Please see the
-- COPYING file in the source package for more information.
--
local host = module:get_host();
local welcome_text = module:get_option_string("welcome_message", "Hello $username, welcome to the $host IM server!");
local st = require "util.stanza";
module:hook("user-registered",
function (user)
local welcome_stanza =
st.message({ to = user.username.."@"..user.host, from = host },
welcome_text:gsub("$(%w+)", user));
module:send(welcome_stanza);
module:log("debug", "Welcomed user %s@%s", user.username, user.host);
end);