refactor: Command module classification

This commit is contained in:
LWR 2023-02-07 01:13:23 +08:00
parent 4f7b48ddae
commit 148c57f5cd
15 changed files with 69 additions and 61 deletions

View File

@ -0,0 +1,14 @@
import starbot.commands.builtin.at.dynamic_at_me
import starbot.commands.builtin.at.dynamic_at_me_cancel
import starbot.commands.builtin.at.dynamic_at_me_list
import starbot.commands.builtin.at.live_on_at_me
import starbot.commands.builtin.at.live_on_at_me_cancel
import starbot.commands.builtin.at.live_on_at_me_list
import starbot.commands.builtin.data.bind
import starbot.commands.builtin.data.room_data
import starbot.commands.builtin.data.room_data_total
import starbot.commands.builtin.data.user_data
import starbot.commands.builtin.data.user_data_total
import starbot.commands.builtin.disable_command
import starbot.commands.builtin.enable_command
import starbot.commands.builtin.help

View File

@ -7,9 +7,9 @@ from graia.ariadne.model import Member, Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..utils import config, redis
from ....core.datasource import DataSource
from ....core.model import PushType
from ....utils import config, redis
prefix = config.get("COMMAND_PREFIX")

View File

@ -7,9 +7,9 @@ from graia.ariadne.model import Member, Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..utils import config, redis
from ....core.datasource import DataSource
from ....core.model import PushType
from ....utils import config, redis
prefix = config.get("COMMAND_PREFIX")

View File

@ -7,9 +7,9 @@ from graia.ariadne.model import Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..utils import config, redis
from ....core.datasource import DataSource
from ....core.model import PushType
from ....utils import config, redis
prefix = config.get("COMMAND_PREFIX")

View File

@ -7,9 +7,9 @@ from graia.ariadne.model import Member, Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..utils import config, redis
from ....core.datasource import DataSource
from ....core.model import PushType
from ....utils import config, redis
prefix = config.get("COMMAND_PREFIX")

View File

@ -7,9 +7,9 @@ from graia.ariadne.model import Member, Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..utils import config, redis
from ....core.datasource import DataSource
from ....core.model import PushType
from ....utils import config, redis
prefix = config.get("COMMAND_PREFIX")

View File

@ -7,9 +7,9 @@ from graia.ariadne.model import Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..utils import config, redis
from ....core.datasource import DataSource
from ....core.model import PushType
from ....utils import config, redis
prefix = config.get("COMMAND_PREFIX")

View File

@ -10,9 +10,9 @@ from graia.ariadne.util.interrupt import FunctionWaiter
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..utils import config, redis
from ..utils.network import request
from ..utils.utils import remove_command_param_placeholder
from ....utils import config, redis
from ....utils.network import request
from ....utils.utils import remove_command_param_placeholder
prefix = config.get("COMMAND_PREFIX")

View File

@ -10,11 +10,11 @@ from graia.ariadne.model import Friend, Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..painter.PicGenerator import PicGenerator, Color
from ..utils import config, redis
from ..utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round
from ....core.datasource import DataSource
from ....core.model import PushType
from ....painter.PicGenerator import PicGenerator, Color
from ....utils import config, redis
from ....utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round
prefix = config.get("COMMAND_PREFIX")
@ -50,8 +50,8 @@ async def room_data(app: Ariadne, source: Source, sender: Union[Friend, Group]):
uname = uname[0]
face = face[0]
generator = PicGenerator(width, height)
pic = generator.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic = PicGenerator(width, height)
pic.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic.draw_img_alpha(mask_round(face.resize((face_size, face_size)).convert("RGBA")), (50, 50))
pic.draw_section(f"{uname} 的直播间数据").set_pos(50, 150 + pic.row_space)

View File

