🐛 Fix Message._construct error

This commit is contained in:
Artin 2020-12-03 18:47:58 +08:00
parent afd01796aa
commit be244f4538
2 changed files with 10 additions and 4 deletions

View File

@ -45,8 +45,8 @@ class MessageSegment(BaseMessageSegment):
self.data["at"]["isAtAll"] = value self.data["at"]["isAtAll"] = value
@staticmethod @staticmethod
def text(text: str) -> "MessageSegment": def text(text_: str) -> "MessageSegment":
return MessageSegment("text", {"text": {"content": text.strip()}}) return MessageSegment("text", {"text": {"content": text_.strip()}})
@staticmethod @staticmethod
def markdown(title: str, text: str) -> "MessageSegment": def markdown(title: str, text: str) -> "MessageSegment":
@ -130,4 +130,4 @@ class Message(BaseMessage):
elif isinstance(msg, TextMessage): elif isinstance(msg, TextMessage):
yield MessageSegment("text", {"text": msg.dict()}) yield MessageSegment("text", {"text": msg.dict()})
elif isinstance(msg, str): elif isinstance(msg, str):
yield MessageSegment.text(str) yield MessageSegment.text(msg)

View File

@ -2,6 +2,7 @@ from nonebot.rule import to_me
from nonebot.typing import Event from nonebot.typing import Event
from nonebot.plugin import on_startswith from nonebot.plugin import on_startswith
from nonebot.adapters.cqhttp import Bot from nonebot.adapters.cqhttp import Bot
from nonebot.adapters.ding import Bot as DingBot, Event as DingEvent
from nonebot.permission import GROUP_ADMIN from nonebot.permission import GROUP_ADMIN
test_command = on_startswith("hello", to_me(), permission=GROUP_ADMIN) test_command = on_startswith("hello", to_me(), permission=GROUP_ADMIN)
@ -9,4 +10,9 @@ test_command = on_startswith("hello", to_me(), permission=GROUP_ADMIN)
@test_command.handle() @test_command.handle()
async def test_handler(bot: Bot, event: Event, state: dict): async def test_handler(bot: Bot, event: Event, state: dict):
await test_command.finish("hello") await test_command.finish("cqhttp hello")
@test_command.handle()
async def test_handler(bot: DingBot, event: DingEvent, state: dict):
await test_command.finish("ding hello")