aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2009-05-19 11:56:52 +0100
committerMatthew Wild <mwild1@gmail.com>2009-05-19 11:56:52 +0100
commitc1a8b0ae9fcab23214636d14d1b139148c025429 (patch)
treecf8580672b33a7da4cb5f94782abbf2e5ee560b4
parentaa714c10d6cf5845dc43da333b3a85017d9365e7 (diff)
downloadprosody-c1a8b0ae9fcab23214636d14d1b139148c025429.tar.gz
prosody-c1a8b0ae9fcab23214636d14d1b139148c025429.zip
mod_welcome: New plugin to welcome users who register on the server
-rw-r--r--plugins/mod_welcome.lua23
1 files changed, 23 insertions, 0 deletions
diff --git a/plugins/mod_welcome.lua b/plugins/mod_welcome.lua
new file mode 100644
index 00000000..491acb8f
--- /dev/null
+++ b/plugins/mod_welcome.lua
@@ -0,0 +1,23 @@
+-- Prosody IM v0.4
+-- Copyright (C) 2008-2009 Matthew Wild
+-- Copyright (C) 2008-2009 Waqas Hussain
+--
+-- This project is MIT/X11 licensed. Please see the
+-- COPYING file in the source package for more information.
+--
+
+local config = require "core.configmanager";
+
+local host = module:get_host();
+local welcome_text = config.get("*", "core", "welcome_message") or "Hello $user, welcome to the $host IM server!";
+
+local st = require "util.stanza";
+
+module:add_event_hook("user-registered",
+ function (user)
+ local welcome_stanza =
+ st.message({ to = user.username.."@"..user.host, from = host })
+ :tag("body"):text(welcome_text:gsub("$(%w+)", user));
+ core_route_stanza(hosts[host], welcome_stanza);
+ module:log("debug", "Welcomed user %s@%s", user.username, user.host);
+ end);