<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://hg.omfa.de/prosody-hg/</link>
    <language>en-us</language>

    <title>prosody-hg: plugins/mod_external_services.lua history</title>
    <description>plugins/mod_external_services.lua revision history</description>
    <item>
    <title>mod_external_services: Allow custom XML content in service items</title>
    <link>http://hg.omfa.de/prosody-hg/log/79ae4821c05e/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Allow custom XML content in service items]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Mon, 30 Jun 2025 11:16:52 +0100</pubDate>
</item>
<item>
    <title>mod_external_services: Add shell command to list external services on a host</title>
    <link>http://hg.omfa.de/prosody-hg/log/7e6deed12e03/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Add shell command to list external services on a host]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Thu, 26 Jun 2025 13:04:40 +0100</pubDate>
</item>
<item>
    <title>mod_external_services: Also use TURN REST credential algo for 'turns' (thanks moreroid)</title>
    <link>http://hg.omfa.de/prosody-hg/log/18f560dcc9e3/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Also use TURN REST credential algo for 'turns' (thanks moreroid)]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Sat, 01 Mar 2025 16:19:43 +0000</pubDate>
</item>
<item>
    <title>plugins: Use integer config API with interval specification where sensible</title>
    <link>http://hg.omfa.de/prosody-hg/log/50324f66ca2a/plugins/mod_external_services.lua</link>
    <description><![CDATA[plugins: Use integer config API with interval specification where sensible<br/>
<br/>
Many of these fall into a few categories:<br/>
- util.cache size, must be &gt;= 1<br/>
- byte or item counts that logically can't be negative<br/>
- port numbers that should be in 1..0xffff]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 17 Jul 2023 01:38:54 +0200</pubDate>
</item>
<item>
    <title>plugins: Switch to :get_option_period() for time range options</title>
    <link>http://hg.omfa.de/prosody-hg/log/c8d949cf6b09/plugins/mod_external_services.lua</link>
    <description><![CDATA[plugins: Switch to :get_option_period() for time range options<br/>
<br/>
Improves readability (&quot;1 day&quot; vs 86400) and centralizes validation.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 16 Jul 2023 20:49:33 +0200</pubDate>
</item>
<item>
    <title>plugins: Prefix module imports with prosody namespace</title>
    <link>http://hg.omfa.de/prosody-hg/log/74b9e05af71e/plugins/mod_external_services.lua</link>
    <description><![CDATA[plugins: Prefix module imports with prosody namespace]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 24 Mar 2023 13:15:28 +0100</pubDate>
</item>
<item>
    <title>mod_external_services: Update tools.ietf.org URL</title>
    <link>http://hg.omfa.de/prosody-hg/log/4d75663d1552/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Update tools.ietf.org URL<br/>
<br/>
See bd9e006a7a74]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 27 Aug 2022 17:19:13 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Move error message to correct place (fix #1725)</title>
    <link>http://hg.omfa.de/prosody-hg/log/95f33a006c03/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Move error message to correct place (fix #1725)<br/>
<br/>
This message was misplaced in c4599a7c534c when the @type and @host<br/>
check was introduced.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Wed, 23 Mar 2022 15:29:01 +0100</pubDate>
</item>
<item>
    <title>mod_external_services: Warn about missing recommended fields</title>
    <link>http://hg.omfa.de/prosody-hg/log/f752427a5214/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Warn about missing recommended fields<br/>
<br/>
These are RECOMMENDED in XEP-0215 so most likely a mistake if they are<br/>
left out.<br/>
<br/>
Of the two REQUIRED fields, 'host' falls back to module.host and 'type'<br/>
rejects the whole item.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Wed, 24 Nov 2021 13:43:13 +0100</pubDate>
</item>
<item>
    <title>mod_external_services: Factor out public function for converting to XML</title>
    <link>http://hg.omfa.de/prosody-hg/log/a0e17b7c8b05/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Factor out public function for converting to XML<br/>
<br/>
Along with the previous commit, allows building the XML thing yourself,<br/>
should you wish to send it yourself or use it in a different context than<br/>
an iq reply.<br/>
<br/>
API change: The 'reply' is removed from the event.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 30 Aug 2021 20:19:15 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Factor out public function returning current services</title>
    <link>http://hg.omfa.de/prosody-hg/log/ae565e49289a/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Factor out public function returning current services<br/>
<br/>
This way you get the _prepared_ services and don't have to do that mapping<br/>
yourself.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 30 Aug 2021 00:11:58 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Filter services by requested credentials using a Set</title>
    <link>http://hg.omfa.de/prosody-hg/log/21a9b3f2a728/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Filter services by requested credentials using a Set<br/>
<br/>
Please don't be accidentally quadratic.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 30 Aug 2021 20:19:09 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Validate required attributes on credentials requests</title>
    <link>http://hg.omfa.de/prosody-hg/log/c4599a7c534c/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Validate required attributes on credentials requests]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sun, 29 Aug 2021 23:26:19 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Report overall status as a module status</title>
    <link>http://hg.omfa.de/prosody-hg/log/0807e835d3b5/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Report overall status as a module status<br/>
<br/>
Because during startup, if all items are provided by a different module<br/>
(e.g. mod_turn_external) then this would log a scary warning even if<br/>
everything is fine after that other module has been loaded.<br/>
<br/>
This way, any persistent problematic state is reported in the console.<br/>
Errors with individual items should still be reported by prepare().<br/>
<br/>
Now, if you load mod_external_services alone without configuring any<br/>
services, no error or warning is reported in the log, but maybe that's<br/>
not so bad with it reported in the console.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 21 Jun 2021 22:43:26 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Validate items as they are added</title>
    <link>http://hg.omfa.de/prosody-hg/log/3a5212fd7e8e/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Validate items as they are added]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 21 Jun 2021 22:41:59 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Also validate services added by other modules</title>
    <link>http://hg.omfa.de/prosody-hg/log/ef62d29c8fdc/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Also validate services added by other modules<br/>
<br/>
This ensures that problems with entries added other modules, e.g.<br/>
mod_turn_external, are reported on startup. However, this depends on<br/>
load order and whether a `module:depends()` call comes before the<br/>
`module:add_item()` call. A followup commit will do something about<br/>
that.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 21 Jun 2021 22:38:30 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Validate services added via events</title>
    <link>http://hg.omfa.de/prosody-hg/log/c560531d9a6e/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Validate services added via events<br/>
<br/>
While writing developer documentation it became obvious that i was silly<br/>
to have one item format for config and items API, and another format for<br/>
the event API.<br/>
<br/>
Then there's the stanza format, but that's a common pattern.<br/>
<br/>
This change reduces the possible input formats to two and allows other<br/>
modules the benefit of the processing and validation performed on items<br/>
from the config.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 17 Aug 2020 00:24:11 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Allow specifying a credential generation callback</title>
    <link>http://hg.omfa.de/prosody-hg/log/ec6919401790/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Allow specifying a credential generation callback<br/>
<br/>
This is especially targeted at services added via the items API. More<br/>
involved credential generation should use the event hook.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 25 Jul 2020 12:22:03 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Prepare to allow more credential algorithms</title>
    <link>http://hg.omfa.de/prosody-hg/log/efefdf71373b/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Prepare to allow more credential algorithms<br/>
<br/>
Not sure what algorithms might fit here. Separation makes some sense.<br/>
<br/>
This is also a preparation for having a callback. (See next commit)]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 25 Jul 2020 12:09:19 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: Support adding services via items API</title>
    <link>http://hg.omfa.de/prosody-hg/log/936ee55e1ae3/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: Support adding services via items API]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 25 Jul 2020 10:22:37 +0200</pubDate>
</item>
<item>
    <title>mod_external_services: XEP-0215: External Service Discovery</title>
    <link>http://hg.omfa.de/prosody-hg/log/79e410cd7f6e/plugins/mod_external_services.lua</link>
    <description><![CDATA[mod_external_services: XEP-0215: External Service Discovery]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Sat, 18 Jul 2020 15:36:25 +0200</pubDate>
</item>

  </channel>
</rss>
