Mercurial > prosody-modules
annotate mod_uptime_presence/mod_uptime_presence.lua @ 4764:a754f7e380b2
mod_dnsupdate: Rewrite port config vs DNS comparison code
I'm not sure if it was correct, which means it was hard to understand
and thus needed to be simplified. Hope this accomplishes that.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 08 Nov 2021 23:03:14 +0100 |
parents | d3497b81a3b5 |
children |
rev | line source |
---|---|
917
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 local st = require"util.stanza"; |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 local datetime = require"util.datetime"; |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 local presence = st.presence({ from = module.host }) |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 :tag("delay", { xmlns = "urn:xmpp:delay", |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 stamp = datetime.datetime(prosody.start_time) }); |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 module:hook("presence/host", function(event) |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 local stanza = event.stanza; |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 if stanza.attr.type == "probe" then |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 presence.attr.id = stanza.attr.id; |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 presence.attr.to = stanza.attr.from; |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 module:send(presence); |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 return true; |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 end |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 end, 10); |
d3497b81a3b5
mod_uptime_presence: Initial commit. Indicates uptime by replying to probes with delay-stamped presence.
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 |