fcr-core 3.8.0 → 3.8.1-beta
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/room-control/sharing-control/index.d.ts +1 -1
- package/lib/room-control/sharing-control/index.js +2 -2
- package/lib/room-control/stream-control/index.js +6 -1
- package/lib/room-control/stream-control/type.d.ts +1 -1
- package/lib/room-router/index.js +5 -1
- package/lib/room-router/type.d.ts +2 -2
- package/package.json +5 -5
|
@@ -29,7 +29,7 @@ export declare class FcrSharingControlImpl implements FcrSharingControl {
|
|
|
29
29
|
get ownerId(): string;
|
|
30
30
|
get ownerStream(): FcrStreamInfo | null;
|
|
31
31
|
constructor(_scene: AgoraRteScene, _api: FcrCoreServiceApi, _engine: AgoraRteEngine, _privilegeControl: FcrPrivilegeControl, _streamControl: FcrStreamControl, _sharedCache: FcrSharedCache, _userControl: FcrUserControl);
|
|
32
|
-
startScreenSharing(config: FcrScreenStreamCreateConfig, size?: FcrSize): Promise<string>;
|
|
32
|
+
startScreenSharing(config: FcrScreenStreamCreateConfig, size?: FcrSize, labels?: Map<string, any>): Promise<string>;
|
|
33
33
|
startWhiteboard(): Promise<void>;
|
|
34
34
|
updateScreenSharing(enableAnnotation: boolean): Promise<void>;
|
|
35
35
|
stop(): Promise<void>;
|
|
@@ -85,9 +85,9 @@ class FcrSharingControlImpl {
|
|
|
85
85
|
this._scene.addObserver(this._sceneObserver);
|
|
86
86
|
this.logger.info(`initialized, room id: ${this._scene.sceneId}`);
|
|
87
87
|
}
|
|
88
|
-
async startScreenSharing(config, size) {
|
|
88
|
+
async startScreenSharing(config, size, labels) {
|
|
89
89
|
try {
|
|
90
|
-
const streamId = await this._streamControl.addLocalScreenStream(config, size);
|
|
90
|
+
const streamId = await this._streamControl.addLocalScreenStream(config, size, labels);
|
|
91
91
|
return streamId;
|
|
92
92
|
} catch (error) {
|
|
93
93
|
throw error;
|
|
@@ -319,7 +319,7 @@ class FcrStreamControlImpl {
|
|
|
319
319
|
takeSnapshot(streamId, filePath) {
|
|
320
320
|
return this._scene.streamPlayer.takeSnapshot(streamId, filePath);
|
|
321
321
|
}
|
|
322
|
-
async addLocalScreenStream(config, size) {
|
|
322
|
+
async addLocalScreenStream(config, size, labels) {
|
|
323
323
|
const res = await (0, _error.handleRequestError)(() => this._api.startShareScreen({
|
|
324
324
|
roomId: this._scene.sceneId,
|
|
325
325
|
userId: this._scene.getLocalUser().getLocalUserId(),
|
|
@@ -352,6 +352,10 @@ class FcrStreamControlImpl {
|
|
|
352
352
|
} = res;
|
|
353
353
|
this._screenStreamId = streamId;
|
|
354
354
|
this._scene.localUser.prepareToPublishStream(streamId, token);
|
|
355
|
+
if (labels) {
|
|
356
|
+
// add label to scene
|
|
357
|
+
this._scene.addLocalStreamLabels(streamId, labels);
|
|
358
|
+
}
|
|
355
359
|
return streamId;
|
|
356
360
|
}
|
|
357
361
|
async removeScreenStream() {
|
|
@@ -362,6 +366,7 @@ class FcrStreamControlImpl {
|
|
|
362
366
|
});
|
|
363
367
|
}, _error.FcrErrorModuleCode.ROOM_STREAM, 'remove screen stream failed');
|
|
364
368
|
if (this._screenStreamId) {
|
|
369
|
+
this._scene.removeLocalStreamLabel(this._screenStreamId);
|
|
365
370
|
this._scene.localUser.removePreparePublishStream(this._screenStreamId);
|
|
366
371
|
}
|
|
367
372
|
return res;
|
|
@@ -114,7 +114,7 @@ export interface FcrStreamControl {
|
|
|
114
114
|
* Adds a local screen stream.
|
|
115
115
|
* @param config
|
|
116
116
|
*/
|
|
117
|
-
addLocalScreenStream(config: FcrScreenStreamCreateConfig, size?: FcrSize): Promise<string>;
|
|
117
|
+
addLocalScreenStream(config: FcrScreenStreamCreateConfig, size?: FcrSize, label?: Map<string, any>): Promise<string>;
|
|
118
118
|
/**
|
|
119
119
|
* Removes the local screen stream.
|
|
120
120
|
*/
|
package/lib/room-router/index.js
CHANGED
|
@@ -98,8 +98,12 @@ class FcrRoomRouterImpl {
|
|
|
98
98
|
this._abortController = null;
|
|
99
99
|
if (error) {
|
|
100
100
|
this._handleJoinRoomError(error);
|
|
101
|
-
|
|
101
|
+
return Promise.reject(error);
|
|
102
102
|
}
|
|
103
|
+
if (!this._roomControl) {
|
|
104
|
+
return Promise.reject(new Error('Room control is not initialized'));
|
|
105
|
+
}
|
|
106
|
+
return Promise.resolve(this._roomControl);
|
|
103
107
|
}
|
|
104
108
|
async leaveRoom() {
|
|
105
109
|
this._abortController?.abort();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FcrInterpreterRoomControlImpl } from '../room-control/interpreter-control/room';
|
|
2
2
|
import { FcrJoinBeforeHostWaitingRoomControlImpl } from '../room-control/join-before-host-waitingroom-control';
|
|
3
3
|
import { FcrMainRoomControlImpl } from '../room-control/mainroom-control';
|
|
4
|
-
import { FcrJoinBeforeHostWaitingRoomControl, FcrMainRoomControl, FcrRoomJoinOptions, FcrRoomType, FcrWaitingRoomControl } from '../room-control/type';
|
|
4
|
+
import { FcrBaseRoomControl, FcrJoinBeforeHostWaitingRoomControl, FcrMainRoomControl, FcrRoomJoinOptions, FcrRoomType, FcrWaitingRoomControl } from '../room-control/type';
|
|
5
5
|
import { FcrWaitingRoomControlImpl } from '../room-control/waitingroom-control';
|
|
6
6
|
import { FcrError } from '../utilities/error';
|
|
7
7
|
export type FcrRoomControlType = FcrMainRoomControl | FcrWaitingRoomControl | FcrJoinBeforeHostWaitingRoomControl;
|
|
@@ -34,7 +34,7 @@ export interface FcrRoomRouter {
|
|
|
34
34
|
/**
|
|
35
35
|
* 加入会议
|
|
36
36
|
*/
|
|
37
|
-
joinRoom(options: FcrRoomJoinOptions): Promise<
|
|
37
|
+
joinRoom(options: FcrRoomJoinOptions): Promise<FcrBaseRoomControl>;
|
|
38
38
|
/**
|
|
39
39
|
* 离开会议
|
|
40
40
|
*/
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fcr-core",
|
|
3
3
|
"description": "Core APIs for building online scenes",
|
|
4
|
-
"version": "3.8.
|
|
4
|
+
"version": "3.8.1-beta",
|
|
5
5
|
"module": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
7
7
|
"files": [
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"@types/lodash": "^4.14.168",
|
|
41
41
|
"@types/sinon": "^17.0.2",
|
|
42
42
|
"@types/uuid": "^8.3.0",
|
|
43
|
-
"agora-toolchain": "3.8.
|
|
43
|
+
"agora-toolchain": "3.8.1-beta",
|
|
44
44
|
"core-js": "^3.33.3",
|
|
45
45
|
"decomment": "^0.9.5",
|
|
46
46
|
"husky": "^9.0.11",
|
|
@@ -60,8 +60,8 @@
|
|
|
60
60
|
"@netless/video-js-plugin": "^0.3.8",
|
|
61
61
|
"@netless/white-snapshot": "^0.4.2",
|
|
62
62
|
"@netless/window-manager": "^1.0.7-beta.6",
|
|
63
|
-
"agora-foundation": "3.8.
|
|
64
|
-
"agora-rte-sdk": "3.8.
|
|
63
|
+
"agora-foundation": "3.8.1-beta",
|
|
64
|
+
"agora-rte-sdk": "3.8.1-beta",
|
|
65
65
|
"await-to-js": "^3.0.0",
|
|
66
66
|
"dayjs": "^1.10.4",
|
|
67
67
|
"easemob-websdk": "4.13.0",
|
|
@@ -92,4 +92,4 @@
|
|
|
92
92
|
"lint-staged": {
|
|
93
93
|
"*.{ts,tsx,html,css}": "prettier --write"
|
|
94
94
|
}
|
|
95
|
-
}
|
|
95
|
+
}
|