plugins/mod_welcome.lua
author Waqas Hussain <waqas20@gmail.com>
Sat, 08 Aug 2009 23:38:02 +0500
changeset 1650 b010d6711527
parent 1523 841d61be198f
child 1816 1c0bde3db7d8
permissions -rw-r--r--
mod_welcome: Updated to use module:get_option instead of configmanager
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1523
841d61be198f Remove version number from copyright headers
Matthew Wild <mwild1@gmail.com>
parents: 1252
diff changeset
     1
-- Prosody IM
1185
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     2
-- Copyright (C) 2008-2009 Matthew Wild
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     3
-- Copyright (C) 2008-2009 Waqas Hussain
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     4
-- 
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     5
-- This project is MIT/X11 licensed. Please see the
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     6
-- COPYING file in the source package for more information.
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     7
--
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     8
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     9
local host = module:get_host();
1650
b010d6711527 mod_welcome: Updated to use module:get_option instead of configmanager
Waqas Hussain <waqas20@gmail.com>
parents: 1523
diff changeset
    10
local welcome_text = module:get_option("welcome_message") or "Hello $user, welcome to the $host IM server!";
1185
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    11
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    12
local st = require "util.stanza";
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    13
1252
350534579ba3 mod_welcome: Use module:hook instead of module:add_event_hook
Waqas Hussain <waqas20@gmail.com>
parents: 1185
diff changeset
    14
module:hook("user-registered", 
1185
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    15
	function (user)
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    16
		local welcome_stanza = 
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    17
			st.message({ to = user.username.."@"..user.host, from = host })
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    18
				:tag("body"):text(welcome_text:gsub("$(%w+)", user));
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    19
		core_route_stanza(hosts[host], welcome_stanza);
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    20
		module:log("debug", "Welcomed user %s@%s", user.username, user.host);
c68ccb7faeaf mod_welcome: New plugin to welcome users who register on the server
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    21
	end);