tencent cloud

文档反馈

TUIRoomEngine

最后更新时间:2024-12-18 14:59:17

    TUIRoomEngine API 简介

    TUIRoomEngine API 是多人音视频房间的无 UI 接口,您可以使用这套 API 根据您的业务需求自定义封装。

    sharedInstance

    创建 TUIRoomEngine 实例。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    static TUIRoomEngine sharedInstance()
    return:TUIRoomEngine 实例。

    destroySharedInstance

    销毁TUIRoomEngine实例。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void destroySharedInstance()

    login

    登录 roomEngine 接口,您需要先初始化用户信息后才能进入房间,并进行一系列的操作。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    static Future<TUIActionCallback> login(int sdkAppId,
    String userId,
    String userSig)
    参数:
    参数
    类型
    含义
    sdkAppId
    int
    应用信息中获取 sdkAppId 信息
    userId
    String
    用户 ID
    userSig
    String
    userSig 签名。计算 userSig 的方式请参见 UserSig 相关

    logout

    退出登录接口,会有主动离开房间操作、销毁资源。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    static Future<TUIActionCallback> logout()

    setSelfInfo

    设置本地用户名称和头像。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    static Future<TUIActionCallback> setSelfInfo(String userName, String avatarURL)
    参数:
    参数
    类型
    含义
    userName
    String
    用户名
    avatarUrl
    String
    用户头像

    setLoginUserInfo

    设置登录用户信息。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    static Future<TUIActionCallback> setLoginUserInfo(TUILoginUserInfo userInfo)
    参数:
    参数
    类型
    含义
    userInfo
    TUILoginUserInfo
    用户信息

    getSelfInfo

    获取本地用户登录的基本信息。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    static TUILoginUserInfo getSelfInfo()
    return:用户登录信息。

    addObserver

    添加 TUIRoomEngine 事件回调。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void addObserver(TUIRoomObserver observer)
    参数:
    参数
    类型
    含义
    observer
    TUIRoomObserver
    TUIRoomEngine 事件回调

    removeObserver

    移除 TUIRoomEngine 事件回调。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void removeObserver(TUIRoomObserver observer)
    参数
    类型
    含义
    observer
    TUIRoomObserver
    TUIRoomEngine 事件回调

    createRoom

    主持人创建房间,调用 createRoom 的用户为房间的所有者。创建房间时可设置房间 ID、房间名称、以及房间是否允许加入用户开启音视频、发送消息等功能。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> createRoom(TUIRoomInfo roomInfo)
    参数:
    参数
    类型
    含义
    roomInfo
    房间基本信息

    destroyRoom

    销毁房间接口,销毁房间必须由房间所有者发起,销毁房间之后房间不可进入。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> destroyRoom()

    enterRoom

    进入房间接口。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIValueCallBack<TUIRoomInfo>> enterRoom(String roomId,{TUIRoomType roomType = TUIRoomType.conference,TUIEnterRoomOptions? options})
    参数:
    参数
    类型
    含义
    roomId
    String
    房间号,字符串类型
    roomType
    TUIRoomType
    房间类型
    options
    TUIEnterRoomOptions
    进房可选参数

    exitRoom

    离开房间接口,用户在执行 enterRoom 之后可通过 exitRoom 离开房间。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> exitRoom(bool syncWaiting)
    参数:
    参数
    类型
    含义
    syncWaiting
    bool
    是否同步退出房间

    connectOtherRoom

    连接其他房间。
    说明:
    用于直播场景下的申请跨房连麦。
    TUIRequest connectOtherRoom(String roomId,
    String userId,
    int timeout,
    TUIRequestCallback? requestCallback)
    参数:
    参数
    类型
    含义
    roomId
    String
    房间 ID
    userId
    String
    用户 ID
    timeout
    int
    时间
    callback
    TUIRequestCallback
    连接其他房间请求回调
    Return:请求体

    disconnectOtherRoom

    断开与其他房间的连接。
    说明:
    用于直播场景下的断开跨房连麦。
    Future<TUIActionCallback> disconnectOtherRoom()

    
    fetchRoomInfo
    

    获取房间信息。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIValueCallBack<TUIRoomInfo>> fetchRoomInfo()

    
    updateRoomNameByAdmin
    

    更新房间名称。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> updateRoomNameByAdmin(String roomName)
    参数:
    参数
    类型
    含义
    roomName
    String
    房间名称

    updateRoomSeatModeByAdmin

    设置房间上麦模式(只有管理员或群主能够调用)。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> updateRoomSeatModeByAdmin(TUISeatMode mode)
    参数
    类型
    含义
    mode
    房间模式

    setLocalVideoView

    设置本地用户视频渲染的视图控件。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void setLocalVideoView(int viewId)
    参数:
    参数
    类型
    含义
    viewId
    int
    待渲染 view 指针的 int64 类型值,通过此 viewId 可转换为对应原生平台的视图,视频画面将渲染于此视图上

    openLocalCamera

    打开本地摄像头,开始视频流采集。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> openLocalCamera(bool isFront,
    TUIVideoQuality quality)
    参数:
    参数
    类型
    含义
    isFront
    bool
    是否使用前置摄像头
    quality
    视频质量

    closeLocalCamera

    关闭本地摄像头。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void closeLocalCamera()

    
    updateVideoQuality
    

    设置本地视频的参数。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void updateVideoQuality(TUIVideoQuality quality)
    参数:
    参数
    类型
    含义
    quality
    视频质量

    updateVideoQualityEx

    设置本地视频编码器参数。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void updateVideoQualityEx(
    TUIVideoStreamType streamType, TUIRoomVideoEncoderParams params);
    参数
    类型
    含义
    streamType
    TUIVideoStreamType
    视频流类型
    params
    TUIRoomVideoEncoderParams
    视频编码器参数

    setVideoResolutionMode

    设置视频编码器分辨率模式(横屏分辨率 or 竖屏分辨率)。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void setVideoResolutionMode(
    TUIVideoStreamType streamType, TUIResolutionMode resolutionMode);
    参数
    类型
    含义
    streamType
    TUIVideoStreamType
    视频流类型
    resolutionMode
    TUIResolutionMode
    分辨率模式

    enableGravitySensor

    开启重力感应模式。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void enableGravitySensor(bool enable);
    参数
    类型
    含义
    enable
    bool
    是否开启

    startPushLocalVideo

    开始向远端推本地视频流。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void startPushLocalVideo()

    stopPushLocalVideo

    停止向远端推本地视频流。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void stopPushLocalVideo()

    startScreenSharing

    开始屏幕分享
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<void> startScreenSharing({String appGroup = ''})

    stopScreenSharing

    结束屏幕分享
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<void> stopScreenSharing()

    openLocalMicrophone

    打开本地麦克风。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> openLocalMicrophone(TUIAudioQuality quality)
    参数
    类型
    含义
    quality
    音频质量

    closeLocalMicrophone

    关闭本地麦克风。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void closeLocalMicrophone()

    updateAudioQuality

    更新本地音频编码质量设置。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void updateAudioQuality(TUIAudioQuality quality)
    参数:
    参数
    类型
    含义
    quality
    音频质量

    muteLocalAudio

    停止向远端推本地音频流。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> muteLocalAudio()

    unMuteLocalAudio

    开始向远端推本地音频流。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> unMuteLocalAudio()

    setRemoteVideoView

    设置远端用户视频渲染的视图控件。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void setRemoteVideoView(String userId,
    TUIVideoStreamType streamType,
    int viewId)
    参数:
    参数
    类型
    含义
    userId
    String
    用户 ID
    streamType
    用户流类型
    viewId
    int
    待渲染 view 指针的 int64 类型值,通过此 viewId 可转换为对应原生平台的视图,视频画面将渲染于此视图上

    startPlayRemoteVideo

    开始播放远端用户视频流。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void startPlayRemoteVideo(String userId,
    TUIVideoStreamType streamType,
    TUIPlayCallback? callback)
    参数:
    参数
    类型
    含义
    userId
    String
    用户 ID
    streamType
    用户流类型
    callback
    TUIPlayCallback?
    播放结果回调

    stopPlayRemoteVideo

    停止播放远端用户视频流。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void stopPlayRemoteVideo(String userId,
    TUIVideoStreamType streamType)
    参数:
    参数
    类型
    含义
    userId
    String
    用户 ID
    streamType
    用户流类型

    muteRemoteAudioStream

    将远端用户禁音。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void muteRemoteAudioStream(String userId, boolean isMute);
    参数:
    参数
    类型
    含义
    userId
    String
    用户 ID
    isMute
    bool
    是否禁音

    getUserList

    获取当前房间用户列表,注意该接口一次拉取的用户列表量最大为 100 个。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIValueCallBack<TUIUserListResult>> getUserList(int nextSequence)
    参数:
    参数
    类型
    含义
    nextSequence
    int
    分页拉取标志,第一次拉取填0。回调成功如果 nextSeq 不为零,需要分页,传入 nextSeq 再次拉取,直至 callback 中 nextSeq 为0

    getUserInfo

    获取用户的详细信息。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIValueCallBack<TUIUserInfo>> getUserInfo(String userId)
    参数:
    参数
    类型
    含义
    userId
    String
    根据 userId 获取该用户的详细信息

    changeUserRole

    改变用户的角色,只有管理员或群主能够调用。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> changeUserRole(String userId,
    TUIRole role)
    参数:
    参数
    类型
    含义
    userId
    String
    用户 ID
    role
    TUIRole
    用户角色

    changeUserNameCard

    改变房间内用户昵称。
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIActionCallback> changeUserNameCard(String userId, String nameCard);
    参数:
    参数
    类型
    含义
    userId
    String
    用户 ID
    nameCard
    String
    用户昵称

    kickRemoteUserOutOfRoom

    将用户移出房间,只有管理员或群主能够调用。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> kickRemoteUserOutOfRoom(String userId)
    参数:
    参数
    类型
    含义
    userId
    String
    用户 ID

    addCategoryTagForUsers

    为用户增加标记,只有房主能够调用。
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIActionCallback> addCategoryTagForUsers(int tag, List<String> userList);
    参数:
    参数
    类型
    含义
    tag
    int
    标记类型。数字类型,大于等于 1000,您可以自定义。
    userList
    List<String>
    用户列表

    removeCategoryTagForUsers

    为用户移除标记,只有房主能够调用。
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIActionCallback> removeCategoryTagForUsers(int tag, List<String> userList);
    参数:
    参数
    类型
    含义
    tag
    int
    类型。数字类型,大于等于 1000,您可以自定义。
    userList
    List<String>
    用户列表

    getUserListByTag

    根据标记获取房间内用户信息
    为用户移除标记,只有房主能够调用。
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIValueCallBack<TUIUserListResult>> getUserListByTag(int tag, int nextSequence);
    参数:
    参数
    类型
    含义
    tag
    int
    类型。数字类型,大于等于 1000,您可以自定义。
    nextSequence
    int
    分页拉取标志,第一次拉取填0,回调成功,如果 callback 返回的数据中 nextSequence 不为零,需要分页,传入再次拉取,直至为0

    setCustomInfoForUser

    设置房间内成员自定义信息
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIActionCallback> setCustomInfoForUser(String userId,HashMap<String, String> customInfo);
    参数:
    参数
    类型
    含义
    userId
    String
    用户userId
    customInfo
    HashMap<String, String>
    自定义信息

    disableDeviceForAllUserByAdmin

    全体用户媒体设备管理,只有管理员或群主能够调用。
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIActionCallback> disableDeviceForAllUserByAdmin(TUIMediaDevice device,
    bool isDisable)
    参数
    类型
    含义
    device
    设备
    isDisable
    bool
    是否禁用

    openRemoteDeviceByAdmin

    请求远端用户打开媒体设备,只有管理员或群主能够调用。
    说明:
    此函数仅适用于会议房间类型(conference)。
    TUIRequest openRemoteDeviceByAdmin(String userId,
    TUIMediaDevice device,
    int timeout,
    TUIRequestCallback? requestCallback)
    参数
    类型
    含义
    userId
    String
    用户 ID
    device
    设备
    timeout
    int
    超时时间,单位秒。如果设置为 0,SDK 不会做超时检测,也不会触发超时回调
    requestCallback
    TUIRequestCallback?
    操作结果回调

    closeRemoteDeviceByAdmin

    关闭远端用户媒体设备,只有管理员或群主能够调用。
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIActionCallback> closeRemoteDeviceByAdmin(String userId,
    TUIMediaDevice device)
    参数
    类型
    含义
    userId
    String
    用户ID
    device
    设备

    applyToAdminToOpenLocalDevice

    全体用户媒体设备管理 lock。
    说明:
    此函数仅适用于会议房间类型(conference)。
    TUIRequest applyToAdminToOpenLocalDevice(TUIMediaDevice device,
    int timeout,
    TUIRequestCallback? requestCallback)
    参数
    类型
    含义
    device
    设备
    timeout
    int
    超时时间,单位秒。如果设置为 0,SDK 不会做超时检测,也不会触发超时回调
    callback
    TUIRequestCallback?
    操作结果回调

    setMaxSeatCount

    设置最大麦位数,仅支持进房前和创建房间时设置。
    Future<TUIActionCallback> setMaxSeatCount(int maxSeatCount)
    参数
    类型
    含义
    maxSeatCount
    int
    最大麦位数

    
    getSeatApplicationList
    

    主持人/管理员获取房间内申请上麦用户的请求列表。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIValueCallBack<List<TUIRequest>>> getSeatApplicationList();

    lockSeatByAdmin

    锁定麦位(包括位置锁定,音频状态锁定,视频状态锁定)。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> lockSeatByAdmin(int seatIndex,
    TUISeatLockParams lockParams)
    参数
    类型
    含义
    seatIndex
    int
    麦位编号
    lockParams
    锁麦参数

    getSeatList

    获取麦位列表。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIValueCallBack<List<TUISeatInfo>>> getSeatList()

    takeSeat

    本地上麦。
    说明:
    会议场景:applyToSpeak 模式需要向主持人或管理员发起申请才允许上麦,其他模式不支持上麦。
    直播场景:freeToSpeak 模式可以自由上麦,上麦后开麦发言;applySpeakAfterTakingSeat 模式需要向主持人或管理员发起申请才允许上麦;其他模式不支持上麦。
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    TUIRequest takeSeat(int seatIndex,
    int timeout,
    TUIRequestCallback? requestCallback)
    参数:
    参数
    类型
    含义
    seatIndex
    int
    麦位编号
    timeout
    int
    超时时间,单位秒。如果设置为 0,SDK 不会做超时检测,也不会触发超时回调
    requestCallback
    TUIRequestCallback?
    调用接口的回调,用于通知请求的回调状态
    Return: 请求体

    leaveSeat

    本地下麦。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> leaveSeat()

    moveToSeat

    移麦。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> moveToSeat(int targetSeatIndex);
    参数
    类型
    含义
    seatIndex
    int
    麦位编号

    takeUserOnSeatByAdmin

    主持人/管理员 邀请用户上麦。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    TUIRequest takeUserOnSeatByAdmin(int seatIndex,
    String userId,
    int timeout,
    TUIRequestCallback? requestCallback)
    参数
    类型
    含义
    seatIndex
    int
    麦位编号
    userId
    String
    用户 ID
    timeout
    int
    超时时间,单位秒。如果设置为 0,SDK 不会做超时检测,也不会触发超时回调
    requestCallback
    TUIRequestCallback?
    调用接口的回调,用于通知请求的回调状态
    Return: 请求体

    kickUserOffSeatByAdmin

    主持人/管理员 将用户下麦。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> kickUserOffSeatByAdmin(int seatIndex,
    String userId)
    参数
    类型
    含义
    seatIndex
    int
    麦位编号
    userId
    String
    用户 ID

    disableSendingMessageByAdmin

    禁用远端用户的发送文本消息能力(只有管理员或群主能够调用)。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> disableSendingMessageByAdmin(String userId,
    bool isDisable)
    参数
    类型
    含义
    userId
    String
    用户 ID
    isDisable
    bool
    是否禁用

    disableSendingMessageForAllUser

    禁用所有用户的发送文本消息能力(只有管理员或群主能够调用)。
    说明:
    此函数仅适用于会议房间类型(conference)。
    Future<TUIActionCallback> disableSendingMessageForAllUser(bool isDisable)
    参数
    类型
    含义
    isDisable
    bool
    是否禁用

    cancelRequest

    取消已经发出的请求。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> cancelRequest(String requestId)
    参数:
    参数
    类型
    含义
    requestId
    String
    请求 ID

    responseRemoteRequest

    回复远端用户的请求。
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    Future<TUIActionCallback> responseRemoteRequest(String requestId,
    bool agree)
    参数:
    参数
    类型
    含义
    requestId
    String
    请求 ID
    agree
    bool
    是否同意

    callExperimentalAPI

    调用实验性接口
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void callExperimentalAPI(String jsonStr);
    参数
    类型
    含义
    jsonStr
    String
    接口信息

    setBeautyLevel

    设置美颜级别
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void setBeautyLevel(int beautyStyle, int beautyLevel);
    参数
    类型
    含义
    beautyStyle
    int
    美颜风格
    beautyLevel
    int
    美颜级别

    setWhitenessLevel

    设置美白级别
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    void setWhitenessLevel(int whitenessLevel);
    参数
    类型
    含义
    whitenessLevel
    int
    美白级别

    getExtension

    获取插件
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    dynamic getExtension(TUIExtensionType extensionType);
    参数
    类型
    含义
    extensionType
    TUIExtensionType
    插件类型

    getMediaDeviceManager

    获取设备管理类
    说明:
    此函数适用于会议房间类型和直播房间类型(conference & livingRoom)。
    TUIRoomDeviceManager getMediaDeviceManager();
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持