@telnyx/webrtc
Version:
Telnyx WebRTC Client
42 lines (41 loc) • 1.36 kB
TypeScript
import BrowserSession from '../BrowserSession';
import { PeerType } from './constants';
import { IVertoCallOptions } from './interfaces';
export default class Peer {
type: PeerType;
private options;
instance: RTCPeerConnection;
onSdpReadyTwice: Function;
private _constraints;
private statsReporter;
private _session;
private _negotiating;
constructor(type: PeerType, options: IVertoCallOptions, session: BrowserSession);
get isOffer(): boolean;
get isAnswer(): boolean;
get isDebugEnabled(): boolean;
get debugOutput(): "socket" | "file";
startNegotiation(): void;
private _logTransceivers;
private handleSignalingStateChangeEvent;
private handleNegotiationNeededEvent;
private handleTrackEvent;
private handleConnectionStateChange;
private createPeerConnection;
private _handleIceConnectionStateChange;
private _handleIceGatheringStateChange;
private _init;
private _getSenderByKind;
private _checkMediaToNegotiate;
private _createOffer;
private _setRemoteDescription;
private _createAnswer;
private _setLocalDescription;
private _setAudioCodec;
private _sdpReady;
private _retrieveLocalStream;
private _isOffer;
private _isAnswer;
private _config;
close(): Promise<void>;
}