Skip to main content
SRTC 只做三件事:实时消息传输、状态同步、音视频传输。它不带用户体系、不带业务规则 —— 这些由你决定。整个模型只有三个对象:

频道 Channel

频道是一个音视频空间,同一频道内的用户可以互相收发音视频。频道名和频道信息都由你自定义。

打开与销毁

  • 第一个用户加入时,频道若未打开会自动打开
  • 也可以提前手动打开 —— 需要预先设置频道扩展属性时用得上
  • 频道开启后 2 小时内无人加入,或最后一个用户离开 2 小时后,自动销毁
如果频道属性要在第一个人进来前就位(例如布局配置、业务标记),用服务端接口提前手动打开频道并写入属性,避免”先进来再改属性”导致的短暂不一致。

用户 User

SRTC 没有自己的用户体系。 所有用户信息由你定义,SRTC 只认 Token 里签发的 uid uid 与频道的关系有两条规则:
  • 一个 uid 可以同时加入多个不同频道
  • 同一个 uid 加入同一个频道时,后加入的会顶掉先加入的
一般直接把业务系统的用户 ID 当作 uid 即可。如果要让同一个业务用户在一个频道里有多个并存身份(比如多设备同时在线),把 sessionId 或设备标识拼进 uid。 需要”一个 uid 同时只能在一个频道里”这类限制,由你的后端自己控制 —— SRTC 不做这个约束。 uid 怎么签发见 Token 与鉴权

流轨道 Track

每一路音频、每一路视频都是一个流轨道。一个用户可以:
  • 发布多个本地轨道(摄像头、屏幕共享、麦克风……)
  • 订阅多个远端轨道
SRTC 只负责传输轨道里的媒体数据,每个轨道的业务含义由你定义 —— 用 desc 字段标记这一路是摄像头还是屏幕共享,接收端据此决定怎么渲染。

订阅是显式的

加入频道不等于自动收到所有画面。你需要主动订阅想看的轨道,或开启自动订阅。这样设计是为了让你能按需控制带宽 —— 比如九宫格只订阅当前页的九路,翻页时再切换。

与 SMeeting 的关系

如果你需要的是主持人、举手、静音全场这类会议规则,它们不在 SRTC 里 —— 那是 SMeeting 的范围。SRTC 给的是通道,规则要你自己写。 两者怎么选见 选 SRTC 还是 SMeeting

下一步