Skip to content

Commit c51609b

Browse files
Dt8333Soulter
andauthored
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 <[email protected]>
1 parent 72148f6 commit c51609b

File tree

4 files changed

+6
-5
lines changed

4 files changed

+6
-5
lines changed

astrbot/core/platform/sources/aiocqhttp/aiocqhttp_platform_adapter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ async def send_by_session(
107107
)
108108
await super().send_by_session(session, message_chain)
109109

110-
async def convert_message(self, event: Event) -> AstrBotMessage:
110+
async def convert_message(self, event: Event) -> AstrBotMessage | None:
111111
logger.debug(f"[aiocqhttp] RawMessage {event}")
112112

113113
if event["post_type"] == "message":
@@ -222,7 +222,7 @@ async def _convert_handle_message_event(
222222
err = f"aiocqhttp: 无法识别的消息类型: {event.message!s},此条消息将被忽略。如果您在使用 go-cqhttp,请将其配置文件中的 message.post-format 更改为 array。"
223223
logger.critical(err)
224224
try:
225-
self.bot.send(event, err)
225+
await self.bot.send(event, err)
226226
except BaseException as e:
227227
logger.error(f"回复消息失败: {e}")
228228
return None

astrbot/core/platform/sources/discord/discord_platform_adapter.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ async def send_by_session(
9090
)
9191
message_obj.self_id = self.client_self_id
9292
message_obj.session_id = session.session_id
93-
message_obj.message = message_chain
93+
message_obj.message = message_chain.chain
9494

9595
# 创建临时事件对象来发送消息
9696
temp_event = DiscordPlatformEvent(

astrbot/core/platform/sources/discord/discord_platform_event.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import asyncio
22
import base64
3+
import binascii
34
import sys
45
from io import BytesIO
56
from pathlib import Path
@@ -183,7 +184,7 @@ async def _parse_to_discord(
183184
BytesIO(img_bytes),
184185
filename=filename or "image.png",
185186
)
186-
except (ValueError, TypeError, base64.binascii.Error):
187+
except (ValueError, TypeError, binascii.Error):
187188
logger.debug(
188189
f"[Discord] 裸 Base64 解码失败,作为本地路径处理: {file_content}",
189190
)

astrbot/core/platform/sources/slack/slack_adapter.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ async def send_by_session(
8282
session: MessageSesion,
8383
message_chain: MessageChain,
8484
):
85-
blocks, text = SlackMessageEvent._parse_slack_blocks(
85+
blocks, text = await SlackMessageEvent._parse_slack_blocks(
8686
message_chain=message_chain,
8787
web_client=self.web_client,
8888
)

0 commit comments

Comments
 (0)