aboutsummaryrefslogtreecommitdiff
path: root/src/core_modules/ircv3_metadata.py
diff options
context:
space:
mode:
authorGravatar jesopo2019-12-10 05:27:35 +0000
committerGravatar jesopo2019-12-10 05:27:35 +0000
commit638eee0d685c06d258cb55287204ca97bca7c344 (patch)
tree33442439317ae2846f1efb7674b7a3758c8990a1 /src/core_modules/ircv3_metadata.py
parentmove sys.exit() codes to an enum in utils.consts (diff)
signature
move core modules to src/core_modules, make them uneffected by white/black list
Diffstat (limited to 'src/core_modules/ircv3_metadata.py')
-rw-r--r--src/core_modules/ircv3_metadata.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/core_modules/ircv3_metadata.py b/src/core_modules/ircv3_metadata.py
new file mode 100644
index 00000000..e0e6d387
--- /dev/null
+++ b/src/core_modules/ircv3_metadata.py
@@ -0,0 +1,16 @@
+from src import IRCBot, ModuleManager, utils
+
+CAP = utils.irc.Capability(None, "draft/metadata", alias="metadata")
+
+class Module(ModuleManager.BaseModule):
+ @utils.hook("received.cap.new")
+ @utils.hook("received.cap.ls")
+ def on_cap(self, event):
+ cap = CAP.copy()
+ cap.on_ack(lambda: self._ack(event["server"]))
+ return cap
+
+ def _ack(self, server):
+ url = self.bot.get_setting("bot-url", IRCBot.SOURCE)
+ server.send_raw("METADATA * SET bot BitBot")
+ server.send_raw("METADATA * SET homepage :%s" % url)