RoomStore 提供了一套全面的 API 来管理房间相关操作。函数名 | 描述 |
获取单例对象。 | |
房间事件回调。 | |
房间事件回调。 | |
获取预约房间列表。 | |
获取预约房间参与者。 | |
预约房间。 | |
更新预约房间。 | |
添加预约参与者。 | |
移除预约参与者。 | |
取消预约房间。 | |
创建并加入房间。 | |
加入房间。 | |
离开房间。 | |
结束房间。 | |
更新房间信息。 | |
获取房间信息。 | |
获取待处理的呼叫列表。 | |
呼叫用户加入房间。 | |
取消呼叫。 | |
接受呼叫。 | |
拒绝呼叫。 | |
开始云端录制。 | |
停止云端录制。 |
void addRoomListener(RoomListener listener);
参数名 | 类型 | 描述 |
listener | 监听器。 |
void removeRoomListener(RoomListener listener);
参数名 | 类型 | 描述 |
listener | 监听器。 |
Future<ListResultCompletionHandler<RoomInfo>> getScheduledRoomList(String? cursor);
参数名 | 类型 | 描述 |
cursor | String? | 分页游标。 |
Future<ListResultCompletionHandler<RoomUser>> getScheduledAttendees({required String roomID,required String? cursor,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
cursor | String? | 分页游标。 |
Future<CompletionHandler> scheduleRoom({required String roomID,required ScheduleRoomOptions options,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
options | 预约选项。 |
Future<CompletionHandler> updateScheduledRoom({required String roomID,required ScheduleRoomOptions options,required List<ScheduleRoomOptionsModifyFlag> modifyFlagList,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
options | 预约选项。 | |
modifyFlagList | 修改标志列表。 |
Future<CompletionHandler> addScheduledAttendees({required String roomID,required List<String> userIDList,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
userIDList | [String] | 用户 ID 列表。 |
Future<CompletionHandler> removeScheduledAttendees({required String roomID,required List<String> userIDList,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
userIDList | [String] | 用户 ID 列表。 |
Future<CompletionHandler> cancelScheduledRoom(String roomID);
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
Future<CompletionHandler> createAndJoinRoom({required String roomID,required RoomType roomType,required CreateRoomOptions options,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
roomType | 房间类型(标准房间或网络研讨会)。 | |
options | 创建选项。 |
Future<CompletionHandler> joinRoom({required String roomID,required RoomType roomType,String? password = "",});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
roomType | 房间类型(标准房间或网络研讨会)。 | |
password | String? | 房间密码。 |
Future<CompletionHandler> leaveRoom();
Future<CompletionHandler> endRoom();
Future<CompletionHandler> updateRoomInfo({required String roomID,required UpdateRoomOptions options,required List<UpdateRoomOptionsModifyFlag> modifyFlagList,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
options | 更新选项。 | |
modifyFlagList | 修改标志列表。 |
Future<GetRoomInfoCompletionHandler> getRoomInfo(String roomID);
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
Future<ListResultCompletionHandler<RoomCall>> getPendingCalls({required String roomID,required String? cursor,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
cursor | String? | 分页游标。 |
Future<CallUserToRoomCompletionHandler> callUserToRoom({required String roomID,required List<String> userIDList,int timeout = 0,String? extensionInfo,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
userIDList | List<String> | 用户 ID 列表。 |
timeout | int | 超时时间(单位:秒)。 |
extensionInfo | String? | 扩展信息。 |
Future<CompletionHandler> cancelCall({required String roomID,required List<String> userIDList,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
userIDList | List<String> | 用户 ID 列表。 |
Future<CompletionHandler> acceptCall(String roomID);
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
Future<CompletionHandler> rejectCall({required String roomID,required CallRejectionReason reason,});
参数名 | 类型 | 描述 |
roomID | String | 房间 ID。 |
reason | 拒绝原因。 |
Future<CompletionHandler> startRecording({StartRecordingOptions? options,});
参数名 | 类型 | 描述 |
options | 录制选项,预留扩展。 |
Future<CompletionHandler> stopRecording();
枚举值 | 值 | 说明 |
standard | 1 | 标准房间。 |
webinar | 2 | 网络研讨会。 |
枚举值 | 值 | 说明 |
scheduled | 1 | 已预约。 |
running | 2 | 进行中。 |
枚举值 | 值 | 说明 |
none | 0 | 无呼叫。 |
calling | 1 | 呼叫中。 |
timeout | 2 | 呼叫超时。 |
rejected | 3 | 呼叫被拒绝。 |
枚举值 | 值 | 说明 |
success | 0 | 呼叫成功。 |
alreadyInCalling | 1 | 用户已在呼叫中。 |
alreadyInRoom | 2 | 用户已在房间中。 |
枚举值 | 值 | 说明 |
rejected | 0 | 用户主动拒绝。 |
inOtherRoom | 1 | 用户在其他房间中。 |
枚举值 | 值 | 说明 |
none | 0 | 未录制。 |
recording | 1 | 录制中。 |
枚举值 | 值 | 说明 |
stoppedByUser | 0 | 用户主动停止。 |
roomDismissed | 1 | 房间已解散。 |
maxDurationReached | 2 | 已达到最大录制时长。 |
storageLimitReached | 3 | 已达到存储空间上限。 |
枚举值 | 值 | 说明 |
noError | 0 | 操作成功。 |
noPermission | 1 | 调用者不是 Owner / Admin。 |
featureNotEnabled | 2 | 控制台未开启云端录制功能。 |
storageNotConfigured | 3 | 未配置录制存储(COS / VOD)。 |
serviceUnavailable | 4 | RoomKit / TRTC 录制服务暂时不可用。 |
unknownError | 5 | 未知错误。 |
方法名 | 说明 |
onAddedToScheduledRoom | 当被添加到预约房间时触发此回调。 |
onRemovedFromScheduledRoom | 当被从预约房间移除时触发此回调。 |
onScheduledRoomCancelled | 当预约房间被取消时触发此回调。 |
onScheduledRoomStartingSoon | 当预约房间即将开始时触发此回调。 |
onRoomEnded | 当房间结束时触发此回调。 |
onCallReceived | 当收到房间呼叫时触发此回调。 |
onCallCancelled | 当房间呼叫被取消时触发此回调。 |
onCallTimeout | 当房间呼叫超时时触发此回调。 |
onCallAccepted | 当房间呼叫被接受时触发此回调。 |
onCallRejected | 当房间呼叫被拒绝时触发此回调。 |
onCallHandledByOtherDevice | 当房间呼叫被其他设备处理时触发此回调。 |
onCallRevokedByAdmin | 当房间呼叫被管理员撤销时触发此回调。 |
onRecordingStarted | 当录制开始时触发此回调。 |
onRecordingStopped | 当录制停止时触发此回调。 |
属性 | 类型 | 说明 |
userID | String | 用户 ID。 |
userName | String | 用户名称。 |
avatarURL | String | 用户头像 URL。 |
属性 | 类型 | 说明 |
status | 录制状态。 | |
operatorUser | 开始录制的用户。 | |
startTime | Int | 录制开始时间戳。 |
属性 | 类型 | 说明 |
roomID | String | 房间 ID。 |
roomName | String | 房间名称。 |
roomOwner | 房间所有者。 | |
roomType | 房间类型。 | |
participantCount | Int | 参与者数量。 |
audienceCount | Int | 观众数量(适用于网络研讨会模式)。 |
createTime | Int | 创建时间。 |
roomStatus | 房间状态。 | |
scheduledStartTime | Int | 预约开始时间。 |
scheduledEndTime | Int | 预约结束时间。 |
startReminderInSeconds | Int | 开始前提醒秒数。 |
scheduleAttendees | 预约参与者列表。 | |
password | String? | 房间密码。 |
isAllMicrophoneDisabled | Bool | 是否禁用所有麦克风。 |
isAllCameraDisabled | Bool | 是否禁用所有摄像头。 |
isAllMessageDisabled | Bool | 是否禁用所有消息。 |
isAllScreenShareDisabled | Bool | 是否禁用所有屏幕共享。 |
recordingInfo | 录制信息。 |
属性 | 类型 | 说明 |
roomName | String | 房间名称。 |
password | String | 房间密码。 |
scheduleStartTime | Int | 预约开始时间。 |
scheduleEndTime | Int | 预约结束时间。 |
reminderSecondsBeforeStart | Int | 开始前提醒秒数。 |
scheduleAttendees | [String] | 预约参与者 ID 列表。 |
isAllMicrophoneDisabled | Bool | 是否禁用所有麦克风。 |
isAllCameraDisabled | Bool | 是否禁用所有摄像头。 |
isAllScreenShareDisabled | Bool | 是否禁用所有屏幕共享。 |
isAllMessageDisabled | Bool | 是否禁用所有消息。 |
属性 | 类型 | 说明 |
roomName | String | 房间名称。 |
password | String | 房间密码。 |
isAllMicrophoneDisabled | Bool | 是否禁用所有麦克风。 |
isAllCameraDisabled | Bool | 是否禁用所有摄像头。 |
isAllScreenShareDisabled | Bool | 是否禁用所有屏幕共享。 |
isAllMessageDisabled | Bool | 是否禁用所有消息。 |
属性 | 类型 | 说明 |
roomName | String | 房间名称。 |
password | String | 房间密码。 |
属性 | 类型 | 说明 |
caller | 呼叫者信息。 | |
callee | 被呼叫者信息。 | |
status | 呼叫状态。 |
fun onSuccess(result: Map<String, RoomCallResult>)
参数名 | 类型 | 说明 |
result | 呼叫结果映射。 |
fun onFailure(code: Int, desc: String)
参数名 | 类型 | 说明 |
code | Int | 错误码。 |
desc | String | 错误描述。 |
fun onSuccess(roomInfo: RoomInfo)
参数名 | 类型 | 说明 |
roomInfo | 房间信息。 |
fun onFailure(code: Int, desc: String)
参数名 | 类型 | 说明 |
code | Int | 错误码。 |
desc | String | 错误描述。 |
文档反馈