fix: typing error (#3267)

* fix: 修复一些小错误。

修复aiocqhttp和slack中部分逻辑缺失的await。修复discord中错误的异常捕获类型。

* fix(core.platform): 修复discord适配器中错误的message_chain赋值

* fix(aiocqhttp): 更新convert_message方法的返回类型为AstrBotMessage | None

---------

Co-authored-by: Soulter <905617992@qq.com>
This commit is contained in:
Dt8333
2025-11-03 23:38:52 +08:00
committed by GitHub
parent 72148f66eb
commit c51609b261
4 changed files with 6 additions and 5 deletions

View File

@@ -107,7 +107,7 @@ class AiocqhttpAdapter(Platform):
) )
await super().send_by_session(session, message_chain) await super().send_by_session(session, message_chain)
async def convert_message(self, event: Event) -> AstrBotMessage: async def convert_message(self, event: Event) -> AstrBotMessage | None:
logger.debug(f"[aiocqhttp] RawMessage {event}") logger.debug(f"[aiocqhttp] RawMessage {event}")
if event["post_type"] == "message": if event["post_type"] == "message":
@@ -222,7 +222,7 @@ class AiocqhttpAdapter(Platform):
err = f"aiocqhttp: 无法识别的消息类型: {event.message!s},此条消息将被忽略。如果您在使用 go-cqhttp请将其配置文件中的 message.post-format 更改为 array。" err = f"aiocqhttp: 无法识别的消息类型: {event.message!s},此条消息将被忽略。如果您在使用 go-cqhttp请将其配置文件中的 message.post-format 更改为 array。"
logger.critical(err) logger.critical(err)
try: try:
self.bot.send(event, err) await self.bot.send(event, err)
except BaseException as e: except BaseException as e:
logger.error(f"回复消息失败: {e}") logger.error(f"回复消息失败: {e}")
return None return None

View File

@@ -90,7 +90,7 @@ class DiscordPlatformAdapter(Platform):
) )
message_obj.self_id = self.client_self_id message_obj.self_id = self.client_self_id
message_obj.session_id = session.session_id message_obj.session_id = session.session_id
message_obj.message = message_chain message_obj.message = message_chain.chain
# 创建临时事件对象来发送消息 # 创建临时事件对象来发送消息
temp_event = DiscordPlatformEvent( temp_event = DiscordPlatformEvent(

View File

@@ -1,5 +1,6 @@
import asyncio import asyncio
import base64 import base64
import binascii
import sys import sys
from io import BytesIO from io import BytesIO
from pathlib import Path from pathlib import Path
@@ -183,7 +184,7 @@ class DiscordPlatformEvent(AstrMessageEvent):
BytesIO(img_bytes), BytesIO(img_bytes),
filename=filename or "image.png", filename=filename or "image.png",
) )
except (ValueError, TypeError, base64.binascii.Error): except (ValueError, TypeError, binascii.Error):
logger.debug( logger.debug(
f"[Discord] 裸 Base64 解码失败,作为本地路径处理: {file_content}", f"[Discord] 裸 Base64 解码失败,作为本地路径处理: {file_content}",
) )

View File

@@ -82,7 +82,7 @@ class SlackAdapter(Platform):
session: MessageSesion, session: MessageSesion,
message_chain: MessageChain, message_chain: MessageChain,
): ):
blocks, text = SlackMessageEvent._parse_slack_blocks( blocks, text = await SlackMessageEvent._parse_slack_blocks(
message_chain=message_chain, message_chain=message_chain,
web_client=self.web_client, web_client=self.web_client,
) )