Annotate

plugins/mod_motd.lua @ 3169:e37e83660114

Add motd plugin, giving text to a user on each login.
author Jeff Mitchell <jeff@jefferai.org>
date Sat, 29 May 2010 14:02:58 -0400
child 3170:bf83d75c961a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
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)";
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
12
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
13 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
14
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
15 module:hook("resource-bind",
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
16 function (event)
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
17 local session = event.session;
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
18 local motd_stanza =
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
19 st.message({ to = session.username..'@'..session.host, from = host })
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
20 :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
21 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
22 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
23
e37e83660114 Add motd plugin, giving text to a user on each login.
Jeff Mitchell <jeff@jefferai.org>
parents:
diff changeset
24 end);