UNPKG

agora-meeting-sdk

Version:

For publishing npm package agora-metting-sdk (Web). Get more information from https://docs.agora.io

99 lines (98 loc) 4.41 kB
/// <reference types="node" /> import { EventEmitter } from 'events'; import { AgoraEduApi, BatchStreamAttribute, CauseType, EduStreamAttribute } from '../core/services/edu-api'; import { DeleteStreamType, EduCourseState, EduRenderConfig, EduStream, EduStreamData, EduUser, StreamType } from '../interfaces'; import { EduClassroomDataController } from '../room/edu-classroom-data-controller'; import { EduClassroomManager } from '../room/edu-classroom-manager'; export interface EduModelViewOption { dom: HTMLElement; stream: EduStream; config?: EduRenderConfig; } export declare enum PeerInviteEnum { studentApply = 1, teacherReject = 2, studentCancel = 3, teacherAccept = 4, teacherStop = 5, studentStop = 6 } export interface IEduUserService { publishStream(stream: EduStream): Promise<any>; unpublishStream(stream: EduStream): Promise<any>; sendRoomMessage(message: string): Promise<any>; sendUserMessage(message: string, remoteUser: EduUser): Promise<any>; sendRoomChatMessage(message: string, remoteUser: EduUser): Promise<any>; sendUserChatMessage(message: string, remoteUser: EduUser): Promise<any>; } export declare class EduUserService extends EventEmitter implements IEduUserService { roomManager: EduClassroomManager; constructor(roomManager: EduClassroomManager); get roomUuid(): string; get apiService(): AgoraEduApi; get localUser(): EduUser; get localUserUuid(): string; get localStream(): EduStreamData; get screenStream(): EduStreamData; get data(): EduClassroomDataController; publishStream(stream: EduStream): Promise<{ streamUuid: any; rtcToken: any; }>; unpublishStream(stream: Pick<EduStream, 'streamUuid'>): Promise<void>; sendRoomMessage(message: string): Promise<void>; sendUserMessage(message: string, remoteUser: EduUser): Promise<void>; sendRoomChatMessage(message: string): Promise<any>; sendUserChatMessage(message: string, remoteUser: EduUser): Promise<any>; updateRoomProperties2(properties: any, cause?: CauseType): Promise<void>; updateRoomProperties(record: Record<string, any>): Promise<void>; updateRoomBatchProperties(record: Record<string, any>): Promise<void>; updateCourseState(courseState: EduCourseState): Promise<void>; kickUser(userUuid: string): Promise<void>; allowStudentChatByRole(enable: boolean, roles: string[]): Promise<void>; allowRemoteStudentChat(enable: boolean, user: EduUser): Promise<void>; startShareScreen(): Promise<void>; stopShareScreen(): Promise<void>; remoteStartStudentCamera(stream: EduStream): Promise<void>; remoteStopStudentCamera(stream: EduStream): Promise<void>; remoteStartStudentMicrophone(stream: EduStream): Promise<void>; remoteStopStudentMicrophone(stream: EduStream): Promise<void>; batchUpsertStream(streams: Array<StreamType>): Promise<void>; batchDeleteStream(streams: Array<DeleteStreamType>): Promise<void>; remoteCloseStudentStream(stream: EduStream): Promise<void>; updateMainStreamState(args: Record<string, boolean>): Promise<void>; muteStudentChatByRoles(roles: string[]): Promise<void>; unmuteStudentChatByRoles(roles: string[]): Promise<void>; sendCoVideoApply(teacher: EduUser): Promise<void>; acceptCoVideoApply(student: EduUser): Promise<void>; rejectCoVideoApply(student: EduUser): Promise<void>; inviteStreamBy(args: any): Promise<void>; studentCancelApply(teacher: EduUser): Promise<void>; studentCloseStream(me: EduUser): Promise<void>; teacherCloseStream(student: EduUser): Promise<void>; /** * 批量更新流属性 * @param streams */ batchUpdateStreamAttributes(streams: EduStreamAttribute[], cause?: CauseType): Promise<void>; /** * 批量移除流属性 * @param streams */ batchRemoveStreamAttributes(streams: BatchStreamAttribute[], cause?: CauseType): Promise<void>; /** * 批量移除用户属性 * @param userUuid * @param properties */ batchRemoveUserAttributes(userUuid: string, cause?: CauseType): Promise<void>; /** * 批量更新房间属性 * @param properties */ batchUpdateRoomAttributes(properties: any, cause?: CauseType): Promise<void>; /** * 移除房间属性 */ batchRemoveRoomAttributes(cause?: CauseType): Promise<void>; }