LiveAudienceStore

简介

LiveAudienceStore 提供了一套完整的观众管理 API,包括获取观众列表、设置管理员、踢出用户、禁言等功能。
通过该类,可以在直播间内实现观众管理功能。
重要:
使用 LiveAudienceStore.create 工厂方法创建 LiveAudienceStore 实例,需要传入有效的直播间 ID。
说明:
观众状态更新通过 liveAudienceState 发布者传递。订阅它以接收房间内观众数据的实时更新。

功能特性

观众列表:获取和管理当前房间的观众列表。
权限管理:设置和撤销管理员权限。
用户管理:踢出用户、禁言等操作。
事件监听:监听观众加入、离开等事件。

可订阅数据

LiveAudienceState 的字段描述如下:
属性名
类型
描述
audienceList
ValueListenable<List<LiveUserInfo>>
观众列表。
audienceCount
ValueListenable<int>
观众数量。
messageBannedUserList
ValueListenable<List<LiveUserInfo>>
消息被禁言的用户列表。

API 列表

函数名
描述
创建观众管理实例。
观众事件回调。
观众事件回调。
获取观众列表。
设置管理员。
撤销管理员。
踢出用户。
禁言/解禁用户。

创建实例

LiveAudienceStore.create

创建观众管理实例。

观察状态和事件

addLiveAudienceListener

添加观众事件监听器
void addLiveAudienceListener(LiveAudienceListener listener);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
listener
必填
监听器。

removeLiveAudienceListener

移除观众事件监听器
void removeLiveAudienceListener(LiveAudienceListener listener);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
listener
必填
监听器。

观众管理

fetchAudienceList

获取观众列表
Future<CompletionHandler> fetchAudienceList();
版本信息
从 3.5 版本开始支持。

setAdministrator

设置管理员
Future<CompletionHandler> setAdministrator(String userID);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String
必填
要设置为管理员的用户ID。

revokeAdministrator

撤销管理员
Future<CompletionHandler> revokeAdministrator(String userID);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String
必填
要撤销管理员权限的用户ID。

kickUserOutOfRoom

将用户踢出房间
Future<CompletionHandler> kickUserOutOfRoom(String userID);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String
必填
要踢出的用户ID。

disableSendMessage

禁用/解禁用户发送消息
Future<CompletionHandler> disableSendMessage({
required String userID,
required bool isDisable,
});
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
userID
String
必填
目标用户ID。
isDisable
bool
必填
true 表示禁用发送消息,false 表示解禁。

数据结构

Role

用户角色。
枚举值
说明
owner
房主。
admin
管理员。
generalUser
普通用户。

LiveUserInfo

直播用户信息。
属性
类型
说明
userID
String
用户唯一标识ID。
userName
String
用户名称。
avatarURL
String
用户头像URL。

LiveAudienceState

直播观众状态。
属性
类型
说明
audienceList
ValueListenable<List<LiveUserInfo>>
观众列表。
audienceCount
ValueListenable<int>
观众数量。
messageBannedUserList
ValueListenable<List<LiveUserInfo>>
消息被禁言的用户列表。

LiveAudienceListener

直播观众事件。
此监听器用于接收直播间内的观众动态事件。
方法
onAudienceJoined: 观众加入事件。
void Function(LiveUserInfo audience)? onAudienceJoined;
参数名
类型
说明
audience
加入的观众信息。
onAudienceLeft: 观众离开事件。
void Function(LiveUserInfo audience)? onAudienceLeft;
参数名
类型
说明
audience
离开的观众信息。
onAudienceMessageDisabled: 观众被禁止发言事件。
void Function(LiveUserInfo audience, bool isDisable)? onAudienceMessageDisabled;

LiveAudienceListener({this.onAudienceJoined, this.onAudienceLeft, this.onAudienceMessageDisabled});
参数名
类型
说明
audience
观众信息。
isDisable
bool
是否被禁止发言。