diff --git a/gsuid_core/bot.py b/gsuid_core/bot.py index 4f65288..2d9b2f5 100644 --- a/gsuid_core/bot.py +++ b/gsuid_core/bot.py @@ -139,7 +139,7 @@ class Bot: message, self.ev.user_type, self.ev.group_id if self.ev.group_id else self.ev.user_id, - self.ev.bot_id, + self.ev.real_bot_id, self.bot_self_id, self.ev.msg_id, at_sender, @@ -158,7 +158,7 @@ class Bot: message, target_type, target_id, - self.ev.bot_id, + self.ev.real_bot_id, self.ev.bot_self_id, self.ev.msg_id, at_sender, diff --git a/gsuid_core/handler.py b/gsuid_core/handler.py index 64dd3b6..062f2c9 100644 --- a/gsuid_core/handler.py +++ b/gsuid_core/handler.py @@ -24,14 +24,20 @@ async def get_user_pml(msg: MessageReceive) -> int: async def msg_process(msg: MessageReceive) -> Event: + if ':' in msg.bot_id: + bot_id = msg.bot_id.split(':')[0] + else: + bot_id = msg.bot_id + event = Event( - msg.bot_id, + bot_id, msg.bot_self_id, msg.msg_id, msg.user_type, msg.group_id, msg.user_id, msg.user_pm, + real_bot_id=msg.bot_id, ) _content: List[Message] = [] for _msg in msg.content: diff --git a/gsuid_core/models.py b/gsuid_core/models.py index 51a0ac7..de4749d 100644 --- a/gsuid_core/models.py +++ b/gsuid_core/models.py @@ -20,6 +20,7 @@ class MessageReceive(Struct): class Event(MessageReceive): + real_bot_id: str = '' raw_text: str = '' command: str = '' text: str = ''