mirror of
https://github.com/langbot-app/LangBot.git
synced 2025-11-25 19:37:36 +08:00
将bot账号手动发送消息拦截提前到转换层
This commit is contained in:
@@ -78,8 +78,6 @@ class GewechatMessageConverter(adapter.MessageConverter):
|
|||||||
pattern = r'@\S+'
|
pattern = r'@\S+'
|
||||||
at_string = f"@{bot_account_id}"
|
at_string = f"@{bot_account_id}"
|
||||||
content_list = []
|
content_list = []
|
||||||
if message['Wxid'] == message['Data']['FromUserName']['string']:
|
|
||||||
return platform_message.MessageChain()
|
|
||||||
if at_string in message["Data"]["Content"]["string"]:
|
if at_string in message["Data"]["Content"]["string"]:
|
||||||
content_list.append(platform_message.At(target=bot_account_id))
|
content_list.append(platform_message.At(target=bot_account_id))
|
||||||
content_list.append(platform_message.Plain(message["Data"]["Content"]["string"].replace(at_string, '', 1)))
|
content_list.append(platform_message.Plain(message["Data"]["Content"]["string"].replace(at_string, '', 1)))
|
||||||
@@ -87,9 +85,6 @@ class GewechatMessageConverter(adapter.MessageConverter):
|
|||||||
elif "PushContent" in message['Data'] and '在群聊中@了你' in message["Data"]["PushContent"]:
|
elif "PushContent" in message['Data'] and '在群聊中@了你' in message["Data"]["PushContent"]:
|
||||||
content_list.append(platform_message.At(target=bot_account_id))
|
content_list.append(platform_message.At(target=bot_account_id))
|
||||||
content_list.append(platform_message.Plain(re.sub(pattern, '', message["Data"]["Content"]["string"])))
|
content_list.append(platform_message.Plain(re.sub(pattern, '', message["Data"]["Content"]["string"])))
|
||||||
else:
|
|
||||||
if message['Wxid'] == message['Data']['FromUserName']['string']:
|
|
||||||
pass
|
|
||||||
else:
|
else:
|
||||||
content_list = [platform_message.Plain(message["Data"]["Content"]["string"])]
|
content_list = [platform_message.Plain(message["Data"]["Content"]["string"])]
|
||||||
|
|
||||||
@@ -166,6 +161,10 @@ class GewechatEventConverter(adapter.EventConverter):
|
|||||||
event: dict,
|
event: dict,
|
||||||
bot_account_id: str
|
bot_account_id: str
|
||||||
) -> platform_events.MessageEvent:
|
) -> platform_events.MessageEvent:
|
||||||
|
|
||||||
|
if event['Wxid'] == event['Data']['FromUserName']['string']:
|
||||||
|
return None
|
||||||
|
|
||||||
message_chain = await self.message_converter.target2yiri(copy.deepcopy(event), bot_account_id)
|
message_chain = await self.message_converter.target2yiri(copy.deepcopy(event), bot_account_id)
|
||||||
|
|
||||||
if not message_chain:
|
if not message_chain:
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ async def get_gewechat_image_base64(
|
|||||||
}
|
}
|
||||||
) as response:
|
) as response:
|
||||||
if response.status != 200:
|
if response.status != 200:
|
||||||
print(response)
|
# print(response)
|
||||||
raise Exception(f"获取gewechat图片下载失败: {await response.text()}")
|
raise Exception(f"获取gewechat图片下载失败: {await response.text()}")
|
||||||
|
|
||||||
resp_data = await response.json()
|
resp_data = await response.json()
|
||||||
|
|||||||
Reference in New Issue
Block a user