@tencentcloud/roomkit-web-vue3
Version:
<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,
121 lines (119 loc) • 4.04 kB
TypeScript
import { TUIConferenceInfo, TUIConferenceListManagerEvents, TUIRoomType, TUISeatMode, TUIUserInfo, TUIConferenceStatus } from '../../../../node_modules/@tencentcloud/tuiroom-engine-js';
import { IRoomService } from '../types';
export * from '../../../../node_modules/@tencentcloud/tuiroom-engine-js';
interface IScheduleConferenceManager {
on(eventType: TUIConferenceListManagerEvents, callback: (data?: any) => any): void;
off(eventType: TUIConferenceListManagerEvents, callback: (data?: any) => void): void;
dispose(): void;
scheduleConference(conferenceInfo: IScheduleConferenceOptions): Promise<void>;
cancelConference(options: {
roomId: string;
}): Promise<void>;
updateConferenceInfo(options: {
roomId: string;
roomName?: string;
scheduleStartTime?: number;
scheduleEndTime?: number;
}): Promise<void>;
fetchScheduledConferenceList(options: {
statusArray?: TUIConferenceStatus[];
cursor: string;
count: number;
}): Promise<Array<TUIConferenceInfo>>;
fetchAttendeeList(options: {
roomId: string;
cursor: string;
count: number;
}): Promise<Array<TUIUserInfo>>;
addAttendeesByAdmin(options: {
roomId: string;
userIdList: string[];
}): Promise<void>;
removeAttendeesByAdmin(options: {
roomId: string;
userIdList: string[];
}): Promise<void>;
fetchFriendList(): Promise<void>;
replaceFriendList(userList: Array<{
userID: string;
profile: {
userID: string;
nick: string;
avatar: string;
};
}>): void;
}
export interface IScheduleConferenceOptions {
scheduleStartTime: number;
scheduleEndTime: number;
scheduleAttendees?: string[];
reminderSecondsBeforeStart?: number;
roomId: string;
roomName?: string;
roomType?: TUIRoomType;
isSeatEnabled?: boolean;
seatMode?: TUISeatMode;
isMicrophoneDisableForAllUser?: boolean;
isScreenShareDisableForAllUser?: boolean;
isCameraDisableForAllUser?: boolean;
isMessageDisableForAllUser?: boolean;
maxSeatCount?: number;
password?: string;
}
export declare class ScheduleConferenceManager implements IScheduleConferenceManager {
private service;
private customFriendList?;
private emitter;
constructor(service: IRoomService);
dispose(): void;
on(eventType: TUIConferenceListManagerEvents, callback: (data?: any) => any): void;
off(eventType: TUIConferenceListManagerEvents, callback: (data?: any) => void): void;
private emit;
private bindEventContext;
private bindEvent;
private unbindEvent;
private onConferenceScheduled;
private onConferenceWillStart;
private onConferenceCancelled;
private onConferenceInfoChanged;
private onScheduleAttendeesChanged;
private onConferenceStatusChanged;
fetchFriendList(): Promise<any>;
replaceFriendList(userList: Array<{
userID: string;
profile: {
userID: string;
nick: string;
avatar: string;
};
}>): void;
generateRoomId(attempt?: number): Promise<string>;
scheduleConference(options: IScheduleConferenceOptions): Promise<any>;
cancelConference(options: {
roomId: string;
}): Promise<any>;
updateConferenceInfo(options: {
roomId: string;
roomName?: string;
scheduleStartTime?: number;
scheduleEndTime?: number;
}): Promise<any>;
fetchScheduledConferenceList(options: {
statusArray?: TUIConferenceStatus[];
cursor: string;
count: number;
}): Promise<any>;
fetchAttendeeList(options: {
roomId: string;
cursor: string;
count: number;
}): Promise<any>;
addAttendeesByAdmin(options: {
roomId: string;
userIdList: string[];
}): Promise<any>;
removeAttendeesByAdmin(options: {
roomId: string;
userIdList: string[];
}): Promise<any>;
}