fcr-core 3.8.2 → 3.9.0-alpha
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/lib/chat-connector/type.d.ts +40 -0
- package/lib/{chat-connection → chat-connector}/type.js +1 -1
- package/lib/engine/index.d.ts +10 -11
- package/lib/engine/index.js +63 -72
- package/lib/engine/type.d.ts +96 -0
- package/lib/engine/type.js +5 -0
- package/lib/imports.d.ts +7 -4
- package/lib/imports.js +30 -4
- package/lib/index.d.ts +3 -2
- package/lib/index.js +21 -2
- package/lib/media-control/desktop.js +12 -12
- package/lib/media-control/mobile.js +4 -0
- package/lib/media-control/type.d.ts +32 -33
- package/lib/monitor-control/index.js +3 -3
- package/lib/peer-session/index.js +14 -14
- package/lib/peer-session/type.d.ts +1 -1
- package/lib/plugins/chat/chatroom.js +417 -0
- package/lib/{chat-connection → plugins/chat}/config.d.ts +1 -0
- package/lib/{chat-connection → plugins/chat}/config.js +2 -1
- package/lib/plugins/chat/connector.d.ts +38 -0
- package/lib/{chat-connection/index.js → plugins/chat/connector.js} +181 -61
- package/lib/room-control/ability-control/index.js +5 -4
- package/lib/room-control/ability-control/type.d.ts +5 -1
- package/lib/room-control/ability-control/type.js +4 -0
- package/lib/room-control/chatroom-control/type.d.ts +44 -35
- package/lib/room-control/group-control/index.js +9 -9
- package/lib/room-control/index.js +37 -22
- package/lib/room-control/interpreter-control/index.js +7 -4
- package/lib/room-control/interpreter-control/room.js +3 -3
- package/lib/room-control/interpreter-control/types.d.ts +2 -2
- package/lib/room-control/join-before-host-waitingroom-control/index.js +3 -3
- package/lib/room-control/mainroom-control/index.js +15 -13
- package/lib/room-control/privilege-control/index.js +39 -24
- package/lib/room-control/privilege-control/type.d.ts +15 -15
- package/lib/room-control/room-connector-control/index.js +7 -5
- package/lib/room-control/room-connector-control/type.d.ts +1 -1
- package/lib/room-control/room-control-factory.d.ts +3 -3
- package/lib/room-control/room-control-factory.js +7 -7
- package/lib/room-control/room-session/index.js +17 -15
- package/lib/room-control/room-session/type.d.ts +3 -3
- package/lib/room-control/sharing-control/index.js +13 -7
- package/lib/room-control/stream-control/index.js +18 -16
- package/lib/room-control/stream-control/type.d.ts +5 -5
- package/lib/room-control/stt-control/index.js +38 -31
- package/lib/room-control/type.d.ts +19 -19
- package/lib/room-control/user-control/index.js +20 -22
- package/lib/room-control/user-control/type.d.ts +1 -1
- package/lib/room-control/waitingroom-control/index.js +11 -11
- package/lib/room-control/whiteboard-control-v1/board-window.d.ts +21 -20
- package/lib/room-control/whiteboard-control-v1/board-window.js +27 -8
- package/lib/room-control/whiteboard-control-v1/factory.js +1 -1
- package/lib/room-control/whiteboard-control-v1/index.js +26 -18
- package/lib/room-control/whiteboard-control-v1/type.d.ts +26 -25
- package/lib/room-control/whiteboard-control-v1/type.js +1 -0
- package/lib/room-control/whiteboard-control-v2/annotation-control/control.d.ts +15 -6
- package/lib/room-control/whiteboard-control-v2/annotation-control/control.js +39 -5
- package/lib/room-control/whiteboard-control-v2/annotation-control/factory.d.ts +4 -5
- package/lib/room-control/whiteboard-control-v2/annotation-control/factory.js +6 -5
- package/lib/room-control/whiteboard-control-v2/annotation-control/type.d.ts +7 -1
- package/lib/room-control/whiteboard-control-v2/base/index.d.ts +9 -8
- package/lib/room-control/whiteboard-control-v2/base/index.js +84 -42
- package/lib/room-control/whiteboard-control-v2/base/main-window.d.ts +16 -15
- package/lib/room-control/whiteboard-control-v2/base/main-window.js +23 -4
- package/lib/room-control/whiteboard-control-v2/type.d.ts +17 -17
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.d.ts +12 -6
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.js +64 -18
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/factory.d.ts +2 -2
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/factory.js +10 -10
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/type.d.ts +1 -1
- package/lib/room-router/index.js +10 -7
- package/lib/room-router/type.d.ts +1 -1
- package/lib/schema.d.ts +24 -46
- package/lib/schema.js +1 -2
- package/lib/service/api.d.ts +5 -3
- package/lib/service/api.js +17 -12
- package/lib/type.d.ts +64 -45
- package/lib/type.js +76 -11
- package/lib/utilities/abortable-retry.d.ts +38 -0
- package/lib/utilities/abortable-retry.js +61 -0
- package/lib/utilities/dual-video-stream-config.d.ts +6 -0
- package/lib/utilities/dual-video-stream-config.js +25 -0
- package/lib/utilities/error-helpers.d.ts +10 -9
- package/lib/utilities/error-helpers.js +12 -11
- package/lib/utilities/error.d.ts +4 -40
- package/lib/utilities/error.js +20 -77
- package/lib/utilities/join-helper.js +2 -2
- package/lib/utilities/logger.d.ts +2 -2
- package/lib/utilities/logger.js +6 -25
- package/lib/utilities/package-info.d.ts +1 -2
- package/lib/utilities/package-info.js +4 -8
- package/lib/utilities/parameters.js +88 -15
- package/lib/utilities/validate-params.js +1 -1
- package/lib/utilities/video-encoder-config.d.ts +9 -0
- package/lib/utilities/video-encoder-config.js +109 -0
- package/lib-es/{chat-connection → chat-connector}/type.js +1 -1
- package/lib-es/engine/index.js +46 -56
- package/lib-es/engine/type.js +1 -0
- package/lib-es/imports.js +5 -3
- package/lib-es/index.js +2 -1
- package/lib-es/media-control/desktop.js +12 -12
- package/lib-es/media-control/mobile.js +4 -0
- package/lib-es/monitor-control/index.js +3 -3
- package/lib-es/peer-session/index.js +16 -15
- package/lib-es/plugins/chat/chatroom.js +409 -0
- package/lib-es/{chat-connection → plugins/chat}/config.js +2 -1
- package/lib-es/{chat-connection/index.js → plugins/chat/connector.js} +178 -58
- package/lib-es/room-control/ability-control/index.js +5 -4
- package/lib-es/room-control/ability-control/type.js +4 -0
- package/lib-es/room-control/group-control/index.js +11 -10
- package/lib-es/room-control/index.js +40 -26
- package/lib-es/room-control/interpreter-control/index.js +10 -5
- package/lib-es/room-control/interpreter-control/room.js +3 -3
- package/lib-es/room-control/join-before-host-waitingroom-control/index.js +4 -3
- package/lib-es/room-control/mainroom-control/index.js +16 -17
- package/lib-es/room-control/privilege-control/index.js +43 -29
- package/lib-es/room-control/room-connector-control/index.js +9 -6
- package/lib-es/room-control/room-control-factory.js +6 -6
- package/lib-es/room-control/room-session/index.js +21 -22
- package/lib-es/room-control/sharing-control/index.js +13 -7
- package/lib-es/room-control/stream-control/index.js +21 -18
- package/lib-es/room-control/stt-control/index.js +23 -15
- package/lib-es/room-control/user-control/index.js +23 -23
- package/lib-es/room-control/waitingroom-control/index.js +10 -9
- package/lib-es/room-control/whiteboard-control-v1/board-window.js +27 -8
- package/lib-es/room-control/whiteboard-control-v1/factory.js +1 -1
- package/lib-es/room-control/whiteboard-control-v1/index.js +26 -17
- package/lib-es/room-control/whiteboard-control-v1/type.js +1 -0
- package/lib-es/room-control/whiteboard-control-v2/annotation-control/control.js +39 -5
- package/lib-es/room-control/whiteboard-control-v2/annotation-control/factory.js +7 -6
- package/lib-es/room-control/whiteboard-control-v2/base/index.js +86 -42
- package/lib-es/room-control/whiteboard-control-v2/base/main-window.js +23 -4
- package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/control.js +60 -13
- package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/factory.js +10 -10
- package/lib-es/room-router/index.js +10 -6
- package/lib-es/schema.js +1 -2
- package/lib-es/service/api.js +17 -12
- package/lib-es/type.js +70 -18
- package/lib-es/utilities/abortable-retry.js +54 -0
- package/lib-es/utilities/dual-video-stream-config.js +19 -0
- package/lib-es/utilities/error-helpers.js +13 -12
- package/lib-es/utilities/error.js +9 -75
- package/lib-es/utilities/join-helper.js +4 -3
- package/lib-es/utilities/logger.js +7 -23
- package/lib-es/utilities/package-info.js +4 -6
- package/lib-es/utilities/parameters.js +88 -15
- package/lib-es/utilities/validate-params.js +3 -2
- package/lib-es/utilities/video-encoder-config.js +103 -0
- package/package.json +7 -7
- package/lib/chat-connection/index.d.ts +0 -24
- package/lib/chat-connection/type.d.ts +0 -17
- package/lib/plugins/chatroom.js +0 -454
- package/lib/room-control/chatroom-control/config.d.ts +0 -51
- package/lib/room-control/chatroom-control/config.js +0 -105
- package/lib/utilities/storage.d.ts +0 -8
- package/lib/utilities/storage.js +0 -33
- package/lib-es/plugins/chatroom.js +0 -446
- package/lib-es/room-control/chatroom-control/config.js +0 -100
- package/lib-es/utilities/storage.js +0 -27
- /package/lib/plugins/{chatroom.d.ts → chat/chatroom.d.ts} +0 -0
package/lib/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export type {
|
|
2
|
-
export { FcrStreamLatencyLevel, FcrPermissionAction, FcrPrivilegeUserRole, FcrUserRole, FcrStreamState, FcrRegion, FcrStreamType, FcrUserUpdatedReason, FcrRoomConnectorType, FcrVideoSourceType, FcrAudioSourceType, FcrMediaSourceState, FcrVideoRenderMode, FcrVideoStreamType, FcrCapability, FcrAiDenoiseLevel, FcrStreamPrivilegeOperation, FcrStreamPrivilegeVideoSourceType, FcrStreamPrivilegeAudioSourceType, FcrConnectionState,
|
|
1
|
+
export type { FcrDesktopMediaControl, FcrDesktopMediaObserver, FcrMobileMediaControl, FcrMobileMediaObserver, FcrMonitorControl, FcrMonitorObserver, FcrBaseRoomControl, FcrRoomObserver, FcrUserControl, FcrUserObserver, FcrStreamControl, FcrStreamObserver, FcrPrivilegeControl, FcrPermission, FcrBoardMainWindow, FcrBoardMainWindowObserver, FcrColor, } from './type';
|
|
2
|
+
export { FcrStreamLatencyLevel, FcrPermissionAction, FcrPrivilegeUserRole, FcrUserRole, FcrStreamState, FcrRegion, FcrStreamType, FcrUserUpdatedReason, FcrRoomConnectorType, FcrVideoSourceType, FcrAudioSourceType, FcrMediaSourceState, FcrVideoRenderMode, FcrVideoStreamType, FcrCapability, FcrAiDenoiseLevel, FcrStreamPrivilegeOperation, FcrStreamPrivilegeVideoSourceType, FcrStreamPrivilegeAudioSourceType, FcrConnectionState, registerPlugin, FcrBoardToolType, FcrBoardShape, FcrCoreEngineConfig, FcrVideoEncoderConfig, FcrDualVideoStreamConfig, } from './type';
|
|
3
|
+
export { FcrCoreEngineImpl as FcrCoreEngine } from './engine';
|
|
3
4
|
export { FcrError } from './type';
|
package/lib/index.js
CHANGED
|
@@ -42,7 +42,19 @@ Object.defineProperty(exports, "FcrConnectionState", {
|
|
|
42
42
|
Object.defineProperty(exports, "FcrCoreEngine", {
|
|
43
43
|
enumerable: true,
|
|
44
44
|
get: function () {
|
|
45
|
-
return
|
|
45
|
+
return _engine.FcrCoreEngineImpl;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(exports, "FcrCoreEngineConfig", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _type.FcrCoreEngineConfig;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
Object.defineProperty(exports, "FcrDualVideoStreamConfig", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _type.FcrDualVideoStreamConfig;
|
|
46
58
|
}
|
|
47
59
|
});
|
|
48
60
|
Object.defineProperty(exports, "FcrError", {
|
|
@@ -129,6 +141,12 @@ Object.defineProperty(exports, "FcrUserUpdatedReason", {
|
|
|
129
141
|
return _type.FcrUserUpdatedReason;
|
|
130
142
|
}
|
|
131
143
|
});
|
|
144
|
+
Object.defineProperty(exports, "FcrVideoEncoderConfig", {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return _type.FcrVideoEncoderConfig;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
132
150
|
Object.defineProperty(exports, "FcrVideoRenderMode", {
|
|
133
151
|
enumerable: true,
|
|
134
152
|
get: function () {
|
|
@@ -153,4 +171,5 @@ Object.defineProperty(exports, "registerPlugin", {
|
|
|
153
171
|
return _type.registerPlugin;
|
|
154
172
|
}
|
|
155
173
|
});
|
|
156
|
-
var _type = require("./type");
|
|
174
|
+
var _type = require("./type");
|
|
175
|
+
var _engine = require("./engine");
|
|
@@ -28,7 +28,7 @@ var _imports = require("../imports");
|
|
|
28
28
|
var _schema = require("../schema");
|
|
29
29
|
var _validateParams = _interopRequireDefault(require("../utilities/validate-params"));
|
|
30
30
|
var _logger = require("../utilities/logger");
|
|
31
|
-
let _initProto, _getCameraTrackDecs, _getMicrophoneTrackDecs, _getScreenTrackDecs, _getLoopbackTrackDecs, _setSelectedSpeakerDecs, _startSelectedSpeakerTestDecs, _isCapabilitySupportedDecs, _adjustOutputVolumeDecs, _setSelectedSpeakerVolumeDecs;
|
|
31
|
+
let _initProto, _getCameraTrackDecs, _getMicrophoneTrackDecs, _getScreenTrackDecs, _getLoopbackTrackDecs, _setSelectedSpeakerDecs, _startSelectedSpeakerTestDecs, _stopSelectedSpeakerTestDecs, _isCapabilitySupportedDecs, _adjustOutputVolumeDecs, _setSelectedSpeakerVolumeDecs, _observeSystemSelectedSpeakerChangedDecs, _observeSystemSelectedMicrophoneChangedDecs, _disableAGCDecs, _enableAGCDecs;
|
|
32
32
|
function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function (e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O.static = l, O.private = f, f ? 2 === o ? k = function (e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function (e) { return e[n]; }, (o < 2 || 4 === o) && (F = function (e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == typeof P && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol.for("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol.for("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function (t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
|
|
33
33
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
34
34
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
@@ -39,16 +39,16 @@ function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side
|
|
|
39
39
|
*/
|
|
40
40
|
class FcrDesktopMediaControlImpl {
|
|
41
41
|
static {
|
|
42
|
-
[_initProto] = _applyDecs(this, [[_imports.trace, 2, "getLoopbackList"], [_imports.trace, 2, "getCameraList"], [_imports.trace, 2, "getMicrophoneList"], [_imports.trace, 2, "getSpeakerList"], [_imports.trace, 2, "getSystemSelectedMicrophone"], [_imports.trace, 2, "getSystemSelectedSpeaker"], [_imports.trace, 2, "getWindowList"], [_imports.trace, 2, "getDisplayList"], [_getCameraTrackDecs, 2, "getCameraTrack"], [_getMicrophoneTrackDecs, 2, "getMicrophoneTrack"], [_getScreenTrackDecs, 2, "getScreenTrack"], [_getLoopbackTrackDecs, 2, "getLoopbackTrack"], [_setSelectedSpeakerDecs, 2, "setSelectedSpeaker"], [_startSelectedSpeakerTestDecs, 2, "startSelectedSpeakerTest"], [
|
|
42
|
+
[_initProto] = _applyDecs(this, [[_imports.trace, 2, "getLoopbackList"], [_imports.trace, 2, "getCameraList"], [_imports.trace, 2, "getMicrophoneList"], [_imports.trace, 2, "getSpeakerList"], [_imports.trace, 2, "getSystemSelectedMicrophone"], [_imports.trace, 2, "getSystemSelectedSpeaker"], [_imports.trace, 2, "getWindowList"], [_imports.trace, 2, "getDisplayList"], [_getCameraTrackDecs, 2, "getCameraTrack"], [_getMicrophoneTrackDecs, 2, "getMicrophoneTrack"], [_getScreenTrackDecs, 2, "getScreenTrack"], [_getLoopbackTrackDecs, 2, "getLoopbackTrack"], [_setSelectedSpeakerDecs, 2, "setSelectedSpeaker"], [_startSelectedSpeakerTestDecs, 2, "startSelectedSpeakerTest"], [_stopSelectedSpeakerTestDecs, 2, "stopSelectedSpeakerTest"], [_isCapabilitySupportedDecs, 2, "isCapabilitySupported"], [_adjustOutputVolumeDecs, 2, "adjustOutputVolume"], [_setSelectedSpeakerVolumeDecs, 2, "setSelectedSpeakerVolume"], [_imports.trace, 2, "getSelectedSpeakerVolume"], [_observeSystemSelectedSpeakerChangedDecs, 2, "observeSystemSelectedSpeakerChanged"], [_observeSystemSelectedMicrophoneChangedDecs, 2, "observeSystemSelectedMicrophoneChanged"], [_disableAGCDecs, 2, "disableAGC"], [_enableAGCDecs, 2, "enableAGC"]], []).e;
|
|
43
43
|
}
|
|
44
|
-
[(_getCameraTrackDecs = [_imports.trace, (0, _validateParams.default)(_schema.stringSchema)], _getMicrophoneTrackDecs = [_imports.trace, (0, _validateParams.default)(_schema.stringSchema)], _getScreenTrackDecs = [_imports.trace, (0, _validateParams.default)(_schema.stringSchema)], _getLoopbackTrackDecs = [_imports.trace, (0, _validateParams.default)(_schema.stringSchema)], _setSelectedSpeakerDecs = [_imports.trace, (0, _validateParams.default)(_schema.stringSchema)], _startSelectedSpeakerTestDecs = [_imports.trace, (0, _validateParams.default)(_schema.stringSchema)], _isCapabilitySupportedDecs = [_imports.trace, (0, _validateParams.default)(_schema.fcrCapabilitySchema)], _adjustOutputVolumeDecs = [_imports.trace, (0, _validateParams.default)(_schema.numberSchema)], _setSelectedSpeakerVolumeDecs = [_imports.trace, (0, _validateParams.default)(_schema.numberSchema)], "logger")] = (_initProto(this), (0, _logger.createLogger)({
|
|
44
|
+
[(_getCameraTrackDecs = [(0, _imports.trace)(['deviceId']), (0, _validateParams.default)(_schema.stringSchema)], _getMicrophoneTrackDecs = [(0, _imports.trace)(['deviceId']), (0, _validateParams.default)(_schema.stringSchema)], _getScreenTrackDecs = [(0, _imports.trace)(['sourceId']), (0, _validateParams.default)(_schema.stringSchema)], _getLoopbackTrackDecs = [(0, _imports.trace)(['sourceId']), (0, _validateParams.default)(_schema.stringSchema)], _setSelectedSpeakerDecs = [(0, _imports.trace)(['deviceId'], true), (0, _validateParams.default)(_schema.stringSchema)], _startSelectedSpeakerTestDecs = [(0, _imports.trace)(['url'], true), (0, _validateParams.default)(_schema.stringSchema)], _stopSelectedSpeakerTestDecs = (0, _imports.trace)(true), _isCapabilitySupportedDecs = [(0, _imports.trace)(['capability']), (0, _validateParams.default)(_schema.fcrCapabilitySchema)], _adjustOutputVolumeDecs = [(0, _imports.trace)(['volume'], true), (0, _validateParams.default)(_schema.numberSchema)], _setSelectedSpeakerVolumeDecs = [(0, _imports.trace)(['volume'], true), (0, _validateParams.default)(_schema.numberSchema)], _observeSystemSelectedSpeakerChangedDecs = (0, _imports.trace)(true), _observeSystemSelectedMicrophoneChangedDecs = (0, _imports.trace)(true), _disableAGCDecs = (0, _imports.trace)(true), _enableAGCDecs = (0, _imports.trace)(true), "logger")] = (_initProto(this), (0, _logger.createLogger)({
|
|
45
45
|
prefix: 'FcrDesktopMediaControlImpl'
|
|
46
46
|
}));
|
|
47
47
|
_observable = new _imports.AgoraObservable();
|
|
48
|
-
_cameraLogObserver = (0, _logger.generateLogObserver)(this.logger, ['onCameraStateUpdated']);
|
|
49
|
-
_microphoneLogObserver = (0, _logger.generateLogObserver)(this.logger, ['onMicrophoneStateUpdated']);
|
|
50
|
-
_screenLogObserver = (0, _logger.generateLogObserver)(this.logger, ['onScreenCaptureStateUpdated']);
|
|
51
|
-
_loopbackLogObserver = (0, _logger.generateLogObserver)(this.logger, ['onLoopbackRecordingStateUpdated']);
|
|
48
|
+
_cameraLogObserver = (0, _logger.generateLogObserver)(this.logger, [['onCameraStateUpdated', ['deviceId', 'state']]]);
|
|
49
|
+
_microphoneLogObserver = (0, _logger.generateLogObserver)(this.logger, [['onMicrophoneStateUpdated', ['deviceId', 'state']]]);
|
|
50
|
+
_screenLogObserver = (0, _logger.generateLogObserver)(this.logger, [['onScreenCaptureStateUpdated', ['sourceId', 'state']]]);
|
|
51
|
+
_loopbackLogObserver = (0, _logger.generateLogObserver)(this.logger, [['onLoopbackRecordingStateUpdated', ['deviceId', 'state']]]);
|
|
52
52
|
constructor(mediaControl) {
|
|
53
53
|
this._mediaControl = mediaControl;
|
|
54
54
|
this._mediaControl.addObserver({
|
|
@@ -138,22 +138,22 @@ class FcrDesktopMediaControlImpl {
|
|
|
138
138
|
return track;
|
|
139
139
|
}
|
|
140
140
|
setSelectedSpeaker(deviceId) {
|
|
141
|
-
this._mediaControl.setSelectedSpeaker(deviceId);
|
|
141
|
+
return this._mediaControl.setSelectedSpeaker(deviceId);
|
|
142
142
|
}
|
|
143
143
|
startSelectedSpeakerTest(url) {
|
|
144
|
-
this._mediaControl.startSpeakerTest(url);
|
|
144
|
+
return this._mediaControl.startSpeakerTest(url);
|
|
145
145
|
}
|
|
146
146
|
stopSelectedSpeakerTest() {
|
|
147
|
-
this._mediaControl.stopSpeakerTest();
|
|
147
|
+
return this._mediaControl.stopSpeakerTest();
|
|
148
148
|
}
|
|
149
149
|
isCapabilitySupported(capability) {
|
|
150
150
|
return this._mediaControl.isCapabilitySupported(capability);
|
|
151
151
|
}
|
|
152
152
|
adjustOutputVolume(volume) {
|
|
153
|
-
this._mediaControl.adjustAudioOutputVolume(volume);
|
|
153
|
+
return this._mediaControl.adjustAudioOutputVolume(volume);
|
|
154
154
|
}
|
|
155
155
|
setSelectedSpeakerVolume(volume) {
|
|
156
|
-
this._mediaControl.setSelectedSpeakerVolume(volume);
|
|
156
|
+
return this._mediaControl.setSelectedSpeakerVolume(volume);
|
|
157
157
|
}
|
|
158
158
|
getSelectedSpeakerVolume() {
|
|
159
159
|
return this._mediaControl.getSelectedSpeakerVolume();
|
|
@@ -127,6 +127,10 @@ class FcrMobileMediaControlImpl {
|
|
|
127
127
|
stopScreenCapture() {
|
|
128
128
|
this._mediaControl.getScreenTrack(this._screenDeviceName).stop();
|
|
129
129
|
}
|
|
130
|
+
startScreenCaptureWithParams(params) {
|
|
131
|
+
this._mediaControl.getScreenTrack(this._screenDeviceName).setCaptureParams(params);
|
|
132
|
+
this._mediaControl.getScreenTrack(this._screenDeviceName).start(_imports.AgoraRteScreenCaptureType.SCREEN, []);
|
|
133
|
+
}
|
|
130
134
|
getScreenCaptureState() {
|
|
131
135
|
return this._mediaControl.getScreenTrack(this._screenDeviceName).getState();
|
|
132
136
|
}
|
|
@@ -118,14 +118,6 @@ export type FcrAudioRawDataConfig = AgoraRteAudioRawDataConfig;
|
|
|
118
118
|
export type FcrScreenCaptureParams = AgoraRteScreenCaptureParams;
|
|
119
119
|
export type FcrCameraCaptureParams = AgoraRteCameraCaptureParams;
|
|
120
120
|
export interface FcrAudioEffectEnhancer {
|
|
121
|
-
/**
|
|
122
|
-
* Enables the AI denoiser for the audio track.
|
|
123
|
-
*/
|
|
124
|
-
enableAiDenoiser(): void;
|
|
125
|
-
/**
|
|
126
|
-
* Disables the AI denoiser for the audio track.
|
|
127
|
-
*/
|
|
128
|
-
disableAiDenoiser(): void;
|
|
129
121
|
/**
|
|
130
122
|
* Sets the AI denoiser level for the audio track.
|
|
131
123
|
* @param level The AI denoiser level to set.
|
|
@@ -140,13 +132,13 @@ export interface FcrAudioEffectEnhancer {
|
|
|
140
132
|
*/
|
|
141
133
|
disableHiFiMode(): void;
|
|
142
134
|
/**
|
|
143
|
-
* Enables
|
|
135
|
+
* Enables AEC for the audio track.
|
|
144
136
|
*/
|
|
145
|
-
|
|
137
|
+
enableAEC(): void;
|
|
146
138
|
/**
|
|
147
|
-
* Disables
|
|
139
|
+
* Disables AEC for the audio track.
|
|
148
140
|
*/
|
|
149
|
-
|
|
141
|
+
disableAEC(): void;
|
|
150
142
|
/**
|
|
151
143
|
* Enables stereo mode for the audio track.
|
|
152
144
|
*/
|
|
@@ -280,35 +272,35 @@ export interface FcrCameraTrack {
|
|
|
280
272
|
/**
|
|
281
273
|
* Starts the camera.
|
|
282
274
|
*/
|
|
283
|
-
start():
|
|
275
|
+
start(): number;
|
|
284
276
|
/**
|
|
285
277
|
* Stops the camera.
|
|
286
278
|
*/
|
|
287
|
-
stop():
|
|
279
|
+
stop(): number;
|
|
288
280
|
/**
|
|
289
281
|
* Starts the camera test.
|
|
290
282
|
*/
|
|
291
|
-
startTest():
|
|
283
|
+
startTest(): number;
|
|
292
284
|
/**
|
|
293
285
|
* Stops the camera test.
|
|
294
286
|
*/
|
|
295
|
-
stopTest():
|
|
287
|
+
stopTest(): number;
|
|
296
288
|
/**
|
|
297
289
|
* Starts the camera preview with the specified configuration and view.
|
|
298
290
|
* @param config The configuration for the video render.
|
|
299
291
|
* @param view The HTML element to render the video on.
|
|
300
292
|
*/
|
|
301
|
-
startPreview(config: FcrRenderConfig, view: FcrRenderView):
|
|
293
|
+
startPreview(config: FcrRenderConfig, view: FcrRenderView): number;
|
|
302
294
|
/**
|
|
303
295
|
* Stops the camera preview.
|
|
304
296
|
* @param view The HTML element to render the video on.
|
|
305
297
|
*/
|
|
306
|
-
stopPreview(view: FcrRenderView):
|
|
298
|
+
stopPreview(view: FcrRenderView): number;
|
|
307
299
|
/**
|
|
308
300
|
* Sets the capture parameters for the camera.
|
|
309
301
|
* @param params The parameters for the video capture.
|
|
310
302
|
*/
|
|
311
|
-
setCaptureParams(params: FcrCameraCaptureParams):
|
|
303
|
+
setCaptureParams(params: FcrCameraCaptureParams): number;
|
|
312
304
|
/**
|
|
313
305
|
* Retrieves the video effect enhancer.
|
|
314
306
|
*
|
|
@@ -321,7 +313,7 @@ export interface FcrCameraTrack {
|
|
|
321
313
|
* Sets the video orientation for the camera.
|
|
322
314
|
* @param orientation orientation of the camera video.
|
|
323
315
|
*/
|
|
324
|
-
setVideoOrientation(orientation: FcrVideoOrientation):
|
|
316
|
+
setVideoOrientation(orientation: FcrVideoOrientation): number;
|
|
325
317
|
/**
|
|
326
318
|
*
|
|
327
319
|
* @param observer
|
|
@@ -351,16 +343,16 @@ export interface FcrLoopbackTrack {
|
|
|
351
343
|
/**
|
|
352
344
|
* Starts the loopback audio track.
|
|
353
345
|
*/
|
|
354
|
-
start():
|
|
346
|
+
start(): number;
|
|
355
347
|
/**
|
|
356
348
|
* Stops the loopback audio track.
|
|
357
349
|
*/
|
|
358
|
-
stop():
|
|
350
|
+
stop(): number;
|
|
359
351
|
/**
|
|
360
352
|
* Updates the signal volume for the loopback audio track.
|
|
361
353
|
* @param volume Range from 0 to 400. 100 is the default volume.
|
|
362
354
|
*/
|
|
363
|
-
adjustVolume(volume: number):
|
|
355
|
+
adjustVolume(volume: number): number;
|
|
364
356
|
/**
|
|
365
357
|
*
|
|
366
358
|
* @param observer
|
|
@@ -404,25 +396,25 @@ export interface FcrMicrophoneTrack {
|
|
|
404
396
|
* - {@link startTest} should be called after this method when you are not in a channel,
|
|
405
397
|
* otherwise onLocalMicrophoneAudioStateUpdated may not be triggered in electron.
|
|
406
398
|
*/
|
|
407
|
-
start():
|
|
399
|
+
start(): number;
|
|
408
400
|
/**
|
|
409
401
|
* Stops the microphone audio track for the specified device.
|
|
410
402
|
*/
|
|
411
|
-
stop():
|
|
403
|
+
stop(): number;
|
|
412
404
|
/**
|
|
413
405
|
* Starts the microphone test for the specified device.
|
|
414
406
|
* @param interval The interval for the microphone test.
|
|
415
407
|
*/
|
|
416
|
-
startTest(interval: number):
|
|
408
|
+
startTest(interval: number): number;
|
|
417
409
|
/**
|
|
418
410
|
* Stops the microphone test for the specified device.
|
|
419
411
|
*/
|
|
420
|
-
stopTest():
|
|
412
|
+
stopTest(): number;
|
|
421
413
|
/**
|
|
422
414
|
* Updates the signal volume for the microphone audio track.
|
|
423
415
|
* @param volume Range from 0 to 400. 100 is the default volume.
|
|
424
416
|
*/
|
|
425
|
-
adjustVolume(volume: number):
|
|
417
|
+
adjustVolume(volume: number): number;
|
|
426
418
|
/**
|
|
427
419
|
* Retrieves the audio effect enhancer.
|
|
428
420
|
*
|
|
@@ -455,27 +447,33 @@ export interface FcrScreenTrack {
|
|
|
455
447
|
* @param config The configuration for the video render.
|
|
456
448
|
* @param view The HTML element to render the video on.
|
|
457
449
|
*/
|
|
458
|
-
startPreview(config: FcrRenderConfig, view: FcrRenderView):
|
|
450
|
+
startPreview(config: FcrRenderConfig, view: FcrRenderView): number;
|
|
459
451
|
/**
|
|
460
452
|
* Stops the screen preview.
|
|
461
453
|
* @param view The HTML element to render the video on.
|
|
462
454
|
*/
|
|
463
|
-
stopPreview(view: FcrRenderView):
|
|
455
|
+
stopPreview(view: FcrRenderView): number;
|
|
464
456
|
/**
|
|
465
457
|
* Sets the capture parameters for the screen.
|
|
466
458
|
* @param params The parameters for the video capture.
|
|
467
459
|
*/
|
|
468
|
-
setCaptureParams(params: FcrScreenCaptureParams):
|
|
460
|
+
setCaptureParams(params: FcrScreenCaptureParams): number;
|
|
469
461
|
/**
|
|
470
462
|
* Starts the screen video track with the specified type and parameters.
|
|
471
463
|
* @param type The type of screen capture.
|
|
472
464
|
* @param excludeWindowList The list of window IDs to exclude from the screen capture.
|
|
473
465
|
*/
|
|
474
|
-
start(type: FcrScreenCaptureType, excludeWindowList: string[]):
|
|
466
|
+
start(type: FcrScreenCaptureType, excludeWindowList: string[]): number;
|
|
475
467
|
/**
|
|
476
468
|
* Stops the screen video track for the specified source.
|
|
477
469
|
*/
|
|
478
|
-
stop():
|
|
470
|
+
stop(): number;
|
|
471
|
+
/**
|
|
472
|
+
* Updates the list of window to exclude from the screen capture.
|
|
473
|
+
* @param excludeWindowList The list of window to exclude.
|
|
474
|
+
* @returns A number indicating the result of the update operation.
|
|
475
|
+
*/
|
|
476
|
+
updateExcludeWindows(excludeWindowList: string[]): number;
|
|
479
477
|
/**
|
|
480
478
|
* Adds an observer for the screen video track.
|
|
481
479
|
* @param observer The observer for the screen video track.
|
|
@@ -642,6 +640,7 @@ export interface FcrMobileMediaControl {
|
|
|
642
640
|
stopCameraPreviewOnAllCanvas(): void;
|
|
643
641
|
isCapabilitySupported(capability: FcrCapability): boolean;
|
|
644
642
|
startScreenCapture(excludeWindowList: string[]): void;
|
|
643
|
+
startScreenCaptureWithParams(params: FcrScreenCaptureParams): void;
|
|
645
644
|
stopScreenCapture(): void;
|
|
646
645
|
getScreenCaptureState(): FcrMediaSourceState;
|
|
647
646
|
startLoopbackRecording(): void;
|
|
@@ -22,7 +22,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
22
22
|
});
|
|
23
23
|
exports.FcrMonitorControlImpl = void 0;
|
|
24
24
|
var _imports = require("../imports");
|
|
25
|
-
let _initProto;
|
|
25
|
+
let _initProto, _uploadEventDecs;
|
|
26
26
|
function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function (e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O.static = l, O.private = f, f ? 2 === o ? k = function (e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function (e) { return e[n]; }, (o < 2 || 4 === o) && (F = function (e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == typeof P && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol.for("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol.for("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function (t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
|
|
27
27
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
28
28
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
@@ -33,9 +33,9 @@ function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side
|
|
|
33
33
|
*/
|
|
34
34
|
class FcrMonitorControlImpl {
|
|
35
35
|
static {
|
|
36
|
-
[_initProto] = _applyDecs(this, [[
|
|
36
|
+
[_initProto] = _applyDecs(this, [[_uploadEventDecs, 2, "uploadEvent"]], []).e;
|
|
37
37
|
}
|
|
38
|
-
_monitor = void _initProto(this);
|
|
38
|
+
[(_uploadEventDecs = (0, _imports.trace)(['event']), "_monitor")] = void _initProto(this);
|
|
39
39
|
constructor(engine, _config) {
|
|
40
40
|
this._config = _config;
|
|
41
41
|
this._monitor = engine.getMonitor();
|
|
@@ -42,7 +42,7 @@ class FcrPeerSessionControlImpl {
|
|
|
42
42
|
[_initProto] = _applyDecs(this, [[_startPeerSessionDecs, 2, "startPeerSession"], [_stopPeerSessionDecs, 2, "stopPeerSession"], [_acceptPeerSessionDecs, 2, "acceptPeerSession"], [_rejectPeerSessionDecs, 2, "rejectPeerSession"]], []).e;
|
|
43
43
|
}
|
|
44
44
|
//@internal
|
|
45
|
-
[(_startPeerSessionDecs = [_imports.trace, (0, _validateParams.default)(_schema.fcrPeerSessionParamsSchema)], _stopPeerSessionDecs = [_imports.trace, (0, _validateParams.default)(_schema.stringSchema)], _acceptPeerSessionDecs = [_imports.trace, (0, _validateParams.default)(_schema.fcrSessionBaseSchema, _schema.stringKeyUnknownValueSchema.optional())], _rejectPeerSessionDecs = [_imports.trace, (0, _validateParams.default)(_schema.fcrSessionBaseSchema, _schema.stringKeyUnknownValueSchema.optional())], "logger")] = (_initProto(this), (0, _logger.createLogger)({
|
|
45
|
+
[(_startPeerSessionDecs = [(0, _imports.trace)(['params']), (0, _validateParams.default)(_schema.fcrPeerSessionParamsSchema)], _stopPeerSessionDecs = [(0, _imports.trace)(['sessionId']), (0, _validateParams.default)(_schema.stringSchema)], _acceptPeerSessionDecs = [(0, _imports.trace)(['session', 'cause']), (0, _validateParams.default)(_schema.fcrSessionBaseSchema, _schema.stringKeyUnknownValueSchema.optional())], _rejectPeerSessionDecs = [(0, _imports.trace)(['session', 'cause']), (0, _validateParams.default)(_schema.fcrSessionBaseSchema, _schema.stringKeyUnknownValueSchema.optional())], "logger")] = (_initProto(this), (0, _logger.createLogger)({
|
|
46
46
|
prefix: 'FcrPeerSessionControlImpl'
|
|
47
47
|
}));
|
|
48
48
|
//@internal
|
|
@@ -96,18 +96,18 @@ class FcrPeerSessionControlImpl {
|
|
|
96
96
|
this.logger.info(`[PeerSession] put into session schedule: ${session.sessionId}, next ts: ${nextTs}, remain: ${nextTs - Date.now()}ms`);
|
|
97
97
|
return session.sessionId;
|
|
98
98
|
} catch (e) {
|
|
99
|
-
throw (0, _error.generateFcrCoreServerError)(
|
|
99
|
+
throw (0, _error.generateFcrCoreServerError)(_imports.DetailErrorCode.LOCAL_HTTP_REQUEST_FAILED, 'start peer session failed', e);
|
|
100
100
|
}
|
|
101
101
|
}
|
|
102
102
|
stopPeerSession(sessionId) {
|
|
103
|
-
this._scheduleMap.delete(sessionId);
|
|
103
|
+
return this._scheduleMap.delete(sessionId);
|
|
104
104
|
}
|
|
105
105
|
async acceptPeerSession(session, cause) {
|
|
106
106
|
if (this._isSessionExpired(session)) {
|
|
107
|
-
throw (0, _error.generateFcrCoreServerError)(
|
|
107
|
+
throw (0, _error.generateFcrCoreServerError)(_imports.DetailErrorCode.EXPIRED, 'accept peer session failed: session expired', new Error());
|
|
108
108
|
}
|
|
109
109
|
try {
|
|
110
|
-
this._api.deletePeerSession({
|
|
110
|
+
return this._api.deletePeerSession({
|
|
111
111
|
userId: this._userId,
|
|
112
112
|
sessionId: session.sessionId,
|
|
113
113
|
sessionKey: session.sessionKey,
|
|
@@ -118,15 +118,15 @@ class FcrPeerSessionControlImpl {
|
|
|
118
118
|
}
|
|
119
119
|
});
|
|
120
120
|
} catch (e) {
|
|
121
|
-
throw (0, _error.generateFcrCoreServerError)(
|
|
121
|
+
throw (0, _error.generateFcrCoreServerError)(_imports.DetailErrorCode.LOCAL_HTTP_REQUEST_FAILED, 'accept peer session failed', e);
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
async rejectPeerSession(session, cause) {
|
|
125
125
|
if (this._isSessionExpired(session)) {
|
|
126
|
-
throw (0, _error.generateFcrCoreServerError)(
|
|
126
|
+
throw (0, _error.generateFcrCoreServerError)(_imports.DetailErrorCode.EXPIRED, 'reject peer session failed: session expired', new Error());
|
|
127
127
|
}
|
|
128
128
|
try {
|
|
129
|
-
this._api.deletePeerSession({
|
|
129
|
+
return this._api.deletePeerSession({
|
|
130
130
|
userId: this._userId,
|
|
131
131
|
sessionId: session.sessionId,
|
|
132
132
|
sessionKey: session.sessionKey,
|
|
@@ -137,7 +137,7 @@ class FcrPeerSessionControlImpl {
|
|
|
137
137
|
}
|
|
138
138
|
});
|
|
139
139
|
} catch (e) {
|
|
140
|
-
throw (0, _error.generateFcrCoreServerError)(
|
|
140
|
+
throw (0, _error.generateFcrCoreServerError)(_imports.DetailErrorCode.LOCAL_HTTP_REQUEST_FAILED, 'reject peer session failed', e);
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
143
|
addObserver(observer) {
|
|
@@ -162,13 +162,13 @@ class FcrPeerSessionControlImpl {
|
|
|
162
162
|
interval: 0
|
|
163
163
|
};
|
|
164
164
|
if (this._isSessionExpired(session)) {
|
|
165
|
-
this.logger.info(`
|
|
165
|
+
this.logger.info(`peer session expired, removed: ${session.sessionId}`);
|
|
166
166
|
this._scheduleMap.delete(session.sessionId);
|
|
167
167
|
continue;
|
|
168
168
|
}
|
|
169
169
|
// check timeout
|
|
170
170
|
if (params.nextTs < Date.now()) {
|
|
171
|
-
this.logger.info(`
|
|
171
|
+
this.logger.info(`ping session: ${session.sessionId}`);
|
|
172
172
|
try {
|
|
173
173
|
const {
|
|
174
174
|
data: {
|
|
@@ -191,7 +191,7 @@ class FcrPeerSessionControlImpl {
|
|
|
191
191
|
this.logger.info(`[PeerSession] refresh session schedule: ${session.sessionId}, next ts: ${nextTs}`);
|
|
192
192
|
}
|
|
193
193
|
} catch (e) {
|
|
194
|
-
this.logger.error(`
|
|
194
|
+
this.logger.error(`ping session failed: ${e}`);
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
}
|
|
@@ -200,7 +200,7 @@ class FcrPeerSessionControlImpl {
|
|
|
200
200
|
const session = this._receivedMap.get(key);
|
|
201
201
|
if (this._isSessionExpired(session)) {
|
|
202
202
|
this._receivedMap.delete(key);
|
|
203
|
-
this.logger.info(`
|
|
203
|
+
this.logger.info(`delete session callback: ${key}`);
|
|
204
204
|
}
|
|
205
205
|
}
|
|
206
206
|
}
|
|
@@ -280,7 +280,7 @@ class FcrPeerSessionControlImpl {
|
|
|
280
280
|
return session.timestamp + session.duration * _imports.Duration.second(1) < Date.now();
|
|
281
281
|
}
|
|
282
282
|
_addLogObserver() {
|
|
283
|
-
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onPeerSessionAccepted', 'onPeerSessionReceived', 'onPeerSessionRejected']));
|
|
283
|
+
this.addObserver((0, _logger.generateLogObserver)(this.logger, [['onPeerSessionAccepted', ['session']], ['onPeerSessionReceived', ['session']], ['onPeerSessionRejected', ['session']]]));
|
|
284
284
|
}
|
|
285
285
|
}
|
|
286
286
|
exports.FcrPeerSessionControlImpl = FcrPeerSessionControlImpl;
|