diff --git a/none/__init__.py b/none/__init__.py index 72bc1948..e284d5b7 100644 --- a/none/__init__.py +++ b/none/__init__.py @@ -16,8 +16,8 @@ default_handler.setFormatter(logging.Formatter( )) logger.addHandler(default_handler) -from .plugin import handle_message, handle_notice, handle_request -from .command import on_command +from . import plugin +from .plugin import * def create_bot(config_object: Any = None): @@ -37,15 +37,15 @@ def create_bot(config_object: Any = None): @bot.on_message async def _(ctx): - asyncio.ensure_future(handle_message(bot, ctx)) + asyncio.ensure_future(plugin.handle_message(bot, ctx)) @bot.on_notice async def _(ctx): - asyncio.ensure_future(handle_notice(bot, ctx)) + asyncio.ensure_future(plugin.handle_notice(bot, ctx)) @bot.on_request async def _(ctx): - asyncio.ensure_future(handle_request(bot, ctx)) + asyncio.ensure_future(plugin.handle_request(bot, ctx)) return bot diff --git a/none/plugin.py b/none/plugin.py index 8eecbc9e..71995518 100644 --- a/none/plugin.py +++ b/none/plugin.py @@ -3,10 +3,15 @@ from typing import Dict, Any from aiocqhttp import CQHttp from aiocqhttp.message import MessageSegment -from . import command, logger +from . import logger +from .command import on_command, handle_command + +__all__ = [ + 'on_command', +] -async def handle_message(bot: CQHttp, ctx: Dict[str, Any]): +async def handle_message(bot: CQHttp, ctx: Dict[str, Any]) -> None: if ctx['message_type'] != 'private': # group or discuss first_message_seg = ctx['message'][0] @@ -16,16 +21,17 @@ async def handle_message(bot: CQHttp, ctx: Dict[str, Any]): if not ctx['message']: ctx['message'].append(MessageSegment.text('')) - handled = await command.handle_command(bot, ctx) + handled = await handle_command(bot, ctx) if handled: logger.debug('Message is handled as a command') + return else: await bot.send(ctx, '你在说什么我看不懂诶') -async def handle_notice(bot: CQHttp, ctx: Dict[str, Any]): +async def handle_notice(bot: CQHttp, ctx: Dict[str, Any]) -> None: pass -async def handle_request(bot: CQHttp, ctx: Dict[str, Any]): +async def handle_request(bot: CQHttp, ctx: Dict[str, Any]) -> None: pass