hyapp-server/docs/语音房业务路线图.md
2026-05-20 14:34:10 +08:00

4.8 KiB

Voice Room Business Roadmap

本文档只列语音房业务从当前阶段到可运营版本需要完成的内容。每一阶段都必须有可验收结果,不做泛化平台能力。

Phase 1: 房间基础闭环

目标:用户可以稳定开房、进房、离房、断线重连。

必须完成:

Item Result
创建房间 房主创建 active 房间并获得快照
进房 用户进入 room-service presence
腾讯云 IM 进群 JoinRoom 成功后客户端才能登录 IM 并加入房间群
离房 主动退出后 presence 和订阅权限清理
断线重连 token 刷新、JoinRoom 幂等刷新、腾讯云 IM 重新登录进群、历史补拉
恢复 room-service 重启后能恢复房间状态

验收:两个用户完成“开房 -> 进房 -> 腾讯云 IM 进群 -> 断线 -> 重连 -> 离房”,状态和消息都正确。

Phase 2: RTC 语音接入

目标:用户进房后能进入真实语音频道。

必须完成:

Item Result
RTC token gateway 返回腾讯云 RTC 所需 token
RTC user_id 映射 RTC uid 与系统 user_id 稳定绑定
进频道 JoinRoom 成功后才能拿 RTC token
离频道 LeaveRoom 后客户端退出 RTC
异常断线 RTC 断开不立即等于业务离房

验收:用户进房后能听说,断线重连后能回到同一房间。

Phase 3: 麦位和房间管理

目标:语音房具备基本主持和秩序。

必须完成:

Item Result
上麦/下麦 用户可以占用和释放麦位
换麦 主持或管理员可以调整麦位
锁麦 被锁麦位不能被普通用户占用
禁言 被禁言用户不能发公屏
踢人 被踢用户不能订阅房间
角色 owner、host、admin、audience 权限清晰

验收:主持能管理一场房,恶意用户不能继续发言或收消息。

Phase 4: IM 房间消息闭环

目标:房间内消息可用、可恢复、可补拉。

必须完成:

Item Result
公屏消息 通过 CheckSpeakPermission 后广播
系统消息 进房、离房、上下麦、踢人等自动广播
历史窗口 最近 N 条房间消息可补拉
单聊 基础 peer_message 可发送
ACK peer_message 和 system_notice 支持 ACK

验收:用户重进房后能补拉最近消息,禁言用户不能发公屏。

Phase 5: 金币和普通礼物

目标:语音房可以产生基础商业行为。

必须完成:

Item Result
金币账户 wallet-service 维护余额和账单
扣费幂等 重复请求不重复扣金币
礼物配置 礼物 ID、价格、热度、表现可配置
SendGift 扣费成功后进入 Room Cell
房间表现 热度、本地榜、礼物消息同步变化
outbox activity、notice、IM bridge 可通过 direct 或 RocketMQ 消费完整房间事件

验收:用户送普通礼物后金币减少、房间热度增加、榜单变化、消息广播成功。

Phase 6: 用户资料和短号

目标:用户在房间内有可展示身份。

必须完成:

Item Result
基础资料 昵称、头像、性别、简介
默认短号 注册生成,可搜索
临时靓号 有效期内覆盖默认短号,过期恢复
资料缓存 IM/客户端展示资料时可补全

验收:房间内展示当前短号和资料,靓号过期后恢复默认短号。

Phase 7: 风控和运营后台

目标:房间可控、问题可查。

必须完成:

Item Result
登录审计 能查登录、设备、IP
房间审计 能查创建、进出、管理动作
账务审计 能查扣费和入账
基础风控 刷屏、频控、封禁、黑名单
后台操作 封禁用户、关房、查房间状态

验收:出现投诉或异常送礼时,能定位用户、房间、消息、账单和操作记录。

Phase 8: 活动和幸运礼物

目标:在基础商业闭环稳定后做增长玩法。

必须完成:

Item Result
activity-service 消费房间 outbox 事件
活动配置 活动时间、规则、奖励
幸运礼物 三层奖池 + 一层风控
奖励入账 金币返还通过 wallet-service
审计 抽奖结果、奖池、风控阈值可追溯

验收:幸运礼物返还率可控,结果可审计,不影响普通送礼稳定性。

Current Focus

现在只做 Phase 1。

本阶段完成前,不应该优先做:

Do Not Prioritize Reason
幸运礼物 依赖金币和普通礼物闭环
房间推荐 单房间基础链路还未稳定
复杂活动 依赖 outbox 消费和账务
多端漫游 首版先保证单端重连
主备热同步 当前恢复模型是 snapshot + command log