docs: Phase 2c 规划同步到全局文档
- system-architecture.md: 新增 group/file 模块,admin 模块扩展群聊管理 - echochat-system-design.md: Phase 2c 开发分期详情 + 19 个新 API + 4 个管理端 API - api/README.md: 新增 group.md 导航(前台+管理端) - frontend-backend-integration.md: 更新最后修改时间 Made-with: Cursor
This commit is contained in:
@@ -16,6 +16,7 @@
|
|||||||
| [frontend/contact.md](frontend/contact.md) | 联系人 | ✅ Phase 2a | 17 个 API:好友申请/管理、好友分组、黑名单、搜索/推荐、在线状态 |
|
| [frontend/contact.md](frontend/contact.md) | 联系人 | ✅ Phase 2a | 17 个 API:好友申请/管理、好友分组、黑名单、搜索/推荐、在线状态 |
|
||||||
| [frontend/websocket.md](frontend/websocket.md) | WebSocket | ✅ Phase 2a | 前端 WebSocket 连接管理、事件协议、心跳、重连 |
|
| [frontend/websocket.md](frontend/websocket.md) | WebSocket | ✅ Phase 2a | 前端 WebSocket 连接管理、事件协议、心跳、重连 |
|
||||||
| [frontend/im.md](frontend/im.md) | 即时通讯 | ✅ Phase 2b | 7 个 API:会话列表/置顶/删除/清空、历史消息、全局搜索、未读数 |
|
| [frontend/im.md](frontend/im.md) | 即时通讯 | ✅ Phase 2b | 7 个 API:会话列表/置顶/删除/清空、历史消息、全局搜索、未读数 |
|
||||||
|
| [frontend/group.md](frontend/group.md) | 群聊管理 | 🔜 Phase 2c | 16 个 API:建群/管理/成员/角色/禁言/公告/搜索/入群审批 |
|
||||||
| [frontend/meeting.md](frontend/meeting.md) | 会议 | 📋 后续 | 即时会议、预约会议、加入/离开、会议列表 |
|
| [frontend/meeting.md](frontend/meeting.md) | 会议 | 📋 后续 | 即时会议、预约会议、加入/离开、会议列表 |
|
||||||
| [frontend/notify.md](frontend/notify.md) | 通知 | 📋 后续 | 通知列表、标记已读 |
|
| [frontend/notify.md](frontend/notify.md) | 通知 | 📋 后续 | 通知列表、标记已读 |
|
||||||
|
|
||||||
@@ -27,6 +28,7 @@
|
|||||||
| [admin/user.md](admin/user.md) | 用户管理 | ✅ Phase 1 | 用户列表/详情、状态管理、角色分配、创建用户 |
|
| [admin/user.md](admin/user.md) | 用户管理 | ✅ Phase 1 | 用户列表/详情、状态管理、角色分配、创建用户 |
|
||||||
| [admin/online.md](admin/online.md) | 在线监控 | ✅ Phase 2a | 在线用户列表、在线用户计数 |
|
| [admin/online.md](admin/online.md) | 在线监控 | ✅ Phase 2a | 在线用户列表、在线用户计数 |
|
||||||
| [admin/contact.md](admin/contact.md) | 好友关系管理 | ✅ Phase 2a | 好友关系列表(分页)、管理员解除好友关系 |
|
| [admin/contact.md](admin/contact.md) | 好友关系管理 | ✅ Phase 2a | 好友关系列表(分页)、管理员解除好友关系 |
|
||||||
|
| [admin/group.md](admin/group.md) | 群聊管理 | 🔜 Phase 2c | 群列表/详情、管理员解散群/移除成员 |
|
||||||
| [admin/meeting.md](admin/meeting.md) | 会议管理 | 📋 后续 | 会议列表/详情、强制结束、会议统计 |
|
| [admin/meeting.md](admin/meeting.md) | 会议管理 | 📋 后续 | 会议列表/详情、强制结束、会议统计 |
|
||||||
| [admin/system.md](admin/system.md) | 系统管理 | 📋 待定 | 仪表盘数据、操作日志、系统配置 |
|
| [admin/system.md](admin/system.md) | 系统管理 | 📋 待定 | 仪表盘数据、操作日志、系统配置 |
|
||||||
|
|
||||||
|
|||||||
@@ -92,9 +92,11 @@ EchoChat 采用 **「精简单体 + 媒体微服务」** 架构,核心思想
|
|||||||
| ws | WebSocket 连接管理(Hub/Client/PubSub)、在线状态管理(Redis SET + TTL 心跳续期)、好友上下线实时通知(FriendIDsGetter 接口注入) | ✅ Phase 2a |
|
| ws | WebSocket 连接管理(Hub/Client/PubSub)、在线状态管理(Redis SET + TTL 心跳续期)、好友上下线实时通知(FriendIDsGetter 接口注入) | ✅ Phase 2a |
|
||||||
| contact | 好友关系管理(申请/接受/拒绝/删除/拉黑)、好友分组(CRUD + 移动)、用户搜索、好友推荐(批量查询优化) | ✅ Phase 2a |
|
| contact | 好友关系管理(申请/接受/拒绝/删除/拉黑)、好友分组(CRUD + 移动)、用户搜索、好友推荐(批量查询优化) | ✅ Phase 2a |
|
||||||
| im | 即时消息收发(单聊)、会话管理、消息存储、撤回、搜索、离线推送 | ✅ Phase 2b |
|
| im | 即时消息收发(单聊)、会话管理、消息存储、撤回、搜索、离线推送 | ✅ Phase 2b |
|
||||||
|
| group | 群聊管理(建群/加入/退出/角色/禁言/@提醒/群公告/入群审批) | 🔜 Phase 2c |
|
||||||
|
| file | 文件上传(MinIO 对象存储 + 通用上传 API) | 🔜 Phase 2c |
|
||||||
| meeting | 会议创建/管理、信令转发、mediasoup 资源编排 | 📋 后续 |
|
| meeting | 会议创建/管理、信令转发、mediasoup 资源编排 | 📋 后续 |
|
||||||
| notify | 通知推送、会议邀请、好友申请通知 | 📋 后续 |
|
| notify | 通知推送、会议邀请、好友申请通知 | 📋 后续 |
|
||||||
| admin | 后台管理(用户管理 + 角色权限管理 + 在线监控 + 好友关系管理、会议监控、系统配置) | ✅ Phase 1/2a |
|
| admin | 后台管理(用户管理 + 角色权限管理 + 在线监控 + 好友关系管理 + 群聊管理、会议监控、系统配置) | ✅ Phase 1/2a, 🔜 2c |
|
||||||
|
|
||||||
**不负责的事情:** 不处理 RTP 媒体数据、不参与音视频转发、不做 WebRTC 协议协商。
|
**不负责的事情:** 不处理 RTP 媒体数据、不参与音视频转发、不做 WebRTC 协议协商。
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
> **适用范围**:EchoChat 项目全端(Go 后端 + admin 管理端 + frontend 用户端)
|
> **适用范围**:EchoChat 项目全端(Go 后端 + admin 管理端 + frontend 用户端)
|
||||||
> **创建日期**:2026-03-02
|
> **创建日期**:2026-03-02
|
||||||
> **最后更新**:2026-03-02(Phase 2a:新增 WebSocket 事件联动规范 + 联系人模块错误处理)
|
> **最后更新**:2026-03-04(Phase 2c 设计完成:新增群聊模块、MinIO 文件存储、已读回执规划)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -718,6 +718,31 @@ DELETE /api/v1/im/conversations/:id/messages 清空聊天记录(个人视
|
|||||||
GET /api/v1/im/messages/search 全局消息搜索(GIN 全文索引)
|
GET /api/v1/im/messages/search 全局消息搜索(GIN 全文索引)
|
||||||
GET /api/v1/im/unread 全局未读消息总数
|
GET /api/v1/im/unread 全局未读消息总数
|
||||||
|
|
||||||
|
# 群聊管理模块(Phase 2c 规划)
|
||||||
|
POST /api/v1/groups 创建群聊
|
||||||
|
GET /api/v1/groups/:id 群详情
|
||||||
|
PUT /api/v1/groups/:id 更新群信息
|
||||||
|
DELETE /api/v1/groups/:id 解散群聊
|
||||||
|
GET /api/v1/groups/:id/members 成员列表
|
||||||
|
POST /api/v1/groups/:id/members 邀请入群
|
||||||
|
DELETE /api/v1/groups/:id/members/:uid 踢人
|
||||||
|
PUT /api/v1/groups/:id/members/:uid/role 设置/取消管理员
|
||||||
|
PUT /api/v1/groups/:id/members/:uid/mute 禁言/解除
|
||||||
|
POST /api/v1/groups/:id/leave 退出群聊
|
||||||
|
PUT /api/v1/groups/:id/transfer 转让群主
|
||||||
|
PUT /api/v1/groups/:id/members/me/nickname 修改群昵称
|
||||||
|
POST /api/v1/groups/:id/join-requests 申请入群
|
||||||
|
GET /api/v1/groups/:id/join-requests 入群申请列表
|
||||||
|
PUT /api/v1/groups/:id/join-requests/:rid 审批入群申请
|
||||||
|
GET /api/v1/groups/search 搜索公开群
|
||||||
|
|
||||||
|
# 已读回执(Phase 2c 规划)
|
||||||
|
GET /api/v1/im/messages/:id/reads 消息已读详情
|
||||||
|
GET /api/v1/im/messages/:id/read-count 消息已读计数
|
||||||
|
|
||||||
|
# 文件上传(Phase 2c 规划)
|
||||||
|
POST /api/v1/upload 通用文件上传(MinIO)
|
||||||
|
|
||||||
# 会议模块
|
# 会议模块
|
||||||
POST /api/v1/meetings
|
POST /api/v1/meetings
|
||||||
POST /api/v1/meetings/schedule
|
POST /api/v1/meetings/schedule
|
||||||
@@ -757,6 +782,12 @@ GET /api/v1/admin/online/count 在线用户数
|
|||||||
GET /api/v1/admin/contacts 所有好友关系(分页)
|
GET /api/v1/admin/contacts 所有好友关系(分页)
|
||||||
DELETE /api/v1/admin/contacts/:id 管理员解除好友关系
|
DELETE /api/v1/admin/contacts/:id 管理员解除好友关系
|
||||||
|
|
||||||
|
# 群聊管理(Phase 2c 规划)
|
||||||
|
GET /api/v1/admin/groups 群列表(分页 + 筛选)
|
||||||
|
GET /api/v1/admin/groups/:id 群详情(含成员列表)
|
||||||
|
DELETE /api/v1/admin/groups/:id 管理员解散群
|
||||||
|
DELETE /api/v1/admin/groups/:id/members/:uid 管理员移除成员
|
||||||
|
|
||||||
# 会议管理(后续阶段)
|
# 会议管理(后续阶段)
|
||||||
GET /api/v1/admin/meetings
|
GET /api/v1/admin/meetings
|
||||||
GET /api/v1/admin/meetings/:id
|
GET /api/v1/admin/meetings/:id
|
||||||
@@ -958,14 +989,22 @@ services:
|
|||||||
- 前台 4 个页面 + chat Store + API 封装
|
- 前台 4 个页面 + chat Store + API 封装
|
||||||
- 设计文档:`docs/plans/2026-03-03-phase2b-design.md`
|
- 设计文档:`docs/plans/2026-03-03-phase2b-design.md`
|
||||||
|
|
||||||
#### Phase 2c:群聊与增强 📋 待规划
|
#### Phase 2c:群聊与已读回执 🔜 设计完成,待实施
|
||||||
- 群聊会话(建群/加入/退出/管理)
|
- 群聊管理(三级角色:建群/加入/退出/解散/角色管理/禁言/全体禁言/群公告/入群审批)
|
||||||
- 群消息收发
|
- 群消息收发(复用 im.message.* + @某人/@所有人 + 管理员撤回无时限 + 系统消息)
|
||||||
- 已读回执(单聊 + 群聊)
|
- 已读回执(单聊会话级 last_read_msg_id + 群聊消息级 im_message_reads + 实时推送)
|
||||||
- 消息类型扩展(图片/语音/文件)
|
- MinIO 文件存储服务(Docker + 通用上传 API)
|
||||||
|
- 管理端群聊管理(群列表/详情/解散/移除成员)
|
||||||
|
- 前端 9 个新页面 + 群聊 Store + 会话列表 Tab 改造
|
||||||
|
- 新增 3 张数据库表(im_groups / im_group_join_requests / im_message_reads)
|
||||||
|
- 设计文档:`docs/plans/2026-03-04-phase2c-design.md`
|
||||||
|
- 实施计划:`docs/plans/2026-03-04-phase2c-implementation.plan.md`(14 个 Task)
|
||||||
|
|
||||||
|
#### Phase 2d:消息类型扩展 📋 待规划
|
||||||
|
- 消息类型扩展(图片/语音/文件消息)
|
||||||
- 管理端消息管理功能
|
- 管理端消息管理功能
|
||||||
|
|
||||||
#### Phase 2d:会议与通知 📋 待规划
|
#### Phase 2e:会议与通知 📋 待规划
|
||||||
- 多人音视频会议(即时会议 + 预约会议)
|
- 多人音视频会议(即时会议 + 预约会议)
|
||||||
- 消息通知系统
|
- 消息通知系统
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user