Archived
1
0
Fork 0
This repository has been archived on 2024-04-26. You can view files and clone it, but cannot push or open issues or pull requests.
akari-bot/modules/utils/__init__.py
2021-08-16 12:03:40 +08:00

75 lines
2.7 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import asyncio
import time
import psutil
from graia.application import Group, Friend
from core.template import sendMessage, revokeMessage
from core.elements import Target
from database import BotDB as database
from core.broadcast import app
from modules.utils.ab import ab
from modules.utils.newbie import newbie
from modules.utils.rc import rc
async def rc_loader(kwargs: dict):
table = 'start_wiki_link_' + kwargs[Target].target_from
id = kwargs[Target].id
msg = await rc(table, id)
await sendMessage(kwargs, msg)
async def ab_loader(kwargs: dict):
table = 'start_wiki_link_' + kwargs[Target].target_from
id = kwargs[Target].id
msg = await ab(table, id)
send = await sendMessage(kwargs, msg)
async def newbie_loader(kwargs: dict):
table = 'start_wiki_link_' + kwargs[Target].target_from
id = kwargs[Target].id
msg = await newbie(table, id)
await sendMessage(kwargs, msg)
async def ping(kwargs: dict):
checkpermisson = database.check_superuser(kwargs)
result = "Pong!"
if checkpermisson:
Boot_Start = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(psutil.boot_time()))
time.sleep(0.5)
Cpu_usage = psutil.cpu_percent()
RAM = int(psutil.virtual_memory().total / (1024 * 1024))
RAM_percent = psutil.virtual_memory().percent
Swap = int(psutil.swap_memory().total / (1024 * 1024))
Swap_percent = psutil.swap_memory().percent
Disk = int(psutil.disk_usage('.').used / (1024 * 1024 * 1024))
DiskTotal = int(psutil.disk_usage('.').total / (1024 * 1024 * 1024))
try:
GroupList = len(await app.groupList())
except Exception:
GroupList = '无法获取'
try:
FriendList = len(await app.friendList())
except Exception:
FriendList = '无法获取'
BFH = r'%'
result += (f"\n系统运行时间:{Boot_Start}"
+ f"\n当前CPU使用率{Cpu_usage}{BFH}"
+ f"\n物理内存:{RAM}M 使用率:{RAM_percent}{BFH}"
+ f"\nSwap内存{Swap}M 使用率:{Swap_percent}{BFH}"
+ f"\n磁盘容量:{Disk}G/{DiskTotal}G"
+ f"\n已加入群聊:{GroupList}"
+ f" | 已添加好友:{FriendList}")
await sendMessage(kwargs, result)
command = {'rc': rc_loader, 'ab': ab_loader, 'newbie': newbie_loader}
essential = {'ping': ping}
alias = {'p': 'ping'}
help = {'rc': {'help': '~rc - 查询Wiki最近更改。'},
'ab': {'help': '~ab - 查询Wiki滥用过滤器日志。'},
'newbie': {'help': '~newbie - 查询Wiki用户注册日志。'},
'ping': {'help': '~ping - PongPongPong', 'essential': True}}