跳转至

实例化

模块列表:
模块 描述
Room 房间模块,提供自己加入、退出房间能力,成员加入退出房间事件
Stream 媒体流模块,提供发布、取消发布、订阅、取消订阅、获取 MeidaStream
Message 消息模块,提供向房间内发送消息能力
Storage 存储模块,提供设置、移除、获取数据能力(数据存储时间与房间生命周期一致)
接口列表:
接口 描述
room.join(user) 加入房间,发布流、订阅流前需加入房间,加入后,房间成员会收到有人加入通知
room.leave() 离开房间,离开后房间成员会收到有人离开通知
room.get() 获取房间信息
stream.publish(user) 发布资源,发布后房间成员会收到有人发布资源通知
stream.unpublish(user) 取消发布,取消发布后房间成员会收到有人取消发布通知
stream.subscribe(user) 订阅资源,房间成员发布资源后,订阅后方可进行音视频通话
stream.unsubscribe(user) 取消订阅,取消订阅房间成员发布资源
stream.resize(user) 切换大小流,大小窗口切换时可将小窗口切为小资源流,节省带宽、流量
message.send(msg) 发送消息,向房间内发送消息,内容可自定义
storage.set(key, value, [message]) 设置数据,设置后房间成员共享,多人设置 key 相同,后者会覆盖前者
storage.get(key) 获取数据,获取房间成员或当前成员设置的数据
storage.remove(key, [message]) 移除数据,按 key 移除,不区分成员

创建 RongRTC 实例后,可得到所有模块,RongRTC 可被实例化多次,实例之间保持独立

RongRTC 生命周期如下:

new RongRTC(option)

以下 RongRTC 实例 简称 rongRTC

实例化后需设置事件监听器,请参考各模块实例化方法设置事件 RoomStream

加入房间成功后等待其他成员加入,成员加入后,当前用户的 room.joined 事件将会触发,成员媒体流到本地后触发 stream.published,按需订阅

离开房间后并不会销毁 rongRTC

rongRTC.destroy() 触发后销毁实例

rongRTC 销毁后,实例下所有方法均不可调用

option 对象说明:

参数 类型 必填 默认值 说明 最低版本
id string IE 插件 的 id 3.0.4
RongIMLib object RTC SDK 依赖 IM SDK,使用 RTC 需先引入, 需引入的最低版本为 2.5.1 3.0.4
debug boolean false 调试模式,开启后 SDK 自动向控制台输出日志 3.0.4
logger function 日志收集器,可将 Web SDK 内部日志收集,分析排查问题 3.0.4
created function RongRTC 实例已被创建 3.0.4
mounted function RongRTC 各模块已加载完成且当前成员加入房间成功,可开始后续业务 3.0.4
destroyed function 实例被销毁 3.0.4
error function RongRTC 全局错误捕获事件,如:网络断开、IM SDK 不可用等 3.0.4

示例:

var rongRTC = new RongRTC({
  // 开启调试模式,SDK 会向控制台输出日志,默认 false
  debug: true,
  // IM SDK ,使用可参考: https://docs.rongcloud.cn/im/imlib/web/summary/
  RongIMLib: RongIMLib,
  created: function(){
  },
  mounted: function(){
  },
  destroyed: function(){
  },
  error: function(error){
  
  }
});
var Room = rongRTC.Room,
  Stream = rongRTC.Stream,
  Message = rongRTC.Message,
  Storage = rongRTC.Storage;
// 按需调用各模块实例 API