tencent cloud

Feedback

Room Password (All Platforms)

Last updated: 2024-10-18 12:18:50

    Description of the Feature

    TUIRoomKit supports room encryption. You can use TUIRoomKit to schedule or create a password-protected room. If the UI Interaction of TUIRoomKit does not meet your product requirements, you can use TUIRoomEngineSDK to custom the Room Password interaction features. For details, please refer to Key Code.

    Use instructions

    Creating password room

    After successfully integrating TUIRoomKit and logging in, you can create a password room. For creating a password room on different platforms, please refer to:
    Android
    iOS
    Web
    Please ensure that you have successfully connected to TUIRoomKit and logged in successfully, then you can create a password-protected room by calling the following example code:
    ConferenceDefine.StartConferenceParams params = new ConferenceDefine.StartConferenceParams("222222"); // Please replace "222222" with your own defined room number params.passWord = "123456"; // Please replace "123456" with your set password (pure digits, up to 6 characters) Intent intent = new Intent(this, ConferenceMainActivity.class); intent.putExtra(KEY_START_CONFERENCE_PARAMS, params); startActivity(intent);
    Note:
    The room can be entered only with a password of pure digits, up to 6 characters.
    Please ensure you have successfully connected to TUIRoomKit and logged in, then you can create a password-protected room by using the following sample code:
    Swift
    OC
    import TUIRoomKit
    
    func quickStartConference() {
    let vc = ConferenceMainViewController()
    let params = StartConferenceParams(roomId: "111111") // Please replace "111111" with your defined room number
    params.password = "123456" // Please replace "123456" with your defined room password
    vc.setStartConferenceParams(params: params)
    navigationController?.pushViewController(vc, animated: true)
    }
    #import "TUIRoomKit/TUIRoomKit-Swift.h"
    
    - (void)quickStartConference {
    ConferenceMainViewController * vc = [[ConferenceMainViewController alloc]init];
    StartConferenceParams * params = [[StartConferenceParams alloc]
    initWithRoomId: @"111111" // Please replace "111111" with your custom room number
    isOpenMicrophone:YES
    isOpenCamera:NO
    isOpenSpeaker:YES
    isMicrophoneDisableForAllUser:NO
    isCameraDisableForAllUser:NO
    isSeatEnabled:NO
    name:@"YourRoomName"
    password:@"123456"]; // Please replace "123456" with your custom room password
    [vc setStartConferenceParamsWithParams:params];
    [self.navigationController pushViewController:vc animated:YES];
    }
    Note:
    The room can be entered only with a password of pure digits, up to 6 characters.
    Please ensure you have successfully connected to TUIRoomKit and logged in, then you can create a password-protected room by using the following sample code:
    // Note the package name. If you are using the vue2 version, please change the package name to @tencentcloud/roomkit-web-vue2.7
    import { conference } from '@tencentcloud/roomkit-web-vue3';
    conference.start('123456', { // Please replace "123456" with your own defined room number
    roomName: 'TestRoom',
    isSeatEnabled: false,
    isOpenCamera: false,
    isOpenMicrophone: false,
    password: '123456', // Please replace "123456" with your set password (pure digits, up to 6 characters)
    });
    Note:
    The room can be entered only with a password of pure digits, up to 6 characters.

    Schedule password-protected room

    To schedule a password-protected room, please refer to Schedule conference (Android&iOS&Flutter) or Schedule conference (Web&Electron)instructions to open the scheduling interface and set the password. The interaction scheme is as follows:
    Invited Members Enter Room: They can enter the room via the meeting list or room number, without needing a password.
    Non-invited Members Enter Room: They can only enter the room via the room number and must enter the correct password.
    Android & iOS
    Schedule password room
    Non-invited members enter the room with password
    Invited members can directly enter the room
    
    
    
    
    
    
    
    
    
    Web
    Creating password room
    Non-invited members enter the room with password
    Invited members can directly enter the room
    
    
    
    
    
    
    
    
    
    Note:
    If the scheduled conference UI does not meet your needs, you need to implement the feature according to your own UI interaction design. For related API calls, please refer to Key Code.

    Feature customization

    If the current UI does not meet your needs, you can achieve the desired UI effect by modifying the source code. For different platforms, please refer to:
    Android
    iOS
    Web
    Electron
    You can achieve the desired UI effect by modifying the source code under Android/TUIRoomKit/tuiroomkit/src/main/java/com/tencent/cloud/tuikit/roomkit/view/page/widget/ScheduleConference/view directory. To facilitate your UI customization, here we introduce the files related to room password.
    // Location: Android/TUIRoomKit/tuiroomkit/src/main/java/com/tencent/cloud/tuikit/roomkit/view/page/widget/ScheduleConference/view
    view
    ├── EnterConferencePasswordView.java // Password Input Popup Interface
    └── SetConferenceEncryptView.java // Schedule Conference Password Setting Interface
    You can modify the source code in the iOS/TUIRoomKit/Source/View directory to achieve the desired UI Effect. To facilitate easier customization, this document provides an introduction to the room password files.
    view
    ├── ConferencePasswordView.swift // Password Input Popup Interface
    └── ScheduleConferenceDataHelper.swift // Schedule Conference Password Popup Style Interface
    You can modify the source code in the following directories to achieve the desired UI Effect. To facilitate easier customization, this document provides an introduction to the room password files.
    // Location: TUIRoomKit/Web/roomkit/vue3/src/TUIRoom/components/
    PreRoom
    ├── PasswordDialog.vue // Password Input Popup Interface
    ScheduleConference/ScheduleConferencePanel
    ├── ScheduleConferencePanelPC.vue // Schedule Conference Password Setting Interface Web
    └── ScheduleConferencePanelH5.vue // Schedule Conference Password Setting Interface H5
    You can modify the source code in the following directories to achieve the desired UI Effect. To facilitate easier customization, this document provides an introduction to the room password files.
    // Location: TUIRoomKit/Electron/roomkit/vue3/src/TUIRoom/components/
    PreRoom
    ├── PasswordDialog.vue // Password input popup interface
    ScheduleConference/ScheduleConferencePanel
    ├── ScheduleConferencePanelPC.vue // Schedule Conference Password Setting Interface Web
    └── ScheduleConferencePanelH5.vue // Schedule Conference Password Setting Interface H5
    Note:
    If you have any requirements or feedback, you can contact: info_rtc@tencent.com.

    Key code

    To create a password room, please refer to different platforms:
    Android
    iOS
    Web/ Electron
    public abstract void createRoom(TUIRoomDefine.RoomInfo roomInfo, TUIRoomDefine.ActionCallback callback);
    You can set the room password by configuring the password field of the roomInfo parameter. For more details, please refer to createRoom.
    Below is the sample code:
    TUIRoomDefine.RoomInfo roomInfo = new TUIRoomDefine.RoomInfo();
    roomInfo.roomId = "222222"; // Please replace "222222" with your own defined room number
    roomInfo.password = "123456" // Please replace "123456" with your set password (pure digits, up to 6 characters)
    TUIRoomEngine.sharedInstance().createRoom(roomInfo, new TUIRoomDefine.ActionCallback() {
    @Override
    public void onSuccess() {
    // Callback for successful room creation
    }
    
    @Override
    public void onError(TUICommonDefine.Error error, String message) {
    // Callback for failed room creation
    }
    });
    - (void)createRoom:(TUIRoomInfo *)roomInfo onSuccess:(TUISuccessBlock)onSuccess onError:(TUIErrorBlock)onError NS_SWIFT_NAME(createRoom(_:onSuccess:onError:));
    You can set the room password by configuring the password field of the roomInfo parameter. For more details, please refer to createRoom.
    Below is the sample code:
    Swift
    OC
    import RTCRoomEngine
    
    func createRoom() {
    let roomInfo = TUIRoomInfo()
    roomInfo.roomId = "111111" // Please replace "111111" with your custom room number
    roomInfo.password = "123456" // Please replace "123456" with your custom room password
    TUIRoomEngine.sharedInstance().createRoom(roomInfo) {
    print("CreateRoom success")
    } onError: { code, message in
    print("CreateRoom error, code:\\(code), message:\\(message)")
    }
    }
    #import "RTCRoomEngine/TUIRoomDefine.h"
    #import "RTCRoomEngine/TUIRoomEngine.h"
    
    - (void)createRoom {
    TUIRoomInfo * roomInfo = [[TUIRoomInfo alloc] init];
    roomInfo.roomId = @"111111"; // Please replace "111111" with your custom room number
    roomInfo.password = @"123456"; // Please replace "123456" with your custom room password
    [[TUIRoomEngine sharedInstance] createRoom:roomInfo onSuccess:^{
    NSLog(@"CreateRoom success");
    } onError:^(TUIError code, NSString * _Nonnull message) {
    NSLog(@"CreateRoom error, code:%ld, message:%@", (long)code, message);
    }];
    }
    You can set the room password by configuring the password field. For more details, please refer to start.
    Below is the sample code:
    // Note the package name. If you are using the vue2 version, please change the package name to @tencentcloud/roomkit-web-vue2.7
    import { conference } from '@tencentcloud/roomkit-web-vue3';
    conference.start('123456', { // Please replace "123456" with your own defined room number
    roomName: 'TestRoom',
    isSeatEnabled: false,
    isOpenCamera: false,
    isOpenMicrophone: false,
    password: '123456', // Please replace "123456" with your set password (pure digits, up to 6 characters)
    });
    To schdedule a password room, please refer to different platforms:
    Android
    iOS
    public abstract void scheduleConference(ConferenceInfo conferenceInfo, TUIRoomDefine.ActionCallback callback);
    You can set the room password by configuring the password field of the conferenceInfo parameter. For more details, please refer to scheduleConference. Example code is as follows:
    
    
    TUIConferenceListManager manager = TUIRoomEngine.sharedInstance().getExtension(CONFERENCE_LIST_MANAGER);
    TUIConferenceListManager.ConferenceInfo conferenceInfo = new TUIConferenceListManager.ConferenceInfo();
    conferenceInfo.basicRoomInfo.roomId = "222222"; // Please replace "222222" with your own defined room number
    conferenceInfo.basicRoomInfo.password = "123456"; // Please replace "123456" with your set password (pure digits, up to 6 characters)
    
    manager.scheduleConference(conferenceInfo, new TUIRoomDefine.ActionCallback() {
    @Override
    public void onSuccess() {
    // Successful callback for booking a room
    }
    
    @Override
    public void onError(TUICommonDefine.Error error, String message) {
    // Failed callback for booking a room
    }
    });
    - (void)scheduleConference:(TUIConferenceInfo *)conferenceInfo onSuccess:(TUISuccessBlock)onSuccess onError:(TUIErrorBlock)onError NS_SWIFT_NAME(scheduleConference(_:onSuccess:onError:));
    You can set the room password by configuring the password field of the conferenceInfo parameter. For more details, please refer to scheduleConference. Example code is as follows:
    Swift
    OC
    import RTCRoomEngine
    
    func scheduleConference() {
    let manager = TUIRoomEngine.sharedInstance().getExtension(extensionType: .conferenceListManager) as? TUIConferenceListManager
    let conferenceInfo = TUIConferenceInfo()
    conferenceInfo.basicRoomInfo.roomId = "111111" // Please replace "111111" with your custom room number
    conferenceInfo.basicRoomInfo.password = "123456" // Please replace "123456" with your custom room password
    manager?.scheduleConference(conferenceInfo, onSuccess: {
    print("ScheduleConference success")
    }, onError: { code, message in
    print("ScheduleConference failed, code:\\(code), message:\\(message)")
    })
    }
    #import "RTCRoomEngine/TUIRoomEngine.h"
    #import "RTCRoomEngine/TUIConferenceListManager.h"
    
    - (void)scheduleConference {
    TUIConferenceListManager * manager = [[TUIRoomEngine sharedInstance] getExtension: TUIExtensionTypeConferenceListManager];
    TUIConferenceInfo * conferenceInfo = [[TUIConferenceInfo alloc] init];
    conferenceInfo.basicRoomInfo.roomId = @"111111"; // Please replace "111111" with your custom room number
    conferenceInfo.basicRoomInfo.password = @"123456"; // Please replace "123456" with your custom room password
    [manager scheduleConference:conferenceInfo onSuccess:^{
    NSLog(@"ScheduleConference success");
    } onError:^(TUIError code, NSString * _Nonnull message) {
    NSLog(@"ScheduleConference failed, code:%ld, message:%@", (long)code, message);
    }];
    }
    Enter password room
    Android
    iOS
    Web/Electron
    public abstract void enterRoom(String roomId, TUIRoomDefine.RoomType roomType, TUIRoomDefine.EnterRoomOptions options, TUIRoomDefine.GetRoomInfoCallback callback);
    You can set the room password by setting the password field of the options parameter. For detailed API information, please refer to enterRoom. Sample code is as follows:
    String roomId = "222222"; // Please replace "222222" with the room number you are joining
    TUIRoomDefine.EnterRoomOptions options = new TUIRoomDefine.EnterRoomOptions();
    options.password = "123456"; // Please replace "123456" with your set password (pure digits, up to 6 characters)
    TUIRoomEngine.sharedInstance().enterRoom(roomId, TUIRoomDefine.RoomType.CONFERENCE, options, new TUIRoomDefine.GetRoomInfoCallback() {
    @Override
    public void onSuccess(TUIRoomDefine.RoomInfo engineRoomInfo) {
    // Successful room entry callback
    }
    
    @Override
    public void onError(TUICommonDefine.Error error, String message) {
    // Failed room entry callback
    if (error == TUICommonDefine.Error.WRONG_PASSWORD) {
    // Wrong password, handle the incorrect entry password business here.
    }
    }
    });
    - (void)enterRoom:(NSString *)roomId roomType:(TUIRoomType)roomType options:(TUIEnterRoomOptions *)options onSuccess:(TUIRoomInfoBlock)onSuccess onError:(TUIErrorBlock)onError NS_SWIFT_NAME(enterRoom(_:roomType:options:onSuccess:onError:));
    You can set the room password by configuring the password field in the options parameter. For more details, please refer to enterRoom. Sample code is as follows:
    Swift
    OC
    import RTCRoomEngine
    
    func enterRoom() {
    let roomId = "111111" // Please replace "111111" with your custom room number
    let options = TUIEnterRoomOptions()
    options.password = "123456" // Please replace "123456" with your custom room password
    TUIRoomEngine.sharedInstance().enterRoom(roomId, roomType: .conference, options: options) { roomInfo in
    print("EnterRoom success")
    } onError: { code, message in
    print("EnterRoom failed, code:\\(code), message:\\(message)")
    }
    }
    #import "RTCRoomEngine/TUIRoomEngine.h"
    
    - (void)enterRoom {
    NSString * roomId = @"111111"; // Please replace "111111" with your custom room number
    TUIEnterRoomOptions * options = [[TUIEnterRoomOptions alloc] init];
    options.password = @"123456"; // Please replace "123456" with your custom room password
    [[TUIRoomEngine sharedInstance] enterRoom:roomId roomType:TUIRoomTypeConference options:options onSuccess:^(TUIRoomInfo * _Nullable roomInfo) {
    NSLog(@"EnterRoom success");
    } onError:^(TUIError code, NSString * _Nonnull message) {
    NSLog(@"EnterRoom failed, code:%ld, message:%@", (long)code, message);
    }];
    }
    You can enter the room by setting the password field. For more details, please refer to join.
    Below is the sample code:
    // Note the package name. If you are using the vue2 version, please change the package name to @tencentcloud/roomkit-web-vue2.7
    import { conference } from '@tencentcloud/roomkit-web-vue3';
    conference.join('123456', { // Please replace "123456" with the room number you are joining
    isOpenCamera: false,
    isOpenMicrophone: false,
    password: 'Set your room password', // Please replace "123456" with your set password (pure digits, up to 6 characters)
    });
    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