import { enableLog } from '../logger/Logger' import { IframeMessageResponse } from '../message/IframeMessageResponse' import { IframeMessageService } from "./IframeMessageService" import { IframeMessageType } from "../message/IframeMessageType" /** * iframe 通信api * useage: * //iframe加在完毕之后调用 * let iframe = document.getElementById("#iframe") * let meettingApi = new UscFrameMeetingApi(iframe.contentWindow) * //设置当前登陆的用户,用以关联会议数据 * meettingApi.setCurrentUser("ajbjhbgladhg") */ export class UscFrameMeetingApi extends IframeMessageService { /** * 设置当前用户 * @param userId 用户唯一标识 * @param userName 用户名称,用以显示当前会议信息中的主持人名词 */ async setCurrentUser(userId: string, userName: string): Promise { return this.sendMessage({ type: IframeMessageType.setCurrentUser, data: { userId, userName } }) } /** * 向当前会议中添加成员 * @param memberName 成员名称,用以界面显示 * @param memberNumber 成员在会议系统中的号码 */ async addMember(memberName: string, memberNumber: string, payload?: any): Promise { return this.sendMessage({ type: IframeMessageType.addMember, data: { memberName, memberNumber, payload } }) } /** * 查询当前会议中的所有参会人员: * data:[{memberName:"",memberNumber:""},...] */ async getMeetingUsers(): Promise { return this.sendMessage({ type: IframeMessageType.getMeetingUsers }) } /** * 开启日志 */ enableLog() { enableLog() } }