@telnyx/webrtc
Version:
Telnyx WebRTC Client
41 lines (40 loc) • 1.31 kB
TypeScript
import BaseSession from '../BaseSession';
export declare const setWebSocket: (websocket: typeof WebSocket) => void;
export default class Connection {
session: BaseSession;
previousGatewayState: string;
lastInboundAt: number;
socketGeneration: number;
private _wsClient;
private _host;
private _timers;
private _useCanaryRtcServer;
private _hasCanaryBeenUsed;
private _safetyTimeoutId;
private _pendingRequestIds;
private _pendingRequestTimers;
private _pendingRequestRejecters;
upDur: number | null;
downDur: number | null;
static DEFAULT_REQUEST_TIMEOUT_MS: number;
constructor(session: BaseSession);
get connected(): boolean;
get connecting(): boolean;
get closing(): boolean;
get closed(): boolean;
get isAlive(): boolean;
get isDead(): boolean;
get host(): string;
connect(): void;
sendRawText(request: string): void;
send(bladeObj: any, timeoutMs?: number): Promise<any>;
close(): void;
private _registerSocketEvents;
private _deregisterSocketEvents;
private _handleCloseTimeout;
private _clearSafetyTimeout;
private _safetyCleanupSocket;
private _cleanupPendingRequests;
private _unsetTimer;
private _handleStringResponse;
}