2
0
mirror of https://github.com/Nick80835/microbot synced 2025-08-23 10:38:51 +00:00
microbot/ubot/modules/system.py

75 lines
1.9 KiB
Python
Raw Normal View History

2020-03-16 21:02:05 -04:00
# SPDX-License-Identifier: GPL-2.0-or-later
2023-10-16 09:46:31 -04:00
from platform import python_version, uname
from time import time_ns
from telethon import version
from ubot.micro_bot import micro_bot
ldr = micro_bot.loader
@ldr.add("reload", sudo=True)
2023-10-16 09:46:31 -04:00
async def reload_modules(event):
reload_msg = await event.reply("`Reloading modules…`")
2023-10-16 09:46:31 -04:00
errors = ldr.reload_all_modules()
if errors:
await reload_msg.edit(errors)
2023-10-16 09:46:31 -04:00
else:
try:
await reload_msg.edit("`Successfully reloaded.`")
2023-10-16 09:46:31 -04:00
except:
pass
@ldr.add("del")
2020-05-01 10:27:07 -04:00
async def delete_message(event):
message_to_delete = await event.get_reply_message()
if message_to_delete.from_id == (await event.client.get_me()).id:
await message_to_delete.delete()
@ldr.add("help")
async def help_cmd(event):
help_string = ""
for key, value in ldr.help_dict.items():
help_string += f"\n**{key}**: "
for info in value:
help_string += f"`{info}`, "
help_string = help_string.rstrip(", ")
await event.reply(f"`Available commands:`\n{help_string}")
@ldr.add("alive", sudo=True)
2023-10-16 09:46:31 -04:00
async def alive(event):
alive_format = "`μBot is running under {0}.\n\n" \
"Version: {1}\n" \
"Telethon: {2}\n" \
"Python: {3}`"
await event.reply(alive_format.format(uname().node, ldr.botversion, version.__version__, python_version()))
@ldr.add("shutdown", sudo=True)
2023-10-16 09:46:31 -04:00
async def shutdown(event):
await event.reply("`Goodbye…`")
2023-10-16 09:46:31 -04:00
await micro_bot.stop_client()
@ldr.add("ping")
2020-05-02 16:43:52 -04:00
async def ping(event):
start = time_ns()
ping_msg = await event.reply("`Ping…`")
2020-05-03 16:44:01 -04:00
time_taken_ms = int((time_ns() - start) / 1000000)
2020-05-02 16:43:52 -04:00
await ping_msg.edit(f"`Ping… Pong! -> `**{time_taken_ms}**`ms`")
@ldr.add("repo")
2023-10-16 09:46:31 -04:00
async def bot_repo(event):
await event.reply("https://github.com/Nick80835/microbot")