Fri, 17 Dec 2010 17:28:05 +0100
util.stanza: Iterate on childtags instead of all childs.
3164
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)"; |
3165
bf83d75c961a
Add jid support for motd
Jeff Mitchell <jeff@jefferai.org>
parents:
3164
diff
changeset
|
12 | local motd_jid = module:get_option("motd_jid") or host; |
3164
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 = |
3165
bf83d75c961a
Add jid support for motd
Jeff Mitchell <jeff@jefferai.org>
parents:
3164
diff
changeset
|
20 | st.message({ to = session.username..'@'..session.host, from = motd_jid }) |
3164
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); |