fix: route media files to Feishu send_message pipeline

_send_feishu already supports image/video/voice/document attachments,
but the upstream router dropped media_files into the non-media branch.
Add Feishu to the media routing section so MEDIA: tags work in
send_message for Feishu.
This commit is contained in:
s6tiger 2026-04-22 23:26:29 +08:00
parent 04e039f687
commit b075b3010d

View file

@ -528,6 +528,23 @@ async def _send_to_platform(platform, pconfig, chat_id, message, thread_id=None,
last_result = result
return last_result
# --- Feishu: native file/image/video/voice attachment support ---
if platform == Platform.FEISHU and media_files:
last_result = None
for i, chunk in enumerate(chunks):
is_last = (i == len(chunks) - 1)
result = await _send_feishu(
pconfig,
chat_id,
chunk,
media_files=media_files if is_last else [],
thread_id=thread_id,
)
if isinstance(result, dict) and result.get("error"):
return result
last_result = result
return last_result
# --- Non-media platforms ---
if media_files and not message.strip():
return {