tencent cloud

Feedback

Android&iOS&Flutter

Last updated: 2024-12-17 09:52:59
    This document provides a detailed introduction to the conference control aspects of TUIRoomKit, assisting you in better mastering the related feature operations of TUIRoomKit before joining and during the meeting process. Through this document, you can fully utilize the features of TUIRoomKit to achieve high-quality audio and video meetings.If the UI interaction of TUIRoomKit does not meet your product needs, and you have your own interaction and business logic that requires custom implementation of meeting control related interaction features, you can integrate TUIRoomEngineSDK and refer to the relevant calls of Key Code to meet your needs.

    Description of the Feature

    Android&iOS&Flutter users, after creating and entering a room, the owner or admin can click the Members button on the bottom toolbar. In the pop-up member list at the bottom, they can select any regular member to perform meeting control operations such as requesting to start video/voice calls, setting as admin/owner, muting, or removing from room, as well as apply mute all conference control operations on all members in the room.
    Enter conference
    Member management
    All dute/All disable drawing
    
    
    
    
    
    
    
    
    

    Use Instructions

    Pre-conference Controls
    Create Room
    You can configure the room: Enable Microphone/Camera/Speaker, All Mute, All Disable Drawing, Room Password, Room Name, Created Room Type (Free Speech/Request to Speak)
    Enter Room
    You can configure the room: turn on the microphone/camera/speaker.
    In-conference controls
    You are the roomowner or the administrator
    You can control the room: all mute/prohibit drawing, invite members to the stage or kick them off (stage speaking room), set administrator and transfer ownership, kick members out of the room, turn on or off their cameras/microphones.

    Pre-conference Control

    When creating and joining a conference, you need to set the relevant conference parameters in advance. Use the features of TUIRoomKit pre-conference control to ensure the meet.
    Create room
    Enter room
    
    
    
    
    
    
    You can create a room and set the join room parameters, completing pre-meeting control, through the following:
    Android
    iOS
    Flutter
    ConferenceDefine.StartConferenceParams params = new ConferenceDefine.StartConferenceParams("roomId of the room");
    params.isSeatEnabled = false; // true: On-stage speaking conference, false: Free speech conference.
    params.password = "password of the room"; // Room password.
    params.name = "name of the room"; // Room Name.
    params.isOpenCamera = true; // Enable Camera.
    params.isOpenMicrophone = true; // Enable Microphone.
    params.isOpenSpeaker = true; // Enable Speaker.
    params.isCameraDisableForAllUser = false; // Enable All Disable Drawing.
    params.isMicrophoneDisableForAllUser = false; // Enable All Mute.
    Intent intent = new Intent(this, ConferenceMainActivity.class);
    intent.putExtra(KEY_START_CONFERENCE_PARAMS, params);
    startActivity(intent);
    import TUIRoomKit
    
    func quickStartConference() {
    let vc = ConferenceMainViewController()
    let params = StartConferenceParams(roomId: "111111") // Please replace "111111" with your defined conference number
    params.isSeatEnabled = false // true: stage speaking room, false: free speaking room.
    params.password = "12345" // Please replace "12345" with your defined conference password.
    params.name = "YourConferenceName" // Please replace "YourConferenceName" with your defined conference name.
    params.isOpenCamera = true // Turn on the camera.
    params.isOpenMicrophone = true // Turn on the microphone.
    params.isOpenSpeaker = true // Turn on the speaker.
    params.isCameraDisableForAllUser = true // Enable all disable drawing.
    params.isMicrophoneDisableForAllUser = true // Enable All Mute.
    vc.setStartConferenceParams(params: params)
    navigationController?.pushViewController(vc, animated: true)
    }
    var conferenceSession = ConferenceSession.newInstance("Your conferenceId")
    ..isMuteMicrophone = false
    ..isOpenCamera = false
    ..isSoundOnSpeaker = true
    ..name = "Your Meeting Name"
    ..enableMicrophoneForAllUser = true
    ..enableCameraForAllUser = true
    ..enableMessageForAllUser = true
    ..enableSeatControl = false
    ..onActionSuccess = () { // Callback for successful operation. You can navigate to the meeting interface here
    Navigator.push(
    context,
    MaterialPageRoute(
    builder: (context) => ConferenceMainPage(),
    ),
    );
    }
    ..onActionError = (ConferenceError error, String message) {} // Callback for operation failure
    ..quickStart();
    You can join the room and set join room parameters in the following ways to complete pre-conference control:
    Android
    iOS
    Flutter
    ConferenceDefine.JoinConferenceParams params = new ConferenceDefine.JoinConferenceParams("roomId of the room to join");
    params.isOpenCamera = true; // Turn on the camera
    params.isOpenMicrophone = true; // Turn on the microphone
    params.isOpenSpeaker = true; // Turn on the speaker
    Intent intent = new Intent(this, ConferenceMainActivity.class);
    intent.putExtra(KEY_JOIN_CONFERENCE_PARAMS, params);
    startActivity(intent);
    import TUIRoomKit
    
    func joinConference() {
    let vc = ConferenceMainViewController()
    let params = JoinConferenceParams(roomId: "111111") // Please replace "111111" with the meeting ID you want to join
    params.isOpenCamera = true // Turn on the camera
    params.isOpenMicrophone = true // Turn on the microphone
    params.isOpenSpeaker = true // Turn on the speaker
    vc.setJoinConferenceParams(params: params)
    navigationController?.pushViewController(vc, animated: true)
    }
    var conferenceSession = ConferenceSession.newInstance("Your conferenceId")
    ..isMuteMicrophone = false
    ..isOpenCamera = false
    ..isSoundOnSpeaker = true
    ..onActionSuccess = () { // Callback for successful operation. You can navigate to the meeting interface here
    Navigator.push(
    context,
    MaterialPageRoute(
    builder: (context) => ConferenceMainPage(),
    ),
    );
    }
    ..onActionError = (ConferenceError error, String message) {} // Callback for operation failure
    ..join()
    The following is a detailed introduction to the parameters mentioned in the above code.
    Field
    Type
    Meaning
    isMuteMicrophone
    bool
    Whether to mute the microphone (default is false)
    isOpenCamera
    bool
    Whether to turn on the camera (default is false)
    isSoundOnSpeaker
    bool
    Whether to use the speaker (default is true)
    password
    String
    Meeting password (default is empty, not enabled)
    name
    String
    Meeting name (default is your conferenceId)
    enableMicrophoneForAllUser
    bool
    Whether to enable microphone permission for all staff (default is true)
    enableCameraForAllUser
    bool
    Whether to enable camera permission for all staff (default is true)
    enableMessageForAllUser
    bool
    Whether to enable speaking permission for all staff (default is true)
    enableSeatControl
    bool
    Whether to enable podium speech mode (default is false)
    Note:
    The above is an introduction to the parameters for creating and joining a room in the aforementioned code. You can create a Free Speech conference or On-stage speaking conference by passing different values for the isSeatEnable parameter. The controllable features will also differ between these two types of rooms:
    Free Speech conference: Ordinary users can freely speak, and turn the microphone and camera on and off at will.
    On-stage speaking conference: Only users on the podium can freely turn the microphone and camera on or off. Ordinary viewers can become podium users by raising their hand to apply.

    In-conference controls

    Managing Free Speech conference

    When the room type is a Free Speech Room, the homeowner or administrator can manage all in-meeting members in the Member List.
    The host or administrator can select any member for individual control: Unmute/Mute, Enable Video/Disable Video, Set as Administrator, Transfer Host, Mute/Lift Mute, Remove from Room.
    Member management
    Transfer homeowner
    Remove from room
    
    
    
    
    
    
    
    
    
    The host or administrator can control all members in the room: All Mute/Unmute All or All Disable Drawing/Lift All Bans on Painting.
    Mute All
    Unmute All
    
    
    
    
    
    

    On-stage speaking confernce

    When the room type is an On-stage Speaking conference, the homeowner or administrator can manage the in-room members in the Member List as well as manage the selected members' on-stage status in Take the Stage to Manage.
    The host or administrator can select any regular member for individual control: in addition to the operations available in Free Speech conference such as Unmute/Mute, Enable Video/Disable Video, Mute/Lift Mute, Set as Administrator, Transfer Host, Remove from Room, it also includes On-stage speaking conference unique operations like Invite to Take the Stage and Please Step Down.
    Invite to Take the Stage (Homeowner or Administrator)
    Invited room
    Kick Someone Off the Stage (Homeowner or Administrator)
    
    
    
    
    
    
    
    
    
    The host or administrator can manage the status of members who have applied to take the stage: in Take the Stage to Manage, they can Agree or Reject selected members or Agree to all to process all stage application members.
    Regular member apply to take the stage
    Homeowner or administrator approves taking the Stage
    
    
    
    
    
    

    Key code

    If you want to implement the conference control feature from Definition, please refer to TUIRoomEngine SDK: Android,iOS&Mac,Flutter.
    Note:
    If you have any requirements or feedback, you can contact: info_rtc@tencent.com.
    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support