♻️ use plaintext promot

This commit is contained in:
felinae98
2023-06-07 11:41:16 +08:00
parent 6743929ca2
commit 9b679cb827
5 changed files with 56 additions and 74 deletions
+7 -11
View File
@@ -2,10 +2,9 @@ import asyncio
from datetime import datetime
from nonebot import on_command
from nonebot.adapters import Bot
from nonebot.adapters import Bot, Event, MessageTemplate
from nonebot.adapters.onebot.v11 import MessageEvent
from nonebot.adapters.onebot.v11.event import GroupMessageEvent, PrivateMessageEvent
from nonebot.adapters.onebot.v11.message import Message
from nonebot.adapters.onebot.v11.event import PrivateMessageEvent
from nonebot.adapters.onebot.v11.permission import GROUP_ADMIN, GROUP_OWNER
from nonebot.matcher import Matcher
from nonebot.params import ArgPlainText, ArgStr
@@ -57,11 +56,6 @@ group_manage_matcher = on_command(
group_handle_cancel = gen_handle_cancel(group_manage_matcher, "已取消")
@group_manage_matcher.handle()
async def send_group_list_private(event: GroupMessageEvent, state: T_State):
await group_manage_matcher.finish(Message("该功能只支持私聊使用,请私聊Bot"))
@group_manage_matcher.handle()
async def send_group_list(bot: Bot, event: PrivateMessageEvent, state: T_State):
groups = await bot.call_api("get_group_list")
@@ -77,9 +71,11 @@ async def send_group_list(bot: Bot, event: PrivateMessageEvent, state: T_State):
@group_manage_matcher.got(
"group_idx", Message.template("{_prompt}"), [group_handle_cancel]
"group_idx", MessageTemplate("{_prompt}"), [group_handle_cancel]
)
async def do_choose_group_number(state: T_State, group_idx: str = ArgPlainText()):
async def do_choose_group_number(
state: T_State, event: PrivateMessageEvent, group_idx: str = ArgPlainText()
):
group_number_idx: dict[int, int] = state["group_number_idx"]
assert group_number_idx
idx = int(group_idx)
@@ -97,7 +93,7 @@ async def do_choose_group_number(state: T_State, group_idx: str = ArgPlainText()
)
async def do_dispatch_command(
bot: Bot,
event: MessageEvent,
event: PrivateMessageEvent,
state: T_State,
matcher: Matcher,
command: str = ArgStr(),
+5 -5
View File
@@ -1,6 +1,6 @@
from typing import Type, cast
from nonebot.adapters import Message
from nonebot.adapters import Message, MessageTemplate
from nonebot.adapters.onebot.v11 import Message as OB11Message
from nonebot.adapters.onebot.v11.utils import unescape
from nonebot.matcher import Matcher
@@ -36,7 +36,7 @@ def do_add_sub(add_sub: Type[Matcher]):
+ "要查看全部平台请输入:“全部”\n中止订阅过程请输入:“取消”"
)
@add_sub.got("platform", OB11Message.template("{_prompt}"), [handle_cancel])
@add_sub.got("platform", MessageTemplate("{_prompt}"), [handle_cancel])
async def parse_platform(state: T_State, platform: str = ArgPlainText()) -> None:
if not isinstance(state["platform"], Message):
return
@@ -69,7 +69,7 @@ def do_add_sub(add_sub: Type[Matcher]):
state["id"] = "default"
state["name"] = await check_sub_target(state["platform"], Target(""))
@add_sub.got("raw_id", OB11Message.template("{_prompt}"), [handle_cancel])
@add_sub.got("raw_id", MessageTemplate("{_prompt}"), [handle_cancel])
async def got_id(state: T_State, raw_id: str = ArgPlainText()):
if state.get("id"):
return
@@ -107,7 +107,7 @@ def do_add_sub(add_sub: Type[Matcher]):
" ".join(list(platform_manager[state["platform"]].categories.values()))
)
@add_sub.got("raw_cats", OB11Message.template("{_prompt}"), [handle_cancel])
@add_sub.got("raw_cats", MessageTemplate("{_prompt}"), [handle_cancel])
async def parser_cats(state: T_State, raw_cats: str = ArgPlainText()):
if "cats" in state.keys():
return
@@ -127,7 +127,7 @@ def do_add_sub(add_sub: Type[Matcher]):
return
state["_prompt"] = '请输入要订阅/屏蔽的标签(不含#号)\n多个标签请使用空格隔开\n订阅所有标签输入"全部标签"\n具体规则回复"详情"'
@add_sub.got("raw_tags", OB11Message.template("{_prompt}"), [handle_cancel])
@add_sub.got("raw_tags", MessageTemplate("{_prompt}"), [handle_cancel])
async def parser_tags(state: T_State, raw_tags: str = ArgPlainText()):
if "tags" in state.keys():
return