TUIRoomKit
会议控制方面的内容,帮助您更好地掌握TUIRoomKit
在进会前及会议过程中的相关功能操作。通过本文档,您能够充分利用TUIRoomKit
的功能,实现高质量的音视频会议。Android&iOS&Flutter
端用户创建并进入房间后,房主或管理员角色通过点击底部工具栏成员按钮,在底部弹出的成员列表中既可以选中任一普通成员进行禁言、设为管理员等会控操作,也可以对房间内所有成员进行全体静音等会控操作。TUIRoomKit
会前控制的相关功能,确保会议顺利进行。// CreateRoomViewController 为您自己的 ViewControllerclass CreateConferenceViewController: UIViewController {private var conferenceViewController: ConferenceMainViewController?func quickStartConferenceAction() {conferenceViewController = ConferenceMainViewController()// 通过设置ConferenceParams中的参数来实现会前控制的相关功能let params = ConferenceParams()params.isMuteMicrophone = falseparams.isOpenCamera = falseparams.isSoundOnSpeaker = trueparams.name = "您的会议名称"params.enableMicrophoneForAllUser = trueparams.enableCameraForAllUser = trueparams.enableMessageForAllUser = trueparams.enableSeatControl = falseconferenceViewController?.setConferenceParams(params: params)conferenceViewController?.setConferenceObserver(observer: self)//设置完成后再调用开始会议或加入会议的接口,这里以开始会议为例conferenceViewController?.quickStartConference(conferenceId: "您的conferenceId")}}extension CreateConferenceViewController: ConferenceObserver {func onConferenceStarted(conferenceId: String, error: ConferenceError) {if error == .success, let vc = conferenceViewController {navigationController?.pushViewController(vc, animated: true)}conferenceViewController = nil}}
public class ConferenceOwnerActivity extends AppCompatActivity {private static final String TAG = "ConferenceOwnerActivity";private ConferenceObserver mConferenceObserver;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.app_activity_conference_main); // 通过设置ConferenceParams中的参数来实现会前控制的相关功能ConferenceParams params = new ConferenceParams();params.setMuteMicrophone(false);params.setOpenCamera(false);params.setSoundOnSpeaker(true); params.setName("您的会议名称");params.setEnableMicrophoneForAllUser(true);params.setEnableCameraForAllUser(true);params.setEnableMessageForAllUser(true);params.setEnableSeatControl(false);ConferenceMainFragment fragment = new ConferenceMainFragment();fragment.setConferenceParams(params);setConferenceObserver(fragment);fragment.quickStartConference("您的conferenceId"); //设置完成后再调用开始会议或加入会议的接口,这里以开始会议为例}private void setConferenceObserver(ConferenceMainFragment fragment) {mConferenceObserver = new ConferenceObserver() {@Overridepublic void onConferenceStarted(String conferenceId, ConferenceError error) {super.onConferenceStarted(conferenceId, error);if (error != ConferenceError.SUCCESS) { Log.e(TAG, "Error : " + error); return; } FragmentManager manager = getSupportFragmentManager(); FragmentTransaction transaction = manager.beginTransaction(); transaction.add(R.id.conference_owner_container, fragment); transaction.commitAllowingStateLoss();}};fragment.setConferenceObserver(mConferenceObserver);}}
var conferenceSession = ConferenceSession.newInstance("您的conferenceId")..isMuteMicrophone = false..isOpenCamera = false..isSoundOnSpeaker = true..name = "您的会议名称"..enableMicrophoneForAllUser = true..enableCameraForAllUser = true..enableMessageForAllUser = true..enableSeatControl = false..onActionSuccess = () { //操作成功的回调,您可以在这里导航至会议界面Navigator.push(context,MaterialPageRoute(builder: (context) => ConferenceMainPage(),),);}..onActionError = (ConferenceError error, String message) {} //操作失败的回调..quickStart(); //设置完成后再调用开始会议或加入会议的接口,这里以开始会议为例
字段 | 类型 | 含义 |
isMuteMicrophone | bool | 是否静音麦克风(默认为 false) |
isOpenCamera | bool | 是否开启摄像头(默认为 false) |
isSoundOnSpeaker | bool | 是否使用扬声器(默认为 true) |
name | String | 会议名称(默认为您的 conferenceId) |
enableMicrophoneForAllUser | bool | 是否开启全员的麦克风权限(默认为 true) |
enableCameraForAllUser | bool | 是否开启全员的摄像头权限(默认为 true) |
enableMessageForAllUser | bool | 是否开启全员的发言权限(默认为 true) |
enableSeatControl | bool | 是否开启上台发言模式(默认为 false) |
本页内容是否解决了您的问题?