Software /
code /
prosody
Diff
util/pubsub.lua @ 9107:6e42ef9c805c
util.pubsub: Add method to retrieve node configuration
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Sat, 04 Aug 2018 21:32:24 +0100 |
parent | 9106:e70b9e8bc443 |
child | 9117:a19fdc6e4f09 |
line wrap: on
line diff
--- a/util/pubsub.lua Sat Aug 04 21:30:10 2018 +0100 +++ b/util/pubsub.lua Sat Aug 04 21:32:24 2018 +0100 @@ -592,6 +592,27 @@ return true; end +function service:get_node_config(node, actor) + if not self:may(node, actor, "get_configuration") then + return false, "forbidden"; + end + + local node_obj = self.nodes[node]; + if not node_obj then + return false, "item-not-found"; + end + + local config_table = {}; + for k, v in pairs(default_node_config) do + config_table[k] = v; + end + for k, v in pairs(node_obj.config) do + config_table[k] = v; + end + + return true, config_table; +end + return { new = new; };