plugins/mod_motd.lua
author Waqas Hussain <waqas20@gmail.com>
Sun, 07 Nov 2010 20:53:08 +0500
changeset 3572 fb7fc154a56a
parent 3170 bf83d75c961a
child 4083 4d0599e85411
permissions -rw-r--r--
mod_disco: Renamed the 'session' property of the account-disco-info and account-disco-items events to 'origin' for consistency.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3169
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     1
-- Prosody IM
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     2
-- Copyright (C) 2008-2010 Matthew Wild
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     3
-- Copyright (C) 2008-2010 Waqas Hussain
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     4
-- Copyright (C) 2010 Jeff Mitchell
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     5
-- 
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     6
-- This project is MIT/X11 licensed. Please see the
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     7
-- COPYING file in the source package for more information.
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     8
--
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
     9
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    10
local host = module:get_host();
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    11
local motd_text = module:get_option("motd_text") or "MOTD: (blank)";
3170
bf83d75c961a Add jid support for motd
Jeff Mitchell <jeff@jefferai.org>
parents: 3169
diff changeset
    12
local motd_jid = module:get_option("motd_jid") or host;
3169
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    13
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    14
local st = require "util.stanza";
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    15
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    16
module:hook("resource-bind",
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    17
	function (event)
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    18
		local session = event.session;
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    19
		local motd_stanza =
3170
bf83d75c961a Add jid support for motd
Jeff Mitchell <jeff@jefferai.org>
parents: 3169
diff changeset
    20
			st.message({ to = session.username..'@'..session.host, from = motd_jid })
3169
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    21
				:tag("body"):text(motd_text);
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    22
		core_route_stanza(hosts[host], motd_stanza);
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    23
		module:log("debug", "MOTD send to user %s@%s", session.username, session.host);
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    24
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
    25
end);