UNPKG

@anam-ai/js-sdk

Version:

Client side JavaScript SDK for Anam AI

67 lines 2.62 kB
import { InternalEventEmitter, PublicEventEmitter } from '../modules'; import { InputAudioState, StreamingClientOptions } from '../types'; import { TalkMessageStream } from '../types/TalkMessageStream'; export declare class StreamingClient { private publicEventEmitter; private internalEventEmitter; private signallingClient; private engineApiRestClient; private iceServers; private peerConnection; private connectionReceivedAnswer; private remoteIceCandidateBuffer; private inputAudioStream; private dataChannel; private videoElement; private videoStream; private audioStream; private inputAudioState; private audioDeviceId; private disableInputAudio; private successMetricPoller; private successMetricFired; private showPeerConnectionStatsReport; private peerConnectionStatsReportOutputFormat; private statsCollectionInterval; constructor(sessionId: string, options: StreamingClientOptions, publicEventEmitter: PublicEventEmitter, internalEventEmitter: InternalEventEmitter); private onInputAudioStateChange; private muteAllAudioTracks; private unmuteAllAudioTracks; private startStatsCollection; private sendClientSideMetrics; private startSuccessMetricPolling; muteInputAudio(): InputAudioState; unmuteInputAudio(): InputAudioState; getInputAudioState(): InputAudioState; getPeerConnection(): RTCPeerConnection | null; getInputAudioStream(): MediaStream | null; getVideoStream(): MediaStream | null; getAudioStream(): MediaStream | null; sendDataMessage(message: string): void; setMediaStreamTargetById(videoElementId: string): void; startConnection(): void; stopConnection(): Promise<void>; sendTalkCommand(content: string): Promise<void>; startTalkMessageStream(correlationId?: string): TalkMessageStream; private initPeerConnection; private onSignalMessage; private onSignallingClientConnected; private flushRemoteIceCandidateBuffer; /** * ICE Candidate Trickle * As each ICE candidate is gathered from the STUN server it is sent to the * webRTC server immediately in an effort to reduce time to connection. */ private onIceCandidate; private onIceConnectionStateChange; private onConnectionStateChange; private handleWebrtcFailure; private onTrackEventHandler; /** * Set up the data channels for sending and receiving messages */ private setupDataChannels; private initPeerConnectionAndSendOffer; private shutdown; } //# sourceMappingURL=StreamingClient.d.ts.map