Options
All
  • Public
  • Public/Protected
  • All
Menu

Class RCAbstractRoom Abstract

房间抽象基类

Hierarchy

Index

Methods

  • on(eventType: string, listener: IEventListener, target?: any): void
  • 添加事件监听器

    Parameters

    • eventType: string
    • listener: IEventListener
    • Optional target: any

    Returns void

  • once(eventType: string, listener: IEventListener, target?: any): void
  • Parameters

    • eventType: string
    • listener: IEventListener
    • Optional target: any

    Returns void

  • off(eventType: string, listener: IEventListener, target?: any): void
  • 移除事件监听器

    Parameters

    • eventType: string
    • listener: IEventListener
    • Optional target: any

    Returns void

  • emit(eventType: string, ...attrs: any[]): void
  • 事件派发

    Parameters

    • eventType: string
    • Rest ...attrs: any[]

    Returns void

  • removeAll(eventType: string): void
  • 清空所有指定类型的事件监听器

    Parameters

    • eventType: string

    Returns void

  • clear(): void
  • 无差别清空所有事件监听器

    Returns void

  • setBitrate(max: number, min: number, start?: number): void
  • 设置房间上行资源的总码率配置

    deprecated

    use RCLocalTrack.setBitrate instead of setBitrate

    description
    • 自 v5.1.0 版本开始,推荐使用 RCLocalTrack.setBitrate 对不同流分别指定码率。
    • 该方法仅在 SDP plan-b 协议下(Chrome 92 与 Safari 11 之前的版本)有效。

    Parameters

    • max: number

      音视频发送码率上限,不可小于 200 且不可小于 min

    • min: number

      音视频发送码率下限,默认值为 1,且不可小于 1,不可大于 max

    • Optional start: number

      起始码率,默认为码率上限的 70%

    Returns void

  • getRoomId(): string
  • 获取房间 Id

    Returns string

  • getCrtUserId(): string
  • 获取当前 userId

    Returns string

  • getRemoteUserIds(): string[]
  • 获取远程用户列表,不包含当前用户

    Returns string[]

  • 获取所有房间已发布的远端资源列表

    Returns RCRemoteTrack[]

  • 获取远端用户的资源列表

    Parameters

    • userId: string

    Returns RCRemoteTrack[]

  • getSessionId(): string
  • 获取房间当前会话 Id,当房间内已无成员时房间会回收,重新加入时 sessionId 将更新

    Returns string

  • sendMessage(name: string, content: any): Promise<{ code: RCRTCCode }>
  • 向房间内发消息

    Parameters

    • name: string

      消息名称

    • content: any

      消息内容

    Returns Promise<{ code: RCRTCCode }>

  • setRoomAttribute(key: string, value: string, message?: { name: string; content: string }, isInner?: boolean): Promise<{ code: RCRTCCode }>
  • 设置房间属性

    Parameters

    • key: string

      属性名

    • value: string

      属性值

    • Optional message: { name: string; content: string }

      是否在设置属性的时候携带消息内容,传空则不往房间中发送消息

      • name: string
      • content: string
    • isInner: boolean = false

      RTC 业务内部使用参数,用户忽略

    Returns Promise<{ code: RCRTCCode }>

  • deleteRoomAttributes(keys: string[], message?: { name: string; content: string }, isInner?: boolean): Promise<{ code: RCRTCCode }>
  • 删除房间属性

    Parameters

    • keys: string[]

      待删除的属性名数组

    • Optional message: { name: string; content: string }

      是否在删除属性的时候携带消息内容,传空则不往房间中发送消息

      • name: string
      • content: string
    • isInner: boolean = false

      RTC 业务内部使用参数,用户忽略

    Returns Promise<{ code: RCRTCCode }>

  • getRoomAttributes(keys?: string[], isInner?: boolean): Promise<{ code: RCRTCCode; data?: KVString }>
  • 获取房间属性

    Parameters

    • keys: string[] = []

      要查询的属性名数组,当数组长度为空时,取所有已设置的 kv 值

    • isInner: boolean = false

      RTC 业务内部使用参数,用户忽略

    Returns Promise<{ code: RCRTCCode; data?: KVString }>

  • isDestroyed(): boolean
  • 查询房间是否已销毁

    Returns boolean

  • 增量发布资源,若发布的资源 tag 及媒体类型重复,后者将覆盖前者进行发布。

    Parameters

    Returns Promise<IPubSuccessRes>

  • 增量取消资源发布,若相应资源中存在小流资源,则同时取消发布

    Parameters

    Returns Promise<IPubSuccessRes>

  • 取消订阅资源

    Parameters

    Returns Promise<{ code: RCRTCCode; failedList?: ISubscribeAttr[] }>

  • 强制修改订阅列表,仅订阅数组中的资源,取消订阅其他已订阅资源。 当参数为 [] 时,意味着不再订阅任何资源

    Parameters

    Returns Promise<{ code: RCRTCCode; failedList?: ISubscribeAttr[] }>

  • 获取已发布的本地资源

    Parameters

    • trackId: string

    Returns null | RCLocalTrack

  • 获取所有已发布的资源

    Returns RCLocalTrack[]

  • 注册事件监听器,多次注册会导致后者覆盖前者,可以通过使用 registerRoomEventListener(null) 取消注册

    Parameters

    Returns void

  • 注册房间数据监控

    description

    该方法暂仅支持 Chrome 浏览器

    Parameters

    Returns void

  • 音量上报

    Parameters

    • handler: null | IAudioLevelChangeHandler

      音量事件监听函数

    • Optional _: number

      参数已废弃,SDK 默认以每秒一次进行回调上报时间间隔

    Returns void

  • getClientSessionId(): string
  • Returns string

Constructors

  • new RCAbstractRoom(_context: RTCContext, _runtime: IRuntime, _roomId: string, _roomMode: RTCMode, _service: default, _initOptions: IRCRTCInitOptions, isUpgrade?: boolean, isMainRoom?: boolean, _clientSessionId?: string, encrypt?: boolean): RCAbstractRoom
  • RCRTCRoom 类的构造函数。

    Parameters

    • _context: RTCContext

      RTC上下文,

    • _runtime: IRuntime

      运行时

    • _roomId: string

      房间号

    • _roomMode: RTCMode

      RTC模式,

    • _service: default

      RCMediaService

    • _initOptions: IRCRTCInitOptions

      IRCRTCInitOptions

    • Optional isUpgrade: boolean
    • Optional isMainRoom: boolean
    • _clientSessionId: string = ...

      客户端会话 ID,用于标识客户端。

    • encrypt: boolean = false

    Returns RCAbstractRoom

Properties

_roomId: string

Accessors

  • 获取当前已经订阅的全量资源 returns subscribedTracks ISubscribeAttr[]

    Returns ISubscribeAttr[]