fcr-core 3.10.1 → 3.10.5
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/engine/index.js +102 -108
- package/lib/imports.js +1 -0
- package/lib/media-control/desktop.js +22 -13
- package/lib/media-control/mobile.js +27 -19
- package/lib/media-control/type.d.ts +3 -3
- package/lib/monitor-control/index.js +17 -7
- package/lib/peer-session/index.js +120 -121
- package/lib/plugins/chat/chatroom.js +119 -96
- package/lib/plugins/chat/connector.js +69 -48
- package/lib/remote-control/index.js +194 -216
- package/lib/room-control/ability-control/index.js +20 -10
- package/lib/room-control/application-control/index.js +82 -75
- package/lib/room-control/group-control/index.js +31 -30
- package/lib/room-control/helpers/board-init-info-helper.js +16 -10
- package/lib/room-control/helpers/validation-helper.js +1 -1
- package/lib/room-control/index.js +70 -51
- package/lib/room-control/infinity-room-control/index.js +27 -19
- package/lib/room-control/interpreter-control/index.js +77 -65
- package/lib/room-control/interpreter-control/room.js +6 -4
- package/lib/room-control/join-before-host-waitingroom-control/index.js +6 -4
- package/lib/room-control/mainroom-control/index.js +37 -25
- package/lib/room-control/privilege-control/helper.js +28 -13
- package/lib/room-control/privilege-control/index.js +36 -28
- package/lib/room-control/room-connector-control/index.js +52 -49
- package/lib/room-control/room-connector-control/type.d.ts +1 -1
- package/lib/room-control/room-control-factory.js +10 -12
- package/lib/room-control/room-session/index.js +77 -74
- package/lib/room-control/shared-cache.js +63 -56
- package/lib/room-control/sharing-control/index.js +65 -57
- package/lib/room-control/stream-control/index.js +197 -193
- package/lib/room-control/stt-control/de-compress-gzip.js +10 -0
- package/lib/room-control/stt-control/index.js +93 -86
- package/lib/room-control/user-control/index.js +162 -155
- package/lib/room-control/waitingroom-control/index.js +18 -9
- package/lib/room-control/whiteboard-control/utils.js +4 -2
- package/lib/room-control/whiteboard-control-v1/board-subwindow.js +2 -1
- package/lib/room-control/whiteboard-control-v1/board-window.js +120 -103
- package/lib/room-control/whiteboard-control-v1/factory.js +7 -4
- package/lib/room-control/whiteboard-control-v1/index.js +80 -67
- package/lib/room-control/whiteboard-control-v1/mount-manager.js +4 -2
- package/lib/room-control/whiteboard-control-v1/utils.js +17 -14
- package/lib/room-control/whiteboard-control-v2/annotation-control/control.js +14 -10
- package/lib/room-control/whiteboard-control-v2/annotation-control/factory.js +17 -8
- package/lib/room-control/whiteboard-control-v2/base/index.js +61 -53
- package/lib/room-control/whiteboard-control-v2/base/main-window.js +39 -30
- package/lib/room-control/whiteboard-control-v2/utils.js +10 -10
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.js +45 -33
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/factory.js +27 -11
- package/lib/room-control/widget-control/index.js +43 -33
- package/lib/room-router/index.js +66 -58
- package/lib/schema.d.ts +15 -15
- package/lib/service/api.js +446 -548
- package/lib/struct.js +5 -2
- package/lib/utilities/abortable-retry.js +3 -0
- package/lib/utilities/collection.js +15 -11
- package/lib/utilities/error-helpers.js +34 -27
- package/lib/utilities/error.js +4 -3
- package/lib/utilities/join-helper.js +37 -31
- package/lib/utilities/logger.js +8 -5
- package/lib/utilities/parameters.js +21 -10
- package/lib/utilities/retry-helpers.js +1 -0
- package/lib/utilities/stream.js +16 -11
- package/lib/utilities/user.js +4 -3
- package/lib/utilities/validate-params.js +1 -1
- package/lib/utilities/video-encoder-config.js +10 -5
- package/lib-es/engine/index.js +102 -108
- package/lib-es/media-control/desktop.js +22 -13
- package/lib-es/media-control/mobile.js +27 -19
- package/lib-es/monitor-control/index.js +16 -7
- package/lib-es/peer-session/index.js +120 -121
- package/lib-es/plugins/chat/chatroom.js +118 -95
- package/lib-es/plugins/chat/connector.js +67 -47
- package/lib-es/remote-control/index.js +194 -216
- package/lib-es/room-control/ability-control/index.js +19 -10
- package/lib-es/room-control/application-control/index.js +81 -75
- package/lib-es/room-control/group-control/index.js +31 -30
- package/lib-es/room-control/helpers/board-init-info-helper.js +15 -10
- package/lib-es/room-control/helpers/validation-helper.js +1 -1
- package/lib-es/room-control/index.js +69 -51
- package/lib-es/room-control/infinity-room-control/index.js +26 -19
- package/lib-es/room-control/interpreter-control/index.js +77 -65
- package/lib-es/room-control/interpreter-control/room.js +5 -4
- package/lib-es/room-control/join-before-host-waitingroom-control/index.js +5 -4
- package/lib-es/room-control/mainroom-control/index.js +37 -25
- package/lib-es/room-control/privilege-control/helper.js +27 -13
- package/lib-es/room-control/privilege-control/index.js +36 -28
- package/lib-es/room-control/room-connector-control/index.js +52 -49
- package/lib-es/room-control/room-control-factory.js +10 -12
- package/lib-es/room-control/room-session/index.js +77 -74
- package/lib-es/room-control/shared-cache.js +62 -56
- package/lib-es/room-control/sharing-control/index.js +64 -57
- package/lib-es/room-control/stream-control/index.js +197 -193
- package/lib-es/room-control/stt-control/de-compress-gzip.js +10 -0
- package/lib-es/room-control/stt-control/index.js +93 -86
- package/lib-es/room-control/user-control/index.js +162 -155
- package/lib-es/room-control/waitingroom-control/index.js +18 -9
- package/lib-es/room-control/whiteboard-control/utils.js +4 -2
- package/lib-es/room-control/whiteboard-control-v1/board-subwindow.js +2 -1
- package/lib-es/room-control/whiteboard-control-v1/board-window.js +120 -103
- package/lib-es/room-control/whiteboard-control-v1/factory.js +6 -4
- package/lib-es/room-control/whiteboard-control-v1/index.js +80 -67
- package/lib-es/room-control/whiteboard-control-v1/mount-manager.js +3 -2
- package/lib-es/room-control/whiteboard-control-v1/utils.js +17 -14
- package/lib-es/room-control/whiteboard-control-v2/annotation-control/control.js +13 -10
- package/lib-es/room-control/whiteboard-control-v2/annotation-control/factory.js +16 -8
- package/lib-es/room-control/whiteboard-control-v2/base/index.js +60 -53
- package/lib-es/room-control/whiteboard-control-v2/base/main-window.js +39 -30
- package/lib-es/room-control/whiteboard-control-v2/utils.js +10 -10
- package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/control.js +45 -33
- package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/factory.js +26 -11
- package/lib-es/room-control/widget-control/index.js +42 -33
- package/lib-es/room-router/index.js +66 -58
- package/lib-es/service/api.js +445 -548
- package/lib-es/struct.js +4 -2
- package/lib-es/utilities/abortable-retry.js +3 -0
- package/lib-es/utilities/collection.js +14 -11
- package/lib-es/utilities/error-helpers.js +33 -26
- package/lib-es/utilities/error.js +4 -3
- package/lib-es/utilities/join-helper.js +36 -29
- package/lib-es/utilities/logger.js +7 -5
- package/lib-es/utilities/parameters.js +21 -10
- package/lib-es/utilities/retry-helpers.js +1 -0
- package/lib-es/utilities/stream.js +15 -11
- package/lib-es/utilities/user.js +4 -3
- package/lib-es/utilities/validate-params.js +1 -1
- package/lib-es/utilities/video-encoder-config.js +10 -5
- package/package.json +4 -4
|
@@ -1,6 +1,14 @@
|
|
|
1
|
+
import "core-js/modules/es.symbol.description.js";
|
|
2
|
+
import "core-js/modules/es.error.cause.js";
|
|
1
3
|
import "core-js/modules/esnext.function.metadata.js";
|
|
4
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
|
2
5
|
import "core-js/modules/esnext.symbol.metadata.js";
|
|
3
|
-
|
|
6
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
7
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
|
+
var _FcrSttControlImpl;
|
|
9
|
+
let _initProto, _startCaptionDecs, _startTranscribingDecs, _updateSourceLanguageDecs, _subscribeTranscribingLanguageDecs, _ref;
|
|
10
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
11
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
12
|
import "core-js/modules/es.array.includes.js";
|
|
5
13
|
import "core-js/modules/es.array.push.js";
|
|
6
14
|
import "core-js/modules/esnext.iterator.constructor.js";
|
|
@@ -20,6 +28,7 @@ import "core-js/modules/esnext.map.merge.js";
|
|
|
20
28
|
import "core-js/modules/esnext.map.reduce.js";
|
|
21
29
|
import "core-js/modules/esnext.map.some.js";
|
|
22
30
|
import "core-js/modules/esnext.map.update.js";
|
|
31
|
+
import "core-js/modules/web.dom-collections.iterator.js";
|
|
23
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)]; } }; }
|
|
24
33
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
25
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); }
|
|
@@ -38,92 +47,85 @@ import { FcrCaptionState, FcrTranscribingState } from './type';
|
|
|
38
47
|
/**
|
|
39
48
|
* @internal
|
|
40
49
|
*/
|
|
50
|
+
_ref = (_startCaptionDecs = [trace(['config']), validateParams(fcrLanguageConfigSchema)], _startTranscribingDecs = [trace(['config']), validateParams(fcrLanguageConfigSchema)], _updateSourceLanguageDecs = [trace(['language']), validateParams(fcrLanguageSchema)], _subscribeTranscribingLanguageDecs = [trace, validateParams(fcrLanguageSchema)], "logger");
|
|
41
51
|
export class FcrSttControlImpl {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
//@internal
|
|
59
|
-
_sceneObserver = {
|
|
60
|
-
onStreamMessageReceived: async (sceneId, data) => {
|
|
61
|
-
const sttUids = this._scene.getScenePropertiesByKeyPath('widgets.stt.extra.pubBotUids');
|
|
62
|
-
if (!Array.isArray(sttUids)) {
|
|
63
|
-
this.logger.error('sttUids is not an array');
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
const isSttBot = sttUids.includes(Number(data.streamId));
|
|
67
|
-
if (!isSttBot) {
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
const sttStreamMessageData = await deCompressGzipToJson(data.payload);
|
|
71
|
-
this._handleSttStreamMessageData(sttStreamMessageData, sceneId);
|
|
72
|
-
},
|
|
73
|
-
onUserPropertiesUpdated: (sceneId, event) => {
|
|
74
|
-
if (event.cause && event.cause.data) {
|
|
75
|
-
const causeData = event.cause.data;
|
|
76
|
-
if (causeData.widgetUuid == FcrWidgetUuid.STT && causeData.widgetCause && causeData.widgetCause.cmd == 3450) {
|
|
77
|
-
const localUserId = this._scene.localUser.getLocalUserId();
|
|
78
|
-
if (event.operatorUser.userId !== localUserId) {
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
|
-
const operatorUser = convertRteUserToFcrUser(event.operatorUser, this._roomCache);
|
|
82
|
-
if (causeData.widgetCause.reason === 0) {
|
|
83
|
-
const isTranscribingStopped = this._getTranscribingState() === FcrTranscribingState.STOPPED;
|
|
84
|
-
if (isTranscribingStopped) {
|
|
85
|
-
this._sttEventWrapperListMap.clear();
|
|
86
|
-
}
|
|
87
|
-
this._observable.notifyObservers('onLocalCaptionStateUpdated', sceneId, FcrCaptionState.STOPPED, operatorUser);
|
|
88
|
-
}
|
|
89
|
-
if (causeData.widgetCause.reason === 1) {
|
|
90
|
-
this._observable.notifyObservers('onLocalCaptionStateUpdated', sceneId, FcrCaptionState.STARTED, operatorUser);
|
|
91
|
-
}
|
|
52
|
+
constructor(_scene, _api, _sharedCache) {
|
|
53
|
+
//@internal
|
|
54
|
+
_defineProperty(this, _ref, (_initProto(this), createLogger({
|
|
55
|
+
prefix: 'FcrUserControlImpl'
|
|
56
|
+
})));
|
|
57
|
+
//@internal
|
|
58
|
+
_defineProperty(this, "_observable", new AgoraObservable());
|
|
59
|
+
_defineProperty(this, "_cacheMaxLimit", 10);
|
|
60
|
+
_defineProperty(this, "_sttEventWrapperListMap", new Map());
|
|
61
|
+
//@internal
|
|
62
|
+
_defineProperty(this, "_sceneObserver", {
|
|
63
|
+
onStreamMessageReceived: async (sceneId, data) => {
|
|
64
|
+
const sttUids = this._scene.getScenePropertiesByKeyPath('widgets.stt.extra.pubBotUids');
|
|
65
|
+
if (!Array.isArray(sttUids)) {
|
|
66
|
+
this.logger.error('sttUids is not an array');
|
|
67
|
+
return;
|
|
92
68
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
onScenePropertiesUpdated: (sceneId, event) => {
|
|
96
|
-
if (event.cause && event.cause.data) {
|
|
97
|
-
const causeData = event.cause.data;
|
|
98
|
-
if (!causeData.widgetCause) {
|
|
69
|
+
const isSttBot = sttUids.includes(Number(data.streamId));
|
|
70
|
+
if (!isSttBot) {
|
|
99
71
|
return;
|
|
100
72
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
73
|
+
const sttStreamMessageData = await deCompressGzipToJson(data.payload);
|
|
74
|
+
this._handleSttStreamMessageData(sttStreamMessageData, sceneId);
|
|
75
|
+
},
|
|
76
|
+
onUserPropertiesUpdated: (sceneId, event) => {
|
|
77
|
+
if (event.cause && event.cause.data) {
|
|
78
|
+
const causeData = event.cause.data;
|
|
79
|
+
if (causeData.widgetUuid == FcrWidgetUuid.STT && causeData.widgetCause && causeData.widgetCause.cmd == 3450) {
|
|
80
|
+
const localUserId = this._scene.localUser.getLocalUserId();
|
|
81
|
+
if (event.operatorUser.userId !== localUserId) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const operatorUser = convertRteUserToFcrUser(event.operatorUser, this._roomCache);
|
|
85
|
+
if (causeData.widgetCause.reason === 0) {
|
|
86
|
+
const isTranscribingStopped = this._getTranscribingState() === FcrTranscribingState.STOPPED;
|
|
87
|
+
if (isTranscribingStopped) {
|
|
88
|
+
this._sttEventWrapperListMap.clear();
|
|
89
|
+
}
|
|
90
|
+
this._observable.notifyObservers('onLocalCaptionStateUpdated', sceneId, FcrCaptionState.STOPPED, operatorUser);
|
|
91
|
+
}
|
|
92
|
+
if (causeData.widgetCause.reason === 1) {
|
|
93
|
+
this._observable.notifyObservers('onLocalCaptionStateUpdated', sceneId, FcrCaptionState.STARTED, operatorUser);
|
|
107
94
|
}
|
|
108
|
-
this._observable.notifyObservers('onTranscribingStateUpdated', sceneId, FcrTranscribingState.STOPPED, operatorUser);
|
|
109
|
-
}
|
|
110
|
-
if (causeData.widgetCause.reason === 1) {
|
|
111
|
-
this._observable.notifyObservers('onTranscribingStateUpdated', sceneId, FcrTranscribingState.STARTED, operatorUser);
|
|
112
95
|
}
|
|
113
96
|
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
97
|
+
},
|
|
98
|
+
onScenePropertiesUpdated: (sceneId, event) => {
|
|
99
|
+
if (event.cause && event.cause.data) {
|
|
100
|
+
const causeData = event.cause.data;
|
|
101
|
+
if (!causeData.widgetCause) {
|
|
102
|
+
return;
|
|
118
103
|
}
|
|
119
|
-
if (causeData.widgetCause.
|
|
120
|
-
|
|
104
|
+
if (causeData.widgetUuid == FcrWidgetUuid.TRANSCRIBE && causeData.widgetCause.cmd == FcrWidgetCauseCmd.TRANSCRIBE) {
|
|
105
|
+
const operatorUser = convertRteUserToFcrUser(event.operatorUser, this._roomCache);
|
|
106
|
+
if (causeData.widgetCause.reason === 0) {
|
|
107
|
+
const isCaptionStopped = this._getLocalCaptionState() === FcrCaptionState.STOPPED;
|
|
108
|
+
if (isCaptionStopped) {
|
|
109
|
+
this._sttEventWrapperListMap.clear();
|
|
110
|
+
}
|
|
111
|
+
this._observable.notifyObservers('onTranscribingStateUpdated', sceneId, FcrTranscribingState.STOPPED, operatorUser);
|
|
112
|
+
}
|
|
113
|
+
if (causeData.widgetCause.reason === 1) {
|
|
114
|
+
this._observable.notifyObservers('onTranscribingStateUpdated', sceneId, FcrTranscribingState.STARTED, operatorUser);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
if (causeData.widgetUuid == FcrWidgetUuid.STT && causeData.widgetCause.cmd == FcrWidgetCauseCmd.STT) {
|
|
118
|
+
let operatorUser;
|
|
119
|
+
if (event.operatorUser) {
|
|
120
|
+
operatorUser = convertRteUserToFcrUser(event.operatorUser, this._roomCache);
|
|
121
|
+
}
|
|
122
|
+
if (causeData.widgetCause.reason === 2) {
|
|
123
|
+
this._observable.notifyObservers('onSourceLanguageUpdated', sceneId, operatorUser);
|
|
124
|
+
}
|
|
121
125
|
}
|
|
122
126
|
}
|
|
123
127
|
}
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
constructor(_scene, _api, _sharedCache) {
|
|
128
|
+
});
|
|
127
129
|
this._scene = _scene;
|
|
128
130
|
this._api = _api;
|
|
129
131
|
this._sharedCache = _sharedCache;
|
|
@@ -223,6 +225,7 @@ export class FcrSttControlImpl {
|
|
|
223
225
|
return this._scene.getScenePropertiesByKeyPath('widgets.transcribe.state');
|
|
224
226
|
}
|
|
225
227
|
_handleSttStreamMessageData(sttStreamMessageData, sceneId) {
|
|
228
|
+
var _this$_scene$getStrea;
|
|
226
229
|
const codeMap = {
|
|
227
230
|
'zh-CN': FcrLanguage.ZH,
|
|
228
231
|
'en-US': FcrLanguage.EN,
|
|
@@ -235,12 +238,12 @@ export class FcrSttControlImpl {
|
|
|
235
238
|
const transcript = sttStreamMessageData.transcript;
|
|
236
239
|
const translation = sttStreamMessageData.translation;
|
|
237
240
|
const messageItem = transcript || translation;
|
|
238
|
-
const uid = messageItem
|
|
241
|
+
const uid = messageItem === null || messageItem === void 0 ? void 0 : messageItem.uid;
|
|
239
242
|
if (!uid) {
|
|
240
243
|
this.logger.error('parseSTT failed, uid is null');
|
|
241
244
|
return null;
|
|
242
245
|
}
|
|
243
|
-
const owner = this._scene.getStreamByStreamId(uid.toString())
|
|
246
|
+
const owner = (_this$_scene$getStrea = this._scene.getStreamByStreamId(uid.toString())) === null || _this$_scene$getStrea === void 0 ? void 0 : _this$_scene$getStrea.owner;
|
|
244
247
|
if (!owner) {
|
|
245
248
|
this.logger.error('parseSTT failed, owner is null');
|
|
246
249
|
return null;
|
|
@@ -299,10 +302,9 @@ export class FcrSttControlImpl {
|
|
|
299
302
|
startTs: lastSttEventWrapper.startTs,
|
|
300
303
|
endTs: transcript.textTs,
|
|
301
304
|
event: merge(lastSttEventWrapper.event, {
|
|
302
|
-
transcript: {
|
|
303
|
-
...formatTranscript,
|
|
305
|
+
transcript: _objectSpread(_objectSpread({}, formatTranscript), {}, {
|
|
304
306
|
id: lastSttEventWrapper.event.transcript.id
|
|
305
|
-
}
|
|
307
|
+
})
|
|
306
308
|
})
|
|
307
309
|
};
|
|
308
310
|
this._observable.notifyObservers('onSttEventReceived', sceneId, sttEventWrapperList[sttEventWrapperList.length - 1].event);
|
|
@@ -311,8 +313,9 @@ export class FcrSttControlImpl {
|
|
|
311
313
|
}
|
|
312
314
|
}
|
|
313
315
|
if (translation) {
|
|
316
|
+
var _sttEventWrapperList;
|
|
314
317
|
// 获取缓存句子
|
|
315
|
-
sttEventWrapperList = sttEventWrapperList
|
|
318
|
+
sttEventWrapperList = (_sttEventWrapperList = sttEventWrapperList) === null || _sttEventWrapperList === void 0 ? void 0 : _sttEventWrapperList.map(wrapper => {
|
|
316
319
|
const language = codeMap[translation.results0.language];
|
|
317
320
|
const formatTranslation = {
|
|
318
321
|
id: wrapper.event.transcript.id,
|
|
@@ -328,10 +331,9 @@ export class FcrSttControlImpl {
|
|
|
328
331
|
wrapper.event.translations.set(formatTranslation.language, formatTranslation);
|
|
329
332
|
this._observable.notifyObservers('onSttEventReceived', sceneId, wrapper.event);
|
|
330
333
|
} else if (translation.textTs >= transInfo.timestamp) {
|
|
331
|
-
wrapper.event.translations.set(formatTranslation.language, {
|
|
332
|
-
...formatTranslation,
|
|
334
|
+
wrapper.event.translations.set(formatTranslation.language, _objectSpread(_objectSpread({}, formatTranslation), {}, {
|
|
333
335
|
id: wrapper.event.transcript.id
|
|
334
|
-
});
|
|
336
|
+
}));
|
|
335
337
|
this._observable.notifyObservers('onSttEventReceived', sceneId, wrapper.event);
|
|
336
338
|
} else if (transInfo.isFinal == true && wrapper.event.transcript.isFinal == true) {
|
|
337
339
|
return null;
|
|
@@ -349,4 +351,9 @@ export class FcrSttControlImpl {
|
|
|
349
351
|
// ['onSttEventReceived', ['roomId', 'event']],
|
|
350
352
|
['onLocalCaptionStateUpdated', ['roomId', 'state', 'operatorUser']], ['onTranscribingStateUpdated', ['roomId', 'state', 'operatorUser']], ['onSourceLanguageUpdated', ['roomId', 'operatorUser']]]));
|
|
351
353
|
}
|
|
352
|
-
}
|
|
354
|
+
}
|
|
355
|
+
_FcrSttControlImpl = FcrSttControlImpl;
|
|
356
|
+
var _applyDecs$e = _applyDecs(_FcrSttControlImpl, [[_startCaptionDecs, 2, "startCaption"], [trace, 2, "stopCaption"], [_startTranscribingDecs, 2, "startTranscribing"], [trace, 2, "stopTranscribing"], [_updateSourceLanguageDecs, 2, "updateSourceLanguage"], [_subscribeTranscribingLanguageDecs, 2, "subscribeTranscribingLanguage"], [trace, 2, "unsubscribeTranscribingLanguage"], [trace, 2, "release"]], []).e;
|
|
357
|
+
var _applyDecs$e2 = _slicedToArray(_applyDecs$e, 1);
|
|
358
|
+
_initProto = _applyDecs$e2[0];
|
|
359
|
+
_applyDecs$e;
|