annotate mod_uptime_presence/mod_uptime_presence.lua @ 4398:a16b689525d7

mod_migrate: Allow migrating data not attached to any user / nil user Certain data more related to the server itself is stored with user = nil
author Kim Alvefur <zash@zash.se>
date Tue, 26 Jan 2021 17:18:44 +0100
parents d3497b81a3b5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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