tencent cloud

Feedback

Last updated: 2024-11-22 16:53:52

    Description of the Feature

    The connection feature is a real-time interactive communication method, customized for anchors. It enables anchors from different rooms to interact and communicate in real-time during the livestream. TUILiveKit's connection feature supports up to nine people in a single room simultaneously. It provides strong technical support for various scenarios such as anchor interaction, knowledge sharing, cultural exchange, and e-commerce training. It offers diverse interactive methods for anchors and enriches the viewing experience for the audience, creating more surprises and value for both parties, and making livestreams more attractive.
    Two-person connection
    Multiple people connection
    
    
    
    
    
    

    Access Process

    Anchor Connection Process

    The TUILiveKit connection feature for anchors is mainly implemented based on LiveCoreView. You can complete the anchor connection feature using the following API. Here is an example of connecting Anchor A with Anchor B.
    Note:
    The methods described below are actively invoked and provided by LiveCoreView.
    All callback methods refer to the callback methods in the ConnectionObserver object set by LiveCoreView.

    Anchor A initiates the connection

    Anchor A initiates the connection by calling requestCrossRoomConnection and passing the room id of the anchor B in the roomId parameter.
    Kotlin
    java
    val roomId = "anchorBRoomId"
    mLiveViewList.requestCrossRoomConnection(roomId, 10, null)
    String roomId = "anchorBRoomId";
    mLiveViewList.requestCrossRoomConnection(roomId, 10, null);
    Anchor A can receive the acceptance callback via onCrossRoomConnectionAccepted.

    Anchor B receives the connection request

    Anchor B receives the connection request callback via onCrossRoomConnectionRequest.
    Kotlin
    java
    override fun onCrossRoomConnectionRequest(inviterUser: UserInfo) {
    Log.i(TAG, "Received connection request from anchor A's room: ${inviterUser.userId}")
    }
    @Override
    public void onCrossRoomConnectionRequest(LiveStreamDefine.RoomInfo roomInfo) {
    Log.i(TAG, "Received connection request from anchor A's room: " + roomInfo.roomId);
    }
    Anchor B responds to the connection request by calling respondToCrossRoomConnection.
    Kotlin
    java
    liveCoreView.respondToCrossRoomConnection(roomId, true, null)
    // Agree to the connection request
    liveCoreView.respondToCrossRoomConnection(roomId, true, null);
    Anchor A, B, and the audience in the room receive the onConnectedRoomsUpdated callback and are notified of changes in the connection list.
    Kotlin
    java
    override fun onConnectedRoomsUpdated(inviterUser: UserInfo) {
    Log.i(TAG, "Anchor connection room list updated")
    }
    @Override
    public void onConnectedRoomsUpdated(List<LiveStreamDefine.RoomInfo> roomList) {
    Log.i(TAG, "Host connection room list updated");
    }

    Exit connection process

    Anchor B calls terminateIntraRoomConnection to exit the connection.
    kotlin
    java
    // File location: Android/tuilivekit/src/main/java/com/trtc/uikit/livekit/service/impl/LiveServiceImpl.java
    public void disconnect(TUIRoomDefine.ActionCallback callback) {
    mTUILiveConnectionManager.disconnect(callback);
    }
    liveCoreView.terminateIntraRoomConnection()
    Anchor A, B, and the audience in the room receive the onConnectedRoomsUpdated callback and are notified of changes in the connection list.
    kotlin
    java
    override fun onConnectedRoomsUpdated(inviterUser: UserInfo) {
    Log.i(TAG, "Anchor connection room list updated")
    }
    @Override
    public void onConnectedRoomsUpdated(List<RoomInfo> roomList) {
    Log.i(TAG, "Anchor connection room list updated");
    }
    Note:
    The connection feature is implemented based on LiveCoreView. If you need to extend the connection feature, please refer to LiveCoreView documentation.

    Anchor Connection Sequence Diagram

    
    
    
    
    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