[关闭]
@binbins 2021-04-06T15:06:53.000000Z 字数 3958 阅读 97

目录结构

关键模块代码说明

demoServer 交互模块

IM 交互模块

RTC 交互模块

房间模块

目录 说明
RCMicRoomViewController 房间视图控制器,负责房间内各子视图的初始化、加载以及各模块之间 UI 上的交互
ViewModel 房间模块 ViewModel,负责房间中各视图的数据加载及处理
HeaderFooter 自定义顶部导航栏及底部工具栏
Participants 麦位模块
Chat 消息展示模块
BottomDialog 房间内各种弹窗
InputBar 输入工具栏
RTCStatus RTC 相关状态监控

房间模块 ViewModel(RCMicRoomViewModel) 详细说明

关键业务逻辑说明

登录流程

加入房间流程

麦位相关状态改变流程

  1. //直播流地址:
  2. "liveUrl":"http://abc.com"
  3. //麦位相关:
  4. //最后的 0-8 表示九个麦位,0 为主持人
  5. "sealmic_position_0":
  6. {
  7. "userId":"abcde",
  8. //0:正常状态(此时 userId 存在则说明麦位上有人,否则表示当前为空麦位),1:锁定状态(不允许上人),2:闭麦状态(当前麦位上的用户被禁言)
  9. "state":0,
  10. //0-8 表示九个麦位
  11. "position":0
  12. }
  13. //正在发言相关:
  14. //最后的 0-8 表示九个麦位,0 为主持人
  15. "speaking_0":
  16. {
  17. //0 表示当前未发言,1 表示正在发言
  18. "speaking":0,
  19. //0-8 表示九个麦位
  20. "position":0
  21. }
  22. //是否有人排麦相关:
  23. //0 表示没人在排麦,1 表示有人在排麦
  24. "applied_mic_list_empty":0

观众转换为参会人员流程

参会人员转为观众流程

正在发言相关 KV 的处理流程

主持人转让与接管流程

转让流程

接管流程

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注