diff options
| author | 2020-04-09 15:47:20 +0100 | |
|---|---|---|
| committer | 2020-04-09 15:47:20 +0100 | |
| commit | b19e956f680a1795aa1506e99bf421944a58b8bc (patch) | |
| tree | 95006256cf0bf64855ff0261a74709c7238884fa /modules/rss.py | |
| parent | fix regression of message filters not matching without formatting (diff) | |
| signature | ||
experimental support for rss bindhost
Diffstat (limited to 'modules/rss.py')
| -rw-r--r-- | modules/rss.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/modules/rss.py b/modules/rss.py index 56491298..f597e3dc 100644 --- a/modules/rss.py +++ b/modules/rss.py @@ -7,10 +7,15 @@ import feedparser RSS_INTERVAL = 60 # 1 minute +SETTING_BIND = utils.Setting("rss-bindhost", + "Which local address to bind to for RSS requests", example="127.0.0.1") + @utils.export("botset", utils.IntSetting("rss-interval", "Interval (in seconds) between RSS polls", example="120")) @utils.export("channelset", utils.BoolSetting("rss-shorten", "Whether or not to shorten RSS urls")) +@utils.export("serverset", SETTING_BIND) +@utils.export("channelset", SETTING_BIND) class Module(ModuleManager.BaseModule): _name = "RSS" def on_load(self): @@ -57,8 +62,10 @@ class Module(ModuleManager.BaseModule): return requests = [] - for url in hooks.keys(): - requests.append(utils.http.Request(url, id=url)) + for url, (server, channel) in hooks.items(): + bindhost = channel.get_setting("rss-bindhost", + server.get_setting("rss-bindhost", None)) + requests.append(utils.http.Request(url, id=url, bindhost=bindhost)) pages = utils.http.request_many(requests) |
