Copyright (c) 2024 Tencent. All rights reserved.
Module: TUILiveListManager @ TUIKitEngine
Function: 直播房间列表相关接口,此页面中的函数仅支持直播房间类型(LIVE)。
TUIRoomEngine 3.0.0 版本开始支持。
TUILiveListManager
函数接口 | 说明 |
获取直播间列表 | |
修改直播间信息 | |
获取直播间信息 | |
监听 TUILiveListManagerEvents 事件 | |
取消 TUILiveListManagerEvents 事件监听 |
TUILiveListManagerEvents
事件接口 | 说明 |
直播间信息发生变化事件 |
类型定义
类型 | 说明 |
直播间信息 | |
直播间列表查询结果 | |
直播间信息发生修改结构体 |
函数接口详情
fetchLiveList
获取直播间列表
const roomEngine = new TUIRoomEngine();const liveListManager = roomEngine.getLiveListManager();const liveList = [];let cursor = '';let count = 20;let result;do {result = await liveListManager.fetchLiveList({ cursor, count });liveList.push(...result.liveInfoList);cursor = result.cursor;} while(cursor !== '');
参数:
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 参数选项 |
options.cursor | String | 是 | '' | 分页获取索引,第一次拉取填 '',返回的数据中 cursor 不为 '',表示需要分页,请以返回的 cursor 作为参数再次调用接口拉取,直至返回的cursor为 '',表示数据已经全部拉取。 |
options.count | Number | 是 | - | 本次拉取数量 |
setLiveInfo
修改直播间信息
const roomEngine = new TUIRoomEngine();const liveListManager = roomEngine.getLiveListManager();liveListManager.setLiveInfo({roomId: "141569",coverUrl: "https://qcloudimg.tencent-cloud.cn/image/document/live-cover.png",isPublicVisible: false,activityStatus: 1,categoryList: [1,2,3],backgroundUrl: "https://qcloudimg.tencent-cloud.cn/image/document/live-cover.png"});
参数:
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 参数选项 |
options.roomId | String | 是 | - | 直播房间号 |
options.activityStatus | Number | 否 | - | 直播间活跃状态: 用户自定义标记 |
options.categoryList | Arran | 否 | - | 直播间分类标签,单个房间最大支持3个标记 |
options.coverUrl | String | 否 | - | 直播间封面图片 HTTP URL 地址,最大支持 200 个字节 |
options.backgroundUrl | String | 否 | - | 直播间背景图片 HTTP URL 地址,最大支持 200 个字节 |
options.isPublicVisible | Boolean | 否 | true | 直播间是否公开,默认 true,表示公开 |
返回值:Promise<void>
getLiveInfo
获取直播间信息
const roomEngine = new TUIRoomEngine();const liveListManager = roomEngine.getLiveListManager();const result = await liveListManager.getLiveInfo({ roomId: "141569" });
参数:
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 参数选项 |
options.roomId | String | 是 | - | 直播房间号 |
on
监听 TUILiveListManagerEvents 事件
const roomEngine = new TUIRoomEngine();const liveListManager = roomEngine.getLiveListManager();const callback = ({ liveModifyInfo }) => {console.log('liveListManager.onLiveInfoChanged', liveModifyInfo);};liveListManager.on(TUILiveListManagerEvents.onLiveInfoChanged, callback);
参数:
参数 | 类型 | 是否必填 | 默认值 | 说明 |
eventName | 是 | - | 事件名 | |
func | (...args: any[]) => void | 是 | - | 事件处理函数 |
返回值:void
off
取消 TUILiveListManagerEvents 事件监听
const roomEngine = new TUIRoomEngine();const liveListManager = roomEngine.getLiveListManager();const callback = ({ liveModifyInfo }) => {console.log('liveListManager.onLiveInfoChanged', liveModifyInfo);};liveListManager.off(TUILiveListManagerEvents.onLiveInfoChanged, callback);
参数:
参数 | 类型 | 是否必填 | 默认值 | 说明 |
eventName | 是 | - | 事件名 | |
func | (...args: any[]) => void | 是 | - | 事件处理函数 |
返回值:void
事件接口详情
onLiveInfoChanged
直播间信息发生变化事件
const roomEngine = new TUIRoomEngine();const liveListManager = roomEngine.getLiveListManager();liveListManager.on(TUILiveListManagerEvents.onLiveInfoChanged, ({ liveModifyInfo}) => {console.log('liveListManager.onLiveInfoChanged', liveInfo, modifyFlag);});
参数:
参数 | 类型 | 说明 |
options | Object | 参数选项 |
options.liveModifyInfo | 直播间信息变更 |
类型定义详情
TUILiveInfo
属性 | 类型 | 说明 |
basicRoomInfo | 房间信息,只读 | |
isPublicVisible | Boolean | 直播间是否公开 |
activityStatus | Number | 直播间活跃状态: 用户自定义标记 |
coverUrl | String | 直播间封面图片 HTTP URL 地址,最大支持 200 个字节 |
backgroundUrl | String | 直播间背景图片 HTTP URL 地址,最大支持 200 个字节 |
categoryList | Array | 直播间分类标签,单个房间最大支持3个标记 |
viewCount | Number | 累计观看次数,只读 |
TUILiveListResult
属性 | 类型 | 说明 |
cursor | String | 列表下标 |
listInfoList | 拉取的直播间列表 |
TUILiveModifyInfo
属性 | 类型 | 说明 |
roomId | String | 直播房间号 |
isPublicVisible | Boolean | 可选,直播间是否公开 |
activityStatus | Number | 可选,直播间活跃状态: 用户自定义标记 |
coverUrl | String | 可选,直播间封面图片 HTTP URL 地址,最大支持 200 个字节 |
backgroundUrl | String | 可选,直播间背景图片 HTTP URL 地址,最大支持 200 个字节 |
categoryList | Array | 可选,直播间分类标签,单个房间最大支持3个标记 |