-
Notifications
You must be signed in to change notification settings - Fork 8
/
sleep.py
33 lines (25 loc) · 1.09 KB
/
sleep.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
"""Commands: "!sleep", "!wakeup"."""
from bot.commands.abstract.command import Command
from bot.utilities.permission import Permission
class Sleep(Command):
"""Allows admins and trusted mods to pause the bot."""
perm = Permission.Moderator
def __init__(self, _):
"""Initialize variables."""
self.responses = {}
def match(self, bot, user, msg, tag_info):
"""Match if message is !sleep or !wakeup."""
cmd = msg.lower().strip()
if user in bot.config.trusted_mods or bot.get_permission(user) == 3:
return cmd.startswith("!sleep") or cmd.startswith("!wakeup")
def run(self, bot, user, msg, tag_info):
"""Put the bot to sleep or wake it up."""
self.responses = bot.config.responses["Sleep"]
cmd = msg.lower().replace(" ", "")
if cmd.startswith("!sleep"):
bot.write(self.responses["bot_deactivate"]["msg"])
bot.close_commands()
bot.pause = True
elif cmd.startswith("!wakeup"):
bot.write(self.responses["bot_activate"]["msg"])
bot.pause = False