feat(commands/bot): add uptime
This commit is contained in:
@@ -3,13 +3,16 @@ import inspect
|
||||
|
||||
from state import reloaded_modules
|
||||
|
||||
from . import tools, utils, voice
|
||||
from . import bot, tools, utils, voice
|
||||
from .utils import *
|
||||
|
||||
|
||||
def __reload_module__():
|
||||
for name, module in globals().items():
|
||||
if inspect.ismodule(module) and name not in constants.RELOAD_BLACKLISTED_MODULES:
|
||||
if (
|
||||
inspect.ismodule(module)
|
||||
and name not in constants.RELOAD_BLACKLISTED_MODULES
|
||||
):
|
||||
importlib.reload(module)
|
||||
if "__reload_module__" in dir(module) and name not in reloaded_modules:
|
||||
reloaded_modules.add(name)
|
||||
|
43
commands/bot.py
Normal file
43
commands/bot.py
Normal file
@@ -0,0 +1,43 @@
|
||||
import importlib
|
||||
import inspect
|
||||
import time
|
||||
|
||||
import arguments
|
||||
import constants
|
||||
from state import reloaded_modules, start_time
|
||||
|
||||
import commands
|
||||
import utils
|
||||
|
||||
|
||||
async def uptime(message):
|
||||
tokens = commands.tokenize(message.content)
|
||||
parser = arguments.ArgumentParser(
|
||||
tokens[0],
|
||||
"print bot uptime",
|
||||
)
|
||||
parser.add_argument(
|
||||
"-s",
|
||||
"--since",
|
||||
action="store_true",
|
||||
help="bot up since",
|
||||
)
|
||||
if not (args := await parser.parse_args(message, tokens)):
|
||||
return
|
||||
|
||||
if args.since:
|
||||
await utils.reply(message, f"{round(start_time)}")
|
||||
else:
|
||||
await utils.reply(message, f"up {round(time.time() - start_time)} seconds")
|
||||
|
||||
|
||||
def __reload_module__():
|
||||
for name, module in globals().items():
|
||||
if (
|
||||
inspect.ismodule(module)
|
||||
and name not in constants.RELOAD_BLACKLISTED_MODULES
|
||||
):
|
||||
importlib.reload(module)
|
||||
if "__reload_module__" in dir(module) and name not in reloaded_modules:
|
||||
reloaded_modules.add(name)
|
||||
module.__reload_module__()
|
@@ -4,17 +4,18 @@ import constants
|
||||
|
||||
|
||||
class Command(enum.Enum):
|
||||
RELOAD = "reload"
|
||||
EXECUTE = "execute"
|
||||
CLEAR = "clear"
|
||||
PURGE = "purge"
|
||||
EXECUTE = "execute"
|
||||
JOIN = "join"
|
||||
LEAVE = "leave"
|
||||
QUEUE = "queue"
|
||||
PLAY = "play"
|
||||
SKIP = "skip"
|
||||
RESUME = "resume"
|
||||
PAUSE = "pause"
|
||||
PLAY = "play"
|
||||
PURGE = "purge"
|
||||
QUEUE = "queue"
|
||||
RELOAD = "reload"
|
||||
RESUME = "resume"
|
||||
SKIP = "skip"
|
||||
UPTIME = "uptime"
|
||||
VOLUME = "volume"
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user