createRTCRoom method

  1. @override
Future<RTCRoom?> createRTCRoom(
  1. String roomId, {
  2. bool autoInitRangeAudio = false,
  3. bool autoInitSpatialAudio = false,
})
override

@brief Create room instance @param roomId Room ID @param autoInitRangeAudio Whether to automatically create a single stream push object, default is not to create @param autoInitSpatialAudio Whether to automatically create a spatial audio object, default is not to create @return Room instance

Implementation

@override
Future<RTCRoom?> createRTCRoom(String roomId,
    {bool autoInitRangeAudio = false,
    bool autoInitSpatialAudio = false}) async {
  try {
    dynamic $room_instance;
    if (Platform.isAndroid) {
      $room_instance =
          await ($instance as $a.RTCEngine).createRTCRoom(roomId);
    } else if (Platform.isIOS) {
      $room_instance = await ($instance as $i.ByteRTCEngine).createRTCRoom(
        roomId,
      );
    } else {
      throw UnsupportedError(
        'Not Support Platform ${Platform.operatingSystem}',
      );
    }
    if ($room_instance != null) {
      $room_map[roomId] = $room_instance;
      return RTCRoom(roomId,
          autoInitRangeAudio: autoInitRangeAudio,
          autoInitSpatialAudio: autoInitSpatialAudio);
    }
  } catch (e) {
    return null;
  }
  return null;
}