@vkontakte/calls-sdk 2.8.11-dev.fdf6f999.0 → 2.8.11
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/CallsSDK.d.ts +12 -24
- package/abstract/BaseApi.d.ts +3 -5
- package/abstract/BaseSignaling.d.ts +3 -4
- package/calls-sdk.cjs.js +9 -11
- package/calls-sdk.esm.js +5961 -5828
- package/classes/CallRegistry.d.ts +26 -0
- package/classes/Conversation.d.ts +39 -18
- package/classes/MediaSource.d.ts +7 -0
- package/classes/SpecListener.d.ts +5 -0
- package/classes/StatsLogger.d.ts +0 -3
- package/classes/codec/WorkerBase.d.ts +2 -0
- package/classes/transport/DirectTransport.d.ts +5 -10
- package/classes/transport/ServerTransport.d.ts +0 -14
- package/classes/transport/Transport.d.ts +3 -20
- package/default/Api.d.ts +9 -8
- package/default/Signaling.d.ts +2 -0
- package/enums/SignalingNotification.d.ts +3 -1
- package/package.json +1 -1
- package/static/Capabilities.d.ts +5 -0
- package/static/External.d.ts +143 -76
- package/static/Params.d.ts +101 -95
- package/static/ParticipantConnectionStatusUtils.d.ts +16 -0
- package/types/Capabilities.d.ts +24 -0
- package/types/ExternalId.d.ts +1 -1
- package/types/Participant.d.ts +12 -1
- package/types/PushData.d.ts +3 -0
- package/types/SignalingMessage.d.ts +14 -1
- package/types/Statistics.d.ts +0 -4
- package/static/DebugVideoStats.d.ts +0 -37
- package/types/VideoStreamDebug.d.ts +0 -5
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import Conversation from './Conversation';
|
|
2
|
+
import MediaSettings from '../types/MediaSettings';
|
|
3
|
+
export interface HoldableConversation extends Conversation {
|
|
4
|
+
id: string;
|
|
5
|
+
hold(hold: boolean, lastActiveMediaSettings?: MediaSettings): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare class CallRegistry {
|
|
8
|
+
private _conversations;
|
|
9
|
+
private _activeId;
|
|
10
|
+
private _mutex;
|
|
11
|
+
add(conversation: HoldableConversation): void;
|
|
12
|
+
remove(id: string | null): void;
|
|
13
|
+
get(id: string): HoldableConversation | undefined;
|
|
14
|
+
getActive(): HoldableConversation | null;
|
|
15
|
+
getFirst(): HoldableConversation | null;
|
|
16
|
+
getActiveId(): string | null;
|
|
17
|
+
has(id: string): boolean;
|
|
18
|
+
getAll(): HoldableConversation[];
|
|
19
|
+
get callsLength(): number;
|
|
20
|
+
setActive(id: string): Promise<void>;
|
|
21
|
+
setHold(id: string): Promise<void>;
|
|
22
|
+
switchCall(id: string): Promise<void>;
|
|
23
|
+
clear(): void;
|
|
24
|
+
}
|
|
25
|
+
declare const callRegistry: CallRegistry;
|
|
26
|
+
export { callRegistry };
|
|
@@ -16,7 +16,7 @@ import { ConversationData, ConversationOnStartParams } from '../types/Conversati
|
|
|
16
16
|
import { ExternalId, ExternalParticipant, ExternalParticipantId, ExternalParticipantListChunk, ExternalUserId } from '../types/ExternalId';
|
|
17
17
|
import type { FastJoinHandler } from '../types/FastJoin';
|
|
18
18
|
import MediaModifiers from '../types/MediaModifiers';
|
|
19
|
-
import { IVideoDimentions } from '../types/MediaSettings';
|
|
19
|
+
import MediaSettings, { IVideoDimentions } from '../types/MediaSettings';
|
|
20
20
|
import { IAddMovieParams, IUpdateMovieData } from '../types/MovieShare';
|
|
21
21
|
import MuteStates from '../types/MuteStates';
|
|
22
22
|
import { CompositeUserId, IGetParticipantsParameters, ParticipantId, ParticipantStateData } from '../types/Participant';
|
|
@@ -37,9 +37,13 @@ export default class Conversation extends EventEmitter {
|
|
|
37
37
|
private _conversation;
|
|
38
38
|
private _myLastRequestedLayouts;
|
|
39
39
|
private _state;
|
|
40
|
+
private _previousState;
|
|
41
|
+
/** Если пользователь в зале ожидания, холд должен вызываться после промоута */
|
|
42
|
+
private _waitingHallHoldPending;
|
|
40
43
|
private _participantState;
|
|
41
44
|
private _participants;
|
|
42
45
|
private _pendingParticipants;
|
|
46
|
+
private _directTransportIsMaster?;
|
|
43
47
|
private _transport;
|
|
44
48
|
private _debugInfo;
|
|
45
49
|
private readonly _debug;
|
|
@@ -52,10 +56,8 @@ export default class Conversation extends EventEmitter {
|
|
|
52
56
|
private _isRealTimeAsrRequested;
|
|
53
57
|
private _serverSettings;
|
|
54
58
|
private _serverTimeOffset;
|
|
55
|
-
private
|
|
56
|
-
private
|
|
57
|
-
private static _delayedHangup;
|
|
58
|
-
private static _abortController;
|
|
59
|
+
private _delayedHangup;
|
|
60
|
+
private _abortController;
|
|
59
61
|
private readonly _onUnload;
|
|
60
62
|
private readonly _audioOutput;
|
|
61
63
|
private readonly _stats;
|
|
@@ -64,8 +66,6 @@ export default class Conversation extends EventEmitter {
|
|
|
64
66
|
private _audioFix;
|
|
65
67
|
private _streamByStreamId;
|
|
66
68
|
private _streamIdByStreamDescription;
|
|
67
|
-
private _participantIdByDebugStreamId;
|
|
68
|
-
private _mediaTypeByDebugStreamId;
|
|
69
69
|
private _streamWaitTimerByStreamDescription;
|
|
70
70
|
private _sequenceNumberByStreamDescription;
|
|
71
71
|
private _cooldownTimestampByStreamDescription;
|
|
@@ -75,6 +75,10 @@ export default class Conversation extends EventEmitter {
|
|
|
75
75
|
static current(): Conversation | null;
|
|
76
76
|
static hangupAfterInit(): void;
|
|
77
77
|
static id(): string | null;
|
|
78
|
+
get id(): string;
|
|
79
|
+
get externalId(): ExternalParticipantId | undefined;
|
|
80
|
+
get mediaSettings(): MediaSettings | undefined;
|
|
81
|
+
get isCallHeld(): boolean;
|
|
78
82
|
static debugSessionId(): string | null;
|
|
79
83
|
static getSyncedTime(): number;
|
|
80
84
|
get debugSessionId(): string | null;
|
|
@@ -110,11 +114,12 @@ export default class Conversation extends EventEmitter {
|
|
|
110
114
|
setVolume(volume: number): void;
|
|
111
115
|
updateStatisticsInterval(): void;
|
|
112
116
|
private _openTransport;
|
|
117
|
+
private _allocateParticipantTransport;
|
|
113
118
|
private _close;
|
|
114
119
|
destroy(): Promise<void>;
|
|
115
120
|
private _getConversationParams;
|
|
116
121
|
private _setConversationParams;
|
|
117
|
-
private
|
|
122
|
+
private _buildSignalingEndpoint;
|
|
118
123
|
/**
|
|
119
124
|
* @throws ErrorEvent
|
|
120
125
|
*/
|
|
@@ -129,6 +134,7 @@ export default class Conversation extends EventEmitter {
|
|
|
129
134
|
private _prepareConversation;
|
|
130
135
|
private _createParticipant;
|
|
131
136
|
private _getParticipantId;
|
|
137
|
+
private _cacheParticipantExternalIds;
|
|
132
138
|
private _setConversation;
|
|
133
139
|
private _updateConversation;
|
|
134
140
|
private _createMediaSource;
|
|
@@ -141,10 +147,16 @@ export default class Conversation extends EventEmitter {
|
|
|
141
147
|
private _registerParticipants;
|
|
142
148
|
/** Установим состояние локальных мьютов */
|
|
143
149
|
private _registerParticipantLocalMuteState;
|
|
144
|
-
private
|
|
150
|
+
private _remoteParticipantSessionState;
|
|
151
|
+
private _buildConnectionStatus;
|
|
152
|
+
private _isParticipantSessionStateApplicable;
|
|
153
|
+
private _setTransportStatus;
|
|
154
|
+
private _setSessionState;
|
|
155
|
+
private _emitParticipantTransition;
|
|
145
156
|
private _registerParticipantInCache;
|
|
146
157
|
private _getExistedParticipantByIdOrCreate;
|
|
147
158
|
private _getExternalIdByParticipantId;
|
|
159
|
+
private _getExternalIdsByOkIdsFromCache;
|
|
148
160
|
private _registerParticipantAndSetMarkersIfChunkEnabled;
|
|
149
161
|
private _warnParticipantNotInConversation;
|
|
150
162
|
private _denormalizeMarkers;
|
|
@@ -181,6 +193,7 @@ export default class Conversation extends EventEmitter {
|
|
|
181
193
|
private _cleanupParticipants;
|
|
182
194
|
private _cleanupParticipantAgnosticStreams;
|
|
183
195
|
private _cleanupTransport;
|
|
196
|
+
private _cleanupTransportForHold;
|
|
184
197
|
private _cleanupSpeakerDetector;
|
|
185
198
|
private _cleanupSpecListener;
|
|
186
199
|
private _cleanupSignaling;
|
|
@@ -208,15 +221,18 @@ export default class Conversation extends EventEmitter {
|
|
|
208
221
|
*/
|
|
209
222
|
changePriorities(priorities: ParticipantPriority[]): Promise<void>;
|
|
210
223
|
changeParticipantState(state: ParticipantStateData, compositeUserId?: CompositeUserId): Promise<void>;
|
|
211
|
-
hold(hold: boolean): Promise<void>;
|
|
224
|
+
hold(hold: boolean, lastActiveMediaSettings?: MediaSettings): Promise<void>;
|
|
225
|
+
private _holdLocally;
|
|
226
|
+
private _resumeLocalMedia;
|
|
227
|
+
private _restoreStateAfterHold;
|
|
228
|
+
private _isWaitingForPromotion;
|
|
229
|
+
private _getWaitingForPromotionStatus;
|
|
212
230
|
putHandsDown(): Promise<void>;
|
|
213
231
|
requestKeyFrame(participantStreamDescription: ParticipantStreamDescription): Promise<void | SignalingMessage>;
|
|
214
232
|
requestTestMode(consumerCommand: string, producerCommand: string): Promise<void>;
|
|
215
233
|
updateDisplayLayout(layouts: ParticipantLayout[]): Promise<void>;
|
|
216
234
|
requestDisplayLayout(requests: DisplayLayoutRequest[]): Promise<void>;
|
|
217
235
|
feedback(key: string): Promise<SignalingMessage>;
|
|
218
|
-
userFeedbackStats(userResponse: number, reason?: string, groupCallUsersCount?: number): void;
|
|
219
|
-
sendClientEvent(eventType: string, eventData?: Record<string, string | number | boolean>, immediately?: boolean): void;
|
|
220
236
|
private _changeMediaSettings;
|
|
221
237
|
private _stopStreaming;
|
|
222
238
|
/**
|
|
@@ -226,8 +242,6 @@ export default class Conversation extends EventEmitter {
|
|
|
226
242
|
private _sendUpdateDisplayLayout;
|
|
227
243
|
private _cleanupCooldownQueue;
|
|
228
244
|
private _onParticipantSourcesUpdate;
|
|
229
|
-
private _clearVideoStreamDebugParticipant;
|
|
230
|
-
private _registerVideoStreamDebugParticipant;
|
|
231
245
|
private _onParticipantPromoted;
|
|
232
246
|
private _onChatRoomUpdated;
|
|
233
247
|
private _onSharedMovieUpdate;
|
|
@@ -314,11 +328,17 @@ export default class Conversation extends EventEmitter {
|
|
|
314
328
|
private _changeMultipleParticipantState;
|
|
315
329
|
private _invokeRolesChangedCallbackIfNeeded;
|
|
316
330
|
private _onSignalingNotification;
|
|
331
|
+
private _onSignalingTopologyChanged;
|
|
317
332
|
private _onPromotionApproved;
|
|
318
333
|
private _onSignalingReconnect;
|
|
319
334
|
private _onSignalingFailed;
|
|
320
335
|
private _onAcceptedCall;
|
|
321
336
|
private _onHungup;
|
|
337
|
+
private _onSessionState;
|
|
338
|
+
private _reconcileParticipantSessionStates;
|
|
339
|
+
private _updateParticipantExternalId;
|
|
340
|
+
private _updateParticipantSessionState;
|
|
341
|
+
private _emitParticipantEffectiveStatusIfSessionOverridesTransport;
|
|
322
342
|
private _onAddedParticipant;
|
|
323
343
|
private _onJoinedParticipant;
|
|
324
344
|
private _onClosedConversation;
|
|
@@ -355,8 +375,8 @@ export default class Conversation extends EventEmitter {
|
|
|
355
375
|
private _onPinParticipant;
|
|
356
376
|
private _onOptionsChanged;
|
|
357
377
|
private _onNetworkStatus;
|
|
378
|
+
private _emitHeldParticipantsStatus;
|
|
358
379
|
private _onRemoteStreamSecond;
|
|
359
|
-
private _onDataChannelScreenStreamDebug;
|
|
360
380
|
/**
|
|
361
381
|
* Коллбек, вызывающийся при получении/остановке стрима от AnimojiReceiver
|
|
362
382
|
* @param participantId - участник, к которому относится стрим
|
|
@@ -376,6 +396,7 @@ export default class Conversation extends EventEmitter {
|
|
|
376
396
|
private _onSpeakerChanged;
|
|
377
397
|
private _onTransportStateChanged;
|
|
378
398
|
private _onTransportLocalStateChanged;
|
|
399
|
+
private _areTransportParticipantsOnHold;
|
|
379
400
|
private _onRemoteTrackAdded;
|
|
380
401
|
private _onRemoteTrackRemoved;
|
|
381
402
|
private _removeAudioTrack;
|
|
@@ -384,9 +405,6 @@ export default class Conversation extends EventEmitter {
|
|
|
384
405
|
private _onAudioMixStall;
|
|
385
406
|
private _onRemoteSignalledStall;
|
|
386
407
|
private _onRemoteDataStats;
|
|
387
|
-
private _onVideoStreamDebug;
|
|
388
|
-
private _resolveVideoStreamDebugMediaType;
|
|
389
|
-
private _resolveVideoStreamDebugParticipantId;
|
|
390
408
|
private _fixAudioDevice;
|
|
391
409
|
private _fixVideoDevice;
|
|
392
410
|
private _toggleJoinAvailability;
|
|
@@ -408,6 +426,7 @@ export default class Conversation extends EventEmitter {
|
|
|
408
426
|
private _onFeedback;
|
|
409
427
|
private _onDecorativeParticipantIdChanged;
|
|
410
428
|
private _onVideoSuspendSuggest;
|
|
429
|
+
private _onParticipantHold;
|
|
411
430
|
private _isMe;
|
|
412
431
|
private _getMuteStatesForRoomId;
|
|
413
432
|
private _getMuteStatesForCurrentRoom;
|
|
@@ -417,6 +436,8 @@ export default class Conversation extends EventEmitter {
|
|
|
417
436
|
private _getParticipants;
|
|
418
437
|
private _getParticipant;
|
|
419
438
|
}
|
|
439
|
+
declare function _resetPendingInstance(): void;
|
|
440
|
+
export { _resetPendingInstance };
|
|
420
441
|
export declare class UpdateDisplayLayoutError extends Error {
|
|
421
442
|
readonly participantErrors: {
|
|
422
443
|
externalId: ExternalParticipantId;
|
package/classes/MediaSource.d.ts
CHANGED
|
@@ -47,6 +47,7 @@ export declare class MediaSource extends EventEmitter {
|
|
|
47
47
|
/** Трек аудио эффектов. Не изменяется на протяжении всего времени */
|
|
48
48
|
private _audioEffectsTrack;
|
|
49
49
|
private _mediaSettings;
|
|
50
|
+
private _lastMediaSettings;
|
|
50
51
|
private _videoStatusOnScreenCapturingEnabled;
|
|
51
52
|
private _effect;
|
|
52
53
|
private _audioEffectParams;
|
|
@@ -67,7 +68,11 @@ export declare class MediaSource extends EventEmitter {
|
|
|
67
68
|
getSendAudioTrack(): MediaStreamTrack | null;
|
|
68
69
|
get isAnimojiRequested(): boolean;
|
|
69
70
|
addTrackToPeerConnection(pc: RTCPeerConnection, observer: boolean, noDataChannel: boolean): void;
|
|
71
|
+
/**
|
|
72
|
+
* @deprecated Используйте гетер mediaSettings
|
|
73
|
+
*/
|
|
70
74
|
getMediaSettings(): MediaSettings;
|
|
75
|
+
get mediaSettings(): MediaSettings;
|
|
71
76
|
changeDevice(kind: MediaDeviceKind): Promise<void>;
|
|
72
77
|
/**
|
|
73
78
|
* Установка кастомного стрима для видео, например внешний шаринг экрана
|
|
@@ -95,6 +100,8 @@ export declare class MediaSource extends EventEmitter {
|
|
|
95
100
|
private _setEffect;
|
|
96
101
|
private _stopEffect;
|
|
97
102
|
destroy(): void;
|
|
103
|
+
stopLocalMedia(): Promise<void>;
|
|
104
|
+
resumeLocalMedia(lastActiveMediaSettings?: MediaSettings): Promise<void>;
|
|
98
105
|
toggleScreenCapturing(settings: ScreenCaptureSettings): Promise<void>;
|
|
99
106
|
disableScreenCapturing(): Promise<void>;
|
|
100
107
|
private videoTrackMuteHandler;
|
|
@@ -12,12 +12,17 @@ export default class SpecListener extends EventEmitter {
|
|
|
12
12
|
private readonly _debug;
|
|
13
13
|
private readonly _logger;
|
|
14
14
|
private _connectionTimeout;
|
|
15
|
+
private _connectionTimeoutSuppressed;
|
|
15
16
|
private _volumeTimeout;
|
|
16
17
|
constructor(transport: Transport, volumesDetector: VolumesDetector, participants: Record<ParticipantId, Participant>, debug?: DebugLogger, logger?: StatsLogger | null);
|
|
17
18
|
destroy(): void;
|
|
18
19
|
onChangeRemoteMediaSettings(participantId: ParticipantId, mediaSettings: MediaSettings): void;
|
|
20
|
+
onParticipantHoldChanged(): void;
|
|
21
|
+
private _getConnectionTimeout;
|
|
22
|
+
private _getVolumeTimeout;
|
|
19
23
|
private _onTransportStateChanged;
|
|
20
24
|
private _onVolumesDetected;
|
|
21
25
|
private _onConnectionTimeout;
|
|
26
|
+
private _reportConnectionTimeout;
|
|
22
27
|
private _onVolumeTimeout;
|
|
23
28
|
}
|
package/classes/StatsLogger.d.ts
CHANGED
|
@@ -10,20 +10,17 @@ export default class StatsLogger extends BaseLogger {
|
|
|
10
10
|
private readonly _conversationIdProvider;
|
|
11
11
|
private readonly _batchInterval;
|
|
12
12
|
private _batchedClientStats;
|
|
13
|
-
private _batchedClientEvents;
|
|
14
13
|
private _batchTimeout;
|
|
15
14
|
private _serverTimeDelta;
|
|
16
15
|
constructor(api: BaseApi, externalLogger: BaseLogger | null, conversationIdProvider: () => string | null);
|
|
17
16
|
log(name: StatLog, value?: string, immediately?: boolean): void;
|
|
18
17
|
logClientStats(data: Record<string, string | number | boolean | undefined | null>, immediately?: boolean): void;
|
|
19
|
-
logClientEvent(data: Record<string, string | number | boolean | undefined | null>, immediately?: boolean): void;
|
|
20
18
|
destroy(): void;
|
|
21
19
|
private _getConversationId;
|
|
22
20
|
private _sendBatch;
|
|
23
21
|
private _startTimeout;
|
|
24
22
|
private _stopTimeout;
|
|
25
23
|
private _sendClientStats;
|
|
26
|
-
private _sendClientEvents;
|
|
27
24
|
private _calculateServerTimeDelta;
|
|
28
25
|
private _now;
|
|
29
26
|
}
|
|
@@ -11,11 +11,6 @@ import BaseTransport from './BaseTransport';
|
|
|
11
11
|
export default class DirectTransport extends BaseTransport {
|
|
12
12
|
private readonly _participantId;
|
|
13
13
|
private readonly _isMaster;
|
|
14
|
-
private _hasOutboundVideoDebug;
|
|
15
|
-
private _hasInboundVideoDebug;
|
|
16
|
-
private _outboundVideoDebugMediaType;
|
|
17
|
-
private _inboundVideoDebugMediaType;
|
|
18
|
-
private _videoDebugBytes;
|
|
19
14
|
private _remoteSDP;
|
|
20
15
|
private _remoteCandidates;
|
|
21
16
|
private _lastRemoteSDP;
|
|
@@ -32,6 +27,7 @@ export default class DirectTransport extends BaseTransport {
|
|
|
32
27
|
private _iceRestartTimeout;
|
|
33
28
|
private _reconnectionTimeout;
|
|
34
29
|
private _reconnectionPrevented;
|
|
30
|
+
private _remoteHold;
|
|
35
31
|
private _lastStat;
|
|
36
32
|
private _fingerprint;
|
|
37
33
|
private _neverConnected;
|
|
@@ -55,6 +51,10 @@ export default class DirectTransport extends BaseTransport {
|
|
|
55
51
|
updateSettings(settings: ServerSettings): void;
|
|
56
52
|
preventRestart(): void;
|
|
57
53
|
allowRestart(): void;
|
|
54
|
+
setRemoteHold(hold: boolean): void;
|
|
55
|
+
private _recreatePeerConnection;
|
|
56
|
+
private _createPeerConnection;
|
|
57
|
+
private _disposePeerConnection;
|
|
58
58
|
setAnimojiTransport(receiver: AnimojiReceiver, sender: AnimojiSender): void;
|
|
59
59
|
close(error?: Error): void;
|
|
60
60
|
private _setState;
|
|
@@ -80,11 +80,6 @@ export default class DirectTransport extends BaseTransport {
|
|
|
80
80
|
private static _patchRemoteDescription;
|
|
81
81
|
private _onReplacedTrack;
|
|
82
82
|
private _startStatInterval;
|
|
83
|
-
private _reportVideoStreamDebug;
|
|
84
|
-
private _isOutboundVideoDebugEnabled;
|
|
85
|
-
private _clearOutboundVideoDebug;
|
|
86
|
-
private _getVideoDebugMediaType;
|
|
87
|
-
private _getVideoDebugBitrate;
|
|
88
83
|
/**
|
|
89
84
|
* Check SVC support
|
|
90
85
|
* @see https://webrtc.internaut.com/mc/
|
|
@@ -9,9 +9,6 @@ import { CodecStatsAggregator } from '../stat/CodecStatsAggregator';
|
|
|
9
9
|
import { StatAggregator } from '../stat/StatAggregator';
|
|
10
10
|
import BaseTransport from './BaseTransport';
|
|
11
11
|
export default class ServerTransport extends BaseTransport {
|
|
12
|
-
private _outboundVideoDebugMediaTypes;
|
|
13
|
-
private _inboundVideoDebugParticipants;
|
|
14
|
-
private _videoDebugBytes;
|
|
15
12
|
private _producerNotification;
|
|
16
13
|
private _producerCommand;
|
|
17
14
|
private _producerScreen;
|
|
@@ -43,7 +40,6 @@ export default class ServerTransport extends BaseTransport {
|
|
|
43
40
|
private _participantIdRegistry;
|
|
44
41
|
private _disabledSenders;
|
|
45
42
|
private _rtpReceiversByStreamId;
|
|
46
|
-
private _participantIdByVideoTrackId;
|
|
47
43
|
private _producerSessionId;
|
|
48
44
|
private _newAudioShareTrack;
|
|
49
45
|
private _simulcastInfo;
|
|
@@ -86,16 +82,6 @@ export default class ServerTransport extends BaseTransport {
|
|
|
86
82
|
private _stopSettingsInterval;
|
|
87
83
|
private _collectStat;
|
|
88
84
|
private _reportStats;
|
|
89
|
-
private _reportVideoStreamDebug;
|
|
90
|
-
private _isOutboundVideoDebugEnabled;
|
|
91
|
-
private _getOutboundVideoDebugMediaType;
|
|
92
|
-
private _getOutboundVideoDebugTrack;
|
|
93
|
-
private _getVideoDebugStreamId;
|
|
94
|
-
private _getVideoDebugTrackId;
|
|
95
|
-
private _createVideoDebugLayer;
|
|
96
|
-
private _getScreenShareDebugMethod;
|
|
97
|
-
private _sumVideoDebugBitrate;
|
|
98
|
-
private _getVideoDebugBitrate;
|
|
99
85
|
private _detectStaleTracks;
|
|
100
86
|
private _allocateConsumer;
|
|
101
87
|
private _processOffer;
|
|
@@ -3,9 +3,7 @@ import BaseSignaling from '../../abstract/BaseSignaling';
|
|
|
3
3
|
import TransportState from '../../enums/TransportState';
|
|
4
4
|
import TransportTopology from '../../enums/TransportTopology';
|
|
5
5
|
import { type DebugLogger } from '../../static/Debug';
|
|
6
|
-
import { VideoStreamDebugDirection, type VideoStreamDebugLayer } from '../../static/DebugVideoStats';
|
|
7
6
|
import { ParticipantId } from '../../types/Participant';
|
|
8
|
-
import type { MediaType } from '../../types/ParticipantStreamDescription';
|
|
9
7
|
import ServerSettings from '../../types/ServerSettings';
|
|
10
8
|
import EventEmitter from '../EventEmitter';
|
|
11
9
|
import StatsLogger from '../StatsLogger';
|
|
@@ -29,24 +27,8 @@ export declare const enum TransportEvent {
|
|
|
29
27
|
ASR_TRANSCRIPTION = "ASR_TRANSCRIPTION",
|
|
30
28
|
ANIMOJI_STREAM = "ANIMOJI_STREAM",
|
|
31
29
|
ANIMOJI_ERROR = "ANIMOJI_ERROR",
|
|
32
|
-
SCREEN_SHARING_STAT = "SCREEN_SHARING_STAT"
|
|
33
|
-
VIDEO_STREAM_DEBUG = "VIDEO_STREAM_DEBUG"
|
|
30
|
+
SCREEN_SHARING_STAT = "SCREEN_SHARING_STAT"
|
|
34
31
|
}
|
|
35
|
-
export type VideoStreamDebugEvent = {
|
|
36
|
-
direction: VideoStreamDebugDirection;
|
|
37
|
-
mediaType?: MediaType.CAMERA | MediaType.SCREEN;
|
|
38
|
-
streamId?: ParticipantId;
|
|
39
|
-
trackId?: string;
|
|
40
|
-
mimeType?: string;
|
|
41
|
-
width?: number;
|
|
42
|
-
height?: number;
|
|
43
|
-
frameRate?: number;
|
|
44
|
-
bitrate?: number;
|
|
45
|
-
packetsLost?: number;
|
|
46
|
-
screenShareMethod?: string;
|
|
47
|
-
layers?: VideoStreamDebugLayer[];
|
|
48
|
-
clear?: boolean;
|
|
49
|
-
};
|
|
50
32
|
export declare class Transport extends EventEmitter {
|
|
51
33
|
private readonly _signaling;
|
|
52
34
|
private readonly _mediaSource;
|
|
@@ -73,6 +55,8 @@ export declare class Transport extends EventEmitter {
|
|
|
73
55
|
open(participantIds: ParticipantId[], peerId?: string | null, observer?: boolean, force?: boolean): void;
|
|
74
56
|
close(participantId: ParticipantId): void;
|
|
75
57
|
destroy(): void;
|
|
58
|
+
holdClose(): void;
|
|
59
|
+
setRemoteHold(hold: boolean): void;
|
|
76
60
|
getTopology(): TransportTopology;
|
|
77
61
|
isAllocated(participantId: ParticipantId): boolean;
|
|
78
62
|
allocated(): string[];
|
|
@@ -100,7 +84,6 @@ export declare class Transport extends EventEmitter {
|
|
|
100
84
|
private _onPeerConnectionClosed;
|
|
101
85
|
private _onServerAudioMixStall;
|
|
102
86
|
private _onRemoteDataStats;
|
|
103
|
-
private _onVideoStreamDebug;
|
|
104
87
|
private _onRemoteTrackAdded;
|
|
105
88
|
private _onRemoteTrackRemoved;
|
|
106
89
|
private _onAsrTranscription;
|
package/default/Api.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import BaseApi, {
|
|
1
|
+
import BaseApi, { ClientStats } from '../abstract/BaseApi';
|
|
2
2
|
import CallType from '../enums/CallType';
|
|
3
3
|
import HangupType from '../enums/HangupType';
|
|
4
4
|
import ConversationParams from '../types/ConversationParams';
|
|
5
5
|
import ConversationResponse from '../types/ConversationResponse';
|
|
6
6
|
import { ExternalId, ExternalParticipantId, ExternalUserId } from '../types/ExternalId';
|
|
7
7
|
import { CompositeUserId, OkUserId, ParticipantId } from '../types/Participant';
|
|
8
|
+
import PushData from '../types/PushData';
|
|
8
9
|
export default class Api extends BaseApi {
|
|
9
10
|
private _userId;
|
|
10
11
|
private _uuid;
|
|
@@ -13,8 +14,12 @@ export default class Api extends BaseApi {
|
|
|
13
14
|
protected _call(method: string, data?: any, noSession?: boolean): Promise<any>;
|
|
14
15
|
userId(participantId: ParticipantId): Promise<ExternalParticipantId>;
|
|
15
16
|
authorize(): Promise<void>;
|
|
17
|
+
private _getAnonymLoginCacheKey;
|
|
18
|
+
private _getCachedAnonymLogin;
|
|
19
|
+
private _setCachedAnonymLogin;
|
|
20
|
+
private _removeCachedAnonymLogin;
|
|
21
|
+
private _applyAnonymLogin;
|
|
16
22
|
logClientStats(items: ClientStats[]): void;
|
|
17
|
-
logClientEvents(items: ClientEvent[]): void;
|
|
18
23
|
uploadDebugLogs(conversationId: string, startTime: number, endTime: number, log: string): Promise<void>;
|
|
19
24
|
joinConversation(conversationId: string, isVideo?: boolean, chatId?: string): Promise<ConversationResponse>;
|
|
20
25
|
createConversation(conversationId: string, payload?: string, requireAuthToJoin?: boolean, { onlyAdminCanShareMovie, audienceMode, audioOnly, waitForAdmin, closedConversation, }?: {
|
|
@@ -40,13 +45,9 @@ export default class Api extends BaseApi {
|
|
|
40
45
|
}>;
|
|
41
46
|
getAnonymTokenByLink(joinLink: string, username?: string): Promise<string>;
|
|
42
47
|
joinConversationByLink(joinLink: string, isVideo?: boolean, observedIds?: ExternalUserId[], payload?: string): Promise<ConversationResponse>;
|
|
43
|
-
/**
|
|
44
|
-
* NB: Не сохраняет порядок возвращаемых ID
|
|
45
|
-
* @hidden
|
|
46
|
-
*/
|
|
47
|
-
getExternalIdsByOkIds(uids: OkUserId[]): Promise<ExternalParticipantId[]>;
|
|
48
48
|
getCachedOkIdByExternalId(externalId: ExternalId): ParticipantId | null;
|
|
49
49
|
getCachedRawOkIdByExternalId(externalId: ExternalId): OkUserId | null;
|
|
50
|
+
getCachedExternalIdByOkId(okId: OkUserId): ExternalParticipantId | null;
|
|
50
51
|
cacheExternalId(participantId: OkUserId | CompositeUserId | ParticipantId, externalId: ExternalParticipantId): void;
|
|
51
52
|
mapDecorativeId(decorativeId: OkUserId | CompositeUserId | ParticipantId, initialId: OkUserId | CompositeUserId | ParticipantId): void;
|
|
52
53
|
unmapDecorativeId(initialId: OkUserId | CompositeUserId | ParticipantId): void;
|
|
@@ -58,6 +59,6 @@ export default class Api extends BaseApi {
|
|
|
58
59
|
hangupConversation(conversationId: string, reason?: HangupType): void;
|
|
59
60
|
removeHistoryRecords(recordIds: number[]): Promise<void>;
|
|
60
61
|
cleanup(): void;
|
|
61
|
-
private _getExternalIdsByOkIds;
|
|
62
62
|
getServerTime(): Promise<number>;
|
|
63
|
+
getInbounds(): Promise<PushData[]>;
|
|
63
64
|
}
|
package/default/Signaling.d.ts
CHANGED
|
@@ -174,6 +174,8 @@ export default class Signaling extends BaseSignaling {
|
|
|
174
174
|
private _serializeErrorEvent;
|
|
175
175
|
private _onClose;
|
|
176
176
|
private _closeSocket;
|
|
177
|
+
private _isRecordCommand;
|
|
178
|
+
private _resolvePendingRecordCommands;
|
|
177
179
|
private _handleCommandResponse;
|
|
178
180
|
private _handleCommandsQueue;
|
|
179
181
|
private _startResponseTimer;
|
|
@@ -24,6 +24,7 @@ declare enum SignalingNotification {
|
|
|
24
24
|
REALLOC_CON = "realloc-con",
|
|
25
25
|
AUDIO_ACTIVITY = "audio-activity",
|
|
26
26
|
SPEAKER_CHANGED = "speaker-changed",
|
|
27
|
+
SESSION_STATE = "session-state",
|
|
27
28
|
STALLED_ACTIVITY = "stalled-activity",
|
|
28
29
|
CHAT_MESSAGE = "chat-message",
|
|
29
30
|
CUSTOM_DATA = "custom-data",
|
|
@@ -50,6 +51,7 @@ declare enum SignalingNotification {
|
|
|
50
51
|
ASR_STARTED = "asr-started",
|
|
51
52
|
ASR_STOPPED = "asr-stopped",
|
|
52
53
|
DECORATIVE_PARTICIPANT_ID_CHANGED = "decorative-participant-id-changed",
|
|
53
|
-
VIDEO_SUSPEND_SUGGEST = "video-suspend-suggest"
|
|
54
|
+
VIDEO_SUSPEND_SUGGEST = "video-suspend-suggest",
|
|
55
|
+
HOLD = "hold"
|
|
54
56
|
}
|
|
55
57
|
export default SignalingNotification;
|
package/package.json
CHANGED