view mod_server_info/mod_server_info.lua @ 5801:73887dcb2129

mod_pubsub_serverinfo: New module that uses pub/sub to make accessible server info This first implemetnation is laughably simple: it only adds a disco#info feature. This flags 'opt-in' for inclusion of local domain names in the data exposed by other domains (per the domain), which will allow servers to be listed in the XMPP Network Graph at https://xmppnetwork.goodbytes.im Hopefully, this bare-boned implementation acts as a stepping stone for future improvements.
author Guus der Kinderen <guus.der.kinderen@gmail.com>
date Thu, 28 Dec 2023 11:02:35 +0100
parents 174c77da03f5
children
line wrap: on
line source

-- XEP-0128: Service Discovery Extensions (manual config)
--
-- Copyright (C) 2023 Matthew Wild
--
-- This project is MIT/X11 licensed. Please see the
-- COPYING file in the source package for more information.
--

local dataforms = require "util.dataforms";

local config = module:get_option("server_info");

if not config or next(config) == nil then return; end -- Nothing to do

for _, form in ipairs(config) do
	module:add_extension(dataforms.new(form):form({}, "result"));
end