Wed, 08 Jul 2009 04:19:15 +0100
prosody: Record time the server started
894 | 1 | -- Prosody IM v0.4 |
760
90ce865eebd8
Update copyright notices for 2009
Matthew Wild <mwild1@gmail.com>
parents:
759
diff
changeset
|
2 | -- Copyright (C) 2008-2009 Matthew Wild |
90ce865eebd8
Update copyright notices for 2009
Matthew Wild <mwild1@gmail.com>
parents:
759
diff
changeset
|
3 | -- Copyright (C) 2008-2009 Waqas Hussain |
519
cccd610a0ef9
Insert copyright/license headers
Matthew Wild <mwild1@gmail.com>
parents:
517
diff
changeset
|
4 | -- |
758 | 5 | -- This project is MIT/X11 licensed. Please see the |
6 | -- COPYING file in the source package for more information. | |
519
cccd610a0ef9
Insert copyright/license headers
Matthew Wild <mwild1@gmail.com>
parents:
517
diff
changeset
|
7 | -- |
cccd610a0ef9
Insert copyright/license headers
Matthew Wild <mwild1@gmail.com>
parents:
517
diff
changeset
|
8 | |
cccd610a0ef9
Insert copyright/license headers
Matthew Wild <mwild1@gmail.com>
parents:
517
diff
changeset
|
9 | |
1312
ad7d144b6796
mod_version: Use version from prosody.version
Matthew Wild <mwild1@gmail.com>
parents:
894
diff
changeset
|
10 | local prosody = prosody; |
188 | 11 | local st = require "util.stanza"; |
12 | ||
13 | local xmlns_version = "jabber:iq:version" | |
14 | ||
541
3521e0851c9e
Change modules to use the new add_feature module API method.
Waqas Hussain <waqas20@gmail.com>
parents:
519
diff
changeset
|
15 | module:add_feature(xmlns_version); |
421
63be85693710
Modules now sending disco replies
Waqas Hussain <waqas20@gmail.com>
parents:
314
diff
changeset
|
16 | |
803
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
17 | local version = "the best operating system ever!"; |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
18 | |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
19 | if not require "core.configmanager".get("*", "core", "hide_os_type") then |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
20 | if os.getenv("WINDIR") then |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
21 | version = "Windows"; |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
22 | else |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
23 | local uname = io.popen("uname"); |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
24 | if uname then |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
25 | version = uname:read("*a"); |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
26 | else |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
27 | version = "an OS"; |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
28 | end |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
29 | end |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
30 | end |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
31 | |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
32 | version = version:match("^%s*(.-)%s*$") or version; |
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
33 | |
704
ef8d0d339172
mod_version: Removed and rearranged some code
Waqas Hussain <waqas20@gmail.com>
parents:
615
diff
changeset
|
34 | module:add_iq_handler({"c2s", "s2sin"}, xmlns_version, function(session, stanza) |
219 | 35 | if stanza.attr.type == "get" then |
36 | session.send(st.reply(stanza):query(xmlns_version) | |
517 | 37 | :tag("name"):text("Prosody"):up() |
1312
ad7d144b6796
mod_version: Use version from prosody.version
Matthew Wild <mwild1@gmail.com>
parents:
894
diff
changeset
|
38 | :tag("version"):text(prosody.version):up() |
803
5a64649f4b94
mod_version: Operating system detection. Disable with hide_os_type = true in config
Matthew Wild <mwild1@gmail.com>
parents:
760
diff
changeset
|
39 | :tag("os"):text(version)); |
219 | 40 | end |
704
ef8d0d339172
mod_version: Removed and rearranged some code
Waqas Hussain <waqas20@gmail.com>
parents:
615
diff
changeset
|
41 | end); |