tencent cloud

Feedback

TUIRoomEngine

Last updated: 2024-08-30 16:45:14
    Copyright (c) 2024 Tencent. All rights reserved.
    
    Module: TUIRoomEngine @ TUIKitEngine.
    Function: TUIRoomEngine Main function APIs.
    Version: 2.4.1
    
    TUIRoomEngine

    TUIRoomEngine

    FuncList
    DESC
    Destroy the TUIRoomEngine instance (singleton mode)
    After creating a TUIRoomEngine instance, you should login with sdkAppId, userId and userSig then you can call TUIRoomEngine instance and other function.
    Log out of your account. If you are in the room, there will be active leaving room and destroying resource operations.
    Update user name and avatar for logged-in user.
    Return the basic information of the logged-in user, including nickname and avatar.
    Update user basic information for logged-in user.
    Set event observer.
    Remove event observer.
    Create a room.
    Dismiss the room.
    Enter a room.
    Enter a room.
    Enter a room.
    Exit the room.
    Get room information.
    Update room name (only support for administrators or room owner).
    Update room seat mode (only support for administrators or room owner).
    Set the local camera to preview the render view.
    Open the local camera.
    Close the local camera.
    Start publishing local video stream, default enabled.
    Stop publishing local video stream.
    Update video encoding quality.
    Set the video encoding parameters.
    Set the video resolution mode (horizontal resolution or vertical resolution).
    Turn on gravity sensing mode. (only availble on mobile OS and the camera capture scene inside the SDK).
    Start screen sharing (only available on mobile OS).
    Stop screen sharing.
    Open local microphone.
    Close the local microphone.
    Update audio encoding quality.
    Pause publishing the local audio stream.
    Resume publishing the local audio stream.
    Set the render view for remote user.
    Start playing the remote user's video stream.
    Stop playing the remote user's video stream.
    Mute the remote user's audio stream.
    Get the list of user in the room.
    Get user information.
    Change user role (only support for administrators or room owner).
    Kick the remote user out of the room (only support for administrators or room owner).
    Get seat list.
    Lock the seat (only support for administrators or room owner).
    Take the seat.
    Leave the seat.
    Move to seat.
    Invite user to take the seat (only support for administrators or room owner).
    Kick off the user from seat (only support for administrators or room owner).
    Get the request list of users who want to take the seat in the room (only support for administrators or room owner).
    Disable the ability of remote users to send messages (only support for administrators or room owner).
    Cancel request.
    Response request.
    Set the beauty level.
    Set whitening level.
    Get the extension.
    Get device management class.
    Get live-connection management class.
    Call experimental APIs.

    destroySharedInstance

    destroySharedInstance

    Destroy the TUIRoomEngine instance (singleton mode)

    login

    login
    void login
    (Context context
    
    int sdkAppId
    
    String userId
    
    String userSig
    
    TUIRoomDefine.ActionCallback callback)

    After creating a TUIRoomEngine instance, you should login with sdkAppId, userId and userSig then you can call TUIRoomEngine instance and other function.

    If a user is kicked off while online, the SDK will notify you through the $onKickedOffLine$ callback in $TUIRoomObserver$.
    Param
    DESC
    sdkAppId
    It is Application ID. You can see the SDKAppId by creating an application in the TRTC Console.
    userId
    User ID, it is the unique identifier used by Tencent Cloud to distinguish users.
    userSig
    The user signature designed by Tencent Cloud based on the UserId, which is used to access Tencent Cloud services. More details, see UserSig

    logout

    logout
    void logout
    (TUIRoomDefine.ActionCallback callback)

    Log out of your account. If you are in the room, there will be active leaving room and destroying resource operations.

    setSelfInfo

    setSelfInfo
    void setSelfInfo
    (String userName
    
    String avatarURL
    
    TUIRoomDefine.ActionCallback callback)

    Update user name and avatar for logged-in user.

    Param
    DESC
    avatarURL
    User avatar URL.
    userName
    User name.

    getSelfInfo

    getSelfInfo

    Return the basic information of the logged-in user, including nickname and avatar.

    Return Desc:

    LoginUserInfo User login information.

    setSelfInfo

    setSelfInfo
    void setSelfInfo
    (TUIRoomDefine.LoginUserInfo userInfo
    
    TUIRoomDefine.ActionCallback callback)

    Update user basic information for logged-in user.

    Param
    DESC
    userInfo
    Local user information.

    addObserver

    addObserver
    void addObserver
    (TUIRoomObserver observer)

    Set event observer.

    You can use TUIRoomObserver to receive roomEngine events. More details, see TUIRoomObserver.
    Param
    DESC
    observer
    Listening instance.

    removeObserver

    removeObserver
    void removeObserver
    (TUIRoomObserver observer)

    Remove event observer.

    Param
    DESC
    observer
    The event observer to be removed.

    createRoom

    createRoom
    void createRoom
    (TUIRoomDefine.RoomInfo roomInfo
    
    TUIRoomDefine.ActionCallback callback)

    Create a room.

    You can create a conference room or live room through this API.
    Param
    DESC
    roomInfo
    Room information. More details, see TUIRoomInfo.

    destroyRoom

    destroyRoom
    void destroyRoom
    (TUIRoomDefine.ActionCallback callback)

    Dismiss the room.

    After the room was dismissed, the SDK notifies the users in the room through the onRoomDismissed callback in $TUIRoomObserver$.

    enterRoom

    enterRoom
    void enterRoom
    (String roomId
    
    TUIRoomDefine.GetRoomInfoCallback callback)

    Enter a room.

    Param
    DESC
    roomId
    Room ID.
    Note
    The limit on the number of rooms that a single device can enter at the same time is: 1 for conference and 3 for live . If the limit is exceeded, the device will exit the earliest joined room. When multiple devices log in with the same account, only one device is allowed to enter a conference room with the same ID. When other devices try to enter, the earlier entered device will be kicked out.
    After entered the room, the SDK will notify the user in the room through the $onRemoteUserEnterRoom$ callback in $TUIRoomObserver$.

    enterRoom

    enterRoom
    void enterRoom
    (String roomId
    
    TUIRoomDefine.RoomType roomType
    
    TUIRoomDefine.GetRoomInfoCallback callback)

    Enter a room.

    Param
    DESC
    roomId
    Room ID.
    roomType
    Room type. More details, see TUIRoomType.
    Note
    The limit on the number of rooms that a single device can enter at the same time is: 1 for conference and 3 for live . If the limit is exceeded, the device will exit the earliest joined room. When multiple devices log in with the same account, only one device is allowed to enter a conference room with the same ID. When other devices try to enter, the earlier entered device will be kicked out.
    After entered the room, the SDK will notify the user in the room through the $onRemoteUserEnterRoom$ callback in $TUIRoomObserver$.

    enterRoom

    enterRoom
    void enterRoom
    (String roomId
    
    TUIRoomDefine.RoomType roomType
    
    TUIRoomDefine.EnterRoomOptions options
    
    TUIRoomDefine.GetRoomInfoCallback callback)

    Enter a room.

    Param
    DESC
    options
    Roon options. More details, see TUIEnterRoomOptions.
    roomId
    Room ID.
    roomType
    Room type. More details, see TUIRoomType.
    Note
    The limit on the number of rooms that a single device can enter at the same time is: 1 for conference and 3 for live . If the limit is exceeded, the device will exit the earliest joined room. When multiple devices log in with the same account, only one device is allowed to enter a conference room with the same ID. When other devices try to enter, the earlier entered device will be kicked out.
    After entering the room, the SDK will notify the user in the room through the $onRemoteUserEnterRoom$ callback in $TUIRoomObserver$.

    exitRoom

    exitRoom
    void exitRoom
    (boolean syncWaiting
    
    TUIRoomDefine.ActionCallback callback)

    Exit the room.

    After left the room, the SDK will notify the user in the room through the onRemoteUserLeaveRoom callback in $TUIRoomObserver$.
    Param
    DESC
    syncWaiting
    true: wait for exit request finished, false: exit immediately.

    fetchRoomInfo

    fetchRoomInfo
    void fetchRoomInfo
    (TUIRoomDefine.GetRoomInfoCallback callback)

    Get room information.

    You can get room information through this API.

    updateRoomNameByAdmin

    updateRoomNameByAdmin
    void updateRoomNameByAdmin
    (String roomName
    
    TUIRoomDefine.ActionCallback callback)

    Update room name (only support for administrators or room owner).

    After the room name was updated, the SDK notifies users in the room through the onRoomNameChanged callback in $TUIRoomObserver$.
    Param
    DESC
    roomName
    Room name.

    updateRoomSeatModeByAdmin

    updateRoomSeatModeByAdmin
    void updateRoomSeatModeByAdmin
    (TUIRoomDefine.SeatMode seatMode
    
    TUIRoomDefine.ActionCallback callback)

    Update room seat mode (only support for administrators or room owner).

    After the room seat mode was updated, the SDK will notify users in the room through the onRoomSeatModeChanged callback in $TUIRoomObserver$.
    Param
    DESC
    seatMode
    FREE_TO_TAKE: Free to take seat mode, users can take the seat without application;
    APPLY_TO_TAKE: Apply to take seat mode, users can only take the seat after the owner or administrator approved.

    setLocalVideoView

    setLocalVideoView
    void setLocalVideoView
    (TUIVideoView view)

    Set the local camera to preview the render view.

    Param
    DESC
    view
    Render view.

    openLocalCamera

    openLocalCamera
    void openLocalCamera
    (boolean isFront
    
    TUIRoomDefine.VideoQuality quality
    
    TUIRoomDefine.ActionCallback callback)

    Open the local camera.

    After opened the local camera in the room, the local video stream is published by default, and the SDK notifies the users in the room through the $onUserVideoStateChanged$ callback in $TUIRoomObserver$.
    Param
    DESC
    isFront
    true: front false: rear (only available on mobile OS).

    closeLocalCamera

    closeLocalCamera

    Close the local camera.

    After closed the local camera in the room, the SDK notifies users in the room through the onUserVideoStateChanged callback in $TUIRoomObserver$.

    startPushLocalVideo

    startPushLocalVideo

    Start publishing local video stream, default enabled.

    After published the local video, if your local camera is opening, the SDK will notify users in the room through the onUserVideoStateChanged callback in $TUIRoomObserver$.

    stopPushLocalVideo

    stopPushLocalVideo

    Stop publishing local video stream.

    After stopped published local video, the SDK notifies users in the room through the onUserVideoStateChanged callback in $TUIRoomObserver$.

    updateVideoQuality

    updateVideoQuality
    void updateVideoQuality
    (TUIRoomDefine.VideoQuality quality)

    Update video encoding quality.

    updateVideoQualityEx

    updateVideoQualityEx
    void updateVideoQualityEx
    (TUIRoomDefine.VideoStreamType streamType
    
    TUIRoomDefine.RoomVideoEncoderParams params)

    Set the video encoding parameters.

    Param
    DESC
    params
    Encoding parameters of the video. More details, see RoomVideoEncoderParams.
    streamType
    The type of video stream. More details, see VideoStreamType.

    setVideoResolutionMode

    setVideoResolutionMode
    void setVideoResolutionMode
    (TUIRoomDefine.VideoStreamType streamType
    
    TUIRoomDefine.ResolutionMode resolutionMode)

    Set the video resolution mode (horizontal resolution or vertical resolution).

    Param
    DESC
    resolutionMode
    Resolution mode. More details, see ResolutionMode.
    streamType
    The type of video stream. More details, see VideoStreamType.

    enableGravitySensor

    enableGravitySensor
    void enableGravitySensor
    (boolean enable)

    Turn on gravity sensing mode. (only availble on mobile OS and the camera capture scene inside the SDK).

    Param
    DESC
    enable
    true: Open false: Close.
    Note
    After turning on gravity sensing, if the device on the collection end rotates, the images on the collection end and the audience will be rendered accordingly to ensure that the image in the field of view is always facing up.

    startScreenSharing

    startScreenSharing

    Start screen sharing (only available on mobile OS).

    After screen sharing started, the SDK notifies users in the room through the onUserVideoStateChanged callback in $TUIRoomObserver$.

    stopScreenSharing

    stopScreenSharing

    Stop screen sharing.

    After screen sharing ended, the SDK notifies users in the room through the onUserVideoStateChanged callback in $TUIRoomObserver$ and also notifies you through the onUserScreenCaptureStopped callback.

    openLocalMicrophone

    openLocalMicrophone
    void openLocalMicrophone
    (TUIRoomDefine.AudioQuality quality
    
    TUIRoomDefine.ActionCallback callback)

    Open local microphone.

    After opened the local microphone in a room, the SDK notifies users in the room through the onUserAudioStateChanged callback in $TUIRoomObserver$.
    Param
    DESC
    quality
    Audio quality.

    closeLocalMicrophone

    closeLocalMicrophone

    Close the local microphone.

    After closed the local microphone in the room, the SDK notifies the users in the room through the onUserAudioStateChanged callback in $TUIRoomObserver$.

    updateAudioQuality

    updateAudioQuality
    void updateAudioQuality
    (TUIRoomDefine.AudioQuality quality)

    Update audio encoding quality.

    muteLocalAudio

    muteLocalAudio

    Pause publishing the local audio stream.

    If you have opened your microphone and call the API to pause publishing the local audio stream, the SDK will notify the users in the room through the onUserAudioStateChanged callback in $TUIRoomObserver$.

    unmuteLocalAudio

    unmuteLocalAudio
    void unmuteLocalAudio
    (TUIRoomDefine.ActionCallback callback)

    Resume publishing the local audio stream.

    If you have opened your microphone and call the API to resume publishing the local audio stream, the SDK will notify the users in the room through the onUserAudioStateChanged callback in $TUIRoomObserver$.

    setRemoteVideoView

    setRemoteVideoView
    void setRemoteVideoView
    (String userId
    
    TUIRoomDefine.VideoStreamType streamType
    
    TUIVideoView view)

    Set the render view for remote user.

    Param
    DESC
    streamType
    The type of video stream. More details, see VideoStreamType.
    userId
    Remote user ID.
    view
    Render view.

    startPlayRemoteVideo

    startPlayRemoteVideo
    void startPlayRemoteVideo
    (String userId
    
    TUIRoomDefine.VideoStreamType streamType
    
    TUIRoomDefine.PlayCallback callback)

    Start playing the remote user's video stream.

    Param
    DESC
    streamType
    The type of video stream. More details, see VideoStreamType.
    userId
    User ID.

    stopPlayRemoteVideo

    stopPlayRemoteVideo
    void stopPlayRemoteVideo
    (String userId
    
    TUIRoomDefine.VideoStreamType streamType)

    Stop playing the remote user's video stream.

    Param
    DESC
    streamType
    The type of video stream. More details, see VideoStreamType.
    userId
    User ID.

    muteRemoteAudioStream

    muteRemoteAudioStream
    void muteRemoteAudioStream
    (String userId
    
    boolean isMute)

    Mute the remote user's audio stream.

    Param
    DESC
    isMute
    true: pause pulling remote user's audio stream, false: resume pulling remote user's audio stream.
    userId
    User ID.

    getUserList

    getUserList
    void getUserList
    (long nextSequence
    
    TUIRoomDefine.GetUserListCallback callback)

    Get the list of user in the room.

    Param
    DESC
    nextSequence
    Filling in 0 for the first request, if the returned data of the callback is not zero, paging is required, continue the operation until it is 0.

    getUserInfo

    getUserInfo
    void getUserInfo
    (String userId
    
    TUIRoomDefine.GetUserInfoCallback callback)

    Get user information.

    Param
    DESC
    userId
    User ID.

    changeUserRole

    changeUserRole
    void changeUserRole
    (String userId
    
    TUIRoomDefine.Role role
    
    TUIRoomDefine.ActionCallback callback)

    Change user role (only support for administrators or room owner).

    After the user role changed, the SDK will notify the users in the room through the onUserInfoChanged callback in $TUIRoomObserver$.
    Param
    DESC
    role
    User role. More details, see Role.
    userId
    User ID.

    kickRemoteUserOutOfRoom

    kickRemoteUserOutOfRoom
    void kickRemoteUserOutOfRoom
    (String userId
    
    TUIRoomDefine.ActionCallback callback)

    Kick the remote user out of the room (only support for administrators or room owner).

    After the remote user is kicked off from the room, the SDK notifies the kicked user through the onKickedOutOfRoom callback in $TUIRoomObserver$ and notifies users in the room through onRemoteUserLeaveRoom.
    Param
    DESC
    userId
    User ID.

    getSeatList

    getSeatList
    void getSeatList
    (TUIRoomDefine.GetSeatListCallback callback)

    Get seat list.

    lockSeatByAdmin

    lockSeatByAdmin
    void lockSeatByAdmin
    (int seatIndex
    
    TUIRoomDefine.SeatLockParams lockParams
    
    TUIRoomDefine.ActionCallback callback)

    Lock the seat (only support for administrators or room owner).

    If the lockParams is lockSeat, it means that the current seat can not be taken by all users and the user will be kicked off if the seat was taken.
    If the lockParams is lockVideo/lockAudio, it means that the current seat can not publish video/audio stream.
    Param
    DESC
    lockParams
    Seat lock parameter. More details, see: $TUISeatLockParam$.
    seatIndex
    Seat index.

    takeSeat

    takeSeat
    Request takeSeat
    (int seatIndex
    
    int timeout
    
    TUIRoomDefine.RequestCallback callback)

    Take the seat.

    The user can publish audio/video stream after taking the seat when isSeatEnable is true.
    After taking the seat successfully, the SDK will notify the users in the room through $onSeatListChanged$ in $TUIRoomObserver$.
    Param
    DESC
    seatIndex
    Seat index. If the seat is not enabled or the sequence of seats is not concerned, just fill in -1.
    timeout
    Timeout time, in seconds. If it is set to 0, the SDK will not execute timeout detection and will not trigger a timeout callback.
    Note
    When the TUISeatMode is ApplyToTake, the operation to take seat need approval from the owner or administrator.
    When the TUISeatMode is FreeToTake, you can take seat freely.

    Return Desc:

    TUIRequest Request body.

    leaveSeat

    leaveSeat
    void leaveSeat
    (TUIRoomDefine.ActionCallback callback)

    Leave the seat.

    The user can not publish audio/video stream after leaving the seat when isSeatEnable is true.
    After leaving seat successfully, the SDK will notify the users in the room through onSeatListChanged in $TUIRoomObserver$.

    moveToSeat

    moveToSeat
    void moveToSeat
    (int targetSeatIndex
    
    TUIRoomDefine.ActionCallback callback)

    Move to seat.

    After moving seat successfully, the SDK will notify the users in the room through onSeatListChanged in $TUIRoomObserver$.

    takeUserOnSeatByAdmin

    takeUserOnSeatByAdmin
    Request takeUserOnSeatByAdmin
    (int seatIndex
    
    String userId
    
    int timeout
    
    TUIRoomDefine.RequestCallback callback)

    Invite user to take the seat (only support for administrators or room owner).

    After the API call is successful, the SDK will notify the invited user through onRequestReceived in $TUIRoomObserver$.
    Param
    DESC
    seatIndex
    Seat index.
    timeout
    Timeout time, in seconds. If it is set to 0, the SDK will not execute timeout detection and will not trigger a timeout callback.
    userId
    User ID.

    Return Desc:

    TUIRequest: Request body.

    kickUserOffSeatByAdmin

    kickUserOffSeatByAdmin
    void kickUserOffSeatByAdmin
    (int seatIndex
    
    String userId
    
    TUIRoomDefine.ActionCallback callback)

    Kick off the user from seat (only support for administrators or room owner).

    After the API call is successful, the SDK will notify the users in the room through onSeatListChanged in $TUIRoomObserver$.
    Param
    DESC
    seatIndex
    Seat index. If the seat is not enabled and the sequence of seats is not concerned, just fill in -1.
    userId
    User ID.

    getSeatApplicationList

    getSeatApplicationList
    void getSeatApplicationList
    (TUIRoomDefine.RequestListCallback callback)

    Get the request list of users who want to take the seat in the room (only support for administrators or room owner).

    disableSendingMessageByAdmin

    disableSendingMessageByAdmin
    void disableSendingMessageByAdmin
    (String userId
    
    boolean isDisable
    
    TUIRoomDefine.ActionCallback callback)

    Disable the ability of remote users to send messages (only support for administrators or room owner).

    After disabling the ability of remote users to send messages, the SDK notifies the disabled user through onSendMessageForUserDisableChanged in $TUIRoomObserver$.
    Param
    DESC
    isDisable
    true: disable user to send message, false: enable user to send message.
    userId
    User ID.

    cancelRequest

    cancelRequest
    void cancelRequest
    (String requestId
    
    TUIRoomDefine.ActionCallback callback)

    Cancel request.

    After cancelling a request, the SDK will notify the requested user through onRequestCancelled in $TUIRoomObserver$.
    Param
    DESC
    requestId
    Request ID (get from the sent request).
    Note
    The API can be used to cancel a request that has been sent.

    responseRemoteRequest

    responseRemoteRequest
    void responseRemoteRequest
    (String requestId
    
    boolean agree
    
    TUIRoomDefine.ActionCallback callback)

    Response request.

    Param
    DESC
    agree
    YES: Agree the request, NO: Reject the request.
    requestId
    Request ID (get from the sent request or notification of the OnRequestReceived event).
    Note
    When received a request, you can use this API to reply the received request.

    setBeautyLevel

    setBeautyLevel
    void setBeautyLevel
    (int beautyStyle
    
    float beautyLevel)

    Set the beauty level.

    Param
    DESC
    beautyLevel
    Beauty level, the value range is 0 - 9; 0 indicates to disable the filter, and 9 indicates the most obvious effect.
    beautyStyle
    Beauty style: TXBeautyStyleSmooth: Smooth; TXBeautyStyleNature: Natural; TXBeautyStylePitu: Pitu style.

    setWhitenessLevel

    setWhitenessLevel
    void setWhitenessLevel
    (float whitenessLevel)

    Set whitening level.

    Param
    DESC
    whitenessLevel
    Whitening level, ranging from 0 - 9; 0 indicates to disable the filter, and 9 indicates the most obvious effect.

    getExtension

    getExtension
    Object getExtension
    (TUICommonDefine.ExtensionType extensionType)

    Get the extension.

    Param
    DESC
    extensionType
    Extension type. More deatils, see TUIExtensionType.

    getMediaDeviceManager

    getMediaDeviceManager

    Get device management class.

    getLiveConnectionManager

    getLiveConnectionManager

    Get live-connection management class.

    callExperimentalAPI

    callExperimentalAPI
    Object callExperimentalAPI
    (String jsonStr)

    Call experimental APIs.

    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