fcr-core 3.4.1-edu.1 → 3.4.2
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-connection/index.js +1 -1
- package/lib/engine/index.d.ts +1 -0
- package/lib/engine/index.js +7 -4
- package/lib/imports.d.ts +1 -2
- package/lib/media-control/desktop.js +7 -1
- package/lib/media-control/mobile.js +1 -1
- package/lib/media-control/type.d.ts +10 -0
- package/lib/monitor-control/index.js +1 -37
- package/lib/monitor-control/type.d.ts +1 -8
- package/lib/peer-session/index.js +5 -1
- package/lib/plugins/chatroom.js +127 -121
- package/lib/room-control/chatroom-control/type.d.ts +11 -25
- package/lib/room-control/group-control/index.js +1 -1
- package/lib/room-control/index.js +249 -192
- package/lib/room-control/interpreter-control/index.js +1 -1
- package/lib/room-control/interpreter-control/room.js +14 -0
- package/lib/room-control/mainroom-control/index.js +5 -1
- package/lib/room-control/privilege-control/helper.d.ts +4 -1
- package/lib/room-control/privilege-control/helper.js +70 -2
- package/lib/room-control/privilege-control/index.js +13 -35
- package/lib/room-control/stream-control/index.js +40 -37
- package/lib/room-control/type.d.ts +0 -4
- package/lib/room-control/type.js +1 -6
- package/lib/room-control/user-control/index.js +9 -6
- package/lib/room-control/user-control/type.d.ts +2 -3
- package/lib/room-control/waitingroom-control/index.js +1 -1
- package/lib/room-control/whiteboard-control/board-window.d.ts +1 -10
- package/lib/room-control/whiteboard-control/board-window.js +15 -143
- package/lib/room-control/whiteboard-control/index.js +2 -7
- package/lib/room-control/whiteboard-control/types.d.ts +0 -43
- package/lib/room-control/whiteboard-control/types.js +1 -7
- package/lib/room-control/whiteboard-control/utils.d.ts +1 -1
- package/lib/room-control/whiteboard-control/utils.js +0 -2
- package/lib/room-control/whiteboard-control-v2/index.js +3 -3
- package/lib/service/api.d.ts +2 -0
- package/lib/service/api.js +4 -2
- package/lib/type.d.ts +1 -2
- package/lib/utilities/error.d.ts +1 -0
- package/lib/utilities/error.js +1 -0
- package/package.json +7 -9
|
@@ -154,4 +154,4 @@ class FcrChatConnectionImpl {
|
|
|
154
154
|
}
|
|
155
155
|
exports.FcrChatConnectionImpl = FcrChatConnectionImpl;
|
|
156
156
|
_FcrChatConnectionImpl = FcrChatConnectionImpl;
|
|
157
|
-
[_initProto] = _applyDecs(_FcrChatConnectionImpl, [[_logger.trace, 2, "login"], [_logger.trace, 2, "logout"], [_logger.trace, 2, "getConnectionState"], [_logger.trace, 2, "getConnectionInstance"]
|
|
157
|
+
[_initProto] = _applyDecs(_FcrChatConnectionImpl, [[_logger.trace, 2, "login"], [_logger.trace, 2, "logout"], [_logger.trace, 2, "getConnectionState"], [_logger.trace, 2, "getConnectionInstance"]], []).e;
|
package/lib/engine/index.d.ts
CHANGED
package/lib/engine/index.js
CHANGED
|
@@ -55,8 +55,7 @@ var _agoraRteSdk = require("agora-rte-sdk");
|
|
|
55
55
|
var _helper = require("agora-rte-sdk/lib/core/scene/helper");
|
|
56
56
|
var _mobile = require("../media-control/mobile");
|
|
57
57
|
var _chatroom = require("../plugins/chatroom");
|
|
58
|
-
var
|
|
59
|
-
var _privilegeControl = require("../room-control/privilege-control");
|
|
58
|
+
var _whiteboardControlV = require("../room-control/whiteboard-control-v2");
|
|
60
59
|
var _logger = require("../utilities/logger");
|
|
61
60
|
var _FcrCoreEngine;
|
|
62
61
|
let _initProto;
|
|
@@ -100,6 +99,7 @@ class FcrCoreEngine {
|
|
|
100
99
|
this._monitorControl = new _monitorControl.FcrMonitorControlImpl(this._rteEngine, this._config);
|
|
101
100
|
this._desktopMediaControl = new _desktop.FcrDesktopMediaControlImpl(this._rteEngine.getMediaControl());
|
|
102
101
|
this._mobileMediaControl = new _mobile.FcrMobileMediaControlImpl(this._rteEngine.getMediaControl());
|
|
102
|
+
this._addLogObserver();
|
|
103
103
|
this._addRteEngineObserver();
|
|
104
104
|
const coreIpList = (0, _parameters.getCoreIpList)(config.parameters);
|
|
105
105
|
if (coreIpList) {
|
|
@@ -160,7 +160,7 @@ class FcrCoreEngine {
|
|
|
160
160
|
const scene = this._rteEngine.createScene({
|
|
161
161
|
sceneId: roomId
|
|
162
162
|
});
|
|
163
|
-
return new _mainroomControl.FcrMainRoomControlImpl(this._rteEngine, scene, this._apiService, this._config, _type2.FcrRoomType.Mainroom, this._chatConnection, new _chatroom.FcrChatRoomControlImpl(scene, this._chatConnection), new
|
|
163
|
+
return new _mainroomControl.FcrMainRoomControlImpl(this._rteEngine, scene, this._apiService, this._config, _type2.FcrRoomType.Mainroom, this._chatConnection, new _chatroom.FcrChatRoomControlImpl(scene, this._chatConnection), new _whiteboardControlV.FcrWhiteboardControlImpl(scene, this._apiService, this._rteEngine));
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
/**
|
|
@@ -345,7 +345,10 @@ class FcrCoreEngine {
|
|
|
345
345
|
}
|
|
346
346
|
});
|
|
347
347
|
}
|
|
348
|
+
_addLogObserver() {
|
|
349
|
+
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onConnectionStateUpdated', 'onPeerMessageReceived']));
|
|
350
|
+
}
|
|
348
351
|
}
|
|
349
352
|
exports.FcrCoreEngine = FcrCoreEngine;
|
|
350
353
|
_FcrCoreEngine = FcrCoreEngine;
|
|
351
|
-
[_initProto] = _applyDecs(_FcrCoreEngine, [[_logger.trace, 2, "release"], [_logger.trace, 2, "login"], [_logger.trace, 2, "logout"], [_logger.trace, 2, "getVersion"], [_logger.trace, 2, "createMainRoomControl"], [_logger.trace, 2, "createWaitingRoomControl"], [_logger.trace, 2, "createRoomControlAndJoin"], [_logger.trace, 2, "getDesktopMediaControl"], [_logger.trace, 2, "getMobileMediaControl"], [_logger.trace, 2, "getMonitorControl"], [_logger.trace, 2, "getPeerSessionControl"], [_logger.trace, 2, "sendPeerMessage"], [_logger.trace, 2, "setParameters"]
|
|
354
|
+
[_initProto] = _applyDecs(_FcrCoreEngine, [[_logger.trace, 2, "release"], [_logger.trace, 2, "login"], [_logger.trace, 2, "logout"], [_logger.trace, 2, "getVersion"], [_logger.trace, 2, "createMainRoomControl"], [_logger.trace, 2, "createWaitingRoomControl"], [_logger.trace, 2, "createRoomControlAndJoin"], [_logger.trace, 2, "getDesktopMediaControl"], [_logger.trace, 2, "getMobileMediaControl"], [_logger.trace, 2, "getMonitorControl"], [_logger.trace, 2, "getPeerSessionControl"], [_logger.trace, 2, "sendPeerMessage"], [_logger.trace, 2, "setParameters"]], []).e;
|
package/lib/imports.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export { Duration } from 'agora-foundation/lib/schedule/scheduler';
|
|
|
19
19
|
export { trace, bound } from 'agora-foundation/lib/decorator';
|
|
20
20
|
export { AgoraScheduler, ActionWhenTaskFail } from 'agora-foundation/lib/schedule';
|
|
21
21
|
export type { AgoraRtcNetworkStats, AgoraRtcDeviceInfo, AgoraRtcDisplayInfo, AgoraRtcWindowInfo, AgoraRtePerformanceInfo, AgoraRteScenePropertiesDeletedEvent, AgoraRteStreamEncryptionConfig, AgoraRteStreamJoinConfig, AgoraRteDualVideoStreamConfig, AgoraRteMessage, AgoraRteScenePropertiesUpdatedEvent, AgoraRteRenderView, AgoraRteScene, } from 'agora-rte-sdk';
|
|
22
|
-
export type { AgoraRteVideoEncoderConfig } from 'agora-rte-sdk/lib/type';
|
|
22
|
+
export type { AgoraRteVideoEncoderConfig, AgoraRteEngineObserver } from 'agora-rte-sdk/lib/type';
|
|
23
23
|
export type { AgoraRteNetworkQualityEvent } from 'agora-rte-sdk/lib/core/scene/type';
|
|
24
24
|
export type { AgoraRteOperatCause } from 'agora-rte-sdk/lib/core/processor/type';
|
|
25
25
|
export type { AgoraRestfulClient } from 'agora-rte-sdk/lib/core/services/client';
|
|
@@ -39,7 +39,6 @@ export { getSharedDomainHolder } from 'agora-rte-sdk/lib/core/services/domain-ho
|
|
|
39
39
|
export { AgoraRteScreenCaptureType, AgoraRteVideoOrientation, } from 'agora-rte-sdk/lib/core/media/type';
|
|
40
40
|
export { registerPlugin } from 'agora-rte-sdk/lib/core/engine/plugin';
|
|
41
41
|
export { AgoraRteUserUpdatedReason } from 'agora-rte-sdk/lib/core/scene/type';
|
|
42
|
-
export type { AgoraRteUploadEvent } from 'agora-rte-sdk/lib/core/monitor/type';
|
|
43
42
|
export { FcrCoreEngine } from './engine';
|
|
44
43
|
export type FcrImageData = ImageData;
|
|
45
44
|
export type FcrWhiteboardView = HTMLElement;
|
|
@@ -144,7 +144,13 @@ class FcrDesktopMediaControlImpl {
|
|
|
144
144
|
checkLoopbackDevice() {
|
|
145
145
|
return this._mediaControl.checkLoopbackDevice();
|
|
146
146
|
}
|
|
147
|
+
followSystemSpeaker(follow) {
|
|
148
|
+
return this._mediaControl.followSystemSpeaker(follow);
|
|
149
|
+
}
|
|
150
|
+
followSystemMicrophone(follow) {
|
|
151
|
+
return this._mediaControl.followSystemMicrophone(follow);
|
|
152
|
+
}
|
|
147
153
|
}
|
|
148
154
|
exports.FcrDesktopMediaControlImpl = FcrDesktopMediaControlImpl;
|
|
149
155
|
_FcrDesktopMediaControlImpl = FcrDesktopMediaControlImpl;
|
|
150
|
-
[_initProto] = _applyDecs(_FcrDesktopMediaControlImpl, [[_logger.trace, 2, "getCameraList"], [_logger.trace, 2, "getMicrophoneList"], [_logger.trace, 2, "getSpeakerList"], [_logger.trace, 2, "getSystemSelectedMicrophone"], [_logger.trace, 2, "getSystemSelectedSpeaker"], [_logger.trace, 2, "getWindowList"], [_logger.trace, 2, "getDisplayList"], [_logger.trace, 2, "getCameraTrack"], [_logger.trace, 2, "getMicrophoneTrack"], [_logger.trace, 2, "getScreenTrack"], [_logger.trace, 2, "getLoopbackTrack"], [_logger.trace, 2, "setSelectedSpeaker"], [_logger.trace, 2, "startSelectedSpeakerTest"], [_logger.trace, 2, "stopSelectedSpeakerTest"], [_logger.trace, 2, "isCapabilitySupported"], [_logger.trace, 2, "setSelectedSpeakerVolume"], [_logger.trace, 2, "getSelectedSpeakerVolume"], [_logger.trace, 2, "
|
|
156
|
+
[_initProto] = _applyDecs(_FcrDesktopMediaControlImpl, [[_logger.trace, 2, "getCameraList"], [_logger.trace, 2, "getMicrophoneList"], [_logger.trace, 2, "getSpeakerList"], [_logger.trace, 2, "getSystemSelectedMicrophone"], [_logger.trace, 2, "getSystemSelectedSpeaker"], [_logger.trace, 2, "getWindowList"], [_logger.trace, 2, "getDisplayList"], [_logger.trace, 2, "getCameraTrack"], [_logger.trace, 2, "getMicrophoneTrack"], [_logger.trace, 2, "getScreenTrack"], [_logger.trace, 2, "getLoopbackTrack"], [_logger.trace, 2, "setSelectedSpeaker"], [_logger.trace, 2, "startSelectedSpeakerTest"], [_logger.trace, 2, "stopSelectedSpeakerTest"], [_logger.trace, 2, "isCapabilitySupported"], [_logger.trace, 2, "adjustOutputVolume"], [_logger.trace, 2, "setSelectedSpeakerVolume"], [_logger.trace, 2, "getSelectedSpeakerVolume"], [_logger.trace, 2, "checkLoopbackDevice"], [_logger.trace, 2, "followSystemSpeaker"], [_logger.trace, 2, "followSystemMicrophone"]], []).e;
|
|
@@ -194,4 +194,4 @@ class FcrMobileMediaControlImpl {
|
|
|
194
194
|
}
|
|
195
195
|
exports.FcrMobileMediaControlImpl = FcrMobileMediaControlImpl;
|
|
196
196
|
_FcrMobileMediaControlImpl = FcrMobileMediaControlImpl;
|
|
197
|
-
[_initProto] = _applyDecs(_FcrMobileMediaControlImpl, [[_logger.trace, 2, "getDeviceId"], [_logger.trace, 2, "getDeviceState"], [_logger.trace, 2, "startCameraTest"], [_logger.trace, 2, "stopCameraTest"], [_logger.trace, 2, "startCameraPreview"], [_logger.trace, 2, "stopCameraPreview"], [_logger.trace, 2, "stopCameraPreviewOnAllCanvas"], [_logger.trace, 2, "startScreenCapture"], [_logger.trace, 2, "updateScreenCapture"], [_logger.trace, 2, "stopScreenCapture"], [_logger.trace, 2, "getScreenCaptureState"], [_logger.trace, 2, "enableSpeaker"], [_logger.trace, 2, "getAudioOutputRouting"], [_logger.trace, 2, "getAudioEffectEnhancer"], [_logger.trace, 2, "getVideoEffectEnhancer"], [_logger.trace, 2, "openDevice"], [_logger.trace, 2, "closeDevice"], [_logger.trace, 2, "switchCamera"], [_logger.trace, 2, "getCameraPosition"], [_logger.trace, 2, "isCapabilitySupported"], [_logger.trace, 2, "adjustOutputVolume"]
|
|
197
|
+
[_initProto] = _applyDecs(_FcrMobileMediaControlImpl, [[_logger.trace, 2, "getDeviceId"], [_logger.trace, 2, "getDeviceState"], [_logger.trace, 2, "startCameraTest"], [_logger.trace, 2, "stopCameraTest"], [_logger.trace, 2, "startCameraPreview"], [_logger.trace, 2, "stopCameraPreview"], [_logger.trace, 2, "stopCameraPreviewOnAllCanvas"], [_logger.trace, 2, "startScreenCapture"], [_logger.trace, 2, "updateScreenCapture"], [_logger.trace, 2, "stopScreenCapture"], [_logger.trace, 2, "getScreenCaptureState"], [_logger.trace, 2, "enableSpeaker"], [_logger.trace, 2, "getAudioOutputRouting"], [_logger.trace, 2, "getAudioEffectEnhancer"], [_logger.trace, 2, "getVideoEffectEnhancer"], [_logger.trace, 2, "openDevice"], [_logger.trace, 2, "closeDevice"], [_logger.trace, 2, "switchCamera"], [_logger.trace, 2, "getCameraPosition"], [_logger.trace, 2, "isCapabilitySupported"], [_logger.trace, 2, "adjustOutputVolume"]], []).e;
|
|
@@ -588,6 +588,16 @@ export interface FcrDesktopMediaControl {
|
|
|
588
588
|
* 2 if not installed/activated
|
|
589
589
|
*/
|
|
590
590
|
checkLoopbackDevice(): Promise<number>;
|
|
591
|
+
/**
|
|
592
|
+
* Follow the system speaker.
|
|
593
|
+
* @param follow
|
|
594
|
+
*/
|
|
595
|
+
followSystemSpeaker(follow: boolean): void;
|
|
596
|
+
/**
|
|
597
|
+
* Follow the system microphone.
|
|
598
|
+
* @param follow
|
|
599
|
+
*/
|
|
600
|
+
followSystemMicrophone(follow: boolean): void;
|
|
591
601
|
}
|
|
592
602
|
export interface FcrMobileMediaControl {
|
|
593
603
|
/**
|
|
@@ -1,51 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
require("core-js/modules/es.symbol.description.js");
|
|
4
|
-
require("core-js/modules/es.error.cause.js");
|
|
5
|
-
require("core-js/modules/es.array.push.js");
|
|
6
|
-
require("core-js/modules/esnext.function.metadata.js");
|
|
7
|
-
require("core-js/modules/esnext.map.delete-all.js");
|
|
8
|
-
require("core-js/modules/esnext.map.emplace.js");
|
|
9
|
-
require("core-js/modules/esnext.map.every.js");
|
|
10
|
-
require("core-js/modules/esnext.map.filter.js");
|
|
11
|
-
require("core-js/modules/esnext.map.find.js");
|
|
12
|
-
require("core-js/modules/esnext.map.find-key.js");
|
|
13
|
-
require("core-js/modules/esnext.map.includes.js");
|
|
14
|
-
require("core-js/modules/esnext.map.key-of.js");
|
|
15
|
-
require("core-js/modules/esnext.map.map-keys.js");
|
|
16
|
-
require("core-js/modules/esnext.map.map-values.js");
|
|
17
|
-
require("core-js/modules/esnext.map.merge.js");
|
|
18
|
-
require("core-js/modules/esnext.map.reduce.js");
|
|
19
|
-
require("core-js/modules/esnext.map.some.js");
|
|
20
|
-
require("core-js/modules/esnext.map.update.js");
|
|
21
|
-
require("core-js/modules/esnext.symbol.metadata.js");
|
|
22
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
23
3
|
Object.defineProperty(exports, "__esModule", {
|
|
24
4
|
value: true
|
|
25
5
|
});
|
|
26
6
|
exports.FcrMonitorControlImpl = void 0;
|
|
27
|
-
require("core-js/modules/web.dom-collections.iterator.js");
|
|
28
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
29
|
-
var _logger = require("../utilities/logger");
|
|
30
|
-
var _FcrMonitorControlImpl;
|
|
31
|
-
let _initProto;
|
|
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
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
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); }
|
|
35
|
-
function _setFunctionName(e, t, n) { "symbol" == typeof t && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
|
|
36
|
-
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? typeof e : "null")); return e; }
|
|
37
7
|
/**
|
|
38
8
|
* @internal
|
|
39
9
|
*/
|
|
40
10
|
class FcrMonitorControlImpl {
|
|
41
11
|
constructor(engine, _config) {
|
|
42
|
-
(0, _defineProperty2.default)(this, "_monitor", void _initProto(this));
|
|
43
12
|
this._config = _config;
|
|
44
13
|
this._monitor = engine.getMonitor();
|
|
45
14
|
}
|
|
46
|
-
async uploadEvent(event) {
|
|
47
|
-
return this._monitor.uploadEvent(event);
|
|
48
|
-
}
|
|
49
15
|
addObserver(observer) {
|
|
50
16
|
this._monitor.addObserver(observer);
|
|
51
17
|
}
|
|
@@ -53,6 +19,4 @@ class FcrMonitorControlImpl {
|
|
|
53
19
|
this._monitor.addObserver(observer);
|
|
54
20
|
}
|
|
55
21
|
}
|
|
56
|
-
exports.FcrMonitorControlImpl = FcrMonitorControlImpl;
|
|
57
|
-
_FcrMonitorControlImpl = FcrMonitorControlImpl;
|
|
58
|
-
[_initProto] = _applyDecs(_FcrMonitorControlImpl, [[_logger.trace, 2, "uploadEvent"], [_logger.trace, 2, "addObserver"], [_logger.trace, 2, "removeObserver"]], []).e;
|
|
22
|
+
exports.FcrMonitorControlImpl = FcrMonitorControlImpl;
|
|
@@ -1,15 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FcrPerformanceInfo } from '../type';
|
|
2
2
|
export interface FcrMonitorObserver {
|
|
3
3
|
onPerformanceInfoUpdated?: (status: FcrPerformanceInfo) => void;
|
|
4
4
|
}
|
|
5
5
|
export interface FcrMonitorControl {
|
|
6
|
-
/**
|
|
7
|
-
* Uploads an event to the Agora Real-Time Engagement Monitor.
|
|
8
|
-
* @param event The event to be uploaded.
|
|
9
|
-
* @param success Callback function to be called if the upload is successful.
|
|
10
|
-
* @param failure Callback function to be called if the upload fails, with an error parameter.
|
|
11
|
-
*/
|
|
12
|
-
uploadEvent(event: FcrMonitorUploadEvent): Promise<void>;
|
|
13
6
|
/**
|
|
14
7
|
* Add an observer to the monitor.
|
|
15
8
|
* @param observer
|
|
@@ -62,6 +62,7 @@ class FcrPeerSessionControlImpl {
|
|
|
62
62
|
this._rteEngine = _rteEngine;
|
|
63
63
|
this._api = _api;
|
|
64
64
|
this._userId = _userId;
|
|
65
|
+
this._addLogObserver();
|
|
65
66
|
this._executeTask = this._executeTask.bind(this);
|
|
66
67
|
this._rteEngine.addObserver({
|
|
67
68
|
onPeerMessageReceived: this._handlePeerMessage.bind(this)
|
|
@@ -281,7 +282,10 @@ class FcrPeerSessionControlImpl {
|
|
|
281
282
|
_isSessionExpired(session) {
|
|
282
283
|
return session.timestamp + session.duration * _imports.Duration.second(1) < Date.now();
|
|
283
284
|
}
|
|
285
|
+
_addLogObserver() {
|
|
286
|
+
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onPeerSessionAccepted', 'onPeerSessionReceived', 'onPeerSessionRejected']));
|
|
287
|
+
}
|
|
284
288
|
}
|
|
285
289
|
exports.FcrPeerSessionControlImpl = FcrPeerSessionControlImpl;
|
|
286
290
|
_FcrPeerSessionControlImpl = FcrPeerSessionControlImpl;
|
|
287
|
-
[_initProto] = _applyDecs(_FcrPeerSessionControlImpl, [[_logger.trace, 2, "startPeerSession"], [_logger.trace, 2, "stopPeerSession"], [_logger.trace, 2, "acceptPeerSession"], [_logger.trace, 2, "rejectPeerSession"]
|
|
291
|
+
[_initProto] = _applyDecs(_FcrPeerSessionControlImpl, [[_logger.trace, 2, "startPeerSession"], [_logger.trace, 2, "stopPeerSession"], [_logger.trace, 2, "acceptPeerSession"], [_logger.trace, 2, "rejectPeerSession"]], []).e;
|
package/lib/plugins/chatroom.js
CHANGED
|
@@ -29,8 +29,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
29
29
|
});
|
|
30
30
|
exports.FcrChatRoomControlImpl = void 0;
|
|
31
31
|
require("core-js/modules/es.error.cause.js");
|
|
32
|
-
require("core-js/modules/esnext.async-iterator.map.js");
|
|
33
|
-
require("core-js/modules/esnext.iterator.map.js");
|
|
34
32
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
35
33
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
36
34
|
var _observable = require("agora-foundation/lib/utilities/observable");
|
|
@@ -53,10 +51,6 @@ function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side
|
|
|
53
51
|
* @internal
|
|
54
52
|
*/
|
|
55
53
|
class FcrChatRoomControlImpl {
|
|
56
|
-
_setConnectionState(state) {
|
|
57
|
-
this._connectionState = state;
|
|
58
|
-
this._observable.notifyObservers('onConnectionStateUpdated', this._scene.sceneId, state);
|
|
59
|
-
}
|
|
60
54
|
get conn() {
|
|
61
55
|
if (!this._chatConnection.getConnectionInstance()) {
|
|
62
56
|
throw (0, _error.generateFcrCoreClientError)(_error.FcrErrorModuleCode.ROOM_CHATROOM, _error.FcrErrorCode.UNDEFINED_ERROR, 'chat room connection not initialized, please get chat room token first', new Error('chat room connection not initialized, please get chat room token first'));
|
|
@@ -114,24 +108,27 @@ class FcrChatRoomControlImpl {
|
|
|
114
108
|
};
|
|
115
109
|
return message;
|
|
116
110
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
111
|
+
// TODO: 3.x
|
|
112
|
+
// case 'IMAGE': {
|
|
113
|
+
// const message: FcrChatRoomReceiveImageMessage = {
|
|
114
|
+
// id: msg.id,
|
|
115
|
+
// //@ts-ignore
|
|
116
|
+
// from: msg.ext.sender,
|
|
117
|
+
// type: FcrChatRoomMessageType.Image,
|
|
118
|
+
// //@ts-ignore
|
|
119
|
+
// timestamp: parseInt(msg.time),
|
|
120
|
+
// //@ts-ignore
|
|
121
|
+
// file: msg.url,
|
|
122
|
+
// //@ts-ignore
|
|
123
|
+
// isPrivate: msg.ext.isPrivate,
|
|
124
|
+
// };
|
|
125
|
+
// return message;
|
|
126
|
+
// }
|
|
130
127
|
}
|
|
131
128
|
throw (0, _error.generateFcrCoreClientError)(_error.FcrErrorModuleCode.ROOM_CHATROOM, _error.FcrErrorCode.UNDEFINED_ERROR, 'unknown remote message type', new Error('unknown remote message type'));
|
|
132
129
|
});
|
|
133
|
-
(0, _defineProperty2.default)(this, "_convertFcrChatRoomSendBaseMessageToAgoraChatMessage",
|
|
134
|
-
var _message$to
|
|
130
|
+
(0, _defineProperty2.default)(this, "_convertFcrChatRoomSendBaseMessageToAgoraChatMessage", msg => {
|
|
131
|
+
var _message$to;
|
|
135
132
|
switch (msg.type) {
|
|
136
133
|
case _type.FcrChatRoomMessageType.Text:
|
|
137
134
|
const message = msg;
|
|
@@ -149,36 +146,12 @@ class FcrChatRoomControlImpl {
|
|
|
149
146
|
},
|
|
150
147
|
receiverList: message.to
|
|
151
148
|
});
|
|
152
|
-
case _type.FcrChatRoomMessageType.Image:
|
|
153
|
-
const imageMessage = msg;
|
|
154
|
-
const isPrivateImage = !!((_imageMessage$to = imageMessage.to) !== null && _imageMessage$to !== void 0 && _imageMessage$to.length);
|
|
155
|
-
const localUser = this._scene.getUser(this._scene.getLocalUser().getLocalUserId());
|
|
156
|
-
return _easemobWebsdk.default.message.create({
|
|
157
|
-
to: this.chatRoomId,
|
|
158
|
-
type: 'img',
|
|
159
|
-
chatType: 'chatRoom',
|
|
160
|
-
url: imageMessage.file.filePath,
|
|
161
|
-
file: {
|
|
162
|
-
filename: imageMessage.file.fileName,
|
|
163
|
-
filetype: imageMessage.file.fileType,
|
|
164
|
-
data: imageMessage.file.data,
|
|
165
|
-
url: ''
|
|
166
|
-
},
|
|
167
|
-
ext: {
|
|
168
|
-
sender: (0, _user.convertRteUserToFcrUser)(localUser),
|
|
169
|
-
roomUuid: this._scene.sceneId,
|
|
170
|
-
isPrivate: isPrivateImage
|
|
171
|
-
},
|
|
172
|
-
receiverList: imageMessage.to,
|
|
173
|
-
onFileUploadProgress: e => {
|
|
174
|
-
progress === null || progress === void 0 || progress(Math.round(e.loaded / e.total * 100));
|
|
175
|
-
}
|
|
176
|
-
});
|
|
177
149
|
}
|
|
178
150
|
throw (0, _error.generateFcrCoreClientError)(_error.FcrErrorModuleCode.ROOM_CHATROOM, _error.FcrErrorCode.UNDEFINED_ERROR, 'unknown local message type', new Error('unknown local message type'));
|
|
179
151
|
});
|
|
180
152
|
this._scene = _scene;
|
|
181
153
|
this._chatConnection = _chatConnection;
|
|
154
|
+
this._addLogObserver();
|
|
182
155
|
this._chatConnection.addObserver(this._chatConnectionObserver);
|
|
183
156
|
if (this._chatConnection.getConnectionInstance()) {
|
|
184
157
|
this._addEventListener();
|
|
@@ -187,74 +160,22 @@ class FcrChatRoomControlImpl {
|
|
|
187
160
|
async join() {
|
|
188
161
|
await this._joinChatRoom(this._chatConnection.getConnectionState());
|
|
189
162
|
}
|
|
190
|
-
_removeEventListener() {
|
|
191
|
-
this.conn.removeEventHandler("chatroom".concat(this._scene.sceneId));
|
|
192
|
-
}
|
|
193
|
-
_addEventListener() {
|
|
194
|
-
this._removeEventListener();
|
|
195
|
-
this.conn.addEventHandler("chatroom".concat(this._scene.sceneId), {
|
|
196
|
-
onTextMessage: msg => {
|
|
197
|
-
if (msg.to !== this.chatRoomId) {
|
|
198
|
-
return;
|
|
199
|
-
}
|
|
200
|
-
const message = this._convertAgoraChatMessageToFcrChatRoomReceiveMessage(msg);
|
|
201
|
-
this._observable.notifyObservers('onTextMessageReceived', this._scene.sceneId, message);
|
|
202
|
-
}
|
|
203
|
-
});
|
|
204
|
-
this.conn.onPictureMessage = msg => {
|
|
205
|
-
if (msg.to !== this.chatRoomId) {
|
|
206
|
-
return;
|
|
207
|
-
}
|
|
208
|
-
// 这里的数据结构和 onTextMessage 不一样,实际上contentsType是img ,type是chatroom,
|
|
209
|
-
// 但是因为在onPictureMessage的回调中,所以这里直接用type: 'img',后续可以考虑优化
|
|
210
|
-
const message = this._convertAgoraChatMessageToFcrChatRoomReceiveMessage(_objectSpread(_objectSpread({}, msg), {}, {
|
|
211
|
-
type: 'img'
|
|
212
|
-
}));
|
|
213
|
-
this._observable.notifyObservers('onImageMessageReceived', this._scene.sceneId, message);
|
|
214
|
-
};
|
|
215
|
-
|
|
216
|
-
// TODO: 3.x
|
|
217
|
-
// this.conn.onCmdMessage = (msg) => {
|
|
218
|
-
// if (msg.to !== this.initConfig.chatRoomId) {
|
|
219
|
-
// return;
|
|
220
|
-
// }
|
|
221
|
-
// const message: FcrChatRoomReceiveCustomMessage =
|
|
222
|
-
// this._convertAgoraChatMessageToFcrChatRoomReceiveMessage(msg);
|
|
223
|
-
// this._observable.notifyObservers('onCustomMessageReceived', this._scene.sceneId, message);
|
|
224
|
-
// };
|
|
225
|
-
|
|
226
|
-
// TODO: 3.x
|
|
227
|
-
// this.conn.onChatroomEvent = (eventData: EasemobChat.ChatroomEvent) => {
|
|
228
|
-
// if (eventData.operation === 'updateAnnouncement') {
|
|
229
|
-
// this._observable.notifyObservers(
|
|
230
|
-
// 'onAnnouncementUpdated',
|
|
231
|
-
// this._scene.sceneId,
|
|
232
|
-
// // TODO: 应该用什么字段传递?
|
|
233
|
-
// (eventData.attributes as { [key: string]: string })?.announcement,
|
|
234
|
-
// );
|
|
235
|
-
// } else if (eventData.operation === 'deleteAnnouncement') {
|
|
236
|
-
// this._observable.notifyObservers('onAnnouncementDeleted', this._scene.sceneId);
|
|
237
|
-
// }
|
|
238
|
-
// };
|
|
239
|
-
}
|
|
240
163
|
getConnectionState() {
|
|
241
164
|
return this._connectionState;
|
|
242
165
|
}
|
|
243
|
-
async sendMessage(message
|
|
166
|
+
async sendMessage(message) {
|
|
244
167
|
var _message$to2;
|
|
245
|
-
const msg = this._convertFcrChatRoomSendBaseMessageToAgoraChatMessage(message
|
|
246
|
-
|
|
168
|
+
const msg = this._convertFcrChatRoomSendBaseMessageToAgoraChatMessage(message);
|
|
169
|
+
await this.conn.send(msg);
|
|
247
170
|
const localUserInfo = this._scene.getUser(this._scene.getLocalUser().getLocalUserId());
|
|
248
171
|
const res = _objectSpread(_objectSpread({}, message.type === _type.FcrChatRoomMessageType.Text ? {
|
|
249
172
|
content: message.content
|
|
250
|
-
} :
|
|
251
|
-
|
|
252
|
-
{
|
|
253
|
-
url: sendMsgRes.message.url
|
|
173
|
+
} : {
|
|
174
|
+
file: message.file
|
|
254
175
|
}), {}, {
|
|
255
176
|
from: (0, _user.convertRteUserToFcrUser)(localUserInfo),
|
|
256
|
-
id:
|
|
257
|
-
type:
|
|
177
|
+
id: msg.id,
|
|
178
|
+
type: _type.FcrChatRoomMessageType.Text,
|
|
258
179
|
properties: message.properties,
|
|
259
180
|
timestamp: Date.now(),
|
|
260
181
|
isPrivate: !!((_message$to2 = message.to) !== null && _message$to2 !== void 0 && _message$to2.length)
|
|
@@ -268,6 +189,9 @@ class FcrChatRoomControlImpl {
|
|
|
268
189
|
this._observable.removeObserver(observer);
|
|
269
190
|
}
|
|
270
191
|
async leave() {
|
|
192
|
+
if (!this._chatConnection.getConnectionInstance()) {
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
271
195
|
await new Promise(async (resolve, reject) => {
|
|
272
196
|
this._removeEventListener();
|
|
273
197
|
try {
|
|
@@ -285,24 +209,106 @@ class FcrChatRoomControlImpl {
|
|
|
285
209
|
}
|
|
286
210
|
});
|
|
287
211
|
}
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
212
|
+
_removeEventListener() {
|
|
213
|
+
this.conn.removeEventHandler("chatroom".concat(this._scene.sceneId));
|
|
214
|
+
}
|
|
215
|
+
_addEventListener() {
|
|
216
|
+
this._removeEventListener();
|
|
217
|
+
this.conn.addEventHandler("chatroom".concat(this._scene.sceneId), {
|
|
218
|
+
onTextMessage: msg => {
|
|
219
|
+
if (msg.to !== this.chatRoomId) {
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
const message = this._convertAgoraChatMessageToFcrChatRoomReceiveMessage(msg);
|
|
223
|
+
this._observable.notifyObservers('onTextMessageReceived', this._scene.sceneId, message);
|
|
299
224
|
}
|
|
300
225
|
});
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
return
|
|
226
|
+
// TODO: 3.x
|
|
227
|
+
// this.conn.onPictureMessage = (msg) => {
|
|
228
|
+
// if (msg.to !== this.initConfig.chatRoomId) {
|
|
229
|
+
// return;
|
|
230
|
+
// }
|
|
231
|
+
// const message: FcrChatRoomReceiveImageMessage =
|
|
232
|
+
// this._convertAgoraChatMessageToFcrChatRoomReceiveMessage(
|
|
233
|
+
// msg,
|
|
234
|
+
// ) as FcrChatRoomReceiveImageMessage;
|
|
235
|
+
// this._observable.notifyObservers('onImageMessageReceived', this._scene.sceneId, message);
|
|
236
|
+
// };
|
|
237
|
+
|
|
238
|
+
// TODO: 3.x
|
|
239
|
+
// this.conn.onCmdMessage = (msg) => {
|
|
240
|
+
// if (msg.to !== this.initConfig.chatRoomId) {
|
|
241
|
+
// return;
|
|
242
|
+
// }
|
|
243
|
+
// const message: FcrChatRoomReceiveCustomMessage =
|
|
244
|
+
// this._convertAgoraChatMessageToFcrChatRoomReceiveMessage(msg);
|
|
245
|
+
// this._observable.notifyObservers('onCustomMessageReceived', this._scene.sceneId, message);
|
|
246
|
+
// };
|
|
247
|
+
|
|
248
|
+
// TODO: 3.x
|
|
249
|
+
// this.conn.onChatroomEvent = (eventData: EasemobChat.ChatroomEvent) => {
|
|
250
|
+
// if (eventData.operation === 'updateAnnouncement') {
|
|
251
|
+
// this._observable.notifyObservers(
|
|
252
|
+
// 'onAnnouncementUpdated',
|
|
253
|
+
// this._scene.sceneId,
|
|
254
|
+
// // TODO: 应该用什么字段传递?
|
|
255
|
+
// (eventData.attributes as { [key: string]: string })?.announcement,
|
|
256
|
+
// );
|
|
257
|
+
// } else if (eventData.operation === 'deleteAnnouncement') {
|
|
258
|
+
// this._observable.notifyObservers('onAnnouncementDeleted', this._scene.sceneId);
|
|
259
|
+
// }
|
|
260
|
+
// };
|
|
261
|
+
}
|
|
262
|
+
_setConnectionState(state) {
|
|
263
|
+
this._connectionState = state;
|
|
264
|
+
this._observable.notifyObservers('onConnectionStateUpdated', this._scene.sceneId, state);
|
|
305
265
|
}
|
|
266
|
+
_addLogObserver() {
|
|
267
|
+
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onConnectionStateUpdated', 'onErrorOccurred'
|
|
268
|
+
// 'onTextMessageReceived'
|
|
269
|
+
]));
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
// TODO: 3.x
|
|
273
|
+
// /**
|
|
274
|
+
// *
|
|
275
|
+
// * @param pageSize max 50
|
|
276
|
+
// * @param startedMessageId
|
|
277
|
+
// * @returns
|
|
278
|
+
// */
|
|
279
|
+
// async getHistoryMessageList(
|
|
280
|
+
// pageSize: number,
|
|
281
|
+
// startedMessageId: string,
|
|
282
|
+
// ): Promise<Array<FcrChatRoomReceiveBaseMessage>> {
|
|
283
|
+
// if (pageSize > 50) {
|
|
284
|
+
// throw generateFcrCoreClientError(
|
|
285
|
+
// FcrErrorModuleCode.ROOM_CHATROOM,
|
|
286
|
+
// FcrErrorCode.UNDEFINED_ERROR,
|
|
287
|
+
// 'pageSize should be less than 50',
|
|
288
|
+
// new Error('pageSize should be less than 50'),
|
|
289
|
+
// );
|
|
290
|
+
// }
|
|
291
|
+
|
|
292
|
+
// const assembleRet = await this.conn.fetchHistoryMessages({
|
|
293
|
+
// queue: this.initConfig.chatRoomId,
|
|
294
|
+
// isGroup: true,
|
|
295
|
+
// count: pageSize,
|
|
296
|
+
// start: startedMessageId,
|
|
297
|
+
// fail(error) {
|
|
298
|
+
// throw generateFcrCoreClientError(
|
|
299
|
+
// FcrErrorModuleCode.ROOM_CHATROOM,
|
|
300
|
+
// FcrErrorCode.UNDEFINED_ERROR,
|
|
301
|
+
// error.message,
|
|
302
|
+
// new Error('get history message list failed'),
|
|
303
|
+
// );
|
|
304
|
+
// },
|
|
305
|
+
// });
|
|
306
|
+
|
|
307
|
+
// const ret: FcrChatRoomReceiveBaseMessage[] = assembleRet.map((msgBody) => {
|
|
308
|
+
// return this._convertAgoraChatMessageToFcrChatRoomReceiveMessage(msgBody);
|
|
309
|
+
// });
|
|
310
|
+
// return ret;
|
|
311
|
+
// }
|
|
306
312
|
|
|
307
313
|
// TODO: 3.x
|
|
308
314
|
// async getAnnouncement(): Promise<string> {
|
|
@@ -358,4 +364,4 @@ class FcrChatRoomControlImpl {
|
|
|
358
364
|
}
|
|
359
365
|
exports.FcrChatRoomControlImpl = FcrChatRoomControlImpl;
|
|
360
366
|
_FcrChatRoomControlImpl = FcrChatRoomControlImpl;
|
|
361
|
-
[_initProto] = _applyDecs(_FcrChatRoomControlImpl, [[_logger.trace, 2, "join"], [_logger.trace, 2, "getConnectionState"], [_logger.trace, 2, "sendMessage"], [_logger.trace, 2, "
|
|
367
|
+
[_initProto] = _applyDecs(_FcrChatRoomControlImpl, [[_logger.trace, 2, "join"], [_logger.trace, 2, "getConnectionState"], [_logger.trace, 2, "sendMessage"], [_logger.trace, 2, "leave"]], []).e;
|
|
@@ -9,9 +9,8 @@ export interface FcrChatRoomControl {
|
|
|
9
9
|
/**
|
|
10
10
|
* Sends a message to the chat room.
|
|
11
11
|
* @param message
|
|
12
|
-
* @param onProgress
|
|
13
12
|
*/
|
|
14
|
-
sendMessage(message: FcrChatRoomSendBaseMessage
|
|
13
|
+
sendMessage(message: FcrChatRoomSendBaseMessage): Promise<FcrChatRoomReceiveBaseMessage>;
|
|
15
14
|
/**
|
|
16
15
|
* Adds an observer to the chat room.
|
|
17
16
|
* @param observer
|
|
@@ -22,12 +21,6 @@ export interface FcrChatRoomControl {
|
|
|
22
21
|
* @param observer
|
|
23
22
|
*/
|
|
24
23
|
removeObserver(observer: FcrChatRoomObserver): void;
|
|
25
|
-
/**
|
|
26
|
-
* Gets the history message list of the chat room.
|
|
27
|
-
* @param pageSize
|
|
28
|
-
* @param startedMessageId
|
|
29
|
-
*/
|
|
30
|
-
getHistoryMessageList(pageSize: number, startedMessageId?: string): Promise<FcrChatRoomReceivedBaseMessage[]>;
|
|
31
24
|
}
|
|
32
25
|
export declare enum FcrChatRoomConnectionState {
|
|
33
26
|
Disconnected = 0,
|
|
@@ -47,7 +40,7 @@ export type FcrChatRoomSendBaseMessage = {
|
|
|
47
40
|
export type FcrChatRoomSendTextMessage = FcrChatRoomSendBaseMessage & {
|
|
48
41
|
content: string;
|
|
49
42
|
};
|
|
50
|
-
export type
|
|
43
|
+
export type FcrChatRoomReceiveBaseMessage = {
|
|
51
44
|
id: string;
|
|
52
45
|
from: FcrUserInfo;
|
|
53
46
|
type: FcrChatRoomMessageType;
|
|
@@ -55,22 +48,22 @@ export type FcrChatRoomReceivedBaseMessage = {
|
|
|
55
48
|
timestamp: number;
|
|
56
49
|
isPrivate: boolean;
|
|
57
50
|
};
|
|
58
|
-
export type
|
|
51
|
+
export type FcrChatRoomReceiveTextMessage = FcrChatRoomReceiveBaseMessage & {
|
|
59
52
|
content: string;
|
|
60
53
|
};
|
|
61
54
|
export type FcrChatRoomFile = {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
filePath?: string;
|
|
65
|
-
data?: any;
|
|
66
|
-
};
|
|
67
|
-
export type FcrChatRoomReceivedImageMessage = FcrChatRoomReceivedBaseMessage & {
|
|
55
|
+
filename: string;
|
|
56
|
+
filetype: string;
|
|
68
57
|
url: string;
|
|
58
|
+
data: any;
|
|
59
|
+
};
|
|
60
|
+
export type FcrChatRoomReceiveImageMessage = FcrChatRoomReceiveBaseMessage & {
|
|
61
|
+
file: FcrChatRoomFile;
|
|
69
62
|
};
|
|
70
63
|
export type FcrChatRoomSendImageMessage = FcrChatRoomSendBaseMessage & {
|
|
71
64
|
file: FcrChatRoomFile;
|
|
72
65
|
};
|
|
73
|
-
export type FcrChatRoomReceiveCustomMessage =
|
|
66
|
+
export type FcrChatRoomReceiveCustomMessage = FcrChatRoomReceiveBaseMessage & {};
|
|
74
67
|
export type FcrChatRoomObserver = {
|
|
75
68
|
/**
|
|
76
69
|
* Callback to receive the connection state change of the chat room.
|
|
@@ -85,7 +78,7 @@ export type FcrChatRoomObserver = {
|
|
|
85
78
|
* @param message
|
|
86
79
|
* @returns
|
|
87
80
|
*/
|
|
88
|
-
onTextMessageReceived?: (roomId: string, message:
|
|
81
|
+
onTextMessageReceived?: (roomId: string, message: FcrChatRoomReceiveTextMessage) => void;
|
|
89
82
|
/**
|
|
90
83
|
* Callback when an error occurs.
|
|
91
84
|
* @param roomId
|
|
@@ -93,13 +86,6 @@ export type FcrChatRoomObserver = {
|
|
|
93
86
|
* @returns
|
|
94
87
|
*/
|
|
95
88
|
onErrorOccurred?: (roomId: string, error: FcrError) => void;
|
|
96
|
-
/**
|
|
97
|
-
* Callback to receive the image message sent to the chat room.
|
|
98
|
-
* @param roomId The ID of the chat room.
|
|
99
|
-
* @param message The image message received in the chat room.
|
|
100
|
-
* @returns void
|
|
101
|
-
*/
|
|
102
|
-
onImageMessageReceived?: (roomId: string, message: FcrChatRoomReceivedImageMessage) => void;
|
|
103
89
|
};
|
|
104
90
|
export type FcrChatRoomControlInitConfig = {
|
|
105
91
|
appkey: string;
|
|
@@ -246,4 +246,4 @@ class FcrGroupControl {
|
|
|
246
246
|
}
|
|
247
247
|
exports.FcrGroupControl = FcrGroupControl;
|
|
248
248
|
_FcrGroupControl = FcrGroupControl;
|
|
249
|
-
[_initProto] = _applyDecs(_FcrGroupControl, [[_logger.trace, 2, "getGroupList"], [_logger.trace, 2, "getGroupUserList"], [_logger.trace, 2, "addGroups"], [_logger.trace, 2, "updateGroups"], [_logger.trace, 2, "deleteGroups"], [_logger.trace, 2, "deleteAllGroups"], [_logger.trace, 2, "addUsers"], [_logger.trace, 2, "removeUsers"], [_logger.trace, 2, "moveUsers"]
|
|
249
|
+
[_initProto] = _applyDecs(_FcrGroupControl, [[_logger.trace, 2, "getGroupList"], [_logger.trace, 2, "getGroupUserList"], [_logger.trace, 2, "addGroups"], [_logger.trace, 2, "updateGroups"], [_logger.trace, 2, "deleteGroups"], [_logger.trace, 2, "deleteAllGroups"], [_logger.trace, 2, "addUsers"], [_logger.trace, 2, "removeUsers"], [_logger.trace, 2, "moveUsers"]], []).e;
|