@ -10,11 +10,11 @@ from graia.ariadne.model import Friend, Group
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..painter.PicGenerator import PicGenerator, Color
from ..utils import config, redis
from ..utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round
from ....core.datasource import DataSource
from ....core.model import PushType
from ....painter.PicGenerator import PicGenerator, Color
from ....utils import config, redis
from ....utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round
prefix = config.get("COMMAND_PREFIX")
@ -50,8 +50,8 @@ async def room_data_total(app: Ariadne, source: Source, sender: Union[Friend, Gr
uname = uname[0]
face = face[0]
generator = PicGenerator(width, height)
pic = generator.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic = PicGenerator(width, height)
pic.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic.draw_img_alpha(mask_round(face.resize((face_size, face_size)).convert("RGBA")), (50, 50))
pic.draw_section(f"{uname} 的直播间总数据").set_pos(50, 150 + pic.row_space)

View File

@ -10,11 +10,11 @@ from graia.ariadne.model import Friend, Group, Member
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..painter.PicGenerator import PicGenerator, Color
from ..utils import config, redis
from ..utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round, get_parallel_ranking
from ....core.datasource import DataSource
from ....core.model import PushType
from ....painter.PicGenerator import PicGenerator, Color
from ....utils import config, redis
from ....utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round, get_parallel_ranking
prefix = config.get("COMMAND_PREFIX")
@ -68,8 +68,8 @@ async def user_data(app: Ariadne, source: Source, sender: Union[Friend, Group],
width = 1000
height = 100000
face_size = 100
generator = PicGenerator(width, height)
pic = generator.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic = PicGenerator(width, height)
pic.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic.draw_img_alpha(mask_round(face.resize((face_size, face_size)).convert("RGBA")), (50, 50))
pic.draw_section(f"{uname} 的数据").set_pos(50, 150 + pic.row_space)

View File

@ -10,11 +10,11 @@ from graia.ariadne.model import Friend, Group, Member
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..core.datasource import DataSource
from ..core.model import PushType
from ..painter.PicGenerator import PicGenerator, Color
from ..utils import config, redis
from ..utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round, get_parallel_ranking, get_ratio
from ....core.datasource import DataSource
from ....core.model import PushType
from ....painter.PicGenerator import PicGenerator, Color
from ....utils import config, redis
from ....utils.utils import timestamp_format, get_unames_and_faces_by_uids, mask_round, get_parallel_ranking, get_ratio
prefix = config.get("COMMAND_PREFIX")
@ -68,8 +68,8 @@ async def user_data_total(app: Ariadne, source: Source, sender: Union[Friend, Gr
width = 1000
height = 100000
face_size = 100
generator = PicGenerator(width, height)
pic = generator.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic = PicGenerator(width, height)
pic.set_pos(175, 80).draw_rounded_rectangle(0, 0, width, height, 35, Color.WHITE).copy_bottom(35)
pic.draw_img_alpha(mask_round(face.resize((face_size, face_size)).convert("RGBA")), (50, 50))
pic.draw_section(f"{uname} 的总数据").set_pos(50, 150 + pic.row_space)

View File

@ -7,8 +7,8 @@ from graia.ariadne.model import Group, Member, MemberPerm
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..utils import config, redis
from ..utils.utils import remove_command_param_placeholder
from ...utils import config, redis
from ...utils.utils import remove_command_param_placeholder
prefix = config.get("COMMAND_PREFIX")
master = config.get("MASTER_QQ")

View File

@ -7,8 +7,8 @@ from graia.ariadne.model import Group, Member, MemberPerm
from graia.saya import Channel
from graia.saya.builtins.broadcast import ListenerSchema
from ..utils import config, redis
from ..utils.utils import remove_command_param_placeholder
from ...utils import config, redis
from ...utils.utils import remove_command_param_placeholder
prefix = config.get("COMMAND_PREFIX")
master = config.get("MASTER_QQ")

View File

@ -1,5 +1,4 @@
import asyncio
import os
import sys
from creart import create
@ -110,16 +109,11 @@ class StarBot:
# 载入命令
logger.info("开始载入命令模块")
commands_path = os.path.dirname(os.path.dirname(__file__)) + "\\commands"
saya = create(Saya)
with saya.module_context():
for root, dirs, files in os.walk(commands_path, topdown=False):
for name in files:
if name.endswith(".py"):
name = name[:-3]
saya.require(f"starbot.commands.{name}")
logger.success(f"{name} 命令模块载入成功")
saya.require(f"starbot.commands.builtin")
logger.success("内置命令模块载入完毕")
# 启动消息推送模块
if not self.__datasource.bots: