Commit Graph

7 Commits

Author SHA1 Message Date
2977094657
0349d89def fix(chat): 图片消息优先使用资源 md5 修复 _t.dat 缩略图不显示
- 图片消息(local_type=3)优先使用 message_resource.db 的资源 md5,避免 XML md5 与本地 *_t.dat 基名不一致导致 /api/chat/media/image 404

- 同步覆盖消息合并/导出/列表三处解析路径

refs #12
2025-12-31 11:34:28 +08:00
2977094657
8488c1aa53 feat(chat): 会话消息列表支持按类型筛选
- /api/chat/messages 支持 render_types(逗号分隔,多类型)\n- 统一 renderType 归一化(如 redPacket -> redpacket),避免筛选命中问题
2025-12-29 13:40:02 +08:00
2977094657
761648f15a fix(chat): 解析 XML 的 cdn 链接时进行反转义
- 新增 _normalize_xml_url 统一处理 & 等转义字符
- 图片/视频/表情消息的 cdn URL 解析统一规范化,避免误判为 file_id
2025-12-26 21:45:40 +08:00
2977094657
e7d977ae94 improvement(chat): 会话列表改用 session_last_message 缓存表
- 用 session.db::session_last_message 缓存会话最后一条消息预览,减少会话列表查询开销
- 增加缓存表构建/状态接口,列表缺失时自动补建
- 解密阶段支持自动构建,环境变量切换为 WECHAT_TOOL_BUILD_SESSION_LAST_MESSAGE
- 移除 session_preview_index 实现
2025-12-25 23:08:50 +08:00
2977094657
fa08937ebd feat(chat): 增加消息搜索索引与会话预览索引
- 新增 chat_search_index.db:提供索引状态/构建/发送者接口

- 新增 session_preview.db:会话最新消息预览索引,支持指纹校验与过期重建

- 解密完成后默认预构建会话预览索引(WECHAT_TOOL_BUILD_SESSION_PREVIEW=0 可关闭)
2025-12-25 20:27:31 +08:00
2977094657
36f5067730 improvement(media): 聊天媒体支持 file_id 兜底定位
- 图片/视频消息无 MD5 时,解析并下发 file_id,用于本地资源兜底定位与展示
- 后端 chat_media/open_folder 支持 md5/file_id;视频优先可 Range 的文件响应,并在需要时解密落盘
- 前端聊天页与 API 调用适配 file_id;补充媒体 URL 可用性判断
- 解密页补充“获取密钥”提示,支持手动输入/保存密钥;README 同步说明;更新音频图标资源
2025-12-23 16:41:23 +08:00
2977094657
8679f090ce refactor(api): 重构为模块化路由架构
- 新增routers目录,按功能划分路由模块
  - health.py: 健康检查端点
  - chat.py: 聊天会话与消息查询
  - media.py: 媒体资源解密
  - decrypt.py: 数据库解密
  - wechat_detection.py: 微信安装检测
  - chat_media.py: 聊天媒体资源访问
2025-12-19 16:17:46 +08:00