UNPKG

@rongcloud/plugin-wechat-rtc

Version:

@rongcloud/plugin-wechat-rtc

81 lines 2.88 kB
import { ILogger, IRTCUsers } from '@rongcloud/engine'; import { IPublishedResource, IResource, RoomData } from './core/interfaces'; import { RCMediaType } from './core/enums/RCMediaType'; import { RCRTCMessageType } from './core/enums/RCRTCMessageType'; import Store from './core/store'; import { RCRemoteStream } from './core/RCRemoteStream'; import { RCCoreContext } from './core/RCCoreContext'; /** * 解析房间数据 */ export declare const parseRoomData: (data: IRTCUsers, logger: ILogger) => RoomData; export declare const getUUID: () => string; /** * 验证 tag 是否有效 * @param tag * @returns */ export declare const isValidTag: (tag: string) => boolean; /** * 验证媒体类型有效性 */ export declare const isValidMediaType: (mediaType: RCMediaType) => boolean; export declare const getResourceId: (resource: IResource) => string; /** * 解析 resourceId 以获取资源信息 * @param resourceId */ export declare const parseResourceId: (resourceId: string) => { mediaType: RCMediaType; tag: string; userId: string; }; /** * 比对资源找出新增、状态变更及取消发布的资源 * @param prevResources 原资源数据 * @param resources 变更的全量资源 */ export declare const diffPublishResources: (prevResources: IPublishedResource[], resources: IPublishedResource[], isReconnect?: boolean) => { publishedList: IPublishedResource[]; unpublishedList: IPublishedResource[]; modifiedList: IPublishedResource[]; }; /** * 构建增量消息内容 * @param objectname 消息名 * @param uris 增量变更资源 */ export declare const buildPlusMessage: (messageName: RCRTCMessageType, uris: IPublishedResource[]) => { name: RCRTCMessageType; content: string; }; /** * 构建预发布的全量资源变更消息 * @param uris 全量资源数据 */ export declare const buildTotalURIMessageContent: (uris: IPublishedResource[]) => string; /** * 是否重复发布 * @param newPub * @param allPublishList * @returns */ export declare const isRepeatPub: (newPub: IPublishedResource, allPublishList: IPublishedResource[]) => { isInclude: boolean; index: number; }; export declare const deepCopyResources: <T>(resources: T[]) => T[]; export declare const getRtmpUriFromRtmpSubList: (msId: string, rtmpSubscribeList: IResource[]) => string; /** * 把一组 resource 数据转化为 stream 列表 * @param resourceList * @param store * @returns 返回 RCRemoteStream 列表 */ export declare const transCancelResourcesToStreams: (cancelResourceList: IPublishedResource[], store: Store) => { unpubStreams: RCRemoteStream[]; restStreams: RCRemoteStream[]; }; export declare const int64ToTimestamp: (obj: any) => number; export declare const operateDevice: (mediaType: RCMediaType, enable: boolean, coreContext: RCCoreContext) => void; //# sourceMappingURL=helper.d.ts.map