Mercurial > prosody-modules
view mod_invites_tracking/mod_invites_tracking.lua @ 5516:f25df3af02c1
mod_client_management: Include client software version number in listing
Should you ever wish to revoke a client by version number, e.g. for
security reasons affecting certain versions, then it would be good to at
the very least see which version is used.
Also includes the OAuth2 software ID, an optional unique identifier that
should be the same for all installations of a particular software.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 03 Jun 2023 19:21:39 +0200 |
parents | 32f1f18f4874 |
children | cb3b2fbf57e7 |
line wrap: on
line source
local tracking_store = module:open_store("invites_tracking"); module:hook("user-registered", function(event) local validated_invite = event.validated_invite or (event.session and event.session.validated_invite); local new_username = event.username; local invite_id = nil; local invite_source = nil; if validated_invite then invite_source = validated_invite.additional_data and validated_invite.additional_data.source; invite_id = validated_invite.token; end tracking_store:set(new_username, {invite_id = validated_invite.token, invite_source = invite_source}); module:log("debug", "recorded that invite from %s was used to create %s", invite_source, new_username) end); -- " " is an invalid localpart -> we can safely use it for store metadata tracking_store:set(" ", {version="1"});