mirror of
https://github.com/nonebot/nonebot2.git
synced 2024-11-28 07:06:56 +08:00
Add "switch" builtin command
This commit is contained in:
parent
0751f05d6c
commit
6491f274fb
@ -26,6 +26,7 @@ async def handle_message(bot: NoneBot, ctx: Context_T) -> None:
|
|||||||
if coros:
|
if coros:
|
||||||
await asyncio.wait(coros)
|
await asyncio.wait(coros)
|
||||||
|
|
||||||
|
if 'to_me' not in ctx:
|
||||||
if ctx['message_type'] != 'private':
|
if ctx['message_type'] != 'private':
|
||||||
# group or discuss
|
# group or discuss
|
||||||
ctx['to_me'] = False
|
ctx['to_me'] = False
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
|
import asyncio
|
||||||
|
|
||||||
from none import on_command, CommandSession, permission as perm
|
from none import on_command, CommandSession, permission as perm
|
||||||
from none.message import unescape
|
from none.command import kill_current_session
|
||||||
|
from none.message import unescape, Message, handle_message
|
||||||
|
|
||||||
|
|
||||||
@on_command('echo')
|
@on_command('echo')
|
||||||
@ -11,3 +14,15 @@ async def echo(session: CommandSession):
|
|||||||
async def _(session: CommandSession):
|
async def _(session: CommandSession):
|
||||||
await session.send(
|
await session.send(
|
||||||
unescape(session.get_optional('message') or session.current_arg))
|
unescape(session.get_optional('message') or session.current_arg))
|
||||||
|
|
||||||
|
|
||||||
|
@on_command('switch', privileged=True)
|
||||||
|
async def _(session: CommandSession):
|
||||||
|
kill_current_session(session.bot, session.ctx)
|
||||||
|
|
||||||
|
msg = Message(session.current_arg)
|
||||||
|
await session.send(msg)
|
||||||
|
|
||||||
|
ctx = session.ctx.copy()
|
||||||
|
ctx['message'] = msg
|
||||||
|
asyncio.ensure_future(handle_message(session.bot, ctx))
|
||||||
|
Loading…
Reference in New Issue
Block a user