mirror of
https://github.com/bjc/prosody.git
synced 2025-04-03 21:27:38 +03:00
32 lines
1.4 KiB
Lua
32 lines
1.4 KiB
Lua
-- XEP-0157: Contact Addresses for XMPP Services for Prosody
|
|
--
|
|
-- Copyright (C) 2011-2018 Kim Alvefur
|
|
--
|
|
-- This project is MIT/X11 licensed. Please see the
|
|
-- COPYING file in the source package for more information.
|
|
--
|
|
|
|
local array = require "util.array";
|
|
local jid = require "util.jid";
|
|
local url = require "socket.url";
|
|
|
|
-- Source: http://xmpp.org/registrar/formtypes.html#http:--jabber.org-network-serverinfo
|
|
local form_layout = require "util.dataforms".new({
|
|
{ var = "FORM_TYPE"; type = "hidden"; value = "http://jabber.org/network/serverinfo"; };
|
|
{ name = "abuse", var = "abuse-addresses", type = "list-multi" },
|
|
{ name = "admin", var = "admin-addresses", type = "list-multi" },
|
|
{ name = "feedback", var = "feedback-addresses", type = "list-multi" },
|
|
{ name = "sales", var = "sales-addresses", type = "list-multi" },
|
|
{ name = "security", var = "security-addresses", type = "list-multi" },
|
|
{ name = "status", var = "status-addresses", type = "list-multi" },
|
|
{ name = "support", var = "support-addresses", type = "list-multi" },
|
|
});
|
|
|
|
-- JIDs of configured service admins are used as fallback
|
|
local admins = module:get_option_inherited_set("admins", {});
|
|
|
|
local contact_config = module:get_option("contact_info", {
|
|
admin = array.collect(admins / jid.prep / function(admin) return url.build({scheme = "xmpp"; path = admin}); end);
|
|
});
|
|
|
|
module:add_extension(form_layout:form(contact_config, "result"));
|