enterRoom method

Future<void> enterRoom(
  1. TRTCParams param,
  2. int scene
)

进入房间

调用接口后,您会收到来自 TRTCCloudListener 中的 onEnterRoom(result) 回调:

如果加入成功,result 会是一个正数(result > 0),表示加入房间所消耗的时间,单位是毫秒(ms)。

如果加入失败,result 会是一个负数(result < 0),表示进房失败的错误码。

参数:

param 进房参数,请参考 trtc_cloud_def.dart文件中的TRTCParams参数定义

scene 应用场景,目前支持视频通话(VideoCall)、在线直播(Live)、语音通话(AudioCall)、语音聊天室(VoiceChatRoom)四种场景。

注意:

1.当 scene 选择为 TRTC_APP_SCENE_LIVE 或 TRTC_APP_SCENE_VOICE_CHATROOM 时,您必须通过 TRTCParams 中的 role 字段指定当前用户的角色。

2.不管进房是否成功,enterRoom 都必须与 exitRoom 配对使用,在调用 exitRoom 前再次调用 enterRoom 函数会导致不可预期的错误问题。

Implementation

Future<void> enterRoom(TRTCParams param, int scene) {
  if (Platform.isAndroid || Platform.isWindows) {
    return _channelInvokeMethod('enterRoom', {
      "sdkAppId": param.sdkAppId,
      "userId": param.userId,
      "userSig": param.userSig,
      "roomId": param.roomId.toString(),
      "strRoomId": param.strRoomId,
      "role": param.role,
      "streamId": param.streamId,
      "userDefineRecordId": param.userDefineRecordId,
      "privateMapKey": param.privateMapKey,
      "businessInfo": param.businessInfo,
      "scene": scene,
    });
  } else {
    return _channelInvokeMethod('enterRoom', {
      "param": jsonEncode(param),
      "scene": scene,
    });
  }
}