agora-meeting-sdk
Version:
For publishing npm package agora-metting-sdk (Web). Get more information from https://docs.agora.io
48 lines (47 loc) • 1.66 kB
TypeScript
/// <reference types="node" />
import { EduStream, EduUser } from './../../interfaces/index';
import { EventEmitter } from 'events';
import AgoraRTM from 'agora-rtm-sdk';
import { RtmLogLevel } from './constants';
export declare enum StepPhase {
isFinished = 1
}
interface RTMWrapperInitConfig {
logLevel: typeof RtmLogLevel[0];
uploadLog: boolean;
appId: string;
channelName: string;
uid: string;
token: string;
}
export declare class RTMWrapper extends EventEmitter {
readonly agoraRtm: typeof AgoraRTM;
localUid?: string;
logged?: boolean;
connectionState: string;
prevConnectionState: string;
channels: Record<string, any>;
_client?: ReturnType<typeof AgoraRTM.createInstance>;
_streamList: EduStream[];
_userList: EduUser[];
constructor(agoraRtm: typeof AgoraRTM);
get client(): ReturnType<typeof AgoraRTM.createInstance>;
private releaseChannels;
private releaseClient;
reset(): void;
addStream(stream: EduStream): void;
updateStream(stream: EduStream): void;
resetDataList(): void;
release(eventClient: any): void;
login(config: any): Promise<void>;
init(config: RTMWrapperInitConfig): Promise<void>;
createObserverChannel(config: any): any[];
private _channels;
join(channel: any, bus: any, config: any): Promise<void>;
private _join;
leave(config: any): Promise<void>;
destroyRtm(): Promise<void>;
sendChannelMessage(channelName: string, message: any, options: any): Promise<void>;
sendPeerMessage(peerId: string, message: any, options: any): Promise<boolean>;
}
export { RtmLogLevel } from './constants';