aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2012-04-21 21:16:53 +0100
committerMatthew Wild <mwild1@gmail.com>2012-04-21 21:16:53 +0100
commit615325cf153e6ebb5f07bb92545bfcedf1c2266b (patch)
tree240cc0c33ca76121a997dccc8827768c2ed61470
parentba612384491542ac7603c0b264c675c0b4a81adc (diff)
downloadprosody-615325cf153e6ebb5f07bb92545bfcedf1c2266b.tar.gz
prosody-615325cf153e6ebb5f07bb92545bfcedf1c2266b.zip
mod_motd: Send only to resource coming online, not the user's bare JID (fixes #282)
-rw-r--r--plugins/mod_motd.lua6
1 files changed, 3 insertions, 3 deletions
diff --git a/plugins/mod_motd.lua b/plugins/mod_motd.lua
index d567288b..646bf8cd 100644
--- a/plugins/mod_motd.lua
+++ b/plugins/mod_motd.lua
@@ -13,15 +13,15 @@ local motd_jid = module:get_option_string("motd_jid", host);
if not motd_text then return; end
+local jid_join = require "util.jid".join;
local st = require "util.stanza";
motd_text = motd_text:gsub("^%s*(.-)%s*$", "%1"):gsub("\n%s+", "\n"); -- Strip indentation from the config
-module:hook("resource-bind",
- function (event)
+module:hook("resource-bind", function (event)
local session = event.session;
local motd_stanza =
- st.message({ to = session.username..'@'..session.host, from = motd_jid })
+ st.message({ to = jid_join(session.username, session.host, session.resource), from = motd_jid })
:tag("body"):text(motd_text);
core_route_stanza(hosts[host], motd_stanza);
module:log("debug", "MOTD send to user %s@%s", session.username, session.host);