RFC: 自习室(轻社交)
三档渐进式实现,从无声陪伴到房间互动逐步升级。
关联:#5(待办系统)— 任务完成事件可广播到自习室
现有基础设施
OnlineCounter Durable Object:WebSocket 生命周期、心跳保活(30s ping)、指数退避重连(最多 10 次)
StatusPill 组件:展示在线人数 + 连接状态
- workerchat-with-E2EE:可迁移的聊天能力(房间管理、邀请链接、角色权限、WebSocket 消息协议)
A档:全局广场
基于现有 OnlineCounter DO 扩展,不新建 DO。
不支持自定义消息,保持零社交压力。
B档:私人房间
新建 StudyRoom Durable Object,按房间隔离。
角色体系(从 workerchat 简化)
| 角色 |
能力 |
| Creator(房主) |
踢人、管理邀请链接、设置房间目标 |
| User(已登录) |
查看成员、参与专注 |
| Guest(未登录/链接加入) |
查看状态 |
去掉 Admin 层级,自习室场景不需要。
C档:房间内互动
在 B 档基础上增加交流能力,聊天功能从 workerchat 迁移改造。
架构
OnlineCounter (现有 DO,扩展)
└── A档:全局广场
├── 系统事件广播
└── 快捷短语
StudyRoom (新 DO,从 workerchat 迁移改造)
├── B档:私人房间
│ ├── 邀请链接 / 房间管理
│ ├── 成员专注状态同步
│ └── 房间目标
└── C档:房间互动
├── 聊天
├── 快捷反应 / Miku 贴纸
└── 排行榜
实现优先级
A → B → C,逐步交付。
RFC: 自习室(轻社交)
三档渐进式实现,从无声陪伴到房间互动逐步升级。
关联:#5(待办系统)— 任务完成事件可广播到自习室
现有基础设施
OnlineCounterDurable Object:WebSocket 生命周期、心跳保活(30s ping)、指数退避重连(最多 10 次)StatusPill组件:展示在线人数 + 连接状态A档:全局广场
基于现有
OnlineCounterDO 扩展,不新建 DO。不支持自定义消息,保持零社交压力。
B档:私人房间
新建
StudyRoomDurable Object,按房间隔离。角色体系(从 workerchat 简化)
去掉 Admin 层级,自习室场景不需要。
C档:房间内互动
在 B 档基础上增加交流能力,聊天功能从 workerchat 迁移改造。
架构
实现优先级
A → B → C,逐步交付。