webjing 发布于
>=2.23.0
✨ 新功能
群聊 @提及功能
在群聊和频道中新增完整的 @提及功能,支持 @指定成员和 @全体成员。
@某人
- 在群聊/频道输入框中输入
@即可弹出成员选择器 - 支持按用户名、昵称、群昵称模糊搜索
- 支持键盘上下键选择、回车确认、Esc 关闭
- @用户名 作为整体 Token 显示(蓝色背景),退格键整体删除
- 被 @的用户在消息中看到高亮显示
@全体成员
- 群主和管理员可在成员选择器中选择"全体成员"
- 管理员每日 @全体成员 次数有配额限制(默认 10 次/天,可在插件设置中调整)
- 群主无次数限制
- 支持群组级别禁止 @全体成员(NO_AT_ALL 限制)
消息通知
- 被 @提及时,消息气泡有蓝色边框高亮
- 会话列表显示
[有人@我]或[@全体成员]标签 - 进入聊天时自动滚动到最近一条 @自己的消息
- 免打扰模式下,被 @提及的消息仍然正常推送
后台配置
- 新增「@提及功能配置」设置组
- 可配置管理员每日 @全体成员 次数限制
- 可配置 @全体成员 触发关键词(默认"全体成员")
- 配额每日零点(UTC+8)自动重置
🔧 优化
- 优化群组消息分发流程,@提及通知异步发送,不阻塞消息分发
- 免打扰模式下消息仍通过 WebSocket 推送(保持实时性),前端控制通知显示
- 新增 Mention API 端点,自动生成 TypeScript API 客户端
🐛 修复
- 修复
MentionNotificationServiceImpl与ChatWebSocketService的循环依赖问题 - 修复
MentionEndpoint.enrichMemberVO中 Reactormap返回 null 导致的 NPE - 修复
MentionInput占位符与输入内容重叠的问题 - 修复消息中 non-breaking space 导致的消息去重匹配失败(发送后显示两条)