Mercurial > prosody-modules
view mod_host_status_check/mod_host_status_check.lua @ 5366:db4c66a1d24b
mod_http_oauth2: Fill in some client metadata defaults
Explicit > Implicit
Maybe we should actually use these for something as well? :)
It's is somewhat an open question of how strictly we should enforce
things in the client metadata given that it is somewhat extensible.
Especially some of these enum fields which have corresponding IANA
registries.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Tue, 25 Apr 2023 18:09:08 +0200 |
parents | 3d80f8dba886 |
children |
line wrap: on
line source
local time = require "socket".gettime; local heartbeats = module:shared("/*/host_status_check/heartbeats"); local connection_events = module:shared("/*/host_status_check/connection_events"); if prosody.hosts[module.host].type == "component" and module:get_option_string("component_module") == "component" then module:hook("component-authenticated", function () connection_events[module.host] = { connected = true; timestamp = time() }; end); -- Note: this event is not in 0.9, and requires a recent 0.10 or trunk build module:hook("component-disconnected", function () connection_events[module.host] = { connected = false; timestamp = time() }; end); module:hook("stanza/xmpp:prosody.im/heartbeat:heartbeat", function () heartbeats[module.host] = time(); return true; end); else connection_events[module.host] = { connected = true, timestamp = time() }; end function module.unload() connection_events[module.host] = { connected = false, timestamp = time() }; heartbeats[module.host] = nil; end