diff --git a/gsuid_core/bot.py b/gsuid_core/bot.py index 70f5894..d4b0a82 100644 --- a/gsuid_core/bot.py +++ b/gsuid_core/bot.py @@ -190,10 +190,13 @@ class Bot: _buttons.append(option) else: _buttons.append(Button(option, option, option)) - - await self.send( - await to_markdown(_reply, _buttons, self.bot_id) - ) + if self.ev.real_bot_id in enable_markdown_platform: + await self.send( + await to_markdown(_reply, _buttons, self.bot_id) + ) + else: + _reply.append(MessageSegment.buttons(_buttons)) + await self.send(_reply) else: if unsuported_platform: _options: List[str] = [] diff --git a/gsuid_core/segment.py b/gsuid_core/segment.py index 2f62af2..b3e0c09 100644 --- a/gsuid_core/segment.py +++ b/gsuid_core/segment.py @@ -80,6 +80,12 @@ class MessageSegment: def text(content: str) -> Message: return Message(type='text', data=content) + @staticmethod + def buttons( + buttons: Optional[Union[List[Button], List[List[Button]]]] = None, + ) -> Message: + return Message(type='buttons', data=msgspec.to_builtins(buttons)) + @staticmethod def markdown( content: str, @@ -87,9 +93,7 @@ class MessageSegment: ) -> List[Message]: data = [Message(type='markdown', data=content)] if buttons: - data.append( - Message(type='buttons', data=msgspec.to_builtins(buttons)) - ) + data.append(MessageSegment.buttons(buttons)) return data