agora-edu-core
Version:
Core APIs for building an online classroom
127 lines (126 loc) • 3.53 kB
TypeScript
import { ApiBase } from 'agora-rte-sdk';
declare type ReportParams = {
/**
* 上报唯一id
*/
requestId?: string;
/**
* 当前通话的cid
*/
cid?: number;
/**
* 协议ID
*/
id: number;
/**
* 上报内容, base64(pb二进制内容)
*/
payload: string;
/**
* 消息级别
* 1: 默认, 101: 测试
*/
qos: number;
/**
* 签名规则: md5(payload=base64(XX)&src=XX&ts=XX)
* 保留字段, XX为字段值 32位小写
*/
sign: string;
/**
* 来源/请求方
*/
src: string;
/**
* 时间戳, 10位, 秒
*/
ts: number;
/**
* 厂商ID
*/
vid?: number;
};
declare type ReportUserParams = {
/**
* 时间戳,必须存在
*/
lts?: number;
/**
* vid
*/
vid: number;
/**
* apaas版本号
*/
ver: string;
/**
* apaas场景,如education/meeting/entertainment
*/
scenario: string;
/**
* 异常码,若有
*/
errorCode?: number;
/**
* apaas用户id,同RTM uid
*/
uid: string;
/**
* 用户名,用于显示
*/
userName: string;
/**
* rtc流id
*/
streamUid: number;
/**
* rtc流id
*/
streamSuid: string;
/**
* apaas角色
*/
role: string;
/**
* rtc sid
*/
streamSid: string;
/**
* rtm sid
*/
rtmSid: string;
/**
* apaas房间id,与rtc/rtm channelName相同
*/
roomId: string;
/**
* 房间创建的时间戳
*/
roomCreateTs: number;
};
export declare class ReportServiceV2 extends ApiBase {
reportUserParams: ReportUserParams;
protected qos: number;
static shared: ReportServiceV2;
constructor();
protected Uint8ToBase64(u8Arr: Uint8Array): string;
protected buildUserJoinPaylod(payloadParams: ReportUserParams): string;
protected buildUserQuitPaylod(payloadParams: ReportUserParams): string;
protected buildUserReconnectPaylod(payloadParams: ReportUserParams): string;
protected buildScreenShareStar(payloadParams: ReportUserParams): string;
protected buildScreenShareEnd(payloadParams: ReportUserParams): string;
protected buildBaseParams(id: number, src: string, payload: string): ReportParams;
protected buildApaasUserJoinParams(src: string, payloadParams: ReportUserParams, lts: number, errorCode: number): ReportParams;
protected buildApaasUserQuitParams(src: string, payloadParams: ReportUserParams, lts: number, errorCode: number): ReportParams;
protected buildApaasUserReconnectParams(src: string, payloadParams: ReportUserParams, lts: number, errorCode: number): ReportParams;
protected buildScreenShareStartParams(src: string, payloadParams: ReportUserParams, lts: number, errorCode: number): ReportParams;
protected buildScreenShareEndParams(src: string, payloadParams: ReportUserParams, lts: number, errorCode: number): ReportParams;
guardParams(): true | void;
initReportUserParams(params: ReportUserParams): void;
updateRtcSessionId(sid: string): void;
reportApaasUserJoin(lts: number, errorCode: number): Promise<any>;
reportApaasUserQuit(lts: number, errorCode: number): Promise<any>;
reportApaasUserReconnect(lts: number, errorCode: number): Promise<any>;
reportScreenShareStart(lts: number, errorCode: number): Promise<any>;
reportScreenShareEnd(lts: number, errorCode: number): Promise<any>;
}
export {};