@phenixrts/sdk
Version:
JavaScript SDK
23 lines (22 loc) • 1.35 kB
TypeScript
import { StreamSetupListener } from '../../dom/StreamSetupListener';
import ChannelContext from '../context/ChannelContext';
import PeerConnectionContext from '../context/PeerConnectionContext';
import StreamTransformContext from '../context/StreamTransformContext';
import FrameTimingInformationContext from '../context/FrameTimingInformationContext';
import { IStreamSubscriber } from './IStreamSubscriber';
export default class RealTimeStreamSubscriber implements IStreamSubscriber {
private readonly _logger;
private readonly _disposables;
private readonly _channelContext;
private readonly _peerConnectionContext;
private readonly _streamTransformContext;
private readonly _frameTimingInformationContext;
private readonly _handleStreamFailure;
constructor(channelContext: ChannelContext, peerConnectionContext: PeerConnectionContext, streamTransformContext: StreamTransformContext, frameTimingInformationContext: FrameTimingInformationContext, handleStreamFailure: () => Promise<void>);
start(uri: URL, token: string, listenOnStreamSetup: StreamSetupListener, playMediaStreamInVideoElement: Function): Promise<void>;
private applyRtcConfiguration;
private reconnectPeerConnection;
isStreamHealthy(): Promise<boolean>;
dispose(): void;
private mapSetRemoteDescriptionStatusToChannelStatus;
}