重要参数

更新时间:
复制 MD 格式

本文主要介绍发起视频通话(Start) 和加入视频通话(Join)及组件需要传入的 Config 参数。

基础参数

参数名称

参数类型

是否必填

说明

userId

String

是

用户 ID。

appId

String

是

小程序 ID。

roomId

String

否

房间 ID。

token

String

否

房间 token。

resolution

int

否

视频的清晰度,0(640 * 360), 1(960 * 540), 2(1280 * 720),默认为 2。

fps

int

否

视频帧率,15 / 30,默认为 30。

streamInfo

使用不同通道时需传入不同的参数,目前只支持 mPaaS 通道,下表列出了在 mPaaS 通道下的相关参数。

通道

参数名称

参数类型

是否必填

说明

mPaaS

signature

String

是

蚂蚁域内和 mPaaS 必选。

serverUrl

String

是

服务器 URL。

mPaaS 通道下,serverUrl 地址不变:wss://cn-hangzhou-mrtc.cloud.alipay.com/ws。

workspaceId

String

是

使用 mPaaS 时必选。

bizName

String

是

使用 mPaaS 时必选。

subBiz

String

是

使用 mPaaS 时必选。

界面显示

参数名称

参数类型

是否必填

说明

displayInfo

String

否

界面显示用到的配置,可选。

showFullScreen

boolean

否

用于 pc 共享画面时的全画面显示(默认为 false 沉浸式 true 显示全部画面)

callPage_visible

boolean

否

接听页开关(默认为 true 开启接听页 false 关闭显示)

calling_information

String

否

接听界面显示的文本。

end_information

String

否

挂断界面显示的文本。

pusher_visible

boolean

否

是否显示(配合 enableCamera 用于只想推音频的场景)。

pusher_isMini

boolean

否

是否以小窗显示(默认 false,与 player.isMini 互斥,只能一个为 true)。

player_visible

boolean

否

是否显示。

player_isMini

boolean

否

是否以小窗显示(默认 true,注意与 pusher.isMini 互斥,只能一个为 true)。

hangup_visible

boolean

否

是否显示关闭按钮(默认 true,只有值为 false 时隐藏)。

mute_visible

boolean

否

是否显示静音按钮(默认 true,只有值为 false 时隐藏)。

screenshot_visible

boolean

否

是否显示截屏按钮(默认 true,只有值为 false 时隐藏)。

enableCamera_visible

boolean

否

是否显示开启摄像头按钮(默认 true,只有值为 false 时隐藏)。

switchCamera_visible

boolean

否

是否显示切换摄像头按钮(默认 true,只有值为 false 时隐藏)。

switchScreenCapture_visible

boolean

否

是否显示投屏按钮(默认 true,只有值为 false 时隐藏)

users_visible

boolean

否

是否显示用户列表(默认 true,只有值为 false 时隐藏)。

users_name

string

是

界面上显示的用户名称(比外层的 users 优先级高)。

users_avatar

string

是

界面上显示的用户头像(比外层的 users 优先级高)。

users_name

string

否

界面上显示的用户名称。

users_avatar

string

否

界面上显示的用户头像。

controlInfo_enableCamera

boolean

否

启动时是否打开摄像头。

Config 参数

{
  userId,  // 用户 ID
  appId,   // 小程序 ID
    
  roomId?, // 房间 ID,创建不需要,加入可选
  token?,  // 房间 token,创建不需要,加入必选

  resolution?: 2, // 视频的清晰度,0(640 * 360), 1(960 * 540), 2(1280 * 720),默认为 2
  fps?: 30,       // 视频帧率,15 / 30,默认为 30

  streamInfo: {
    // 根据不同通道传入不同的参数,目前只支持 mPaaS 通道
    //  - mPaaS
    //    - signature
    //    - serverUrl(wss://cn-hangzhou-mrtc.cloud.alipay.com/ws)
    //    - workspaceId
    //    - bizName
    //    - subBiz
    
    // 签名
    signature,           // 蚂蚁域内和 mPaaS 必选
        
    // mPaaS
    bizName: '',         // 使用 mPaaS 时必选
    subBiz: '',          // 使用 mPaaS 时必选
    workspaceId: '',     // 使用 mPaaS 时必选
    serverUrl: 'wss://cn-hangzhou-mrtc.cloud.alipay.com/ws'
    // mPaaS 通道下,上面这个 serverUrl 地址不变
    
  },
    
  displayInfo?: { // 界面显示用到的配置,可选
    showFullScreen?: { // 全画面显示
        visible: false // 默认为 false 沉浸式 true 显示全部画面
    },
    callPage?: { // 接听页开关
        visible: true // 默认为 true 开启接听页 false 关闭显示
    },
    calling?: {
      information?: string // 接听界面显示的文本
    },
    
    end?: {
      information?: string // 挂断界面显示的文本
    },
      
    answer?: {
      pusher?: {
        visible?: boolean  // 是否显示(配合 enableCamera 用于只想推音频的场景)
        isMini?: boolean   // 是否以小窗显示(默认 false,与 player.isMini 互斥,只能一个为 true)
      },
      
      player?: {
        visible?: boolean  // 是否显示
        isMini?: boolean   // 是否以小窗显示(默认 true,注意与 pusher.isMini 互斥,只能一个为 true)
      },
      
      actions?: {
        
        hangup?: {
          visible?: boolean // 是否显示关闭按钮(默认 true,只有值为 false 时隐藏)
        },
      
        mute?: {
          // ! 表示的是采集端的声音采集,不是手机的音量
          visible?: boolean // 是否显示静音按钮(默认 true,只有值为 false 时隐藏)
        },
          
        screenshot?: {
          visible?: boolean // 是否显示截屏按钮(默认 true,只有值为 false 时隐藏)
        },
          
        enableCamera?: {
          visible?: boolean // 是否显示开启摄像头按钮(默认 true,只有值为 false 时隐藏)
        },
        
        switchCamera?: {
          visible?: boolean // 是否显示切换摄像头按钮(默认 true,只有值为 false 时隐藏)
        },
        switchScreenCapture?:{
           visible?: boolean // 是否显示投屏按钮(默认 true,只有值为 false 时隐藏)
        }
      },
        
      users?: {
        visible?: boolean, // 是否显示用户列表(默认 true,只有值为 false 时隐藏)
        
        // 用户配置(比外层的 users 优先级高)
        config: [userId]: {
          name: string   // 界面上显示的用户名称
          avatar: string // 界面上显示的用户头像
        }
      }
    },
      
    users?: {
      [userId]: {
        name: string   // 界面上显示的用户名称
        avatar: string // 界面上显示的用户头像
      }
    }
  },
    
  controlInfo?: {
    enableCamera?: boolean  // 启动时是否打开摄像头
  },

  extraInfo?: {}
}

rtc 接口

// 引入插件
const { rtc } = requirePlugin('rtc');

rtc.disableCamera() // 关闭摄像头
rtc.enableCamera() // 开启摄像头
rtc.hangup() // 挂断
rtc.mute() // 静音
rtc.unmute() // 取消静音
rtc.setFullScreen(true/false) // 切换全画面显示
rtc.snapshot() // 截屏
rtc.startScreenCapture() // 开始投屏
rtc.stopScreenCapture() // 结束投屏
rtc.switchCamera() //切换前后摄像头