只用表情 XML 里的 md5 + len/totallen 作为发送参数。

不再用图片文件大小、文件名等回退逻辑去“猜参数”。
发送接口不再“先返回发送中”,而是直接调用 SendEmoji 并等待结果:
成功才返回 表情发送成功
失败直接返回具体错误(不会再假成功)
This commit is contained in:
liuwei
2026-04-15 11:36:22 +08:00
parent d0fa823557
commit ee5c1ebadc
4 changed files with 55 additions and 30 deletions

View File

@@ -571,13 +571,13 @@ class MessageStorageDB(BaseDBOperator):
return self.get_pending_media_messages(minutes_ago, limit)
def get_recent_emoji_assets(self, limit: int = 200) -> List[Dict]:
"""获取已下载落盘的表情资源记录(用于通讯录聊天面板的表情库"""
"""获取近期表情消息记录(用于提取 md5 + len 发送参数"""
sql = """
SELECT message_id, group_id, sender, timestamp, message_type, attachment_url, image_path
FROM messages
WHERE message_type IN ('47', '1048625', '1090519089')
AND image_path IS NOT NULL
AND image_path <> ''
AND attachment_url IS NOT NULL
AND attachment_url <> ''
ORDER BY timestamp DESC
LIMIT %s
"""