mirror of
https://github.com/langbot-app/LangBot.git
synced 2025-11-25 11:29:39 +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)))
|
||||||
@@ -88,10 +86,7 @@ class GewechatMessageConverter(adapter.MessageConverter):
|
|||||||
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:
|
else:
|
||||||
if message['Wxid'] == message['Data']['FromUserName']['string']:
|
content_list = [platform_message.Plain(message["Data"]["Content"]["string"])]
|
||||||
pass
|
|
||||||
else:
|
|
||||||
content_list = [platform_message.Plain(message["Data"]["Content"]["string"])]
|
|
||||||
|
|
||||||
return platform_message.MessageChain(content_list)
|
return platform_message.MessageChain(content_list)
|
||||||
|
|
||||||
@@ -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