aboutsummaryrefslogtreecommitdiff
path: root/modules/admin.py
diff options
context:
space:
mode:
authorGravatar jesopo2019-02-10 23:53:33 +0000
committerGravatar jesopo2019-02-10 23:53:33 +0000
commitfadd21c6d962d0b4a7e6896112cf302813d0df21 (patch)
tree6eb7948ef9812a070bd6d81151e2f2ae2ce324ae /modules/admin.py
parentAdd _char_limit return type hint, fix decoded_data return type hint (diff)
signature
Add !shutdown (admin.py)
Diffstat (limited to 'modules/admin.py')
-rw-r--r--modules/admin.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/modules/admin.py b/modules/admin.py
index cb3d69e9..fe014974 100644
--- a/modules/admin.py
+++ b/modules/admin.py
@@ -87,3 +87,17 @@ class Module(ModuleManager.BaseModule):
server = self.bot.get_server(id)
server.disconnect()
self.bot.disconnect(server)
+
+ @utils.hook("received.command.shutdown")
+ def shutdown(self, event):
+ """
+ :help: Shutdown bot
+ :usage: [reason]
+ :permission: shutdown
+ """
+ reason = event["args"] or ""
+ for server in self.bot.servers:
+ line = server.send_quit(reason)
+ line.on_send(self._shutdown_hook(server))
+ def _shutdown_hook(self, server):
+ return lambda: self.bot.disconnect(server)