v1.1.1 2026-04-28
- FIX 离线消息无限重复:用户上线时发送离线消息后立即删除,避免每次上线都重复收到相同的离线消息。
- FIX 数据库保存失败仍返成功ACK:检查 saveMessage 返回值,数据库失败时返回 code:500 错误 ACK。
- FEAT 待发送消息队列:WebSocket 未连接时将消息加入队列,连接恢复后自动补发,防止网络抖动丢消息。
- FIX 历史消息分页边界情况:beforeMsgId 对应的消息不存在时添加警告日志。
- FIX 已读回执离线处理:目标用户离线时添加日志区分,不静默失败。
- FEAT 消息发送失败重试:服务器返回错误时标记消息为 failed 状态,前端可点击红色感叹号重发。
v1.1.0 2026-04-26
- FIX 离线消息已读逻辑:用户登录后推送离线消息时,不再自动标记为已读,等前端发送 READ 回执后再标记。
- FEAT 发送状态区分:区分在线送达和离线存储两种 ACK 状态,前端可据此显示"已送达"或"已存入离线队列"。
- FEAT 前端已读回执:前端收到新消息后自动发送 READ 回执,完善已读流程。
- FIX 历史消息未读数:加载历史消息后正确清除未读数,避免重复显示。
- FIX 消息字段统一:统一使用 `msgType` 字段名,避免 type/msgType 混淆。
- OPTIMIZE 心跳间隔调整:前端心跳间隔从 25s 调整为 30s,与后端配置一致。
- OPTIMIZE 消息去重持久化:刷新页面后也能基于本地存储的 msgId 去重,防止重复消息。
v1.0.0 2026-01-31
- FEAT 生产级核心发布:支持分布式 Redis Pub/Sub 架构,满足高并发横向扩展。
- FEAT 可视化监控:内置实时消息审计流及系统状态大屏(/monitor)。
- FEAT 大厂级协议:实现基于 `msgId` 的严格 ACK 确认机制及状态码体系。
- OPTIMIZE 零配置启动:支持 Zero-Config 模式,内置环境自检脚本。
- DOCS 全套文档:提供傻瓜式宝塔部署手册、前端接入指南及维护手册。