Mercurial > prosody-modules
view mod_idlecompat/mod_idlecompat.lua @ 5416:2393dbae51ed
mod_http_oauth2: Add option for specifying TTL of registered clients
Meant to simplify configuration, since TTL vs ignoring expiration is
expected to be the main thing one would want to configure.
Unsure what the implications of having unlimited lifetime of clients
are, given no way to revoke them currently, short of rotating the
signing secret.
On one hand, it would be annoying to have the client expire.
On the other hand, it is trivial to re-register it.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Thu, 04 May 2023 18:41:33 +0200 |
| parents | 4b58e35a72e0 |
| children |
line wrap: on
line source
-- Last User Interaction in Presence via Last Activity compatibility module -- http://xmpp.org/extensions/xep-0319.html -- http://xmpp.org/extensions/xep-0256.html -- Copyright (C) 2014 Tobias Markmann -- -- This file is MIT/X11 licensed. local st = require "util.stanza"; local datetime = require "util.datetime"; local function on_presence(event) local stanza = event.stanza; local last_activity = stanza:get_child("query", "jabber:iq:last"); local has_idle = stanza:get_child("idle", "urn:xmpp:idle:1"); if last_activity and not has_idle then module:log("debug", "Adding XEP-0319 tag from Last Activity."); local seconds = last_activity.attr.seconds; local last_userinteraction = datetime.datetime(os.time() - seconds); stanza:tag("idle", { xmlns = "urn:xmpp:idle:1", since = last_userinteraction }):up(); end end -- incoming module:hook("presence/full", on_presence, 900); module:hook("presence/bare", on_presence, 900); -- outgoing module:hook("pre-presence/bare", on_presence, 900); module:hook("pre-presence/full", on_presence, 900); module:hook("pre-presence/host", on_presence, 900);
