@pipecat-ai/react-native-small-webrtc-transport 1.4.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,6 +7,7 @@ exports.RNSmallWebRTCTransport = void 0;
7
7
  var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
8
8
  var _clientJs = require("@pipecat-ai/client-js");
9
9
  var _reactNativeWebrtc = require("@daily-co/react-native-webrtc");
10
+ var _audioLevelObserver = require("./util/audioLevelObserver.js");
10
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
12
  class TrackStatusMessage {
12
13
  type = 'trackStatus';
@@ -81,6 +82,7 @@ class RNSmallWebRTCTransport extends _clientJs.Transport {
81
82
  this._webrtcRequest = this._resolveRequestInfo(opts);
82
83
  this.mediaManager = opts.mediaManager;
83
84
  this.mediaManager.onTrackStarted = this._handleTrackStarted.bind(this);
85
+ this.audioLevelObserver = new _audioLevelObserver.AudioLevelObserver(this.mediaManager);
84
86
  }
85
87
  async _handleTrackStarted(event) {
86
88
  if (event.type === 'audio') {
@@ -101,6 +103,8 @@ class RNSmallWebRTCTransport extends _clientJs.Transport {
101
103
  this._callbacks = options.callbacks ?? {};
102
104
  this._onMessage = messageHandler;
103
105
  this.mediaManager.setClientOptions(options);
106
+ this.audioLevelObserver.onLocalAudioLevel = options.callbacks?.onLocalAudioLevel;
107
+ this.audioLevelObserver.onRemoteAudioLevel = options.callbacks?.onRemoteAudioLevel;
104
108
  this.state = 'disconnected';
105
109
  _clientJs.logger.debug('[RTVI Transport] Initialized');
106
110
  }
@@ -574,6 +578,7 @@ class RNSmallWebRTCTransport extends _clientJs.Transport {
574
578
  // Sending the ice candidates
575
579
  this._canSendIceCandidates = true;
576
580
  await this.flushIceCandidates();
581
+ this.audioLevelObserver.start(this.pc);
577
582
  }
578
583
  async addUserMedia() {
579
584
  _clientJs.logger.debug(`addUserMedia this.tracks(): ${this.tracks()}`);
@@ -697,6 +702,7 @@ class RNSmallWebRTCTransport extends _clientJs.Transport {
697
702
  if (this.dc) {
698
703
  this.dc.close();
699
704
  }
705
+ this.audioLevelObserver.stop();
700
706
  this.closePeerConnection(this.pc);
701
707
  this.pc = null;
702
708
  await this.mediaManager.disconnect();
@@ -1 +1 @@
1
- {"version":3,"names":["_cloneDeep","_interopRequireDefault","require","_clientJs","_reactNativeWebrtc","e","__esModule","default","TrackStatusMessage","type","constructor","receiver_index","enabled","WebRTCTrack","track","status","RENEGOTIATE_TYPE","RenegotiateMessage","PEER_LEFT_TYPE","PeerLeftMessageMessage","SIGNALLING_TYPE","SignallingMessageObject","message","AUDIO_TRANSCEIVER_INDEX","VIDEO_TRANSCEIVER_INDEX","SCREEN_VIDEO_TRANSCEIVER_INDEX","RNSmallWebRTCTransport","Transport","_webrtcRequest","_connectResolved","_connectFailed","pc","dc","audioCodec","videoCodec","pc_id","reconnectionAttempts","maxReconnectionAttempts","isReconnecting","keepAliveInterval","_iceServers","_incomingTracks","Map","_canSendIceCandidates","_candidateQueue","__flushTimeout","_flushDelay","opts","iceServers","_waitForICEGathering","waitForICEGathering","_resolveRequestInfo","mediaManager","onTrackStarted","_handleTrackStarted","bind","event","logger","info","getAudioTransceiver","sender","replaceTrack","getVideoTransceiver","getScreenVideoTransceiver","initialize","options","messageHandler","_options","_callbacks","callbacks","_onMessage","setClientOptions","state","debug","initDevices","setAudioCodec","setVideoCodec","params","requestInfo","_webrtcUrl","webrtcUrl","connectionUrl","key","warn","webrtcRequestParams","endpoint","error","isAPIRequest","_getStartEndpointAsString","startEndpoint","startBotParams","URL","toString","Request","url","_isValidObject","value","undefined","RTVIError","_fixConnectionOptionsParams","supportedKeys","snakeToCamel","snakeCaseString","replace","_","letter","toUpperCase","result","sessionId","val","Object","entries","camelKey","includes","_shouldUseStartBotFallback","_buildRequestParamsBasedOnStartBotParams","hasStartEndpoint","hasNoConnectionParams","offerUrl","headers","_validateConnectionParams","connectParams","fixedParams","keys","length","_connect","_abortController","signal","aborted","iceConfig","TransportStartError","connect","startNewPeerConnection","readyState","Promise","resolve","reject","onConnected","syncTrackStatus","sendSignallingMessage","isMicEnabled","isCamEnabled","supportsScreenShare","isSharingScreen","tracks","local","screenVideo","sendReadyMessage","sendMessage","RTVIMessage","clientReady","send","JSON","stringify","signallingMessage","_disconnect","stop","createPeerConnection","config","RTCPeerConnection","addEventListener","candidate","sendIceCandidate","iceGatheringState","iceConnectionState","attemptReconnection","handleICEConnectionStateChange","signalingState","handleReconnectionCompleted","evt","streamType","transceiver","mid","set","t","get","onTrackStopped","delete","setTimeout","recreatePeerConnection","oldPC","closePeerConnection","negotiate","waitForIceGatheringComplete","timeoutMs","timeoutId","cleanup","removeEventListener","checkState","clearTimeout","onTimeout","push","flushIceCandidates","candidates","splice","Headers","fromEntries","payload","map","c","sdp_mid","sdpMid","sdp_mline_index","sdpMLineIndex","fetch","method","body","offer","createOffer","setLocalDescription","offerSdp","localDescription","sdp","sdpFilterCodec","request","cloneDeep","requestData","restart_pc","answer","makeRequest","setRemoteDescription","addInitialTransceivers","addTransceiver","direction","getTransceivers","createDataChannel","ordered","addUserMedia","audioTrack","audio","videoTrack","video","handleMessage","messageObj","parse","handleSignallingMessage","label","id","data","disconnect","clearInterval","setInterval","Date","getTime","forEach","getSenders","close","onDisconnected","getAllMics","getAllCams","getAllSpeakers","updateMic","micId","updateCam","camId","updateSpeaker","speakerId","selectedMic","selectedCam","selectedSpeaker","enableMic","enable","enableCam","enableScreenShare","UnsupportedFeatureError","_state","onTransportStateChanged","kind","codec","realSdp","allowed","rtxRegex","RegExp","codecRegex","escapeRegExp","videoRegex","lines","split","isKind","i","startsWith","match","parseInt","matchRtx","skipRegex","skipMatch","join","string","exports"],"sourceRoot":"../../src","sources":["transport.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cloneDeep","_interopRequireDefault","require","_clientJs","_reactNativeWebrtc","_audioLevelObserver","e","__esModule","default","TrackStatusMessage","type","constructor","receiver_index","enabled","WebRTCTrack","track","status","RENEGOTIATE_TYPE","RenegotiateMessage","PEER_LEFT_TYPE","PeerLeftMessageMessage","SIGNALLING_TYPE","SignallingMessageObject","message","AUDIO_TRANSCEIVER_INDEX","VIDEO_TRANSCEIVER_INDEX","SCREEN_VIDEO_TRANSCEIVER_INDEX","RNSmallWebRTCTransport","Transport","_webrtcRequest","_connectResolved","_connectFailed","pc","dc","audioCodec","videoCodec","pc_id","reconnectionAttempts","maxReconnectionAttempts","isReconnecting","keepAliveInterval","_iceServers","_incomingTracks","Map","_canSendIceCandidates","_candidateQueue","__flushTimeout","_flushDelay","opts","iceServers","_waitForICEGathering","waitForICEGathering","_resolveRequestInfo","mediaManager","onTrackStarted","_handleTrackStarted","bind","audioLevelObserver","AudioLevelObserver","event","logger","info","getAudioTransceiver","sender","replaceTrack","getVideoTransceiver","getScreenVideoTransceiver","initialize","options","messageHandler","_options","_callbacks","callbacks","_onMessage","setClientOptions","onLocalAudioLevel","onRemoteAudioLevel","state","debug","initDevices","setAudioCodec","setVideoCodec","params","requestInfo","_webrtcUrl","webrtcUrl","connectionUrl","key","warn","webrtcRequestParams","endpoint","error","isAPIRequest","_getStartEndpointAsString","startEndpoint","startBotParams","URL","toString","Request","url","_isValidObject","value","undefined","RTVIError","_fixConnectionOptionsParams","supportedKeys","snakeToCamel","snakeCaseString","replace","_","letter","toUpperCase","result","sessionId","val","Object","entries","camelKey","includes","_shouldUseStartBotFallback","_buildRequestParamsBasedOnStartBotParams","hasStartEndpoint","hasNoConnectionParams","offerUrl","headers","_validateConnectionParams","connectParams","fixedParams","keys","length","_connect","_abortController","signal","aborted","iceConfig","TransportStartError","connect","startNewPeerConnection","readyState","Promise","resolve","reject","onConnected","syncTrackStatus","sendSignallingMessage","isMicEnabled","isCamEnabled","supportsScreenShare","isSharingScreen","tracks","local","screenVideo","sendReadyMessage","sendMessage","RTVIMessage","clientReady","send","JSON","stringify","signallingMessage","_disconnect","stop","createPeerConnection","config","RTCPeerConnection","addEventListener","candidate","sendIceCandidate","iceGatheringState","iceConnectionState","attemptReconnection","handleICEConnectionStateChange","signalingState","handleReconnectionCompleted","evt","streamType","transceiver","mid","set","t","get","onTrackStopped","delete","setTimeout","recreatePeerConnection","oldPC","closePeerConnection","negotiate","waitForIceGatheringComplete","timeoutMs","timeoutId","cleanup","removeEventListener","checkState","clearTimeout","onTimeout","push","flushIceCandidates","candidates","splice","Headers","fromEntries","payload","map","c","sdp_mid","sdpMid","sdp_mline_index","sdpMLineIndex","fetch","method","body","offer","createOffer","setLocalDescription","offerSdp","localDescription","sdp","sdpFilterCodec","request","cloneDeep","requestData","restart_pc","answer","makeRequest","setRemoteDescription","addInitialTransceivers","addTransceiver","direction","getTransceivers","createDataChannel","ordered","addUserMedia","start","audioTrack","audio","videoTrack","video","handleMessage","messageObj","parse","handleSignallingMessage","label","id","data","disconnect","clearInterval","setInterval","Date","getTime","forEach","getSenders","close","onDisconnected","getAllMics","getAllCams","getAllSpeakers","updateMic","micId","updateCam","camId","updateSpeaker","speakerId","selectedMic","selectedCam","selectedSpeaker","enableMic","enable","enableCam","enableScreenShare","UnsupportedFeatureError","_state","onTransportStateChanged","kind","codec","realSdp","allowed","rtxRegex","RegExp","codecRegex","escapeRegExp","videoRegex","lines","split","isKind","i","startsWith","match","parseInt","matchRtx","skipRegex","skipMatch","join","string","exports"],"sourceRoot":"../../src","sources":["transport.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AudioLevelObserver = void 0;
7
+ var _clientJs = require("@pipecat-ai/client-js");
8
+ const DEFAULT_AUDIO_OBSERVER_INTERVAL_MS = 500;
9
+ class AudioLevelObserver {
10
+ pc = null;
11
+ captureAudioLevelsInterval = null;
12
+ constructor(mediaManager) {
13
+ this.mediaManager = mediaManager;
14
+ this.captureAudioLevelsInterval = null;
15
+ this.failsCount = 0;
16
+ this._onLocalAudioLevel = undefined;
17
+ this._onRemoteAudioLevel = undefined;
18
+ this.botParticipant = {
19
+ id: 'bot',
20
+ local: false,
21
+ name: 'Bot'
22
+ };
23
+ }
24
+ start(pc, interval) {
25
+ if (this.pc) {
26
+ throw new Error('The audio level observer has already been started. Please call stop() before starting again.');
27
+ }
28
+ _clientJs.logger.info('Starting AudioLevelObserver.');
29
+ this.pc = pc;
30
+ this.startCapturingAudioLevels(interval || DEFAULT_AUDIO_OBSERVER_INTERVAL_MS);
31
+ }
32
+ stop() {
33
+ if (!this.pc) {
34
+ // No op
35
+ return;
36
+ }
37
+ _clientJs.logger.info('Stopping AudioLevelObserver.');
38
+ this.pc = null;
39
+ this.failsCount = 0;
40
+ if (this.captureAudioLevelsInterval) {
41
+ clearInterval(this.captureAudioLevelsInterval);
42
+ this.captureAudioLevelsInterval = null;
43
+ }
44
+ }
45
+ set onLocalAudioLevel(value) {
46
+ this._onLocalAudioLevel = value;
47
+ }
48
+ set onRemoteAudioLevel(value) {
49
+ this._onRemoteAudioLevel = value;
50
+ }
51
+ startCapturingAudioLevels(interval) {
52
+ this.captureAudioLevelsInterval = setInterval(async () => {
53
+ try {
54
+ const localParticipantAudioLevel = await this.getLocalParticipantAudioLevel();
55
+ this._onLocalAudioLevel?.(localParticipantAudioLevel);
56
+ const remoteParticipantAudioLevel = await this.getRemoteParticipantAudioLevel();
57
+ this._onRemoteAudioLevel?.(remoteParticipantAudioLevel, this.botParticipant);
58
+ } catch (e) {
59
+ _clientJs.logger.warn('Failed to retrieve remote audio level', {
60
+ error: e
61
+ });
62
+ this.failsCount++;
63
+ if (this.failsCount >= 3) {
64
+ _clientJs.logger.warn('Stopping audio level observer due to the previous errors.');
65
+ this.stop();
66
+ }
67
+ }
68
+ }, interval);
69
+ }
70
+ async getLocalParticipantAudioLevel() {
71
+ if (!this.pc || !this.mediaManager.isMicEnabled) {
72
+ // silence, not sending audio
73
+ return 0;
74
+ }
75
+ const transceivers = this.pc.getTransceivers();
76
+ if (!transceivers || transceivers.length < 1) {
77
+ return 0;
78
+ }
79
+ // The audio transceiver is always the first one
80
+ // check inside the transport addInitialTransceivers
81
+ const stats = await transceivers[0].sender.getStats();
82
+ let audioSourceStats = null;
83
+ for (const report of stats.values()) {
84
+ if (report.type === 'media-source' && report.kind === 'audio') {
85
+ audioSourceStats = report;
86
+ break;
87
+ }
88
+ }
89
+ return audioSourceStats?.audioLevel;
90
+ }
91
+ async getRemoteParticipantAudioLevel() {
92
+ if (!this.pc) {
93
+ // silence, not receiving audio
94
+ return 0;
95
+ }
96
+ const transceivers = this.pc.getTransceivers();
97
+ if (!transceivers || transceivers.length < 1) {
98
+ return 0;
99
+ }
100
+ // The audio transceiver is always the first one
101
+ // check inside the transport addInitialTransceivers
102
+ const stats = await transceivers[0].receiver.getStats();
103
+ let inboundAudioStats = null;
104
+ for (const report of stats.values()) {
105
+ if (report.type === 'inbound-rtp' && report.kind === 'audio') {
106
+ inboundAudioStats = report;
107
+ }
108
+ }
109
+ return inboundAudioStats?.audioLevel;
110
+ }
111
+ }
112
+ exports.AudioLevelObserver = AudioLevelObserver;
113
+ //# sourceMappingURL=audioLevelObserver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_clientJs","require","DEFAULT_AUDIO_OBSERVER_INTERVAL_MS","AudioLevelObserver","pc","captureAudioLevelsInterval","constructor","mediaManager","failsCount","_onLocalAudioLevel","undefined","_onRemoteAudioLevel","botParticipant","id","local","name","start","interval","Error","logger","info","startCapturingAudioLevels","stop","clearInterval","onLocalAudioLevel","value","onRemoteAudioLevel","setInterval","localParticipantAudioLevel","getLocalParticipantAudioLevel","remoteParticipantAudioLevel","getRemoteParticipantAudioLevel","e","warn","error","isMicEnabled","transceivers","getTransceivers","length","stats","sender","getStats","audioSourceStats","report","values","type","kind","audioLevel","receiver","inboundAudioStats","exports"],"sourceRoot":"../../../src","sources":["util/audioLevelObserver.ts"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import cloneDeep from 'lodash/cloneDeep';
4
4
  import { logger, makeRequest, RTVIError, RTVIMessage, Transport, TransportStartError, UnsupportedFeatureError, isAPIRequest } from '@pipecat-ai/client-js';
5
5
  import { RTCPeerConnection } from '@daily-co/react-native-webrtc';
6
+ import { AudioLevelObserver } from "./util/audioLevelObserver.js";
6
7
  class TrackStatusMessage {
7
8
  type = 'trackStatus';
8
9
  constructor(receiver_index, enabled) {
@@ -76,6 +77,7 @@ export class RNSmallWebRTCTransport extends Transport {
76
77
  this._webrtcRequest = this._resolveRequestInfo(opts);
77
78
  this.mediaManager = opts.mediaManager;
78
79
  this.mediaManager.onTrackStarted = this._handleTrackStarted.bind(this);
80
+ this.audioLevelObserver = new AudioLevelObserver(this.mediaManager);
79
81
  }
80
82
  async _handleTrackStarted(event) {
81
83
  if (event.type === 'audio') {
@@ -96,6 +98,8 @@ export class RNSmallWebRTCTransport extends Transport {
96
98
  this._callbacks = options.callbacks ?? {};
97
99
  this._onMessage = messageHandler;
98
100
  this.mediaManager.setClientOptions(options);
101
+ this.audioLevelObserver.onLocalAudioLevel = options.callbacks?.onLocalAudioLevel;
102
+ this.audioLevelObserver.onRemoteAudioLevel = options.callbacks?.onRemoteAudioLevel;
99
103
  this.state = 'disconnected';
100
104
  logger.debug('[RTVI Transport] Initialized');
101
105
  }
@@ -569,6 +573,7 @@ export class RNSmallWebRTCTransport extends Transport {
569
573
  // Sending the ice candidates
570
574
  this._canSendIceCandidates = true;
571
575
  await this.flushIceCandidates();
576
+ this.audioLevelObserver.start(this.pc);
572
577
  }
573
578
  async addUserMedia() {
574
579
  logger.debug(`addUserMedia this.tracks(): ${this.tracks()}`);
@@ -692,6 +697,7 @@ export class RNSmallWebRTCTransport extends Transport {
692
697
  if (this.dc) {
693
698
  this.dc.close();
694
699
  }
700
+ this.audioLevelObserver.stop();
695
701
  this.closePeerConnection(this.pc);
696
702
  this.pc = null;
697
703
  await this.mediaManager.disconnect();
@@ -1 +1 @@
1
- {"version":3,"names":["cloneDeep","logger","makeRequest","RTVIError","RTVIMessage","Transport","TransportStartError","UnsupportedFeatureError","isAPIRequest","RTCPeerConnection","TrackStatusMessage","type","constructor","receiver_index","enabled","WebRTCTrack","track","status","RENEGOTIATE_TYPE","RenegotiateMessage","PEER_LEFT_TYPE","PeerLeftMessageMessage","SIGNALLING_TYPE","SignallingMessageObject","message","AUDIO_TRANSCEIVER_INDEX","VIDEO_TRANSCEIVER_INDEX","SCREEN_VIDEO_TRANSCEIVER_INDEX","RNSmallWebRTCTransport","_webrtcRequest","_connectResolved","_connectFailed","pc","dc","audioCodec","videoCodec","pc_id","reconnectionAttempts","maxReconnectionAttempts","isReconnecting","keepAliveInterval","_iceServers","_incomingTracks","Map","_canSendIceCandidates","_candidateQueue","__flushTimeout","_flushDelay","opts","iceServers","_waitForICEGathering","waitForICEGathering","_resolveRequestInfo","mediaManager","onTrackStarted","_handleTrackStarted","bind","event","info","getAudioTransceiver","sender","replaceTrack","getVideoTransceiver","getScreenVideoTransceiver","initialize","options","messageHandler","_options","_callbacks","callbacks","_onMessage","setClientOptions","state","debug","initDevices","setAudioCodec","setVideoCodec","params","requestInfo","_webrtcUrl","webrtcUrl","connectionUrl","key","warn","webrtcRequestParams","endpoint","error","_getStartEndpointAsString","startEndpoint","startBotParams","URL","toString","Request","url","_isValidObject","value","undefined","_fixConnectionOptionsParams","supportedKeys","snakeToCamel","snakeCaseString","replace","_","letter","toUpperCase","result","sessionId","val","Object","entries","camelKey","includes","_shouldUseStartBotFallback","_buildRequestParamsBasedOnStartBotParams","hasStartEndpoint","hasNoConnectionParams","offerUrl","headers","_validateConnectionParams","connectParams","fixedParams","keys","length","_connect","_abortController","signal","aborted","iceConfig","connect","startNewPeerConnection","readyState","Promise","resolve","reject","onConnected","syncTrackStatus","sendSignallingMessage","isMicEnabled","isCamEnabled","supportsScreenShare","isSharingScreen","tracks","local","screenVideo","sendReadyMessage","sendMessage","clientReady","send","JSON","stringify","signallingMessage","_disconnect","stop","createPeerConnection","config","addEventListener","candidate","sendIceCandidate","iceGatheringState","iceConnectionState","attemptReconnection","handleICEConnectionStateChange","signalingState","handleReconnectionCompleted","evt","streamType","transceiver","mid","set","t","get","onTrackStopped","delete","setTimeout","recreatePeerConnection","oldPC","closePeerConnection","negotiate","waitForIceGatheringComplete","timeoutMs","timeoutId","cleanup","removeEventListener","checkState","clearTimeout","onTimeout","push","flushIceCandidates","candidates","splice","Headers","fromEntries","payload","map","c","sdp_mid","sdpMid","sdp_mline_index","sdpMLineIndex","fetch","method","body","e","offer","createOffer","setLocalDescription","offerSdp","localDescription","sdp","sdpFilterCodec","request","requestData","restart_pc","answer","setRemoteDescription","addInitialTransceivers","addTransceiver","direction","getTransceivers","createDataChannel","ordered","addUserMedia","audioTrack","audio","videoTrack","video","handleMessage","messageObj","parse","handleSignallingMessage","label","id","data","disconnect","clearInterval","setInterval","Date","getTime","forEach","getSenders","close","onDisconnected","getAllMics","getAllCams","getAllSpeakers","updateMic","micId","updateCam","camId","updateSpeaker","speakerId","selectedMic","selectedCam","selectedSpeaker","enableMic","enable","enableCam","enableScreenShare","_state","onTransportStateChanged","kind","codec","realSdp","allowed","rtxRegex","RegExp","codecRegex","escapeRegExp","videoRegex","lines","split","isKind","i","startsWith","match","parseInt","matchRtx","skipRegex","skipMatch","join","string"],"sourceRoot":"../../src","sources":["transport.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["cloneDeep","logger","makeRequest","RTVIError","RTVIMessage","Transport","TransportStartError","UnsupportedFeatureError","isAPIRequest","RTCPeerConnection","AudioLevelObserver","TrackStatusMessage","type","constructor","receiver_index","enabled","WebRTCTrack","track","status","RENEGOTIATE_TYPE","RenegotiateMessage","PEER_LEFT_TYPE","PeerLeftMessageMessage","SIGNALLING_TYPE","SignallingMessageObject","message","AUDIO_TRANSCEIVER_INDEX","VIDEO_TRANSCEIVER_INDEX","SCREEN_VIDEO_TRANSCEIVER_INDEX","RNSmallWebRTCTransport","_webrtcRequest","_connectResolved","_connectFailed","pc","dc","audioCodec","videoCodec","pc_id","reconnectionAttempts","maxReconnectionAttempts","isReconnecting","keepAliveInterval","_iceServers","_incomingTracks","Map","_canSendIceCandidates","_candidateQueue","__flushTimeout","_flushDelay","opts","iceServers","_waitForICEGathering","waitForICEGathering","_resolveRequestInfo","mediaManager","onTrackStarted","_handleTrackStarted","bind","audioLevelObserver","event","info","getAudioTransceiver","sender","replaceTrack","getVideoTransceiver","getScreenVideoTransceiver","initialize","options","messageHandler","_options","_callbacks","callbacks","_onMessage","setClientOptions","onLocalAudioLevel","onRemoteAudioLevel","state","debug","initDevices","setAudioCodec","setVideoCodec","params","requestInfo","_webrtcUrl","webrtcUrl","connectionUrl","key","warn","webrtcRequestParams","endpoint","error","_getStartEndpointAsString","startEndpoint","startBotParams","URL","toString","Request","url","_isValidObject","value","undefined","_fixConnectionOptionsParams","supportedKeys","snakeToCamel","snakeCaseString","replace","_","letter","toUpperCase","result","sessionId","val","Object","entries","camelKey","includes","_shouldUseStartBotFallback","_buildRequestParamsBasedOnStartBotParams","hasStartEndpoint","hasNoConnectionParams","offerUrl","headers","_validateConnectionParams","connectParams","fixedParams","keys","length","_connect","_abortController","signal","aborted","iceConfig","connect","startNewPeerConnection","readyState","Promise","resolve","reject","onConnected","syncTrackStatus","sendSignallingMessage","isMicEnabled","isCamEnabled","supportsScreenShare","isSharingScreen","tracks","local","screenVideo","sendReadyMessage","sendMessage","clientReady","send","JSON","stringify","signallingMessage","_disconnect","stop","createPeerConnection","config","addEventListener","candidate","sendIceCandidate","iceGatheringState","iceConnectionState","attemptReconnection","handleICEConnectionStateChange","signalingState","handleReconnectionCompleted","evt","streamType","transceiver","mid","set","t","get","onTrackStopped","delete","setTimeout","recreatePeerConnection","oldPC","closePeerConnection","negotiate","waitForIceGatheringComplete","timeoutMs","timeoutId","cleanup","removeEventListener","checkState","clearTimeout","onTimeout","push","flushIceCandidates","candidates","splice","Headers","fromEntries","payload","map","c","sdp_mid","sdpMid","sdp_mline_index","sdpMLineIndex","fetch","method","body","e","offer","createOffer","setLocalDescription","offerSdp","localDescription","sdp","sdpFilterCodec","request","requestData","restart_pc","answer","setRemoteDescription","addInitialTransceivers","addTransceiver","direction","getTransceivers","createDataChannel","ordered","addUserMedia","start","audioTrack","audio","videoTrack","video","handleMessage","messageObj","parse","handleSignallingMessage","label","id","data","disconnect","clearInterval","setInterval","Date","getTime","forEach","getSenders","close","onDisconnected","getAllMics","getAllCams","getAllSpeakers","updateMic","micId","updateCam","camId","updateSpeaker","speakerId","selectedMic","selectedCam","selectedSpeaker","enableMic","enable","enableCam","enableScreenShare","_state","onTransportStateChanged","kind","codec","realSdp","allowed","rtxRegex","RegExp","codecRegex","escapeRegExp","videoRegex","lines","split","isKind","i","startsWith","match","parseInt","matchRtx","skipRegex","skipMatch","join","string"],"sourceRoot":"../../src","sources":["transport.ts"],"mappings":";;AAAA,OAAOA,SAAS,MAAM,kBAAkB;AACxC,SACEC,MAAM,EACNC,WAAW,EACXC,SAAS,EACTC,WAAW,EAGXC,SAAS,EACTC,mBAAmB,EAEnBC,uBAAuB,EAEvBC,YAAY,QACP,uBAAuB;AAE9B,SAEEC,iBAAiB,QAGZ,+BAA+B;AAGtC,SAASC,kBAAkB,QAAQ,8BAA2B;AAE9D,MAAMC,kBAAkB,CAAC;EACvBC,IAAI,GAAG,aAAa;EAGpBC,WAAWA,CAACC,cAAsB,EAAEC,OAAgB,EAAE;IACpD,IAAI,CAACD,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,OAAO,GAAGA,OAAO;EACxB;AACF;AAEA,MAAMC,WAAW,CAAC;EAIhBH,WAAWA,CAACI,KAAuB,EAAE;IACnC,IAAI,CAACA,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACC,MAAM,GAAG,KAAK;EACrB;AACF;AAwBA,MAAMC,gBAAgB,GAAG,aAAa;AACtC,MAAMC,kBAAkB,CAAC;EACvBR,IAAI,GAAGO,gBAAgB;AACzB;AAEA,MAAME,cAAc,GAAG,UAAU;AACjC,MAAMC,sBAAsB,CAAC;EAC3BV,IAAI,GAAGS,cAAc;AACvB;AAMA;AACA,MAAME,eAAe,GAAG,YAAY;AACpC,MAAMC,uBAAuB,CAAC;EAC5BZ,IAAI,GAA2BW,eAAe;EAE9CV,WAAWA,CAACY,OAA6D,EAAE;IACzE,IAAI,CAACA,OAAO,GAAGA,OAAO;EACxB;AACF;AAEA,MAAMC,uBAAuB,GAAG,CAAC;AACjC,MAAMC,uBAAuB,GAAG,CAAC;AACjC,MAAMC,8BAA8B,GAAG,CAAC;;AAExC;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,SAASxB,SAAS,CAAC;EAC5CyB,cAAc,GAAsB,IAAI;;EAEhD;EACQC,gBAAgB,GACtB,IAAI;EACEC,cAAc,GAAoC,IAAI;;EAE9D;;EAGQC,EAAE,GAA6B,IAAI;;EAE3C;EACA;EACQC,EAAE,GAA0B,IAAI;EAChCC,UAAU,GAA8B,IAAI;EAC5CC,UAAU,GAA8B,IAAI;EAC5CC,KAAK,GAAkB,IAAI;EAE3BC,oBAAoB,GAAG,CAAC;EACxBC,uBAAuB,GAAG,CAAC;EAC3BC,cAAc,GAAG,KAAK;EACtBC,iBAAiB,GAAkB,IAAI;EAEvCC,WAAW,GAAmB,EAAE;EAGhCC,eAAe,GAA6B,IAAIC,GAAG,CAAC,CAAC;EAErDC,qBAAqB,GAAY,KAAK;EACtCC,eAAe,GAAsB,EAAE;EACvCC,cAAc,GAAyC,IAAI;EAC3DC,WAAW,GAAG,GAAG;EAIzBnC,WAAWA,CAACoC,IAA4C,EAAE;IACxD,KAAK,CAAC,CAAC;IACP,IAAI,CAACP,WAAW,GAAGO,IAAI,CAACC,UAAU,IAAI,EAAE;IACxC,IAAI,CAACC,oBAAoB,GAAGF,IAAI,CAACG,mBAAmB,IAAI,KAAK;IAC7D,IAAI,CAACjB,UAAU,GAAGc,IAAI,CAACd,UAAU,IAAI,IAAI;IACzC,IAAI,CAACC,UAAU,GAAGa,IAAI,CAACb,UAAU,IAAI,IAAI;IAEzC,IAAI,CAACN,cAAc,GAAG,IAAI,CAACuB,mBAAmB,CAACJ,IAAI,CAAC;IAEpD,IAAI,CAACK,YAAY,GAAGL,IAAI,CAACK,YAAY;IACrC,IAAI,CAACA,YAAY,CAACC,cAAc,GAAG,IAAI,CAACC,mBAAmB,CAACC,IAAI,CAAC,IAAI,CAAC;IACtE,IAAI,CAACC,kBAAkB,GAAG,IAAIhD,kBAAkB,CAAC,IAAI,CAAC4C,YAAY,CAAC;EACrE;EAEA,MAAcE,mBAAmBA,CAACG,KAAiB,EAAE;IACnD,IAAIA,KAAK,CAAC/C,IAAI,KAAK,OAAO,EAAE;MAC1BX,MAAM,CAAC2D,IAAI,CAAC,+CAA+C,CAAC;MAC5D,MAAM,IAAI,CAACC,mBAAmB,CAAC,CAAC,EAAEC,MAAM,CAACC,YAAY,CAACJ,KAAK,CAAC1C,KAAK,CAAC;IACpE,CAAC,MAAM,IAAI0C,KAAK,CAAC/C,IAAI,KAAK,OAAO,EAAE;MACjCX,MAAM,CAAC2D,IAAI,CAAC,+CAA+C,CAAC;MAC5D,MAAM,IAAI,CAACI,mBAAmB,CAAC,CAAC,EAAEF,MAAM,CAACC,YAAY,CAACJ,KAAK,CAAC1C,KAAK,CAAC;IACpE,CAAC,MAAM,IAAI0C,KAAK,CAAC/C,IAAI,KAAK,aAAa,EAAE;MACvCX,MAAM,CAAC2D,IAAI,CAAC,sDAAsD,CAAC;MACnE,MAAM,IAAI,CAACK,yBAAyB,CAAC,CAAC,EAAEH,MAAM,CAACC,YAAY,CAACJ,KAAK,CAAC1C,KAAK,CAAC;IAC1E,CAAC,MAAM,IAAI0C,KAAK,CAAC/C,IAAI,KAAK,aAAa,EAAE;MACvCX,MAAM,CAAC2D,IAAI,CACT,8EACF,CAAC;IACH;EACF;EAEOM,UAAUA,CACfC,OAA6B,EAC7BC,cAAyC,EACnC;IACN,IAAI,CAACC,QAAQ,GAAGF,OAAO;IACvB,IAAI,CAACG,UAAU,GAAGH,OAAO,CAACI,SAAS,IAAI,CAAC,CAAC;IACzC,IAAI,CAACC,UAAU,GAAGJ,cAAc;IAChC,IAAI,CAACd,YAAY,CAACmB,gBAAgB,CAACN,OAAO,CAAC;IAC3C,IAAI,CAACT,kBAAkB,CAACgB,iBAAiB,GACvCP,OAAO,CAACI,SAAS,EAAEG,iBAAiB;IACtC,IAAI,CAAChB,kBAAkB,CAACiB,kBAAkB,GACxCR,OAAO,CAACI,SAAS,EAAEI,kBAAkB;IAEvC,IAAI,CAACC,KAAK,GAAG,cAAc;IAC3B3E,MAAM,CAAC4E,KAAK,CAAC,8BAA8B,CAAC;EAC9C;EAEA,MAAMC,WAAWA,CAAA,EAAG;IAClB,IAAI,CAACF,KAAK,GAAG,cAAc;IAC3B,MAAM,IAAI,CAACtB,YAAY,CAACY,UAAU,CAAC,CAAC;IACpC,IAAI,CAACU,KAAK,GAAG,aAAa;EAC5B;EAEAG,aAAaA,CAAC5C,UAAyB,EAAQ;IAC7C,IAAI,CAACA,UAAU,GAAGA,UAAU;EAC9B;EAEA6C,aAAaA,CAAC5C,UAAyB,EAAQ;IAC7C,IAAI,CAACA,UAAU,GAAGA,UAAU;EAC9B;EAEAiB,mBAAmBA,CACjB4B,MAEyC,EACtB;IACnB,IAAIC,WAA8B,GAAG,IAAI;IACzC,MAAMC,UAAU,GAAGF,MAAM,CAACG,SAAS,IAAIH,MAAM,CAACI,aAAa,IAAI,IAAI;IACnE,IAAIF,UAAU,EAAE;MACd,MAAMG,GAAG,GAAGL,MAAM,CAACG,SAAS,GAAG,WAAW,GAAG,eAAe;MAC5DnF,MAAM,CAACsF,IAAI,CAAC,GAAGD,GAAG,kDAAkD,CAAC;MACrE,IAAIL,MAAM,CAACO,mBAAmB,EAAE;QAC9BvF,MAAM,CAACsF,IAAI,CACT,QAAQD,GAAG,+DACb,CAAC;MACH,CAAC,MAAM;QACL,IAAI,OAAOH,UAAU,KAAK,QAAQ,EAAE;UAClCD,WAAW,GAAG;YAAEO,QAAQ,EAAEN;UAAW,CAAC;QACxC,CAAC,MAAM;UACLlF,MAAM,CAACyF,KAAK,CAAC,WAAWJ,GAAG,gCAAgC,CAAC;QAC9D;MACF;IACF;IACA,IAAIL,MAAM,CAACO,mBAAmB,EAAE;MAC9B,IAAIhF,YAAY,CAACyE,MAAM,CAACO,mBAAmB,CAAC,EAAE;QAC5C;QACAN,WAAW,GAAGD,MAAM,CAACO,mBAAmB;MAC1C,CAAC,MAAM;QACLvF,MAAM,CAACyF,KAAK,CACV,2DACF,CAAC;MACH;IACF;IACA,OAAOR,WAAW,IAAI,IAAI,CAACpD,cAAc;EAC3C;EAEA6D,yBAAyBA,CAAA,EAAuB;IAC9C,MAAMC,aAAa,GAAG,IAAI,CAACC,cAAc,EAAEJ,QAAQ;IACnD,QAAQ,OAAOG,aAAa;MAC1B,KAAK,QAAQ;QACX,OAAOA,aAAa;MACtB,KAAK,QAAQ;QACX,IAAIA,aAAa,YAAYE,GAAG,EAAE;UAChC,OAAOF,aAAa,CAACG,QAAQ,CAAC,CAAC;QACjC;QACA,IAAIH,aAAa,YAAYI,OAAO,EAAE;UACpC,OAAOJ,aAAa,CAACK,GAAG;QAC1B;IACJ;IACA;EACF;EAEQC,cAAcA,CAACC,KAAc,EAAmB;IACtD,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKC,SAAS,EAAE,OAAO,KAAK;IACvD,IAAI,OAAOD,KAAK,KAAK,QAAQ,EAAE;MAC7B,MAAM,IAAIhG,SAAS,CAAC,+BAA+B,CAAC;IACtD;IACA,OAAO,IAAI;EACb;EAEQkG,2BAA2BA,CACjCpB,MAA2B,EAC3BqB,aAAuB,EACgB;IACvC,MAAMC,YAAY,GAAIC,eAAuB,IAAK;MAChD,OAAOA,eAAe,CAACC,OAAO,CAAC,eAAe,EAAE,CAACC,CAAC,EAAEC,MAAM,KACxDA,MAAM,CAACC,WAAW,CAAC,CACrB,CAAC;IACH,CAAC;IAED,IAAIC,MAA6C,GAAG,CAAC,CAAC;IACtD,IAAIC,SAAS;IACb,KAAK,MAAM,CAACxB,GAAG,EAAEyB,GAAG,CAAC,IAAIC,MAAM,CAACC,OAAO,CAAChC,MAAM,CAAC,EAAE;MAC/C,MAAMiC,QAAQ,GAAGX,YAAY,CAACjB,GAAG,CAAC;MAClC,IAAI4B,QAAQ,KAAK,WAAW,EAAE;QAC5BJ,SAAS,GAAGC,GAAG;QACf;MACF;MACA,IAAI,CAACT,aAAa,CAACa,QAAQ,CAACD,QAAQ,CAAC,EAAE;QACrCjH,MAAM,CAACsF,IAAI,CAAC,sCAAsCD,GAAG,YAAY,CAAC;QAClE;MACF;MACAuB,MAAM,CAACK,QAAQ,CAAgD,GAC7DH,GAAU;IACd;IAEA,IAAID,SAAS,IAAI,IAAI,CAACM,0BAA0B,CAACP,MAAM,CAAC,EAAE;MACxDA,MAAM,CAACrB,mBAAmB,GACxB,IAAI,CAAC6B,wCAAwC,CAACP,SAAS,CAAC;IAC5D;IAEA,OAAOD,MAAM;EACf;EAEQO,0BAA0BA,CAChCjD,OAA8C,EACrC;IACT,MAAMmD,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC3B,yBAAyB,CAAC,CAAC;IAE3D,MAAM4B,qBAAqB,GACzB,CAACpD,OAAO,CAACiB,SAAS,IAClB,CAACjB,OAAO,CAACkB,aAAa,IACtB,CAAClB,OAAO,CAACqB,mBAAmB;IAE9B,OAAO8B,gBAAgB,IAAIC,qBAAqB;EAClD;EAEQF,wCAAwCA,CAC9CP,SAAiB,EACL;IACZ,MAAMlB,aAAa,GAAG,IAAI,CAACD,yBAAyB,CAAC,CAAE;IACvD,MAAM6B,QAAQ,GAAG5B,aAAa,CAACa,OAAO,CACpC,QAAQ,EACR,aAAaK,SAAS,YACxB,CAAC;IACD,OAAO;MACLrB,QAAQ,EAAE+B,QAAQ;MAClBC,OAAO,EAAE,IAAI,CAAC5B,cAAc,CAAE4B;IAChC,CAAC;EACH;EAEAC,yBAAyBA,CACvBC,aAAsB,EAC6B;IACnD,IAAI,CAAC,IAAI,CAACzB,cAAc,CAACyB,aAAa,CAAC,EAAE,OAAOvB,SAAS;IAEzD,MAAMnB,MAAM,GAAG0C,aAAoC;IAEnD,MAAMrB,aAAa,GAAG,CACpB,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,WAAW,CACZ;IAED,MAAMsB,WAAW,GAAG,IAAI,CAACvB,2BAA2B,CAACpB,MAAM,EAAEqB,aAAa,CAAC;IAC3E,MAAMd,mBAAmB,GAAG,IAAI,CAACnC,mBAAmB,CAACuE,WAAW,CAAC;IACjE,IAAIpC,mBAAmB,EAAE;MACvBoC,WAAW,CAACpC,mBAAmB,GAAGA,mBAAmB;IACvD;IACA,OAAOoC,WAAW,CAACvC,aAAa;IAChC,OAAOuC,WAAW,CAACxC,SAAS;IAE5B,IAAI4B,MAAM,CAACa,IAAI,CAACD,WAAW,CAAC,CAACE,MAAM,KAAK,CAAC,EAAE;MACzC,OAAO1B,SAAS;IAClB;IACA,OAAOwB,WAAW;EACpB;EAEA,MAAMG,QAAQA,CACZJ,aAAqD,EACtC;IACf,IAAI,IAAI,CAACK,gBAAgB,EAAEC,MAAM,CAACC,OAAO,EAAE;IAE3C,IAAI,CAACtD,KAAK,GAAG,YAAY;IAEzB,IAAI+C,aAAa,EAAEQ,SAAS,EAAEjF,UAAU,EAAE;MACxC,IAAI,CAACR,WAAW,GAAGiF,aAAa,EAAEQ,SAAS,EAAEjF,UAAU;IACzD;;IAEA;IACA;IACA;IACA,IAAI,CAACpB,cAAc,GACjB6F,aAAa,EAAEnC,mBAAmB,IAAI,IAAI,CAAC1D,cAAc;IAC3D,IAAI,CAAC,IAAI,CAACA,cAAc,EAAE;MACxB7B,MAAM,CAACyF,KAAK,CAAC,mDAAmD,CAAC;MACjE,IAAI,CAACd,KAAK,GAAG,OAAO;MACpB,MAAM,IAAItE,mBAAmB,CAAC,CAAC;IACjC;IAEA,MAAM,IAAI,CAACgD,YAAY,CAAC8E,OAAO,CAAC,CAAC;IAEjC,MAAM,IAAI,CAACC,sBAAsB,CAAC,CAAC;IAEnC,IAAI,IAAI,CAACL,gBAAgB,EAAEC,MAAM,CAACC,OAAO,EAAE;IAE3C,IAAI,IAAI,CAAChG,EAAE,EAAEoG,UAAU,KAAK,MAAM,EAAE;MAClC;MACA,MAAM,IAAIC,OAAO,CAAO,CAACC,OAAO,EAAEC,MAAM,KAAK;QAC3C,IAAI,CAAC1G,gBAAgB,GAAGyG,OAAO;QAC/B,IAAI,CAACxG,cAAc,GAAGyG,MAAM;MAC9B,CAAC,CAAC;IACJ;IAEA,IAAI,CAAC7D,KAAK,GAAG,WAAW;IACxB,IAAI,CAACN,UAAU,CAACoE,WAAW,GAAG,CAAC;EACjC;EAEQC,eAAeA,CAAA,EAAG;IACxB;IACA,IAAI,CAACC,qBAAqB,CACxB,IAAIjI,kBAAkB,CACpBe,uBAAuB,EACvB,IAAI,CAAC4B,YAAY,CAACuF,YACpB,CACF,CAAC;IACD,IAAI,CAACD,qBAAqB,CACxB,IAAIjI,kBAAkB,CACpBgB,uBAAuB,EACvB,IAAI,CAAC2B,YAAY,CAACwF,YACpB,CACF,CAAC;IACD,IAAI,IAAI,CAACxF,YAAY,CAACyF,mBAAmB,EAAE;MACzC,IAAI,CAACH,qBAAqB,CACxB,IAAIjI,kBAAkB,CACpBiB,8BAA8B,EAC9B,IAAI,CAAC0B,YAAY,CAAC0F,eAAe,IAC/B,CAAC,CAAC,IAAI,CAAC1F,YAAY,CAAC2F,MAAM,CAAC,CAAC,CAACC,KAAK,CAACC,WACvC,CACF,CAAC;IACH;EACF;EAEAC,gBAAgBA,CAAA,EAAG;IACjB,IAAI,CAACxE,KAAK,GAAG,OAAO;IACpB;IACA;IACA,IAAI,CAACyE,WAAW,CAACjJ,WAAW,CAACkJ,WAAW,CAAC,CAAC,CAAC;EAC7C;EAEAD,WAAWA,CAAC5H,OAAoB,EAAE;IAChC,IAAI,CAAC,IAAI,CAACS,EAAE,IAAI,IAAI,CAACA,EAAE,CAACoG,UAAU,KAAK,MAAM,EAAE;MAC7CrI,MAAM,CAACsF,IAAI,CAAC,+CAA+C9D,OAAO,EAAE,CAAC;MACrE;IACF;IACA,IAAI,CAACS,EAAE,EAAEqH,IAAI,CAACC,IAAI,CAACC,SAAS,CAAChI,OAAO,CAAC,CAAC;EACxC;EAEQmH,qBAAqBA,CAACnH,OAAkC,EAAE;IAChE,IAAI,CAAC,IAAI,CAACS,EAAE,IAAI,IAAI,CAACA,EAAE,CAACoG,UAAU,KAAK,MAAM,EAAE;MAC7CrI,MAAM,CAACsF,IAAI,CAAC,+CAA+C9D,OAAO,EAAE,CAAC;MACrE;IACF;IACA,MAAMiI,iBAAiB,GAAG,IAAIlI,uBAAuB,CAACC,OAAO,CAAC;IAC9D,IAAI,CAACS,EAAE,EAAEqH,IAAI,CAACC,IAAI,CAACC,SAAS,CAACC,iBAAiB,CAAC,CAAC;EAClD;EAEA,MAAMC,WAAWA,CAAA,EAAkB;IACjC,IAAI,CAAC/E,KAAK,GAAG,eAAe;IAC5B,MAAM,IAAI,CAACgF,IAAI,CAAC,CAAC;IACjB,IAAI,CAAChF,KAAK,GAAG,cAAc;EAC7B;EAEQiF,oBAAoBA,CAAA,EAAsB;IAChD;IACA;IACA,MAAMC,MAAwB,GAAG;MAC/B5G,UAAU,EAAE,IAAI,CAACR;IACnB,CAAC;IAED,IAAIT,EAAE,GAAG,IAAIxB,iBAAiB,CAACqJ,MAAM,CAAC;;IAEtC;IACA;IACA7H,EAAE,CAAC8H,gBAAgB,CAAC,cAAc,EAAE,MAAOpG,KAAU,IAAK;MACxD,IAAIA,KAAK,CAACqG,SAAS,EAAE;QACnB/J,MAAM,CAAC4E,KAAK,CAAC,oBAAoB,EAAElB,KAAK,CAACqG,SAAS,CAAC;QACnD,MAAM,IAAI,CAACC,gBAAgB,CAACtG,KAAK,CAACqG,SAAS,CAAC;MAC9C,CAAC,MAAM;QACL/J,MAAM,CAAC2D,IAAI,CAAC,oCAAoC,CAAC;MACnD;IACF,CAAC,CAAC;;IAEF;IACA;IACA3B,EAAE,CAAC8H,gBAAgB,CAAC,yBAAyB,EAAE,MAAM;MACnD,IACE9H,EAAE,CAACiI,iBAAiB,KAAK,UAAU,IACnCjI,EAAE,CAACkI,kBAAkB,KAAK,UAAU,IACpC,IAAI,CAAChH,oBAAoB,EACzB;QACAlD,MAAM,CAAC2D,IAAI,CACT,gFACF,CAAC;QACD;QACA;QACA,KAAK,IAAI,CAACwG,mBAAmB,CAAC,KAAK,CAAC;MACtC;IACF,CAAC,CAAC;;IAEF;IACA;IACAnI,EAAE,CAAC8H,gBAAgB,CAAC,0BAA0B,EAAE,MAC9C,IAAI,CAACM,8BAA8B,CAAC,CACtC,CAAC;IAEDpK,MAAM,CAAC4E,KAAK,CAAC,uBAAuB5C,EAAE,CAACkI,kBAAkB,EAAE,CAAC;;IAE5D;IACA;IACAlI,EAAE,CAAC8H,gBAAgB,CAAC,sBAAsB,EAAE,MAAM;MAChD9J,MAAM,CAAC4E,KAAK,CAAC,mBAAmB,IAAI,CAAC5C,EAAE,CAAEqI,cAAc,EAAE,CAAC;MAC1D,IAAI,IAAI,CAACrI,EAAE,CAAEqI,cAAc,KAAK,QAAQ,EAAE;QACxC,IAAI,CAACC,2BAA2B,CAAC,CAAC;MACpC;IACF,CAAC,CAAC;IACFtK,MAAM,CAAC4E,KAAK,CAAC,mBAAmB5C,EAAE,CAACqI,cAAc,EAAE,CAAC;;IAEpD;IACA;IACArI,EAAE,CAAC8H,gBAAgB,CAAC,OAAO,EAAGS,GAAkB,IAAK;MACnD,MAAMC,UAAU,GAAGD,GAAG,CAACE,WAAW,GAC9BF,GAAG,CAACE,WAAW,CAACC,GAAG,KAAK,GAAG,GACzB,YAAY,GACZH,GAAG,CAACE,WAAW,CAACC,GAAG,KAAK,GAAG,GAC3B,QAAQ,GACR,aAAa,GACf,IAAI;MACR,IAAI,CAACF,UAAU,EAAE;QACfxK,MAAM,CAACsF,IAAI,CAAC,wCAAwC,EAAEiF,GAAG,CAAC;QAC1D;MACF;MACAvK,MAAM,CAAC4E,KAAK,CAAC,iCAAiC4F,UAAU,EAAE,CAAC;MAC3D,IAAI,CAAC9H,eAAe,CAACiI,GAAG,CAACH,UAAU,EAAE,IAAIzJ,WAAW,CAACwJ,GAAG,CAACvJ,KAAK,CAAC,CAAC;MAChEuJ,GAAG,CAACvJ,KAAK,CAAC8I,gBAAgB,CAAC,QAAQ,EAAE,MAAM;QACzC,MAAMc,CAAC,GAAG,IAAI,CAAClI,eAAe,CAACmI,GAAG,CAACL,UAAU,CAAC;QAC9C,IAAI,CAACI,CAAC,EAAE;QACR5K,MAAM,CAAC4E,KAAK,CAAC,yBAAyB4F,UAAU,EAAE,CAAC;QACnDI,CAAC,CAAC3J,MAAM,GAAG,SAAS;QACpB,IAAI,CAACoD,UAAU,CAACf,cAAc,GAAGiH,GAAG,CAACvJ,KAAK,CAAC;MAC7C,CAAC,CAAC;MACFuJ,GAAG,CAACvJ,KAAK,CAAC8I,gBAAgB,CAAC,MAAM,EAAE,MAAM;QACvC,MAAMc,CAAC,GAAG,IAAI,CAAClI,eAAe,CAACmI,GAAG,CAACL,UAAU,CAAC;QAC9C,IAAI,CAACI,CAAC,IAAIA,CAAC,CAAC3J,MAAM,KAAK,SAAS,EAAE;QAClCjB,MAAM,CAAC4E,KAAK,CAAC,uBAAuB4F,UAAU,EAAE,CAAC;QACjDI,CAAC,CAAC3J,MAAM,GAAG,OAAO;QAClB,IAAI,CAACoD,UAAU,CAACyG,cAAc,GAAGP,GAAG,CAACvJ,KAAK,CAAC;MAC7C,CAAC,CAAC;MACFuJ,GAAG,CAACvJ,KAAK,CAAC8I,gBAAgB,CAAC,OAAO,EAAE,MAAM;QACxC9J,MAAM,CAAC4E,KAAK,CAAC,uBAAuB4F,UAAU,EAAE,CAAC;QACjD,IAAI,CAACnG,UAAU,CAACyG,cAAc,GAAGP,GAAG,CAACvJ,KAAK,CAAC;QAC3C,IAAI,CAAC0B,eAAe,CAACqI,MAAM,CAACP,UAAU,CAAC;MACzC,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAOxI,EAAE;EACX;EAEQoI,8BAA8BA,CAAA,EAAS;IAC7C,IAAI,CAAC,IAAI,CAACpI,EAAE,EAAE;IACdhC,MAAM,CAAC4E,KAAK,CAAC,yBAAyB,IAAI,CAAC5C,EAAE,CAACkI,kBAAkB,EAAE,CAAC;IAEnE,IAAI,IAAI,CAAClI,EAAE,CAACkI,kBAAkB,KAAK,QAAQ,EAAE;MAC3ClK,MAAM,CAAC4E,KAAK,CAAC,4CAA4C,CAAC;MAC1D,KAAK,IAAI,CAACuF,mBAAmB,CAAC,IAAI,CAAC;IACrC,CAAC,MAAM,IAAI,IAAI,CAACnI,EAAE,CAACkI,kBAAkB,KAAK,cAAc,EAAE;MACxD;MACAc,UAAU,CAAC,MAAM;QACf,IAAI,IAAI,CAAChJ,EAAE,EAAEkI,kBAAkB,KAAK,cAAc,EAAE;UAClDlK,MAAM,CAAC4E,KAAK,CAAC,8CAA8C,CAAC;UAC5D,KAAK,IAAI,CAACuF,mBAAmB,CAAC,IAAI,CAAC;QACrC;MACF,CAAC,EAAE,IAAI,CAAC;IACV;EACF;EAEQG,2BAA2BA,CAAA,EAAG;IACpC,IAAI,CAACjI,oBAAoB,GAAG,CAAC;IAC7B,IAAI,CAACE,cAAc,GAAG,KAAK;EAC7B;EAEA,MAAc4H,mBAAmBA,CAC/Bc,sBAA+B,GAAG,KAAK,EACxB;IACf,IAAI,IAAI,CAAC1I,cAAc,EAAE;MACvBvC,MAAM,CAAC4E,KAAK,CAAC,6CAA6C,CAAC;MAC3D;IACF;IACA,IAAI,IAAI,CAACvC,oBAAoB,IAAI,IAAI,CAACC,uBAAuB,EAAE;MAC7DtC,MAAM,CAAC4E,KAAK,CAAC,wDAAwD,CAAC;MACtE,MAAM,IAAI,CAAC+E,IAAI,CAAC,CAAC;MACjB;IACF;IACA,IAAI,CAACpH,cAAc,GAAG,IAAI;IAC1B,IAAI,CAACF,oBAAoB,EAAE;IAC3BrC,MAAM,CAAC4E,KAAK,CAAC,wBAAwB,IAAI,CAACvC,oBAAoB,KAAK,CAAC;IACpE;IACA;IACA,IAAI4I,sBAAsB,EAAE;MAC1B,MAAMC,KAAK,GAAG,IAAI,CAAClJ,EAAE;MACrB,MAAM,IAAI,CAACoG,sBAAsB,CAAC6C,sBAAsB,CAAC;MACzD,IAAIC,KAAK,EAAE;QACTlL,MAAM,CAAC4E,KAAK,CAAC,6BAA6B,CAAC;QAC3C,IAAI,CAACuG,mBAAmB,CAACD,KAAK,CAAC;MACjC;IACF,CAAC,MAAM;MACL,MAAM,IAAI,CAACE,SAAS,CAAC,CAAC;IACxB;EACF;EAEA,MAAcC,2BAA2BA,CAACC,SAAS,GAAG,IAAI,EAAiB;IACzE,MAAMtJ,EAAE,GAAG,IAAI,CAACA,EAAG;IACnB,IAAIA,EAAE,CAACiI,iBAAiB,KAAK,UAAU,EAAE;IAEzCjK,MAAM,CAAC2D,IAAI,CACT,uDAAuD,EACvD3B,EAAE,CAACiI,iBACL,CAAC;IAED,OAAO,IAAI3B,OAAO,CAAQC,OAAO,IAAK;MACpC,IAAIgD,SAAwC;MAC5C,MAAMC,OAAO,GAAGA,CAAA,KAAM;QACpB;QACA;QACAxJ,EAAE,CAACyJ,mBAAmB,CAAC,yBAAyB,EAAEC,UAAU,CAAC;QAC7DC,YAAY,CAACJ,SAAS,CAAC;MACzB,CAAC;MACD,MAAMG,UAAU,GAAGA,CAAA,KAAM;QACvB1L,MAAM,CAAC4E,KAAK,CAAC,0BAA0B,EAAE5C,EAAE,CAACiI,iBAAiB,CAAC;QAC9D,IAAIjI,EAAE,CAACiI,iBAAiB,KAAK,UAAU,EAAE;UACvCuB,OAAO,CAAC,CAAC;UACTjD,OAAO,CAAC,CAAC;QACX;MACF,CAAC;MACD,MAAMqD,SAAS,GAAGA,CAAA,KAAM;QACtB5L,MAAM,CAAC4E,KAAK,CAAC,iCAAiC0G,SAAS,MAAM,CAAC;QAC9DE,OAAO,CAAC,CAAC;QACTjD,OAAO,CAAC,CAAC;MACX,CAAC;MACD;MACA;MACAvG,EAAE,CAAC8H,gBAAgB,CAAC,yBAAyB,EAAE4B,UAAU,CAAC;MAC1DH,SAAS,GAAGP,UAAU,CAACY,SAAS,EAAEN,SAAS,CAAC;MAC5C;MACAI,UAAU,CAAC,CAAC;IACd,CAAC,CAAC;EACJ;EAEA,MAAc1B,gBAAgBA,CAACD,SAA0B,EAAiB;IACxE,IAAI,CAAC,IAAI,CAAClI,cAAc,EAAE;MACxB7B,MAAM,CAACyF,KAAK,CAAC,mDAAmD,CAAC;MACjE;IACF;IACA,IAAI,CAAC5C,eAAe,CAACgJ,IAAI,CAAC9B,SAAS,CAAC;IACpC;IACA,IAAI,CAAC,IAAI,CAACjH,cAAc,EAAE;MACxB,IAAI,CAACA,cAAc,GAAGkI,UAAU,CAC9B,MAAM,IAAI,CAACc,kBAAkB,CAAC,CAAC,EAC/B,IAAI,CAAC/I,WACP,CAAC;IACH;EACF;EAEA,MAAc+I,kBAAkBA,CAAA,EAAkB;IAChD,IAAI,CAAChJ,cAAc,GAAG,IAAI;IAC1B,IACE,CAAC,IAAI,CAACjB,cAAc,IACpB,IAAI,CAACgB,eAAe,CAACgF,MAAM,KAAK,CAAC,IACjC,CAAC,IAAI,CAACjF,qBAAqB,EAE3B;;IAEF;IACA,MAAMmJ,UAAU,GAAG,IAAI,CAAClJ,eAAe,CAACmJ,MAAM,CAC5C,CAAC,EACD,IAAI,CAACnJ,eAAe,CAACgF,MACvB,CAAC;IAED,IAAI;MACF,MAAML,OAAO,GAAG,IAAIyE,OAAO,CAAC;QAC1B,cAAc,EAAE,kBAAkB;QAClC,GAAGlF,MAAM,CAACmF,WAAW,CACnB,CAAC,IAAI,CAACrK,cAAc,CAAC2F,OAAO,IAAI,IAAIyE,OAAO,CAAC,CAAC,EAAEjF,OAAO,CAAC,CACzD;MACF,CAAC,CAAC;MAEF,MAAMmF,OAAO,GAAG;QACd/J,KAAK,EAAE,IAAI,CAACA,KAAK;QACjB2J,UAAU,EAAEA,UAAU,CAACK,GAAG,CAAEC,CAAC,KAAM;UACjCtC,SAAS,EAAEsC,CAAC,CAACtC,SAAS;UACtBuC,OAAO,EAAED,CAAC,CAACE,MAAM;UACjBC,eAAe,EAAEH,CAAC,CAACI;QACrB,CAAC,CAAC;MACJ,CAAC;MAED,MAAMC,KAAK,CAAC,IAAI,CAAC7K,cAAc,CAAC2D,QAAQ,EAAE;QACxCmH,MAAM,EAAE,OAAO;QACfnF,OAAO;QACPoF,IAAI,EAAErD,IAAI,CAACC,SAAS,CAAC2C,OAAO;MAC9B,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOU,CAAC,EAAE;MACV7M,MAAM,CAACyF,KAAK,CAAC,iCAAiCoH,CAAC,EAAE,CAAC;IACpD;EACF;EAEA,MAAczB,SAASA,CACrBH,sBAA+B,GAAG,KAAK,EACxB;IACf,IAAI,CAAC,IAAI,CAACjJ,EAAE,EAAE;MACZ,OAAOsG,OAAO,CAACE,MAAM,CAAC,oCAAoC,CAAC;IAC7D;IACA,IAAI,CAAC,IAAI,CAAC3G,cAAc,EAAE;MACxB7B,MAAM,CAACyF,KAAK,CAAC,mDAAmD,CAAC;MACjE,IAAI,CAACd,KAAK,GAAG,OAAO;MACpB,MAAM,IAAItE,mBAAmB,CAAC,CAAC;IACjC;IAEA,IAAI;MACF;MACA,MAAMyM,KAAK,GAAG,MAAM,IAAI,CAAC9K,EAAE,CAAC+K,WAAW,CAAC,CAAC;MACzC,MAAM,IAAI,CAAC/K,EAAE,CAACgL,mBAAmB,CAACF,KAAK,CAAC;;MAExC;MACA,IAAI,IAAI,CAAC5J,oBAAoB,EAAE;QAC7B,MAAM,IAAI,CAACmI,2BAA2B,CAAC,CAAC;MAC1C;MAEA,IAAI4B,QAAQ,GAAG,IAAI,CAACjL,EAAE,CAAEkL,gBAAiB;MACzC;MACA,IAAI,IAAI,CAAChL,UAAU,IAAI,IAAI,CAACA,UAAU,KAAK,SAAS,EAAE;QACpD;QACA+K,QAAQ,CAACE,GAAG,GAAG,IAAI,CAACC,cAAc,CAChC,OAAO,EACP,IAAI,CAAClL,UAAU,EACf+K,QAAQ,CAACE,GACX,CAAC;MACH;MACA;MACA,IAAI,IAAI,CAAChL,UAAU,IAAI,IAAI,CAACA,UAAU,KAAK,SAAS,EAAE;QACpD;QACA8K,QAAQ,CAACE,GAAG,GAAG,IAAI,CAACC,cAAc,CAChC,OAAO,EACP,IAAI,CAACjL,UAAU,EACf8K,QAAQ,CAACE,GACX,CAAC;MACH;MAEAnN,MAAM,CAAC4E,KAAK,CAAC,iCAAiC,IAAI,CAACxC,KAAK,EAAE,CAAC;;MAE3D;MACA,MAAMiL,OAAO,GAAGtN,SAAS,CAAC,IAAI,CAAC8B,cAAc,CAAC;MAC9C,MAAMyL,WAML,GAAG;QACFH,GAAG,EAAEF,QAAQ,CAACE,GAAG;QACjBxM,IAAI,EAAEsM,QAAQ,CAACtM,IAAc;QAC7ByB,KAAK,EAAE,IAAI,CAACA,KAAK;QACjBmL,UAAU,EAAEtC;MACd,CAAC;MACD,IAAI,IAAI,CAACpJ,cAAc,CAACyL,WAAW,EAAE;QACnCA,WAAW,CAACA,WAAW,GAAG,IAAI,CAACzL,cAAc,CAACyL,WAAW;MAC3D;MACAD,OAAO,CAACC,WAAW,GAAGA,WAAW;MACjC,MAAME,MAAiC,GAAI,MAAMvN,WAAW,CAC1DoN,OACF,CAA+B;;MAE/B;MACA,IAAI,CAACjL,KAAK,GAAGoL,MAAM,CAACpL,KAAK;MACzB;MACApC,MAAM,CAAC4E,KAAK,CAAC,0CAA0C4I,MAAM,CAACpL,KAAK,EAAE,CAAC;MACtE,MAAM,IAAI,CAACJ,EAAE,CAAEyL,oBAAoB,CAACD,MAAM,CAAC;IAC7C,CAAC,CAAC,OAAOX,CAAC,EAAE;MACV7M,MAAM,CAAC4E,KAAK,CACV,wBAAwB,IAAI,CAACvC,oBAAoB,YAAYwK,CAAC,EAChE,CAAC;MACD,IAAI,CAACtK,cAAc,GAAG,KAAK;MAC3ByI,UAAU,CAAC,MAAM,IAAI,CAACb,mBAAmB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACxD;EACF;EAEQuD,sBAAsBA,CAAA,EAAG;IAC/B;IACA;IACA;IACA;IACA,IAAI,CAAC1L,EAAE,CAAE2L,cAAc,CAAC,OAAO,EAAE;MAAEC,SAAS,EAAE;IAAW,CAAC,CAAC;IAC3D,IAAI,CAAC5L,EAAE,CAAE2L,cAAc,CAAC,OAAO,EAAE;MAAEC,SAAS,EAAE;IAAW,CAAC,CAAC;IAC3D,IAAI,IAAI,CAACvK,YAAY,CAACyF,mBAAmB,EAAE;MACzC;MACA,IAAI,CAAC9G,EAAE,CAAE2L,cAAc,CAAC,OAAO,EAAE;QAAEC,SAAS,EAAE;MAAW,CAAC,CAAC;IAC7D;EACF;EAEQhK,mBAAmBA,CAAA,EAAG;IAC5B;IACA;IACA,OAAO,IAAI,CAAC5B,EAAE,CAAE6L,eAAe,CAAC,CAAC,CAACpM,uBAAuB,CAAC;EAC5D;EAEQsC,mBAAmBA,CAAA,EAAG;IAC5B;IACA;IACA,OAAO,IAAI,CAAC/B,EAAE,CAAE6L,eAAe,CAAC,CAAC,CAACnM,uBAAuB,CAAC;EAC5D;EAEQsC,yBAAyBA,CAAA,EAAG;IAClC;IACA;IACA,OAAO,IAAI,CAAChC,EAAE,CAAE6L,eAAe,CAAC,CAAC,CAAClM,8BAA8B,CAAC;EACnE;EAEA,MAAcyG,sBAAsBA,CAClC6C,sBAA+B,GAAG,KAAK,EACvC;IACA,IAAI,CAACjJ,EAAE,GAAG,IAAI,CAAC4H,oBAAoB,CAAC,CAAC;IACrC,IAAI,CAAC8D,sBAAsB,CAAC,CAAC;IAC7B,IAAI,CAACzL,EAAE,GAAG,IAAI,CAAC6L,iBAAiB,CAAC,MAAM,EAAE;MAAEC,OAAO,EAAE;IAAK,CAAC,CAAC;IAC3D,MAAM,IAAI,CAACC,YAAY,CAAC,CAAC;IACzB,MAAM,IAAI,CAAC5C,SAAS,CAACH,sBAAsB,CAAC;IAC5C;IACA,IAAI,CAACrI,qBAAqB,GAAG,IAAI;IACjC,MAAM,IAAI,CAACkJ,kBAAkB,CAAC,CAAC;IAC/B,IAAI,CAACrI,kBAAkB,CAACwK,KAAK,CAAC,IAAI,CAACjM,EAAE,CAAC;EACxC;EAEA,MAAcgM,YAAYA,CAAA,EAAkB;IAC1ChO,MAAM,CAAC4E,KAAK,CAAC,+BAA+B,IAAI,CAACoE,MAAM,CAAC,CAAC,EAAE,CAAC;IAE5D,IAAIkF,UAAU,GAAG,IAAI,CAAClF,MAAM,CAAC,CAAC,CAACC,KAAK,CAACkF,KAAK;IAC1CnO,MAAM,CAAC4E,KAAK,CAAC,4BAA4BsJ,UAAU,EAAE,CAAC;IACtD,IAAIA,UAAU,EAAE;MACd,MAAM,IAAI,CAACtK,mBAAmB,CAAC,CAAC,EAAEC,MAAM,CAACC,YAAY,CAACoK,UAAU,CAAC;IACnE;IAEA,IAAIE,UAAU,GAAG,IAAI,CAACpF,MAAM,CAAC,CAAC,CAACC,KAAK,CAACoF,KAAK;IAC1CrO,MAAM,CAAC4E,KAAK,CAAC,4BAA4BwJ,UAAU,EAAE,CAAC;IACtD,IAAIA,UAAU,EAAE;MACd,MAAM,IAAI,CAACrK,mBAAmB,CAAC,CAAC,EAAEF,MAAM,CAACC,YAAY,CAACsK,UAAU,CAAC;IACnE;IAEA,IAAI,IAAI,CAAC/K,YAAY,CAACyF,mBAAmB,EAAE;MACzCsF,UAAU,GAAG,IAAI,CAACpF,MAAM,CAAC,CAAC,CAACC,KAAK,CAACC,WAAW;MAC5ClJ,MAAM,CAAC4E,KAAK,CAAC,kCAAkCwJ,UAAU,EAAE,CAAC;MAC5D,IAAIA,UAAU,EAAE;QACd,MAAM,IAAI,CAACpK,yBAAyB,CAAC,CAAC,EAAEH,MAAM,CAACC,YAAY,CAACsK,UAAU,CAAC;MACzE;IACF;EACF;;EAEA;EACAE,aAAaA,CAAC9M,OAAe,EAAQ;IACnC,IAAI;MACF,MAAM+M,UAAU,GAAGhF,IAAI,CAACiF,KAAK,CAAChN,OAAO,CAAC,CAAC,CAAC;MACxCxB,MAAM,CAAC4E,KAAK,CAAC,mBAAmB,EAAE2J,UAAU,CAAC;;MAE7C;MACA,IAAIA,UAAU,CAAC5N,IAAI,KAAKW,eAAe,EAAE;QACvC,KAAK,IAAI,CAACmN,uBAAuB,CAC/BF,UACF,CAAC,CAAC,CAAC;MACL,CAAC,MAAM;QACL;QACA,IAAIA,UAAU,CAACG,KAAK,KAAK,SAAS,EAAE;UAClC,IAAI,CAACnK,UAAU,CAAC;YACdoK,EAAE,EAAEJ,UAAU,CAACI,EAAE;YACjBhO,IAAI,EAAE4N,UAAU,CAAC5N,IAAI;YACrBiO,IAAI,EAAEL,UAAU,CAACK;UACnB,CAAgB,CAAC;QACnB;MACF;IACF,CAAC,CAAC,OAAOnJ,KAAK,EAAE;MACdzF,MAAM,CAACyF,KAAK,CAAC,+BAA+B,EAAEA,KAAK,CAAC;IACtD;EACF;;EAEA;EACA,MAAMgJ,uBAAuBA,CAC3BF,UAAmC,EACpB;IACf;IACA,MAAM9E,iBAAiB,GAAG8E,UAAqC;;IAE/D;IACA,QAAQ9E,iBAAiB,CAACjI,OAAO,CAACb,IAAI;MACpC,KAAKO,gBAAgB;QACnB,KAAK,IAAI,CAACiJ,mBAAmB,CAAC,KAAK,CAAC;QACpC;MACF,KAAK/I,cAAc;QACjB,KAAK,IAAI,CAACyN,UAAU,CAAC,CAAC;QACtB;MACF;QACE7O,MAAM,CAACsF,IAAI,CAAC,6BAA6B,EAAEmE,iBAAiB,CAACjI,OAAO,CAAC;IACzE;EACF;EAEQsM,iBAAiBA,CACvBY,KAAa;EACb;EACA;EACAxK,OAA2B,EAGX;IAChB,MAAMjC,EAAE,GAAG,IAAI,CAACD,EAAE,CAAE8L,iBAAiB,CAACY,KAAK,EAAExK,OAAO,CAAC;;IAErD;IACA;IACAjC,EAAE,CAAC6H,gBAAgB,CAAC,OAAO,EAAE,MAAM;MACjC9J,MAAM,CAAC4E,KAAK,CAAC,oBAAoB,CAAC;MAClC,IAAI,IAAI,CAACpC,iBAAiB,EAAE;QAC1BsM,aAAa,CAAC,IAAI,CAACtM,iBAAiB,CAAC;QACrC,IAAI,CAACA,iBAAiB,GAAG,IAAI;MAC/B;IACF,CAAC,CAAC;;IAEF;IACA;IACAP,EAAE,CAAC6H,gBAAgB,CAAC,MAAM,EAAE,MAAM;MAChC9J,MAAM,CAAC4E,KAAK,CAAC,oBAAoB,CAAC;MAClC,IAAI,IAAI,CAAC9C,gBAAgB,EAAE;QACzB,IAAI,CAAC4G,eAAe,CAAC,CAAC;QACtB,IAAI,CAAC5G,gBAAgB,CAAC,CAAC;QACvB,IAAI,CAACA,gBAAgB,GAAG,IAAI;QAC5B,IAAI,CAACC,cAAc,GAAG,IAAI;MAC5B;MACA;MACA,IAAI,CAACS,iBAAiB,GAAGuM,WAAW,CAAC,MAAM;QACzC,MAAMvN,OAAO,GAAG,QAAQ,GAAG,IAAIwN,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC;QAC/ChN,EAAE,CAACqH,IAAI,CAAC9H,OAAO,CAAC;MAClB,CAAC,EAAE,IAAI,CAAC;IACV,CAAC,CAAC;;IAEF;IACA;IACAS,EAAE,CAAC6H,gBAAgB,CAAC,SAAS,EAAGS,GAAiB,IAAK;MACpD,IAAI/I,OAAO,GAAG+I,GAAG,CAACqE,IAAI;MACtB,IAAI,CAACN,aAAa,CAAC9M,OAAO,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAOS,EAAE;EACX;EAEQkJ,mBAAmBA,CAACnJ,EAAqB,EAAE;IACjDA,EAAE,CAAC6L,eAAe,CAAC,CAAC,CAACqB,OAAO,CAAEzE,WAAW,IAAK;MAC5C,IAAIA,WAAW,CAACd,IAAI,EAAE;QACpBc,WAAW,CAACd,IAAI,CAAC,CAAC;MACpB;IACF,CAAC,CAAC;IAEF3H,EAAE,CAACmN,UAAU,CAAC,CAAC,CAACD,OAAO,CAAErL,MAAM,IAAK;MAClCA,MAAM,CAAC7C,KAAK,EAAE2I,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF3H,EAAE,CAACoN,KAAK,CAAC,CAAC;EACZ;EAEA,MAAczF,IAAIA,CAAA,EAAkB;IAClC,IAAI,CAAC,IAAI,CAAC3H,EAAE,EAAE;MACZhC,MAAM,CAAC4E,KAAK,CAAC,4CAA4C,CAAC;MAC1D;IACF;IAEA,IAAI,IAAI,CAAC3C,EAAE,EAAE;MACX,IAAI,CAACA,EAAE,CAACmN,KAAK,CAAC,CAAC;IACjB;IAEA,IAAI,CAAC3L,kBAAkB,CAACkG,IAAI,CAAC,CAAC;IAC9B,IAAI,CAACwB,mBAAmB,CAAC,IAAI,CAACnJ,EAAE,CAAC;IACjC,IAAI,CAACA,EAAE,GAAG,IAAI;IAEd,MAAM,IAAI,CAACqB,YAAY,CAACwL,UAAU,CAAC,CAAC;;IAEpC;IACA,IAAI,CAACzM,KAAK,GAAG,IAAI;IACjB,IAAI,CAACC,oBAAoB,GAAG,CAAC;IAC7B,IAAI,CAACE,cAAc,GAAG,KAAK;IAC3B,IAAI,CAAC8B,UAAU,CAACgL,cAAc,GAAG,CAAC;IAElC,IAAI,CAACxM,eAAe,GAAG,EAAE;IACzB,IAAI,CAACD,qBAAqB,GAAG,KAAK;IAElC,IAAI,IAAI,CAACb,cAAc,EAAE;MACvB,IAAI,CAACA,cAAc,CAAC,CAAC;IACvB;IACA,IAAI,CAACA,cAAc,GAAG,IAAI;IAC1B,IAAI,CAACD,gBAAgB,GAAG,IAAI;EAC9B;EAEAwN,UAAUA,CAAA,EAA+B;IACvC,OAAO,IAAI,CAACjM,YAAY,CAACiM,UAAU,CAAC,CAAC;EACvC;EACAC,UAAUA,CAAA,EAA+B;IACvC,OAAO,IAAI,CAAClM,YAAY,CAACkM,UAAU,CAAC,CAAC;EACvC;EACAC,cAAcA,CAAA,EAA+B;IAC3C,OAAO,IAAI,CAACnM,YAAY,CAACmM,cAAc,CAAC,CAAC;EAC3C;EAEA,MAAMC,SAASA,CAACC,KAAa,EAAiB;IAC5C,OAAO,IAAI,CAACrM,YAAY,CAACoM,SAAS,CAACC,KAAK,CAAC;EAC3C;EACAC,SAASA,CAACC,KAAa,EAAQ;IAC7B,OAAO,IAAI,CAACvM,YAAY,CAACsM,SAAS,CAACC,KAAK,CAAC;EAC3C;EACAC,aAAaA,CAACC,SAAiB,EAAQ;IACrC,OAAO,IAAI,CAACzM,YAAY,CAACwM,aAAa,CAACC,SAAS,CAAC;EACnD;EAEA,IAAIC,WAAWA,CAAA,EAA4C;IACzD,OAAO,IAAI,CAAC1M,YAAY,CAAC0M,WAAW;EACtC;EACA,IAAIC,WAAWA,CAAA,EAA4C;IACzD,OAAO,IAAI,CAAC3M,YAAY,CAAC2M,WAAW;EACtC;EACA,IAAIC,eAAeA,CAAA,EAA4C;IAC7D,OAAO,IAAI,CAAC5M,YAAY,CAAC4M,eAAe;EAC1C;EAEA,IAAIhN,UAAUA,CAACA,UAA0B,EAAE;IACzC,IAAI,CAACR,WAAW,GAAGQ,UAAU;EAC/B;EAEA,IAAIA,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACR,WAAW;EACzB;EAEAyN,SAASA,CAACC,MAAe,EAAQ;IAC/B,IAAI,CAAC9M,YAAY,CAAC6M,SAAS,CAACC,MAAM,CAAC;IACnC,IAAI,CAACxH,qBAAqB,CACxB,IAAIjI,kBAAkB,CAACe,uBAAuB,EAAE0O,MAAM,CACxD,CAAC;EACH;EACAC,SAASA,CAACD,MAAe,EAAQ;IAC/B,IAAI,CAAC9M,YAAY,CAAC+M,SAAS,CAACD,MAAM,CAAC;IACnC,IAAI,CAACxH,qBAAqB,CACxB,IAAIjI,kBAAkB,CAACgB,uBAAuB,EAAEyO,MAAM,CACxD,CAAC;EACH;EACA,MAAME,iBAAiBA,CAACF,MAAe,EAAiB;IACtD,IAAI,CAAC,IAAI,CAAC9M,YAAY,CAACyF,mBAAmB,EAAE;MAC1C,MAAM,IAAIxI,uBAAuB,CAC/B,mBAAmB,EACnB,cAAc,EACd,8DACF,CAAC;IACH;IACA,IAAI,CAAC+C,YAAY,CAACgN,iBAAiB,CAACF,MAAM,CAAC;IAC3C,IAAI,CAACxH,qBAAqB,CACxB,IAAIjI,kBAAkB,CAACiB,8BAA8B,EAAEwO,MAAM,CAC/D,CAAC;EACH;EAEA,IAAItH,YAAYA,CAAA,EAAY;IAC1B,OAAO,IAAI,CAACxF,YAAY,CAACwF,YAAY;EACvC;EACA,IAAID,YAAYA,CAAA,EAAY;IAC1B,OAAO,IAAI,CAACvF,YAAY,CAACuF,YAAY;EACvC;EACA,IAAIG,eAAeA,CAAA,EAAY;IAC7B,OAAO,IAAI,CAAC1F,YAAY,CAAC0F,eAAe;EAC1C;EAEA,IAAIpE,KAAKA,CAAA,EAAmB;IAC1B,OAAO,IAAI,CAAC2L,MAAM;EACpB;EAEA,IAAI3L,KAAKA,CAACA,KAAqB,EAAE;IAC/B,IAAI,IAAI,CAAC2L,MAAM,KAAK3L,KAAK,EAAE;IAE3B,IAAI,CAAC2L,MAAM,GAAG3L,KAAK;IACnB,IAAI,CAACN,UAAU,CAACkM,uBAAuB,GAAG5L,KAAK,CAAC;EAClD;EAEAqE,MAAMA,CAAA,EAAW;IACf,OAAO,IAAI,CAAC3F,YAAY,CAAC2F,MAAM,CAAC,CAAC;EACnC;EAEQoE,cAAcA,CAACoD,IAAY,EAAEC,KAAa,EAAEC,OAAe,EAAU;IAC3E,MAAMC,OAAiB,GAAG,EAAE;IAC5B,MAAMC,QAAQ,GAAG,IAAIC,MAAM,CAAC,8BAA8B,CAAC;IAC3D,MAAMC,UAAU,GAAG,IAAID,MAAM,CAC3B,oBAAoB,GAAG,IAAI,CAACE,YAAY,CAACN,KAAK,CAChD,CAAC;IACD,MAAMO,UAAU,GAAG,IAAIH,MAAM,CAAC,KAAK,GAAGL,IAAI,GAAG,wBAAwB,CAAC;IAEtE,MAAMS,KAAK,GAAGP,OAAO,CAACQ,KAAK,CAAC,IAAI,CAAC;IAEjC,IAAIC,MAAM,GAAG,KAAK;IAClB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAACpJ,MAAM,EAAEuJ,CAAC,EAAE,EAAE;MACrC,IAAIH,KAAK,CAACG,CAAC,CAAC,EAAEC,UAAU,CAAC,IAAI,GAAGb,IAAI,GAAG,GAAG,CAAC,EAAE;QAC3CW,MAAM,GAAG,IAAI;MACf,CAAC,MAAM,IAAIF,KAAK,CAACG,CAAC,CAAC,EAAEC,UAAU,CAAC,IAAI,CAAC,EAAE;QACrCF,MAAM,GAAG,KAAK;MAChB;MAEA,IAAIA,MAAM,EAAE;QACV,MAAMG,KAAK,GAAGL,KAAK,CAACG,CAAC,CAAC,EAAEE,KAAK,CAACR,UAAU,CAAC;QACzC,IAAIQ,KAAK,EAAE;UACTX,OAAO,CAAC9E,IAAI,CAAC0F,QAAQ,CAACD,KAAK,CAAC,CAAC,CAAC,EAAG,EAAE,CAAC,CAAC;QACvC;QAEA,MAAME,QAAQ,GAAGP,KAAK,CAACG,CAAC,CAAC,EAAEE,KAAK,CAACV,QAAQ,CAAC;QAC1C,IAAIY,QAAQ,IAAIb,OAAO,CAACzJ,QAAQ,CAACqK,QAAQ,CAACC,QAAQ,CAAC,CAAC,CAAC,EAAG,EAAE,CAAC,CAAC,EAAE;UAC5Db,OAAO,CAAC9E,IAAI,CAAC0F,QAAQ,CAACC,QAAQ,CAAC,CAAC,CAAC,EAAG,EAAE,CAAC,CAAC;QAC1C;MACF;IACF;IAEA,MAAMC,SAAS,GAAG,kCAAkC;IACpD,IAAItE,GAAG,GAAG,EAAE;IAEZgE,MAAM,GAAG,KAAK;IACd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAACpJ,MAAM,EAAEuJ,CAAC,EAAE,EAAE;MACrC,IAAIH,KAAK,CAACG,CAAC,CAAC,EAAEC,UAAU,CAAC,IAAI,GAAGb,IAAI,GAAG,GAAG,CAAC,EAAE;QAC3CW,MAAM,GAAG,IAAI;MACf,CAAC,MAAM,IAAIF,KAAK,CAACG,CAAC,CAAC,EAAEC,UAAU,CAAC,IAAI,CAAC,EAAE;QACrCF,MAAM,GAAG,KAAK;MAChB;MAEA,IAAIA,MAAM,EAAE;QACV,MAAMO,SAAS,GAAGT,KAAK,CAACG,CAAC,CAAC,EAAEE,KAAK,CAACG,SAAS,CAAC;QAC5C,IAAIC,SAAS,IAAI,CAACf,OAAO,CAACzJ,QAAQ,CAACqK,QAAQ,CAACG,SAAS,CAAC,CAAC,CAAC,EAAG,EAAE,CAAC,CAAC,EAAE;UAC/D;QACF,CAAC,MAAM,IAAIT,KAAK,CAACG,CAAC,CAAC,EAAEE,KAAK,CAACN,UAAU,CAAC,EAAE;UACtC7D,GAAG,IACD8D,KAAK,CAACG,CAAC,CAAC,EAAE5K,OAAO,CAACwK,UAAU,EAAE,KAAK,GAAGL,OAAO,CAACgB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;QACnE,CAAC,MAAM;UACLxE,GAAG,IAAI8D,KAAK,CAACG,CAAC,CAAC,GAAG,IAAI;QACxB;MACF,CAAC,MAAM;QACLjE,GAAG,IAAI8D,KAAK,CAACG,CAAC,CAAC,GAAG,IAAI;MACxB;IACF;IAEA,OAAOjE,GAAG;EACZ;EAEQ4D,YAAYA,CAACa,MAAc,EAAU;IAC3C,OAAOA,MAAM,CAACpL,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;EACtD;AACF","ignoreList":[]}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ import { logger } from '@pipecat-ai/client-js';
4
+ const DEFAULT_AUDIO_OBSERVER_INTERVAL_MS = 500;
5
+ export class AudioLevelObserver {
6
+ pc = null;
7
+ captureAudioLevelsInterval = null;
8
+ constructor(mediaManager) {
9
+ this.mediaManager = mediaManager;
10
+ this.captureAudioLevelsInterval = null;
11
+ this.failsCount = 0;
12
+ this._onLocalAudioLevel = undefined;
13
+ this._onRemoteAudioLevel = undefined;
14
+ this.botParticipant = {
15
+ id: 'bot',
16
+ local: false,
17
+ name: 'Bot'
18
+ };
19
+ }
20
+ start(pc, interval) {
21
+ if (this.pc) {
22
+ throw new Error('The audio level observer has already been started. Please call stop() before starting again.');
23
+ }
24
+ logger.info('Starting AudioLevelObserver.');
25
+ this.pc = pc;
26
+ this.startCapturingAudioLevels(interval || DEFAULT_AUDIO_OBSERVER_INTERVAL_MS);
27
+ }
28
+ stop() {
29
+ if (!this.pc) {
30
+ // No op
31
+ return;
32
+ }
33
+ logger.info('Stopping AudioLevelObserver.');
34
+ this.pc = null;
35
+ this.failsCount = 0;
36
+ if (this.captureAudioLevelsInterval) {
37
+ clearInterval(this.captureAudioLevelsInterval);
38
+ this.captureAudioLevelsInterval = null;
39
+ }
40
+ }
41
+ set onLocalAudioLevel(value) {
42
+ this._onLocalAudioLevel = value;
43
+ }
44
+ set onRemoteAudioLevel(value) {
45
+ this._onRemoteAudioLevel = value;
46
+ }
47
+ startCapturingAudioLevels(interval) {
48
+ this.captureAudioLevelsInterval = setInterval(async () => {
49
+ try {
50
+ const localParticipantAudioLevel = await this.getLocalParticipantAudioLevel();
51
+ this._onLocalAudioLevel?.(localParticipantAudioLevel);
52
+ const remoteParticipantAudioLevel = await this.getRemoteParticipantAudioLevel();
53
+ this._onRemoteAudioLevel?.(remoteParticipantAudioLevel, this.botParticipant);
54
+ } catch (e) {
55
+ logger.warn('Failed to retrieve remote audio level', {
56
+ error: e
57
+ });
58
+ this.failsCount++;
59
+ if (this.failsCount >= 3) {
60
+ logger.warn('Stopping audio level observer due to the previous errors.');
61
+ this.stop();
62
+ }
63
+ }
64
+ }, interval);
65
+ }
66
+ async getLocalParticipantAudioLevel() {
67
+ if (!this.pc || !this.mediaManager.isMicEnabled) {
68
+ // silence, not sending audio
69
+ return 0;
70
+ }
71
+ const transceivers = this.pc.getTransceivers();
72
+ if (!transceivers || transceivers.length < 1) {
73
+ return 0;
74
+ }
75
+ // The audio transceiver is always the first one
76
+ // check inside the transport addInitialTransceivers
77
+ const stats = await transceivers[0].sender.getStats();
78
+ let audioSourceStats = null;
79
+ for (const report of stats.values()) {
80
+ if (report.type === 'media-source' && report.kind === 'audio') {
81
+ audioSourceStats = report;
82
+ break;
83
+ }
84
+ }
85
+ return audioSourceStats?.audioLevel;
86
+ }
87
+ async getRemoteParticipantAudioLevel() {
88
+ if (!this.pc) {
89
+ // silence, not receiving audio
90
+ return 0;
91
+ }
92
+ const transceivers = this.pc.getTransceivers();
93
+ if (!transceivers || transceivers.length < 1) {
94
+ return 0;
95
+ }
96
+ // The audio transceiver is always the first one
97
+ // check inside the transport addInitialTransceivers
98
+ const stats = await transceivers[0].receiver.getStats();
99
+ let inboundAudioStats = null;
100
+ for (const report of stats.values()) {
101
+ if (report.type === 'inbound-rtp' && report.kind === 'audio') {
102
+ inboundAudioStats = report;
103
+ }
104
+ }
105
+ return inboundAudioStats?.audioLevel;
106
+ }
107
+ }
108
+ //# sourceMappingURL=audioLevelObserver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["logger","DEFAULT_AUDIO_OBSERVER_INTERVAL_MS","AudioLevelObserver","pc","captureAudioLevelsInterval","constructor","mediaManager","failsCount","_onLocalAudioLevel","undefined","_onRemoteAudioLevel","botParticipant","id","local","name","start","interval","Error","info","startCapturingAudioLevels","stop","clearInterval","onLocalAudioLevel","value","onRemoteAudioLevel","setInterval","localParticipantAudioLevel","getLocalParticipantAudioLevel","remoteParticipantAudioLevel","getRemoteParticipantAudioLevel","e","warn","error","isMicEnabled","transceivers","getTransceivers","length","stats","sender","getStats","audioSourceStats","report","values","type","kind","audioLevel","receiver","inboundAudioStats"],"sourceRoot":"../../../src","sources":["util/audioLevelObserver.ts"],"mappings":"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","ignoreList":[]}
@@ -65,6 +65,7 @@ export declare class RNSmallWebRTCTransport extends Transport {
65
65
  private _candidateQueue;
66
66
  private __flushTimeout;
67
67
  private _flushDelay;
68
+ private audioLevelObserver;
68
69
  constructor(opts: SmallWebRTCTransportConstructorOptions);
69
70
  private _handleTrackStarted;
70
71
  initialize(options: PipecatClientOptions, messageHandler: (ev: RTVIMessage) => void): void;
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../../src/transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../../src/transport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Participant } from '@pipecat-ai/client-js';
2
+ import { RTCPeerConnection } from '@daily-co/react-native-webrtc';
3
+ import { MediaManager } from '@pipecat-ai/react-native-small-webrtc-transport';
4
+ export declare class AudioLevelObserver {
5
+ private pc;
6
+ private mediaManager;
7
+ private _onLocalAudioLevel?;
8
+ private _onRemoteAudioLevel?;
9
+ private failsCount;
10
+ private captureAudioLevelsInterval;
11
+ private botParticipant;
12
+ constructor(mediaManager: MediaManager);
13
+ start(pc: RTCPeerConnection, interval?: number): void;
14
+ stop(): void;
15
+ set onLocalAudioLevel(value: ((level: number) => void) | undefined);
16
+ set onRemoteAudioLevel(value: ((level: number, participant: Participant) => void) | undefined);
17
+ private startCapturingAudioLevels;
18
+ private getLocalParticipantAudioLevel;
19
+ private getRemoteParticipantAudioLevel;
20
+ }
21
+ //# sourceMappingURL=audioLevelObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audioLevelObserver.d.ts","sourceRoot":"","sources":["../../../../../../../src/util/audioLevelObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAC;AAG/E,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,kBAAkB,CAAC,CAA0B;IACrD,OAAO,CAAC,mBAAmB,CAAC,CAGlB;IAEV,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,0BAA0B,CAC3B;IACP,OAAO,CAAC,cAAc,CAAc;gBAExB,YAAY,EAAE,YAAY;IAatC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAa9C,IAAI;IAcJ,IAAI,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,EAEjE;IAED,IAAI,kBAAkB,CACpB,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC,GAAG,SAAS,EAGvE;IAED,OAAO,CAAC,yBAAyB;YAyBnB,6BAA6B;YAsB7B,8BAA8B;CAoB7C"}
@@ -65,6 +65,7 @@ export declare class RNSmallWebRTCTransport extends Transport {
65
65
  private _candidateQueue;
66
66
  private __flushTimeout;
67
67
  private _flushDelay;
68
+ private audioLevelObserver;
68
69
  constructor(opts: SmallWebRTCTransportConstructorOptions);
69
70
  private _handleTrackStarted;
70
71
  initialize(options: PipecatClientOptions, messageHandler: (ev: RTVIMessage) => void): void;
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../../src/transport.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,WAAW,EACX,oBAAoB,EACpB,MAAM,EACN,SAAS,EAET,cAAc,EAEd,UAAU,EAEX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAc,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAIL,eAAe,EAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAG7E,cAAM,kBAAkB;IACtB,IAAI,SAAiB;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;gBACL,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;CAIrD;AAYD,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG;IAClD,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,UAAU,CAAC;IACjC,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,MAAM,WAAW,sCACf,SAAQ,qCAAqC;IAC7C,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAGD,cAAM,kBAAkB;IACtB,IAAI,SAAoB;CACzB;AAGD,cAAM,sBAAsB;IAC1B,IAAI,SAAkB;CACvB;AAED,KAAK,yBAAyB,GAAG,kBAAkB,CAAC;AAEpD,KAAK,wBAAwB,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;AAG5E,QAAA,MAAM,eAAe,eAAe,CAAC;AACrC,cAAM,uBAAuB;IAC3B,IAAI,EAAE,OAAO,eAAe,CAAmB;IAC/C,OAAO,EAAE,wBAAwB,GAAG,yBAAyB,CAAC;gBAClD,OAAO,EAAE,wBAAwB,GAAG,yBAAyB;CAG1E;AAMD;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,OAAO,CAAC,cAAc,CAA2B;IAGjD,OAAO,CAAC,gBAAgB,CACjB;IACP,OAAO,CAAC,cAAc,CAAyC;IAG/D,OAAO,CAAC,YAAY,CAAe;IAEnC,OAAO,CAAC,EAAE,CAAkC;IAI5C,OAAO,CAAC,EAAE,CAA+B;IACzC,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,KAAK,CAAuB;IAEpC,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,uBAAuB,CAAK;IACpC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,iBAAiB,CAAuB;IAEhD,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAU;IAE/C,OAAO,CAAC,eAAe,CAAuC;IAE9D,OAAO,CAAC,qBAAqB,CAAkB;IAC/C,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,WAAW,CAAO;gBAEd,IAAI,EAAE,sCAAsC;YAa1C,mBAAmB;IAiB1B,UAAU,CACf,OAAO,EAAE,oBAAoB,EAC7B,cAAc,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,IAAI,GACxC,IAAI;IAUD,WAAW;IAMjB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAI9C,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAI9C,mBAAmB,CACjB,MAAM,EACF,sCAAsC,GACtC,qCAAqC,GACxC,UAAU,GAAG,IAAI;IA+BpB,yBAAyB,IAAI,MAAM,GAAG,SAAS;IAgB/C,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,2BAA2B;IAkCnC,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,wCAAwC;IAchD,yBAAyB,CACvB,aAAa,EAAE,OAAO,GACrB,qCAAqC,GAAG,SAAS;IA0B9C,QAAQ,CACZ,aAAa,CAAC,EAAE,qCAAqC,GACpD,OAAO,CAAC,IAAI,CAAC;IAsChB,OAAO,CAAC,eAAe;IAyBvB,gBAAgB;IAOhB,WAAW,CAAC,OAAO,EAAE,WAAW;IAQhC,OAAO,CAAC,qBAAqB;IASvB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,OAAO,CAAC,oBAAoB;IA+F5B,OAAO,CAAC,8BAA8B;IAkBtC,OAAO,CAAC,2BAA2B;YAKrB,mBAAmB;YA6BnB,2BAA2B;YAsC3B,gBAAgB;YAehB,kBAAkB;YA0ClB,SAAS;IAgFvB,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,yBAAyB;YAMnB,sBAAsB;YAatB,YAAY;IAyB1B,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IA0B9B,uBAAuB,CAC3B,UAAU,EAAE,uBAAuB,GAClC,OAAO,CAAC,IAAI,CAAC;IAiBhB,OAAO,CAAC,iBAAiB;IA+CzB,OAAO,CAAC,mBAAmB;YAcb,IAAI;IA+BlB,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAGxC,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAGxC,cAAc,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAItC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAG7C,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAG9B,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAItC,IAAI,WAAW,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAEzD;IACD,IAAI,WAAW,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAEzD;IACD,IAAI,eAAe,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAE7D;IAED,IAAI,UAAU,CAAC,UAAU,EAAE,YAAY,EAAE,EAExC;IAED,IAAI,UAAU,IAJa,YAAY,EAAE,CAMxC;IAED,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAMhC,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAM1B,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAcvD,IAAI,YAAY,IAAI,OAAO,CAE1B;IACD,IAAI,YAAY,IAAI,OAAO,CAE1B;IACD,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,IAAI,KAAK,IAAI,cAAc,CAE1B;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,cAAc,EAK9B;IAED,MAAM,IAAI,MAAM;IAIhB,OAAO,CAAC,cAAc;IA4DtB,OAAO,CAAC,YAAY;CAGrB"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../../src/transport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Participant } from '@pipecat-ai/client-js';
2
+ import { RTCPeerConnection } from '@daily-co/react-native-webrtc';
3
+ import { MediaManager } from '@pipecat-ai/react-native-small-webrtc-transport';
4
+ export declare class AudioLevelObserver {
5
+ private pc;
6
+ private mediaManager;
7
+ private _onLocalAudioLevel?;
8
+ private _onRemoteAudioLevel?;
9
+ private failsCount;
10
+ private captureAudioLevelsInterval;
11
+ private botParticipant;
12
+ constructor(mediaManager: MediaManager);
13
+ start(pc: RTCPeerConnection, interval?: number): void;
14
+ stop(): void;
15
+ set onLocalAudioLevel(value: ((level: number) => void) | undefined);
16
+ set onRemoteAudioLevel(value: ((level: number, participant: Participant) => void) | undefined);
17
+ private startCapturingAudioLevels;
18
+ private getLocalParticipantAudioLevel;
19
+ private getRemoteParticipantAudioLevel;
20
+ }
21
+ //# sourceMappingURL=audioLevelObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audioLevelObserver.d.ts","sourceRoot":"","sources":["../../../../../../../src/util/audioLevelObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAC;AAG/E,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,kBAAkB,CAAC,CAA0B;IACrD,OAAO,CAAC,mBAAmB,CAAC,CAGlB;IAEV,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,0BAA0B,CAC3B;IACP,OAAO,CAAC,cAAc,CAAc;gBAExB,YAAY,EAAE,YAAY;IAatC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAa9C,IAAI;IAcJ,IAAI,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,EAEjE;IAED,IAAI,kBAAkB,CACpB,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC,GAAG,SAAS,EAGvE;IAED,OAAO,CAAC,yBAAyB;YAyBnB,6BAA6B;YAsB7B,8BAA8B;CAoB7C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pipecat-ai/react-native-small-webrtc-transport",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "license": "BSD-2-Clause",
5
5
  "description": "React Native library for connecting to RTVI client using Small WebRTC",
6
6
  "main": "./lib/commonjs/index.js",