@webex/plugin-meetings 3.3.1-next.15 → 3.3.1-next.17
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.
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/media/MediaConnectionAwaiter.js +50 -13
- package/dist/media/MediaConnectionAwaiter.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +6 -0
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/connectionStateHandler.js +67 -0
- package/dist/meeting/connectionStateHandler.js.map +1 -0
- package/dist/meeting/index.js +46 -33
- package/dist/meeting/index.js.map +1 -1
- package/dist/statsAnalyzer/index.js +3 -1
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/types/media/MediaConnectionAwaiter.d.ts +18 -4
- package/dist/types/mediaQualityMetrics/config.d.ts +5 -0
- package/dist/types/meeting/connectionStateHandler.d.ts +30 -0
- package/dist/types/meeting/index.d.ts +1 -0
- package/dist/webinar/index.js +1 -1
- package/package.json +23 -22
- package/src/media/MediaConnectionAwaiter.ts +66 -11
- package/src/mediaQualityMetrics/config.ts +5 -0
- package/src/meeting/connectionStateHandler.ts +65 -0
- package/src/meeting/index.ts +19 -7
- package/src/statsAnalyzer/index.ts +3 -3
- package/test/unit/spec/media/MediaConnectionAwaiter.ts +90 -32
- package/test/unit/spec/meeting/connectionStateHandler.ts +102 -0
- package/test/unit/spec/meeting/index.js +30 -35
- package/test/unit/spec/stats-analyzer/index.js +30 -1
package/dist/breakouts/index.js
CHANGED
|
@@ -1046,7 +1046,7 @@ var Breakouts = _webexCore.WebexPlugin.extend({
|
|
|
1046
1046
|
this.trigger(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN);
|
|
1047
1047
|
}
|
|
1048
1048
|
},
|
|
1049
|
-
version: "3.3.1-next.
|
|
1049
|
+
version: "3.3.1-next.17"
|
|
1050
1050
|
});
|
|
1051
1051
|
var _default = exports.default = Breakouts;
|
|
1052
1052
|
//# sourceMappingURL=index.js.map
|
|
@@ -373,7 +373,7 @@ var SimultaneousInterpretation = _webexCore.WebexPlugin.extend({
|
|
|
373
373
|
throw error;
|
|
374
374
|
});
|
|
375
375
|
},
|
|
376
|
-
version: "3.3.1-next.
|
|
376
|
+
version: "3.3.1-next.17"
|
|
377
377
|
});
|
|
378
378
|
var _default = exports.default = SimultaneousInterpretation;
|
|
379
379
|
//# sourceMappingURL=index.js.map
|
|
@@ -18,7 +18,7 @@ var SILanguage = _webexCore.WebexPlugin.extend({
|
|
|
18
18
|
languageCode: 'number',
|
|
19
19
|
languageName: 'string'
|
|
20
20
|
},
|
|
21
|
-
version: "3.3.1-next.
|
|
21
|
+
version: "3.3.1-next.17"
|
|
22
22
|
});
|
|
23
23
|
var _default = exports.default = SILanguage;
|
|
24
24
|
//# sourceMappingURL=siLanguage.js.map
|
|
@@ -28,15 +28,19 @@ var MediaConnectionAwaiter = exports.default = /*#__PURE__*/function () {
|
|
|
28
28
|
(0, _defineProperty2.default)(this, "timer", void 0);
|
|
29
29
|
(0, _defineProperty2.default)(this, "defer", void 0);
|
|
30
30
|
(0, _defineProperty2.default)(this, "retried", void 0);
|
|
31
|
+
(0, _defineProperty2.default)(this, "iceConnected", void 0);
|
|
31
32
|
(0, _defineProperty2.default)(this, "onTimeoutCallback", void 0);
|
|
32
|
-
(0, _defineProperty2.default)(this, "
|
|
33
|
+
(0, _defineProperty2.default)(this, "peerConnectionStateCallback", void 0);
|
|
34
|
+
(0, _defineProperty2.default)(this, "iceConnectionStateCallback", void 0);
|
|
33
35
|
(0, _defineProperty2.default)(this, "iceGatheringStateCallback", void 0);
|
|
34
36
|
this.webrtcMediaConnection = webrtcMediaConnection;
|
|
35
37
|
this.defer = new _common.Defer();
|
|
36
38
|
this.retried = false;
|
|
39
|
+
this.iceConnected = false;
|
|
37
40
|
this.onTimeoutCallback = this.onTimeout.bind(this);
|
|
38
|
-
this.
|
|
39
|
-
this.
|
|
41
|
+
this.peerConnectionStateCallback = this.peerConnectionStateHandler.bind(this);
|
|
42
|
+
this.iceConnectionStateCallback = this.iceConnectionStateHandler.bind(this);
|
|
43
|
+
this.iceGatheringStateCallback = this.iceGatheringStateHandler.bind(this);
|
|
40
44
|
}
|
|
41
45
|
|
|
42
46
|
/**
|
|
@@ -70,18 +74,19 @@ var MediaConnectionAwaiter = exports.default = /*#__PURE__*/function () {
|
|
|
70
74
|
key: "clearCallbacks",
|
|
71
75
|
value: function clearCallbacks() {
|
|
72
76
|
this.webrtcMediaConnection.off(_internalMediaCore.Event.ICE_GATHERING_STATE_CHANGED, this.iceGatheringStateCallback);
|
|
73
|
-
this.webrtcMediaConnection.off(_internalMediaCore.Event.
|
|
77
|
+
this.webrtcMediaConnection.off(_internalMediaCore.Event.PEER_CONNECTION_STATE_CHANGED, this.peerConnectionStateCallback);
|
|
78
|
+
this.webrtcMediaConnection.off(_internalMediaCore.Event.ICE_CONNECTION_STATE_CHANGED, this.iceConnectionStateCallback);
|
|
74
79
|
}
|
|
75
80
|
|
|
76
81
|
/**
|
|
77
|
-
*
|
|
82
|
+
* On connection state change.
|
|
78
83
|
*
|
|
79
84
|
* @returns {void}
|
|
80
85
|
*/
|
|
81
86
|
}, {
|
|
82
|
-
key: "
|
|
83
|
-
value: function
|
|
84
|
-
_loggerProxy.default.logger.log("Media:MediaConnectionAwaiter#
|
|
87
|
+
key: "connectionStateChange",
|
|
88
|
+
value: function connectionStateChange() {
|
|
89
|
+
_loggerProxy.default.logger.log("Media:MediaConnectionAwaiter#connectionStateChange --> connection state: ".concat(this.webrtcMediaConnection.getConnectionState()));
|
|
85
90
|
if (!this.isConnected()) {
|
|
86
91
|
return;
|
|
87
92
|
}
|
|
@@ -90,16 +95,45 @@ var MediaConnectionAwaiter = exports.default = /*#__PURE__*/function () {
|
|
|
90
95
|
this.defer.resolve();
|
|
91
96
|
}
|
|
92
97
|
|
|
98
|
+
/**
|
|
99
|
+
* Listener for peer connection state change.
|
|
100
|
+
*
|
|
101
|
+
* @returns {void}
|
|
102
|
+
*/
|
|
103
|
+
}, {
|
|
104
|
+
key: "peerConnectionStateHandler",
|
|
105
|
+
value: function peerConnectionStateHandler() {
|
|
106
|
+
var peerConnectionState = this.webrtcMediaConnection.getPeerConnectionState();
|
|
107
|
+
_loggerProxy.default.logger.log("Media:MediaConnectionAwaiter#peerConnectionStateHandler --> Peer connection state change -> ".concat(peerConnectionState));
|
|
108
|
+
this.connectionStateChange();
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* Listener for ICE connection state change.
|
|
113
|
+
*
|
|
114
|
+
* @returns {void}
|
|
115
|
+
*/
|
|
116
|
+
}, {
|
|
117
|
+
key: "iceConnectionStateHandler",
|
|
118
|
+
value: function iceConnectionStateHandler() {
|
|
119
|
+
var iceConnectionState = this.webrtcMediaConnection.getIceConnectionState();
|
|
120
|
+
_loggerProxy.default.logger.log("Media:MediaConnectionAwaiter#iceConnectionStateHandler --> ICE connection state change -> ".concat(iceConnectionState));
|
|
121
|
+
if (iceConnectionState === 'connected' && !this.iceConnected) {
|
|
122
|
+
this.iceConnected = true;
|
|
123
|
+
}
|
|
124
|
+
this.connectionStateChange();
|
|
125
|
+
}
|
|
126
|
+
|
|
93
127
|
/**
|
|
94
128
|
* Listener for ICE gathering state change.
|
|
95
129
|
*
|
|
96
130
|
* @returns {void}
|
|
97
131
|
*/
|
|
98
132
|
}, {
|
|
99
|
-
key: "
|
|
100
|
-
value: function
|
|
133
|
+
key: "iceGatheringStateHandler",
|
|
134
|
+
value: function iceGatheringStateHandler() {
|
|
101
135
|
var iceGatheringState = this.webrtcMediaConnection.getIceGatheringState();
|
|
102
|
-
_loggerProxy.default.logger.log("Media:MediaConnectionAwaiter#
|
|
136
|
+
_loggerProxy.default.logger.log("Media:MediaConnectionAwaiter#iceGatheringStateHandler --> ICE gathering state change -> ".concat(iceGatheringState));
|
|
103
137
|
if (!this.isIceGatheringCompleted()) {
|
|
104
138
|
return;
|
|
105
139
|
}
|
|
@@ -138,7 +172,9 @@ var MediaConnectionAwaiter = exports.default = /*#__PURE__*/function () {
|
|
|
138
172
|
_loggerProxy.default.logger.warn('Media:MediaConnectionAwaiter#onTimeout --> ICE gathering completed, but connection state is not connected, rejecting');
|
|
139
173
|
}
|
|
140
174
|
this.clearCallbacks();
|
|
141
|
-
this.defer.reject(
|
|
175
|
+
this.defer.reject({
|
|
176
|
+
iceConnected: this.iceConnected
|
|
177
|
+
});
|
|
142
178
|
}
|
|
143
179
|
|
|
144
180
|
/**
|
|
@@ -152,7 +188,8 @@ var MediaConnectionAwaiter = exports.default = /*#__PURE__*/function () {
|
|
|
152
188
|
if (this.isConnected()) {
|
|
153
189
|
return _promise.default.resolve();
|
|
154
190
|
}
|
|
155
|
-
this.webrtcMediaConnection.on(_internalMediaCore.Event.
|
|
191
|
+
this.webrtcMediaConnection.on(_internalMediaCore.Event.PEER_CONNECTION_STATE_CHANGED, this.peerConnectionStateCallback);
|
|
192
|
+
this.webrtcMediaConnection.on(_internalMediaCore.Event.ICE_CONNECTION_STATE_CHANGED, this.iceConnectionStateCallback);
|
|
156
193
|
this.webrtcMediaConnection.on(_internalMediaCore.Event.ICE_GATHERING_STATE_CHANGED, this.iceGatheringStateCallback);
|
|
157
194
|
this.timer = setTimeout(this.onTimeoutCallback, _constants.ICE_AND_DTLS_CONNECTION_TIMEOUT);
|
|
158
195
|
return this.defer.promise;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_common","require","_internalMediaCore","_loggerProxy","_interopRequireDefault","_constants","MediaConnectionAwaiter","exports","default","_ref","webrtcMediaConnection","_classCallCheck2","_defineProperty2","defer","Defer","retried","onTimeoutCallback","onTimeout","bind","connectionStateCallback","connectionStateListenerCallback","iceGatheringStateCallback","iceGatheringStateListenerCallback","_createClass2","key","value","isConnected","getConnectionState","ConnectionState","Connected","isIceGatheringCompleted","getIceGatheringState","clearCallbacks","off","Event","ICE_GATHERING_STATE_CHANGED","CONNECTION_STATE_CHANGED","LoggerProxy","logger","log","concat","clearTimeout","timer","resolve","iceGatheringState","setTimeout","ICE_AND_DTLS_CONNECTION_TIMEOUT","warn","reject","waitForMediaConnectionConnected","_promise","on","promise"],"sources":["MediaConnectionAwaiter.ts"],"sourcesContent":["import {Defer} from '@webex/common';\nimport {ConnectionState, Event} from '@webex/internal-media-core';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {ICE_AND_DTLS_CONNECTION_TIMEOUT} from '../constants';\n\nexport interface MediaConnectionAwaiterProps {\n webrtcMediaConnection: any;\n}\n\n/**\n * @class MediaConnectionAwaiter\n */\nexport default class MediaConnectionAwaiter {\n private webrtcMediaConnection: any;\n private timer: any;\n private defer: Defer;\n private retried: boolean;\n private onTimeoutCallback: () => void;\n private connectionStateCallback: () => void;\n private iceGatheringStateCallback: () => void;\n\n /**\n * @param {MediaConnectionAwaiterProps} mediaConnectionAwaiterProps\n */\n constructor({webrtcMediaConnection}: MediaConnectionAwaiterProps) {\n this.webrtcMediaConnection = webrtcMediaConnection;\n this.defer = new Defer();\n this.retried = false;\n this.onTimeoutCallback = this.onTimeout.bind(this);\n this.connectionStateCallback = this.connectionStateListenerCallback.bind(this);\n this.iceGatheringStateCallback = this.iceGatheringStateListenerCallback.bind(this);\n }\n\n /**\n * Returns true if the connection is connected, false otherwise.\n *\n * @returns {boolean}\n */\n private isConnected(): boolean {\n return this.webrtcMediaConnection.getConnectionState() === ConnectionState.Connected;\n }\n\n /**\n * Returns true if the ICE Gathering is completed, false otherwise.\n *\n * @returns {boolean}\n */\n private isIceGatheringCompleted(): boolean {\n return this.webrtcMediaConnection.getIceGatheringState() === 'complete';\n }\n\n /**\n * Clears the callbacks.\n *\n * @returns {void}\n */\n private clearCallbacks(): void {\n this.webrtcMediaConnection.off(\n Event.ICE_GATHERING_STATE_CHANGED,\n this.iceGatheringStateCallback\n );\n this.webrtcMediaConnection.off(Event.CONNECTION_STATE_CHANGED, this.connectionStateCallback);\n }\n\n /**\n * Listener for connection state change.\n *\n * @returns {void}\n */\n connectionStateListenerCallback(): void {\n LoggerProxy.logger.log(\n `Media:MediaConnectionAwaiter#connectionStateListenerCallback --> connection state: ${this.webrtcMediaConnection.getConnectionState()}`\n );\n\n if (!this.isConnected()) {\n return;\n }\n\n clearTimeout(this.timer);\n\n this.clearCallbacks();\n\n this.defer.resolve();\n }\n\n /**\n * Listener for ICE gathering state change.\n *\n * @returns {void}\n */\n iceGatheringStateListenerCallback(): void {\n const iceGatheringState = this.webrtcMediaConnection.getIceGatheringState();\n\n LoggerProxy.logger.log(\n `Media:MediaConnectionAwaiter#iceGatheringStateListenerCallback --> ICE gathering state change -> ${iceGatheringState}`\n );\n\n if (!this.isIceGatheringCompleted()) {\n return;\n }\n\n if (this.isConnected()) {\n return;\n }\n\n clearTimeout(this.timer);\n\n this.timer = setTimeout(this.onTimeoutCallback, ICE_AND_DTLS_CONNECTION_TIMEOUT);\n }\n\n /**\n * Function called when the timeout is reached.\n *\n * @returns {void}\n */\n onTimeout(): void {\n if (this.isConnected()) {\n this.clearCallbacks();\n\n this.defer.resolve();\n\n return;\n }\n\n if (!this.isIceGatheringCompleted()) {\n if (!this.retried) {\n LoggerProxy.logger.warn(\n 'Media:MediaConnectionAwaiter#onTimeout --> ICE gathering did not complete within the timeout for the first time, retrying once'\n );\n\n // retry once if ICE gathering is not completed\n this.retried = true;\n clearTimeout(this.timer);\n this.timer = setTimeout(this.onTimeoutCallback, ICE_AND_DTLS_CONNECTION_TIMEOUT);\n\n return;\n }\n\n LoggerProxy.logger.warn(\n 'Media:MediaConnectionAwaiter#onTimeout --> ICE gathering did not complete within the timeout for the second time, rejecting'\n );\n } else {\n LoggerProxy.logger.warn(\n 'Media:MediaConnectionAwaiter#onTimeout --> ICE gathering completed, but connection state is not connected, rejecting'\n );\n }\n\n this.clearCallbacks();\n\n this.defer.reject();\n }\n\n /**\n * Waits for the webrtc media connection to be connected.\n *\n * @returns {Promise}\n */\n waitForMediaConnectionConnected(): Promise<void> {\n if (this.isConnected()) {\n return Promise.resolve();\n }\n\n this.webrtcMediaConnection.on(Event.CONNECTION_STATE_CHANGED, this.connectionStateCallback);\n\n this.webrtcMediaConnection.on(\n Event.ICE_GATHERING_STATE_CHANGED,\n this.iceGatheringStateCallback\n );\n\n this.timer = setTimeout(this.onTimeoutCallback, ICE_AND_DTLS_CONNECTION_TIMEOUT);\n\n return this.defer.promise;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_common","require","_internalMediaCore","_loggerProxy","_interopRequireDefault","_constants","MediaConnectionAwaiter","exports","default","_ref","webrtcMediaConnection","_classCallCheck2","_defineProperty2","defer","Defer","retried","iceConnected","onTimeoutCallback","onTimeout","bind","peerConnectionStateCallback","peerConnectionStateHandler","iceConnectionStateCallback","iceConnectionStateHandler","iceGatheringStateCallback","iceGatheringStateHandler","_createClass2","key","value","isConnected","getConnectionState","ConnectionState","Connected","isIceGatheringCompleted","getIceGatheringState","clearCallbacks","off","Event","ICE_GATHERING_STATE_CHANGED","PEER_CONNECTION_STATE_CHANGED","ICE_CONNECTION_STATE_CHANGED","connectionStateChange","LoggerProxy","logger","log","concat","clearTimeout","timer","resolve","peerConnectionState","getPeerConnectionState","iceConnectionState","getIceConnectionState","iceGatheringState","setTimeout","ICE_AND_DTLS_CONNECTION_TIMEOUT","warn","reject","waitForMediaConnectionConnected","_promise","on","promise"],"sources":["MediaConnectionAwaiter.ts"],"sourcesContent":["import {Defer} from '@webex/common';\nimport {ConnectionState, Event} from '@webex/internal-media-core';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {ICE_AND_DTLS_CONNECTION_TIMEOUT} from '../constants';\n\nexport interface MediaConnectionAwaiterProps {\n webrtcMediaConnection: any;\n}\n\n/**\n * @class MediaConnectionAwaiter\n */\nexport default class MediaConnectionAwaiter {\n private webrtcMediaConnection: any;\n private timer: any;\n private defer: Defer;\n private retried: boolean;\n private iceConnected: boolean;\n private onTimeoutCallback: () => void;\n private peerConnectionStateCallback: () => void;\n private iceConnectionStateCallback: () => void;\n private iceGatheringStateCallback: () => void;\n\n /**\n * @param {MediaConnectionAwaiterProps} mediaConnectionAwaiterProps\n */\n constructor({webrtcMediaConnection}: MediaConnectionAwaiterProps) {\n this.webrtcMediaConnection = webrtcMediaConnection;\n this.defer = new Defer();\n this.retried = false;\n this.iceConnected = false;\n this.onTimeoutCallback = this.onTimeout.bind(this);\n this.peerConnectionStateCallback = this.peerConnectionStateHandler.bind(this);\n this.iceConnectionStateCallback = this.iceConnectionStateHandler.bind(this);\n this.iceGatheringStateCallback = this.iceGatheringStateHandler.bind(this);\n }\n\n /**\n * Returns true if the connection is connected, false otherwise.\n *\n * @returns {boolean}\n */\n private isConnected(): boolean {\n return this.webrtcMediaConnection.getConnectionState() === ConnectionState.Connected;\n }\n\n /**\n * Returns true if the ICE Gathering is completed, false otherwise.\n *\n * @returns {boolean}\n */\n private isIceGatheringCompleted(): boolean {\n return this.webrtcMediaConnection.getIceGatheringState() === 'complete';\n }\n\n /**\n * Clears the callbacks.\n *\n * @returns {void}\n */\n private clearCallbacks(): void {\n this.webrtcMediaConnection.off(\n Event.ICE_GATHERING_STATE_CHANGED,\n this.iceGatheringStateCallback\n );\n this.webrtcMediaConnection.off(\n Event.PEER_CONNECTION_STATE_CHANGED,\n this.peerConnectionStateCallback\n );\n this.webrtcMediaConnection.off(\n Event.ICE_CONNECTION_STATE_CHANGED,\n this.iceConnectionStateCallback\n );\n }\n\n /**\n * On connection state change.\n *\n * @returns {void}\n */\n connectionStateChange(): void {\n LoggerProxy.logger.log(\n `Media:MediaConnectionAwaiter#connectionStateChange --> connection state: ${this.webrtcMediaConnection.getConnectionState()}`\n );\n\n if (!this.isConnected()) {\n return;\n }\n\n clearTimeout(this.timer);\n\n this.clearCallbacks();\n\n this.defer.resolve();\n }\n\n /**\n * Listener for peer connection state change.\n *\n * @returns {void}\n */\n peerConnectionStateHandler(): void {\n const peerConnectionState = this.webrtcMediaConnection.getPeerConnectionState();\n\n LoggerProxy.logger.log(\n `Media:MediaConnectionAwaiter#peerConnectionStateHandler --> Peer connection state change -> ${peerConnectionState}`\n );\n\n this.connectionStateChange();\n }\n\n /**\n * Listener for ICE connection state change.\n *\n * @returns {void}\n */\n iceConnectionStateHandler(): void {\n const iceConnectionState = this.webrtcMediaConnection.getIceConnectionState();\n\n LoggerProxy.logger.log(\n `Media:MediaConnectionAwaiter#iceConnectionStateHandler --> ICE connection state change -> ${iceConnectionState}`\n );\n\n if (iceConnectionState === 'connected' && !this.iceConnected) {\n this.iceConnected = true;\n }\n\n this.connectionStateChange();\n }\n\n /**\n * Listener for ICE gathering state change.\n *\n * @returns {void}\n */\n iceGatheringStateHandler(): void {\n const iceGatheringState = this.webrtcMediaConnection.getIceGatheringState();\n\n LoggerProxy.logger.log(\n `Media:MediaConnectionAwaiter#iceGatheringStateHandler --> ICE gathering state change -> ${iceGatheringState}`\n );\n\n if (!this.isIceGatheringCompleted()) {\n return;\n }\n\n if (this.isConnected()) {\n return;\n }\n\n clearTimeout(this.timer);\n\n this.timer = setTimeout(this.onTimeoutCallback, ICE_AND_DTLS_CONNECTION_TIMEOUT);\n }\n\n /**\n * Function called when the timeout is reached.\n *\n * @returns {void}\n */\n onTimeout(): void {\n if (this.isConnected()) {\n this.clearCallbacks();\n\n this.defer.resolve();\n\n return;\n }\n\n if (!this.isIceGatheringCompleted()) {\n if (!this.retried) {\n LoggerProxy.logger.warn(\n 'Media:MediaConnectionAwaiter#onTimeout --> ICE gathering did not complete within the timeout for the first time, retrying once'\n );\n\n // retry once if ICE gathering is not completed\n this.retried = true;\n clearTimeout(this.timer);\n this.timer = setTimeout(this.onTimeoutCallback, ICE_AND_DTLS_CONNECTION_TIMEOUT);\n\n return;\n }\n\n LoggerProxy.logger.warn(\n 'Media:MediaConnectionAwaiter#onTimeout --> ICE gathering did not complete within the timeout for the second time, rejecting'\n );\n } else {\n LoggerProxy.logger.warn(\n 'Media:MediaConnectionAwaiter#onTimeout --> ICE gathering completed, but connection state is not connected, rejecting'\n );\n }\n\n this.clearCallbacks();\n\n this.defer.reject({\n iceConnected: this.iceConnected,\n });\n }\n\n /**\n * Waits for the webrtc media connection to be connected.\n *\n * @returns {Promise}\n */\n waitForMediaConnectionConnected(): Promise<void> {\n if (this.isConnected()) {\n return Promise.resolve();\n }\n\n this.webrtcMediaConnection.on(\n Event.PEER_CONNECTION_STATE_CHANGED,\n this.peerConnectionStateCallback\n );\n\n this.webrtcMediaConnection.on(\n Event.ICE_CONNECTION_STATE_CHANGED,\n this.iceConnectionStateCallback\n );\n\n this.webrtcMediaConnection.on(\n Event.ICE_GATHERING_STATE_CHANGED,\n this.iceGatheringStateCallback\n );\n\n this.timer = setTimeout(this.onTimeoutCallback, ICE_AND_DTLS_CONNECTION_TIMEOUT);\n\n return this.defer.promise;\n }\n}\n"],"mappings":"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"}
|
|
@@ -11,6 +11,12 @@ var emptyMqaInterval = exports.emptyMqaInterval = {
|
|
|
11
11
|
intervalMetadata: {
|
|
12
12
|
peerReflexiveIP: '0.0.0.0',
|
|
13
13
|
peripherals: [],
|
|
14
|
+
cpuInfo: {
|
|
15
|
+
numberOfCores: 1,
|
|
16
|
+
// default value from spec if CpuInfo.getNumLogicalCores cannot be determined
|
|
17
|
+
description: 'NA',
|
|
18
|
+
architecture: 'unknown'
|
|
19
|
+
},
|
|
14
20
|
processAverageCPU: 0,
|
|
15
21
|
processMaximumCPU: 0,
|
|
16
22
|
systemAverageCPU: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["emptyMqaInterval","exports","audioReceive","audioTransmit","intervalMetadata","peerReflexiveIP","peripherals","processAverageCPU","processMaximumCPU","systemAverageCPU","systemMaximumCPU","screenWidth","screenHeight","screenResolution","appWindowWidth","appWindowHeight","appWindowSize","networkType","intervalNumber","videoReceive","videoTransmit","emptyAudioReceive","common","direction","isMain","mariFecEnabled","mariRtxEnabled","mariQosEnabled","mariLiteEnabled","multistreamEnabled","dtlsBitrate","dtlsPackets","fecBitrate","fecPackets","maxBitrate","mediaHopByHopLost","rtcpBitrate","rtcpPackets","rtpBitrate","rtpHopByHopLost","rtpPackets","rtpRecovered","rtxBitrate","rtxPackets","srtcpUnprotectErrors","srtpUnprotectErrors","stunBitrate","stunPackets","transportType","streams","emptyAudioReceiveStream","codec","concealedFrames","csi","maxConcealRunLength","optimalBitrate","optimalFrameRate","receivedBitrate","receivedFrameRate","renderedFrameRate","requestedBitrate","requestedFrameRate","rtpEndToEndLost","maxRtpJitter","meanRtpJitter","ssci","emptyAudioTransmit","availableBitrate","queueDelay","remoteJitter","remoteLossRate","roundTripTime","emptyAudioTransmitStream","requestedFrames","transmittedBitrate","transmittedFrameRate","emptyVideoReceive","emptyVideoReceiveStream","rtpJitter","h264CodecProfile","isActiveSpeaker","optimalFrameSize","receivedFrameSize","receivedHeight","receivedKeyFrames","receivedKeyFramesForRequest","receivedKeyFramesSourceChange","receivedKeyFramesUnknown","receivedWidth","requestedFrameSize","requestedKeyFrames","emptyVideoTransmit","emptyVideoTransmitStream","duplicateSsci","isAvatar","isHardwareEncoded","localConfigurationChanges","maxFrameQp","maxNoiseLevel","minRegionQp","remoteConfigurationChanges","transmittedFrameSize","transmittedHeight","transmittedKeyFrames","transmittedKeyFramesClient","transmittedKeyFramesConfigurationChange","transmittedKeyFramesFeedback","transmittedKeyFramesLocalDrop","transmittedKeyFramesOtherLayer","transmittedKeyFramesPeriodic","transmittedKeyFramesSceneChange","transmittedKeyFramesStartup","transmittedKeyFramesUnknown","transmittedWidth"],"sources":["config.ts"],"sourcesContent":["export const emptyMqaInterval = {\n audioReceive: [],\n audioTransmit: [],\n intervalMetadata: {\n peerReflexiveIP: '0.0.0.0',\n peripherals: [],\n processAverageCPU: 0,\n processMaximumCPU: 0,\n systemAverageCPU: 0,\n systemMaximumCPU: 0,\n screenWidth: 0,\n screenHeight: 0,\n screenResolution: 0,\n appWindowWidth: 0,\n appWindowHeight: 0,\n appWindowSize: 0,\n },\n networkType: '',\n intervalNumber: 0,\n videoReceive: [],\n videoTransmit: [],\n};\n\nexport const emptyAudioReceive = {\n common: {\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n srtcpUnprotectErrors: 0,\n srtpUnprotectErrors: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP',\n },\n streams: [],\n};\n\nexport const emptyAudioReceiveStream = {\n common: {\n codec: 'opus',\n concealedFrames: 0,\n csi: [],\n maxConcealRunLength: 0,\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0,\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n maxRtpJitter: 0,\n meanRtpJitter: 0,\n rtpPackets: 0,\n ssci: 0,\n },\n};\n\nexport const emptyAudioTransmit = {\n common: {\n availableBitrate: 0,\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n queueDelay: 0,\n remoteJitter: 0,\n remoteLossRate: 0,\n roundTripTime: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpPackets: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP',\n },\n streams: [],\n};\n\nexport const emptyAudioTransmitStream = {\n common: {\n codec: 'opus',\n csi: [],\n requestedBitrate: 0,\n requestedFrames: 0,\n rtpPackets: 0,\n ssci: 0,\n transmittedBitrate: 0,\n transmittedFrameRate: 0,\n },\n};\n\nexport const emptyVideoReceive = {\n common: {\n common: {\n direction: 'inactive',\n isMain: true, // Not avaliable\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // Not avaliable\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0, // Not avaliable\n rtcpPackets: 0, // Not avaliable\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0, // Not avaliable\n rtxBitrate: 0, // Not avaliable\n rtxPackets: 0, // Not avaliable\n srtcpUnprotectErrors: 0, // Not avaliable\n srtpUnprotectErrors: 0, // Not avaliable\n stunBitrate: 0, // Not avaliable\n stunPackets: 0, // Not avaliable\n transportType: 'UDP',\n },\n streams: [],\n};\n\nexport const emptyVideoReceiveStream = {\n common: {\n codec: 'H264',\n concealedFrames: 0, // Not avaliable\n csi: [],\n maxConcealRunLength: 0, // Not avaliable\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0, // Not avaliable\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n rtpJitter: 0,\n rtpPackets: 0,\n ssci: 0, // Not avaliable\n },\n h264CodecProfile: 'BP',\n isActiveSpeaker: false,\n optimalFrameSize: 0, // Not avaliable\n receivedFrameSize: 0,\n receivedHeight: 0,\n receivedKeyFrames: 0,\n receivedKeyFramesForRequest: 0,\n receivedKeyFramesSourceChange: 0,\n receivedKeyFramesUnknown: 0,\n receivedWidth: 0,\n requestedFrameSize: 0,\n requestedKeyFrames: 0,\n};\n\nexport const emptyVideoTransmit = {\n common: {\n availableBitrate: 0, // Not avaliable currently hardcoded\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // TODO: check inbound-rtp// Not avaliable\n maxBitrate: 0, // Currently hardcoded\n queueDelay: 0,\n remoteJitter: 0, // remoteInboundRtp.jitter\n remoteLossRate: 0, // comparedResults.lossRate\n roundTripTime: 0, // compareResults.roundTripTime\n rtcpBitrate: 0, // Dont have access to it\n rtcpPackets: 0, // Dont have access to rtcp\n rtpBitrate: 0, // Dont have access\n rtpPackets: 0, // outboundRtp.packetsSent\n rtxBitrate: 0, // Dont have access to it\n rtxPackets: 0, // Dont have access to it\n stunBitrate: 0, // Dont have access to it\n stunPackets: 0, // Dont have access to it\n transportType: 'UDP', // TODO: need to calculate\n },\n streams: [],\n};\n\nexport const emptyVideoTransmitStream = {\n common: {\n codec: 'H264',\n csi: [],\n duplicateSsci: 0, // Not Avaliable\n requestedBitrate: 0, // TODO: from remote SDP\n requestedFrames: 0, // TODO: from remote SDP\n rtpPackets: 0, // same as rtp packets\n ssci: 0,\n transmittedBitrate: 0, // TODO: get in the candidate pair\n transmittedFrameRate: 0, // TODO: from track info\n },\n h264CodecProfile: 'BP', // TODO: from localSDP\n isAvatar: false, // Not Avaliable\n isHardwareEncoded: false, // Not Avaliable\n localConfigurationChanges: 2, // Not Avaliable\n maxFrameQp: 0, // Not Avaliable\n maxNoiseLevel: 0, // Not Avaliable\n minRegionQp: 0, // Not Avaliable\n remoteConfigurationChanges: 0, // Not Avaliable\n requestedFrameSize: 0, // TODO: from remote SDP\n requestedKeyFrames: 0, // outbound Fir request\n transmittedFrameSize: 0, // Not Avaliable\n transmittedHeight: 0,\n transmittedKeyFrames: 0, // Key frames encoded\n transmittedKeyFramesClient: 0, // Not Avaliable\n transmittedKeyFramesConfigurationChange: 0, // Not Avaliable\n transmittedKeyFramesFeedback: 0, // Not Avaliable\n transmittedKeyFramesLocalDrop: 0, // Not Avaliable\n transmittedKeyFramesOtherLayer: 0, // Not Avaliable\n transmittedKeyFramesPeriodic: 0, // Not Avaliable\n transmittedKeyFramesSceneChange: 0, // Not Avaliable\n transmittedKeyFramesStartup: 0, // Not Avaliable\n transmittedKeyFramesUnknown: 0, // Not Avaliable\n transmittedWidth: 0,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["emptyMqaInterval","exports","audioReceive","audioTransmit","intervalMetadata","peerReflexiveIP","peripherals","cpuInfo","numberOfCores","description","architecture","processAverageCPU","processMaximumCPU","systemAverageCPU","systemMaximumCPU","screenWidth","screenHeight","screenResolution","appWindowWidth","appWindowHeight","appWindowSize","networkType","intervalNumber","videoReceive","videoTransmit","emptyAudioReceive","common","direction","isMain","mariFecEnabled","mariRtxEnabled","mariQosEnabled","mariLiteEnabled","multistreamEnabled","dtlsBitrate","dtlsPackets","fecBitrate","fecPackets","maxBitrate","mediaHopByHopLost","rtcpBitrate","rtcpPackets","rtpBitrate","rtpHopByHopLost","rtpPackets","rtpRecovered","rtxBitrate","rtxPackets","srtcpUnprotectErrors","srtpUnprotectErrors","stunBitrate","stunPackets","transportType","streams","emptyAudioReceiveStream","codec","concealedFrames","csi","maxConcealRunLength","optimalBitrate","optimalFrameRate","receivedBitrate","receivedFrameRate","renderedFrameRate","requestedBitrate","requestedFrameRate","rtpEndToEndLost","maxRtpJitter","meanRtpJitter","ssci","emptyAudioTransmit","availableBitrate","queueDelay","remoteJitter","remoteLossRate","roundTripTime","emptyAudioTransmitStream","requestedFrames","transmittedBitrate","transmittedFrameRate","emptyVideoReceive","emptyVideoReceiveStream","rtpJitter","h264CodecProfile","isActiveSpeaker","optimalFrameSize","receivedFrameSize","receivedHeight","receivedKeyFrames","receivedKeyFramesForRequest","receivedKeyFramesSourceChange","receivedKeyFramesUnknown","receivedWidth","requestedFrameSize","requestedKeyFrames","emptyVideoTransmit","emptyVideoTransmitStream","duplicateSsci","isAvatar","isHardwareEncoded","localConfigurationChanges","maxFrameQp","maxNoiseLevel","minRegionQp","remoteConfigurationChanges","transmittedFrameSize","transmittedHeight","transmittedKeyFrames","transmittedKeyFramesClient","transmittedKeyFramesConfigurationChange","transmittedKeyFramesFeedback","transmittedKeyFramesLocalDrop","transmittedKeyFramesOtherLayer","transmittedKeyFramesPeriodic","transmittedKeyFramesSceneChange","transmittedKeyFramesStartup","transmittedKeyFramesUnknown","transmittedWidth"],"sources":["config.ts"],"sourcesContent":["export const emptyMqaInterval = {\n audioReceive: [],\n audioTransmit: [],\n intervalMetadata: {\n peerReflexiveIP: '0.0.0.0',\n peripherals: [],\n cpuInfo: {\n numberOfCores: 1, // default value from spec if CpuInfo.getNumLogicalCores cannot be determined\n description: 'NA',\n architecture: 'unknown',\n },\n processAverageCPU: 0,\n processMaximumCPU: 0,\n systemAverageCPU: 0,\n systemMaximumCPU: 0,\n screenWidth: 0,\n screenHeight: 0,\n screenResolution: 0,\n appWindowWidth: 0,\n appWindowHeight: 0,\n appWindowSize: 0,\n },\n networkType: '',\n intervalNumber: 0,\n videoReceive: [],\n videoTransmit: [],\n};\n\nexport const emptyAudioReceive = {\n common: {\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n srtcpUnprotectErrors: 0,\n srtpUnprotectErrors: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP',\n },\n streams: [],\n};\n\nexport const emptyAudioReceiveStream = {\n common: {\n codec: 'opus',\n concealedFrames: 0,\n csi: [],\n maxConcealRunLength: 0,\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0,\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n maxRtpJitter: 0,\n meanRtpJitter: 0,\n rtpPackets: 0,\n ssci: 0,\n },\n};\n\nexport const emptyAudioTransmit = {\n common: {\n availableBitrate: 0,\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0,\n dtlsPackets: 0,\n fecBitrate: 0,\n fecPackets: 0,\n maxBitrate: 0,\n queueDelay: 0,\n remoteJitter: 0,\n remoteLossRate: 0,\n roundTripTime: 0,\n rtcpBitrate: 0,\n rtcpPackets: 0,\n rtpBitrate: 0,\n rtpPackets: 0,\n rtxBitrate: 0,\n rtxPackets: 0,\n stunBitrate: 0,\n stunPackets: 0,\n transportType: 'UDP',\n },\n streams: [],\n};\n\nexport const emptyAudioTransmitStream = {\n common: {\n codec: 'opus',\n csi: [],\n requestedBitrate: 0,\n requestedFrames: 0,\n rtpPackets: 0,\n ssci: 0,\n transmittedBitrate: 0,\n transmittedFrameRate: 0,\n },\n};\n\nexport const emptyVideoReceive = {\n common: {\n common: {\n direction: 'inactive',\n isMain: true, // Not avaliable\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // Not avaliable\n maxBitrate: 0,\n mediaHopByHopLost: 0,\n rtcpBitrate: 0, // Not avaliable\n rtcpPackets: 0, // Not avaliable\n rtpBitrate: 0,\n rtpHopByHopLost: 0,\n rtpPackets: 0,\n rtpRecovered: 0, // Not avaliable\n rtxBitrate: 0, // Not avaliable\n rtxPackets: 0, // Not avaliable\n srtcpUnprotectErrors: 0, // Not avaliable\n srtpUnprotectErrors: 0, // Not avaliable\n stunBitrate: 0, // Not avaliable\n stunPackets: 0, // Not avaliable\n transportType: 'UDP',\n },\n streams: [],\n};\n\nexport const emptyVideoReceiveStream = {\n common: {\n codec: 'H264',\n concealedFrames: 0, // Not avaliable\n csi: [],\n maxConcealRunLength: 0, // Not avaliable\n optimalBitrate: 0,\n optimalFrameRate: 0,\n receivedBitrate: 0,\n receivedFrameRate: 0,\n renderedFrameRate: 0, // Not avaliable\n requestedBitrate: 0,\n requestedFrameRate: 0,\n rtpEndToEndLost: 0,\n rtpJitter: 0,\n rtpPackets: 0,\n ssci: 0, // Not avaliable\n },\n h264CodecProfile: 'BP',\n isActiveSpeaker: false,\n optimalFrameSize: 0, // Not avaliable\n receivedFrameSize: 0,\n receivedHeight: 0,\n receivedKeyFrames: 0,\n receivedKeyFramesForRequest: 0,\n receivedKeyFramesSourceChange: 0,\n receivedKeyFramesUnknown: 0,\n receivedWidth: 0,\n requestedFrameSize: 0,\n requestedKeyFrames: 0,\n};\n\nexport const emptyVideoTransmit = {\n common: {\n availableBitrate: 0, // Not avaliable currently hardcoded\n common: {\n direction: 'inactive',\n isMain: true,\n mariFecEnabled: false,\n mariRtxEnabled: false,\n mariQosEnabled: false,\n mariLiteEnabled: false,\n multistreamEnabled: false,\n },\n dtlsBitrate: 0, // Not avaliable\n dtlsPackets: 0, // Not avaliable\n fecBitrate: 0, // Not avaliable\n fecPackets: 0, // TODO: check inbound-rtp// Not avaliable\n maxBitrate: 0, // Currently hardcoded\n queueDelay: 0,\n remoteJitter: 0, // remoteInboundRtp.jitter\n remoteLossRate: 0, // comparedResults.lossRate\n roundTripTime: 0, // compareResults.roundTripTime\n rtcpBitrate: 0, // Dont have access to it\n rtcpPackets: 0, // Dont have access to rtcp\n rtpBitrate: 0, // Dont have access\n rtpPackets: 0, // outboundRtp.packetsSent\n rtxBitrate: 0, // Dont have access to it\n rtxPackets: 0, // Dont have access to it\n stunBitrate: 0, // Dont have access to it\n stunPackets: 0, // Dont have access to it\n transportType: 'UDP', // TODO: need to calculate\n },\n streams: [],\n};\n\nexport const emptyVideoTransmitStream = {\n common: {\n codec: 'H264',\n csi: [],\n duplicateSsci: 0, // Not Avaliable\n requestedBitrate: 0, // TODO: from remote SDP\n requestedFrames: 0, // TODO: from remote SDP\n rtpPackets: 0, // same as rtp packets\n ssci: 0,\n transmittedBitrate: 0, // TODO: get in the candidate pair\n transmittedFrameRate: 0, // TODO: from track info\n },\n h264CodecProfile: 'BP', // TODO: from localSDP\n isAvatar: false, // Not Avaliable\n isHardwareEncoded: false, // Not Avaliable\n localConfigurationChanges: 2, // Not Avaliable\n maxFrameQp: 0, // Not Avaliable\n maxNoiseLevel: 0, // Not Avaliable\n minRegionQp: 0, // Not Avaliable\n remoteConfigurationChanges: 0, // Not Avaliable\n requestedFrameSize: 0, // TODO: from remote SDP\n requestedKeyFrames: 0, // outbound Fir request\n transmittedFrameSize: 0, // Not Avaliable\n transmittedHeight: 0,\n transmittedKeyFrames: 0, // Key frames encoded\n transmittedKeyFramesClient: 0, // Not Avaliable\n transmittedKeyFramesConfigurationChange: 0, // Not Avaliable\n transmittedKeyFramesFeedback: 0, // Not Avaliable\n transmittedKeyFramesLocalDrop: 0, // Not Avaliable\n transmittedKeyFramesOtherLayer: 0, // Not Avaliable\n transmittedKeyFramesPeriodic: 0, // Not Avaliable\n transmittedKeyFramesSceneChange: 0, // Not Avaliable\n transmittedKeyFramesStartup: 0, // Not Avaliable\n transmittedKeyFramesUnknown: 0, // Not Avaliable\n transmittedWidth: 0,\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
|
|
4
|
+
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
6
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
exports.ConnectionStateHandler = exports.ConnectionStateEvent = void 0;
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
|
|
11
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
12
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
|
|
13
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
14
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
|
|
15
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
17
|
+
var _internalMediaCore = require("@webex/internal-media-core");
|
|
18
|
+
var _eventsScope = _interopRequireDefault(require("../common/events/events-scope"));
|
|
19
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
20
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
21
|
+
var ConnectionStateEvent = exports.ConnectionStateEvent = {
|
|
22
|
+
stateChanged: 'connectionState:changed'
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* @class ConnectionStateHandler
|
|
26
|
+
*/
|
|
27
|
+
var ConnectionStateHandler = exports.ConnectionStateHandler = /*#__PURE__*/function (_EventsScope) {
|
|
28
|
+
(0, _inherits2.default)(ConnectionStateHandler, _EventsScope);
|
|
29
|
+
var _super = _createSuper(ConnectionStateHandler);
|
|
30
|
+
/**
|
|
31
|
+
* @param {WebRTCMeeting} webrtcMediaConnection
|
|
32
|
+
*/
|
|
33
|
+
function ConnectionStateHandler(webrtcMediaConnection) {
|
|
34
|
+
var _this;
|
|
35
|
+
(0, _classCallCheck2.default)(this, ConnectionStateHandler);
|
|
36
|
+
_this = _super.call(this);
|
|
37
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "webrtcMediaConnection", void 0);
|
|
38
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaConnectionState", void 0);
|
|
39
|
+
_this.webrtcMediaConnection = webrtcMediaConnection;
|
|
40
|
+
_this.webrtcMediaConnection.on(_internalMediaCore.Event.PEER_CONNECTION_STATE_CHANGED, _this.handleConnectionStateChange.bind((0, _assertThisInitialized2.default)(_this)));
|
|
41
|
+
_this.webrtcMediaConnection.on(_internalMediaCore.Event.ICE_CONNECTION_STATE_CHANGED, _this.handleConnectionStateChange.bind((0, _assertThisInitialized2.default)(_this)));
|
|
42
|
+
return _this;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Handler for connection state change.
|
|
47
|
+
*
|
|
48
|
+
* @returns {void}
|
|
49
|
+
*/
|
|
50
|
+
(0, _createClass2.default)(ConnectionStateHandler, [{
|
|
51
|
+
key: "handleConnectionStateChange",
|
|
52
|
+
value: function handleConnectionStateChange() {
|
|
53
|
+
var newConnectionState = this.webrtcMediaConnection.getConnectionState();
|
|
54
|
+
if (newConnectionState !== this.mediaConnectionState) {
|
|
55
|
+
this.mediaConnectionState = newConnectionState;
|
|
56
|
+
this.emit({
|
|
57
|
+
file: 'connectionStateHandler',
|
|
58
|
+
function: 'handleConnectionStateChange'
|
|
59
|
+
}, ConnectionStateEvent.stateChanged, {
|
|
60
|
+
state: this.mediaConnectionState
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}]);
|
|
65
|
+
return ConnectionStateHandler;
|
|
66
|
+
}(_eventsScope.default);
|
|
67
|
+
//# sourceMappingURL=connectionStateHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_internalMediaCore","require","_eventsScope","_interopRequireDefault","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","ConnectionStateEvent","exports","stateChanged","ConnectionStateHandler","_EventsScope","_inherits2","_super","webrtcMediaConnection","_this","_classCallCheck2","_defineProperty2","_assertThisInitialized2","on","Event","PEER_CONNECTION_STATE_CHANGED","handleConnectionStateChange","bind","ICE_CONNECTION_STATE_CHANGED","_createClass2","key","value","newConnectionState","getConnectionState","mediaConnectionState","emit","file","function","state","EventsScope"],"sources":["connectionStateHandler.ts"],"sourcesContent":["import {Event, ConnectionState} from '@webex/internal-media-core';\nimport EventsScope from '../common/events/events-scope';\nimport {Enum} from '../constants';\n\nexport const ConnectionStateEvent = {\n stateChanged: 'connectionState:changed',\n} as const;\n\nexport type ConnectionStateEvent = Enum<typeof ConnectionStateEvent>;\n\nexport interface ConnectionStateChangedEvent {\n /**\n * Current overall connection state\n */\n state: ConnectionState;\n}\n\n/**\n * @class ConnectionStateHandler\n */\nexport class ConnectionStateHandler extends EventsScope {\n private webrtcMediaConnection: any;\n\n private mediaConnectionState: ConnectionState;\n\n /**\n * @param {WebRTCMeeting} webrtcMediaConnection\n */\n constructor(webrtcMediaConnection) {\n super();\n\n this.webrtcMediaConnection = webrtcMediaConnection;\n\n this.webrtcMediaConnection.on(\n Event.PEER_CONNECTION_STATE_CHANGED,\n this.handleConnectionStateChange.bind(this)\n );\n\n this.webrtcMediaConnection.on(\n Event.ICE_CONNECTION_STATE_CHANGED,\n this.handleConnectionStateChange.bind(this)\n );\n }\n\n /**\n * Handler for connection state change.\n *\n * @returns {void}\n */\n private handleConnectionStateChange(): void {\n const newConnectionState = this.webrtcMediaConnection.getConnectionState();\n\n if (newConnectionState !== this.mediaConnectionState) {\n this.mediaConnectionState = newConnectionState;\n this.emit(\n {\n file: 'connectionStateHandler',\n function: 'handleConnectionStateChange',\n },\n ConnectionStateEvent.stateChanged,\n {state: this.mediaConnectionState}\n );\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAwD,SAAAG,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,CAAAC,OAAA,EAAAN,OAAA,GAAAO,MAAA,MAAAN,yBAAA,QAAAO,SAAA,OAAAH,gBAAA,CAAAC,OAAA,QAAAG,WAAA,EAAAF,MAAA,GAAAG,kBAAA,CAAAN,KAAA,EAAAO,SAAA,EAAAH,SAAA,YAAAD,MAAA,GAAAH,KAAA,CAAAQ,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,CAAAP,OAAA,QAAAC,MAAA;AAAA,SAAAL,0BAAA,eAAAY,OAAA,qBAAAJ,kBAAA,oBAAAA,kBAAA,CAAAK,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,kBAAA,CAAAO,OAAA,8CAAAI,CAAA;AAGjD,IAAMC,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EAClCE,YAAY,EAAE;AAChB,CAAU;AAWV;AACA;AACA;AAFA,IAGaC,sBAAsB,GAAAF,OAAA,CAAAE,sBAAA,0BAAAC,YAAA;EAAA,IAAAC,UAAA,CAAArB,OAAA,EAAAmB,sBAAA,EAAAC,YAAA;EAAA,IAAAE,MAAA,GAAA7B,YAAA,CAAA0B,sBAAA;EAKjC;AACF;AACA;EACE,SAAAA,uBAAYI,qBAAqB,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,CAAAzB,OAAA,QAAAmB,sBAAA;IACjCK,KAAA,GAAAF,MAAA,CAAAR,IAAA;IAAQ,IAAAY,gBAAA,CAAA1B,OAAA,MAAA2B,uBAAA,CAAA3B,OAAA,EAAAwB,KAAA;IAAA,IAAAE,gBAAA,CAAA1B,OAAA,MAAA2B,uBAAA,CAAA3B,OAAA,EAAAwB,KAAA;IAERA,KAAA,CAAKD,qBAAqB,GAAGA,qBAAqB;IAElDC,KAAA,CAAKD,qBAAqB,CAACK,EAAE,CAC3BC,wBAAK,CAACC,6BAA6B,EACnCN,KAAA,CAAKO,2BAA2B,CAACC,IAAI,KAAAL,uBAAA,CAAA3B,OAAA,EAAAwB,KAAA,CAAK,CAC5C,CAAC;IAEDA,KAAA,CAAKD,qBAAqB,CAACK,EAAE,CAC3BC,wBAAK,CAACI,4BAA4B,EAClCT,KAAA,CAAKO,2BAA2B,CAACC,IAAI,KAAAL,uBAAA,CAAA3B,OAAA,EAAAwB,KAAA,CAAK,CAC5C,CAAC;IAAC,OAAAA,KAAA;EACJ;;EAEA;AACF;AACA;AACA;AACA;EAJE,IAAAU,aAAA,CAAAlC,OAAA,EAAAmB,sBAAA;IAAAgB,GAAA;IAAAC,KAAA,EAKA,SAAAL,4BAAA,EAA4C;MAC1C,IAAMM,kBAAkB,GAAG,IAAI,CAACd,qBAAqB,CAACe,kBAAkB,CAAC,CAAC;MAE1E,IAAID,kBAAkB,KAAK,IAAI,CAACE,oBAAoB,EAAE;QACpD,IAAI,CAACA,oBAAoB,GAAGF,kBAAkB;QAC9C,IAAI,CAACG,IAAI,CACP;UACEC,IAAI,EAAE,wBAAwB;UAC9BC,QAAQ,EAAE;QACZ,CAAC,EACD1B,oBAAoB,CAACE,YAAY,EACjC;UAACyB,KAAK,EAAE,IAAI,CAACJ;QAAoB,CACnC,CAAC;MACH;IACF;EAAC;EAAA,OAAApB,sBAAA;AAAA,EA3CyCyB,oBAAW"}
|
package/dist/meeting/index.js
CHANGED
|
@@ -83,6 +83,7 @@ var _recordingController = _interopRequireDefault(require("../recording-controll
|
|
|
83
83
|
var _controlsOptionsManager = _interopRequireDefault(require("../controls-options-manager"));
|
|
84
84
|
var _permission = _interopRequireDefault(require("../common/errors/permission"));
|
|
85
85
|
var _locusMediaRequest = require("./locusMediaRequest");
|
|
86
|
+
var _connectionStateHandler = require("./connectionStateHandler");
|
|
86
87
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"]; if (!it) { if (_Array$isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
87
88
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
88
89
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
@@ -530,6 +531,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
530
531
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "sdpResponseTimer", void 0);
|
|
531
532
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "hasMediaConnectionConnectedAtLeastOnce", void 0);
|
|
532
533
|
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "joinWithMediaRetryInfo", void 0);
|
|
534
|
+
(0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "connectionStateHandler", void 0);
|
|
533
535
|
/**
|
|
534
536
|
* Callback called when a relay event is received from meeting LLM Connection
|
|
535
537
|
* @param {RelayEvent} e Event object coming from LLM Connection
|
|
@@ -832,7 +834,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
832
834
|
}
|
|
833
835
|
}
|
|
834
836
|
});
|
|
835
|
-
_this.
|
|
837
|
+
_this.connectionStateHandler = new _connectionStateHandler.ConnectionStateHandler(_this.mediaProperties.webrtcMediaConnection);
|
|
838
|
+
_this.connectionStateHandler.on(_connectionStateHandler.ConnectionStateEvent.stateChanged, function (event) {
|
|
836
839
|
var connectionFailed = function connectionFailed() {
|
|
837
840
|
_metrics.default.sendBehavioralMetric(_constants2.default.CONNECTION_FAILURE, {
|
|
838
841
|
correlation_id: _this.correlationId,
|
|
@@ -2073,6 +2076,15 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2073
2076
|
isRetry: false,
|
|
2074
2077
|
prevJoinResponse: undefined
|
|
2075
2078
|
};
|
|
2079
|
+
|
|
2080
|
+
/**
|
|
2081
|
+
* Connection state handler
|
|
2082
|
+
* @instance
|
|
2083
|
+
* @type {ConnectionStateHandler}
|
|
2084
|
+
* @private
|
|
2085
|
+
* @memberof Meeting
|
|
2086
|
+
*/
|
|
2087
|
+
_this.connectionStateHandler = undefined;
|
|
2076
2088
|
return _this;
|
|
2077
2089
|
}
|
|
2078
2090
|
|
|
@@ -6109,7 +6121,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6109
6121
|
key: "waitForMediaConnectionConnected",
|
|
6110
6122
|
value: (function () {
|
|
6111
6123
|
var _waitForMediaConnectionConnected = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23() {
|
|
6112
|
-
var _this$mediaProperties6, _this$mediaProperties7, _this$mediaProperties8, _this$mediaProperties9, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12
|
|
6124
|
+
var iceConnected, _this$mediaProperties6, _this$mediaProperties7, _this$mediaProperties8, _this$mediaProperties9, _this$mediaProperties10, _this$mediaProperties11, _this$mediaProperties12;
|
|
6113
6125
|
return _regenerator.default.wrap(function _callee23$(_context23) {
|
|
6114
6126
|
while (1) switch (_context23.prev = _context23.next) {
|
|
6115
6127
|
case 0:
|
|
@@ -6117,11 +6129,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6117
6129
|
_context23.next = 3;
|
|
6118
6130
|
return this.mediaProperties.waitForMediaConnectionConnected();
|
|
6119
6131
|
case 3:
|
|
6120
|
-
_context23.next =
|
|
6132
|
+
_context23.next = 10;
|
|
6121
6133
|
break;
|
|
6122
6134
|
case 5:
|
|
6123
6135
|
_context23.prev = 5;
|
|
6124
6136
|
_context23.t0 = _context23["catch"](0);
|
|
6137
|
+
iceConnected = _context23.t0.iceConnected;
|
|
6125
6138
|
if (!this.hasMediaConnectionConnectedAtLeastOnce) {
|
|
6126
6139
|
// Only send CA event for join flow if we haven't successfully connected media yet
|
|
6127
6140
|
// @ts-ignore
|
|
@@ -6136,7 +6149,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6136
6149
|
this.webex.internal.newMetrics.callDiagnosticMetrics.getErrorPayloadForClientErrorCode({
|
|
6137
6150
|
clientErrorCode: _internalPluginMetrics.CallDiagnosticUtils.generateClientErrorCodeForIceFailure({
|
|
6138
6151
|
signalingState: ((_this$mediaProperties6 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties6 === void 0 ? void 0 : (_this$mediaProperties7 = _this$mediaProperties6.multistreamConnection) === null || _this$mediaProperties7 === void 0 ? void 0 : (_this$mediaProperties8 = _this$mediaProperties7.pc) === null || _this$mediaProperties8 === void 0 ? void 0 : (_this$mediaProperties9 = _this$mediaProperties8.pc) === null || _this$mediaProperties9 === void 0 ? void 0 : _this$mediaProperties9.signalingState) || ((_this$mediaProperties10 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties10 === void 0 ? void 0 : (_this$mediaProperties11 = _this$mediaProperties10.mediaConnection) === null || _this$mediaProperties11 === void 0 ? void 0 : (_this$mediaProperties12 = _this$mediaProperties11.pc) === null || _this$mediaProperties12 === void 0 ? void 0 : _this$mediaProperties12.signalingState) || 'unknown',
|
|
6139
|
-
|
|
6152
|
+
iceConnected: iceConnected,
|
|
6140
6153
|
turnServerUsed: this.turnServerUsed
|
|
6141
6154
|
})
|
|
6142
6155
|
})]
|
|
@@ -6147,7 +6160,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6147
6160
|
});
|
|
6148
6161
|
}
|
|
6149
6162
|
throw new Error("Timed out waiting for media connection to be connected, correlationId=".concat(this.correlationId));
|
|
6150
|
-
case
|
|
6163
|
+
case 10:
|
|
6151
6164
|
case "end":
|
|
6152
6165
|
return _context23.stop();
|
|
6153
6166
|
}
|
|
@@ -6638,6 +6651,13 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6638
6651
|
selectedCandidatePairChanges,
|
|
6639
6652
|
numTransports,
|
|
6640
6653
|
reachabilityStats,
|
|
6654
|
+
_this$mediaProperties13,
|
|
6655
|
+
_this$mediaProperties14,
|
|
6656
|
+
_this$mediaProperties15,
|
|
6657
|
+
_this$mediaProperties16,
|
|
6658
|
+
_this$mediaProperties17,
|
|
6659
|
+
_this$mediaProperties18,
|
|
6660
|
+
_this$mediaProperties19,
|
|
6641
6661
|
_this$mediaProperties20,
|
|
6642
6662
|
_this$mediaProperties21,
|
|
6643
6663
|
_this$mediaProperties22,
|
|
@@ -6652,13 +6672,6 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6652
6672
|
_this$mediaProperties31,
|
|
6653
6673
|
_this$mediaProperties32,
|
|
6654
6674
|
_this$mediaProperties33,
|
|
6655
|
-
_this$mediaProperties34,
|
|
6656
|
-
_this$mediaProperties35,
|
|
6657
|
-
_this$mediaProperties36,
|
|
6658
|
-
_this$mediaProperties37,
|
|
6659
|
-
_this$mediaProperties38,
|
|
6660
|
-
_this$mediaProperties39,
|
|
6661
|
-
_this$mediaProperties40,
|
|
6662
6675
|
reachabilityMetrics,
|
|
6663
6676
|
_yield$this$mediaProp2,
|
|
6664
6677
|
_selectedCandidatePairChanges,
|
|
@@ -6842,9 +6855,9 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6842
6855
|
retriedWithTurnServer: this.retriedWithTurnServer,
|
|
6843
6856
|
isMultistream: this.isMultistream,
|
|
6844
6857
|
isJoinWithMediaRetry: this.joinWithMediaRetryInfo.isRetry,
|
|
6845
|
-
signalingState: ((_this$
|
|
6846
|
-
connectionState: ((_this$
|
|
6847
|
-
iceConnectionState: ((_this$
|
|
6858
|
+
signalingState: ((_this$mediaProperties13 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties13 === void 0 ? void 0 : (_this$mediaProperties14 = _this$mediaProperties13.multistreamConnection) === null || _this$mediaProperties14 === void 0 ? void 0 : (_this$mediaProperties15 = _this$mediaProperties14.pc) === null || _this$mediaProperties15 === void 0 ? void 0 : (_this$mediaProperties16 = _this$mediaProperties15.pc) === null || _this$mediaProperties16 === void 0 ? void 0 : _this$mediaProperties16.signalingState) || ((_this$mediaProperties17 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties17 === void 0 ? void 0 : (_this$mediaProperties18 = _this$mediaProperties17.mediaConnection) === null || _this$mediaProperties18 === void 0 ? void 0 : (_this$mediaProperties19 = _this$mediaProperties18.pc) === null || _this$mediaProperties19 === void 0 ? void 0 : _this$mediaProperties19.signalingState) || 'unknown',
|
|
6859
|
+
connectionState: ((_this$mediaProperties20 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties20 === void 0 ? void 0 : (_this$mediaProperties21 = _this$mediaProperties20.multistreamConnection) === null || _this$mediaProperties21 === void 0 ? void 0 : (_this$mediaProperties22 = _this$mediaProperties21.pc) === null || _this$mediaProperties22 === void 0 ? void 0 : (_this$mediaProperties23 = _this$mediaProperties22.pc) === null || _this$mediaProperties23 === void 0 ? void 0 : _this$mediaProperties23.connectionState) || ((_this$mediaProperties24 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties24 === void 0 ? void 0 : (_this$mediaProperties25 = _this$mediaProperties24.mediaConnection) === null || _this$mediaProperties25 === void 0 ? void 0 : (_this$mediaProperties26 = _this$mediaProperties25.pc) === null || _this$mediaProperties26 === void 0 ? void 0 : _this$mediaProperties26.connectionState) || 'unknown',
|
|
6860
|
+
iceConnectionState: ((_this$mediaProperties27 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties27 === void 0 ? void 0 : (_this$mediaProperties28 = _this$mediaProperties27.multistreamConnection) === null || _this$mediaProperties28 === void 0 ? void 0 : (_this$mediaProperties29 = _this$mediaProperties28.pc) === null || _this$mediaProperties29 === void 0 ? void 0 : (_this$mediaProperties30 = _this$mediaProperties29.pc) === null || _this$mediaProperties30 === void 0 ? void 0 : _this$mediaProperties30.iceConnectionState) || ((_this$mediaProperties31 = this.mediaProperties.webrtcMediaConnection) === null || _this$mediaProperties31 === void 0 ? void 0 : (_this$mediaProperties32 = _this$mediaProperties31.mediaConnection) === null || _this$mediaProperties32 === void 0 ? void 0 : (_this$mediaProperties33 = _this$mediaProperties32.pc) === null || _this$mediaProperties33 === void 0 ? void 0 : _this$mediaProperties33.iceConnectionState) || 'unknown'
|
|
6848
6861
|
}, reachabilityMetrics));
|
|
6849
6862
|
_context32.next = 64;
|
|
6850
6863
|
return this.cleanUpOnAddMediaFailure();
|
|
@@ -7625,10 +7638,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7625
7638
|
var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
7626
7639
|
var main = renderInfo.main,
|
|
7627
7640
|
content = renderInfo.content;
|
|
7628
|
-
var _this$
|
|
7629
|
-
mediaDirection = _this$
|
|
7630
|
-
remoteShareStream = _this$
|
|
7631
|
-
remoteVideoStream = _this$
|
|
7641
|
+
var _this$mediaProperties34 = this.mediaProperties,
|
|
7642
|
+
mediaDirection = _this$mediaProperties34.mediaDirection,
|
|
7643
|
+
remoteShareStream = _this$mediaProperties34.remoteShareStream,
|
|
7644
|
+
remoteVideoStream = _this$mediaProperties34.remoteVideoStream;
|
|
7632
7645
|
var layoutInfo = (0, _lodash.cloneDeep)(this.lastVideoLayoutInfo);
|
|
7633
7646
|
|
|
7634
7647
|
// TODO: We need a real time value for Audio, Video and Share send indicator
|
|
@@ -7900,8 +7913,8 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7900
7913
|
}, {
|
|
7901
7914
|
key: "checkMediaConnection",
|
|
7902
7915
|
value: function checkMediaConnection() {
|
|
7903
|
-
var _this$
|
|
7904
|
-
if ((_this$
|
|
7916
|
+
var _this$mediaProperties35;
|
|
7917
|
+
if ((_this$mediaProperties35 = this.mediaProperties) !== null && _this$mediaProperties35 !== void 0 && _this$mediaProperties35.webrtcMediaConnection) {
|
|
7905
7918
|
return;
|
|
7906
7919
|
}
|
|
7907
7920
|
throw new _webexErrors.NoMediaEstablishedYetError();
|
|
@@ -7961,14 +7974,14 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7961
7974
|
}, {
|
|
7962
7975
|
key: "updateTranscodedMediaConnection",
|
|
7963
7976
|
value: function updateTranscodedMediaConnection() {
|
|
7964
|
-
var _this$
|
|
7965
|
-
_this$
|
|
7966
|
-
_this$
|
|
7967
|
-
_this$
|
|
7968
|
-
_this$
|
|
7969
|
-
_this$
|
|
7970
|
-
_this$
|
|
7971
|
-
_this$
|
|
7977
|
+
var _this$mediaProperties36,
|
|
7978
|
+
_this$mediaProperties37,
|
|
7979
|
+
_this$mediaProperties38,
|
|
7980
|
+
_this$mediaProperties39,
|
|
7981
|
+
_this$mediaProperties40,
|
|
7982
|
+
_this$mediaProperties41,
|
|
7983
|
+
_this$mediaProperties42,
|
|
7984
|
+
_this$mediaProperties43,
|
|
7972
7985
|
_this50 = this;
|
|
7973
7986
|
var LOG_HEADER = 'Meeting:index#updateTranscodedMediaConnection -->';
|
|
7974
7987
|
_loggerProxy.default.logger.info("".concat(LOG_HEADER, " starting"));
|
|
@@ -7978,10 +7991,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
7978
7991
|
return this.mediaProperties.webrtcMediaConnection.update({
|
|
7979
7992
|
// TODO: RoapMediaConnection is not ready to use stream classes yet, so we pass the raw MediaStreamTrack for now
|
|
7980
7993
|
localTracks: {
|
|
7981
|
-
audio: ((_this$
|
|
7982
|
-
video: ((_this$
|
|
7983
|
-
screenShareVideo: ((_this$
|
|
7984
|
-
screenShareAudio: ((_this$
|
|
7994
|
+
audio: ((_this$mediaProperties36 = this.mediaProperties.audioStream) === null || _this$mediaProperties36 === void 0 ? void 0 : (_this$mediaProperties37 = _this$mediaProperties36.outputStream) === null || _this$mediaProperties37 === void 0 ? void 0 : _this$mediaProperties37.getTracks()[0]) || null,
|
|
7995
|
+
video: ((_this$mediaProperties38 = this.mediaProperties.videoStream) === null || _this$mediaProperties38 === void 0 ? void 0 : (_this$mediaProperties39 = _this$mediaProperties38.outputStream) === null || _this$mediaProperties39 === void 0 ? void 0 : _this$mediaProperties39.getTracks()[0]) || null,
|
|
7996
|
+
screenShareVideo: ((_this$mediaProperties40 = this.mediaProperties.shareVideoStream) === null || _this$mediaProperties40 === void 0 ? void 0 : (_this$mediaProperties41 = _this$mediaProperties40.outputStream) === null || _this$mediaProperties41 === void 0 ? void 0 : _this$mediaProperties41.getTracks()[0]) || null,
|
|
7997
|
+
screenShareAudio: ((_this$mediaProperties42 = this.mediaProperties.shareAudioStream) === null || _this$mediaProperties42 === void 0 ? void 0 : (_this$mediaProperties43 = _this$mediaProperties42.outputStream) === null || _this$mediaProperties43 === void 0 ? void 0 : _this$mediaProperties43.getTracks()[0]) || null
|
|
7985
7998
|
},
|
|
7986
7999
|
direction: {
|
|
7987
8000
|
audio: _media.default.getDirection(true, this.mediaProperties.mediaDirection.receiveAudio, this.mediaProperties.mediaDirection.sendAudio),
|