@vkontakte/calls-sdk 2.8.2-dev.dfa0c93.0 → 2.8.2-dev.e8ddcb1.0
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 +73 -36
- package/abstract/BaseApi.d.ts +10 -8
- package/abstract/BaseSignaling.d.ts +7 -5
- package/calls-sdk.cjs.js +8 -8
- package/calls-sdk.esm.js +8 -8
- package/classes/AudioOutput.d.ts +8 -3
- package/classes/Conversation.d.ts +14 -10
- package/classes/MediaSource.d.ts +5 -4
- package/classes/ParticipantIdRegistry.d.ts +5 -0
- package/classes/ProducerCommandSerializationService.d.ts +2 -0
- package/classes/codec/IEncoder.d.ts +1 -1
- package/classes/codec/LibVPxEncoder.d.ts +1 -1
- package/classes/codec/Types.d.ts +1 -1
- package/classes/codec/WebCodecsEncoder.d.ts +1 -1
- package/classes/screenshare/PacketHistory.d.ts +1 -0
- package/classes/screenshare/ScreenCaptureSender.d.ts +2 -1
- package/classes/screenshare/ScreenCongestionControl.d.ts +6 -1
- package/classes/transport/DirectTransport.d.ts +5 -0
- package/classes/transport/ServerTransport.d.ts +2 -0
- package/classes/transport/Statistics.d.ts +20 -2
- package/classes/transport/Transport.d.ts +1 -0
- package/constants/Rooms.d.ts +1 -0
- package/default/Api.d.ts +14 -14
- package/default/ApiExternal.d.ts +11 -0
- package/default/Signaling.d.ts +9 -8
- package/enums/SignalingCommandType.d.ts +6 -2
- package/enums/SignalingNotification.d.ts +2 -1
- package/package.json +3 -6
- package/static/ApiTransport.d.ts +3 -1
- package/static/AuthData.d.ts +6 -6
- package/static/External.d.ts +36 -6
- package/static/Params.d.ts +105 -33
- package/static/Utils.d.ts +2 -2
- package/types/Asr.d.ts +1 -1
- package/types/AudienceMode.d.ts +8 -0
- package/types/Conversation.d.ts +3 -0
- package/types/ExternalId.d.ts +13 -15
- package/types/MuteStates.d.ts +1 -1
- package/types/Params.d.ts +1 -0
- package/types/ParticipantLayout.d.ts +2 -2
- package/types/ParticipantStreamDescription.d.ts +0 -1
- package/types/RequestAsr.d.ts +3 -0
- package/types/Room.d.ts +3 -0
- package/types/SignalingMessage.d.ts +18 -0
- package/types/Statistics.d.ts +7 -2
- package/types/Streams.d.ts +10 -0
- package/types/VideoSettings.d.ts +15 -0
package/static/External.d.ts
CHANGED
|
@@ -126,6 +126,20 @@ declare namespace External {
|
|
|
126
126
|
* @param stream
|
|
127
127
|
*/
|
|
128
128
|
function onRemoteVmojiStream(userId: ExternalParticipantId, stream: MediaStream | null): void;
|
|
129
|
+
/**
|
|
130
|
+
* Cтрим собеседника приостановлен/возобновлен.
|
|
131
|
+
*
|
|
132
|
+
* @param userId
|
|
133
|
+
* @param suspended true - стрим был приостановлен, false - стрим был запущен
|
|
134
|
+
*/
|
|
135
|
+
function onRemoteStreamSuspended(userId: ExternalParticipantId, suspended: boolean): void;
|
|
136
|
+
/**
|
|
137
|
+
* Стрим с экрана собеседника приостановлен/возобновлен.
|
|
138
|
+
*
|
|
139
|
+
* @param userId
|
|
140
|
+
* @param suspended true - стрим был приостановлен, false - стрим был запущен
|
|
141
|
+
*/
|
|
142
|
+
function onRemoteScreenStreamSuspended(userId: ExternalParticipantId, suspended: boolean): void;
|
|
129
143
|
/**
|
|
130
144
|
* Начат звонок
|
|
131
145
|
*
|
|
@@ -135,7 +149,7 @@ declare namespace External {
|
|
|
135
149
|
* @param participants Список участников звонка
|
|
136
150
|
* @param rooms Список сессионных залов в звонке
|
|
137
151
|
*/
|
|
138
|
-
function onConversation(userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants
|
|
152
|
+
function onConversation(userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants: ExternalParticipant[], rooms?: Rooms): void;
|
|
139
153
|
/**
|
|
140
154
|
* Постраничные данные про участников при начале звонка
|
|
141
155
|
* @param chunk
|
|
@@ -177,15 +191,17 @@ declare namespace External {
|
|
|
177
191
|
*
|
|
178
192
|
* @param userId
|
|
179
193
|
* @param sharedMovieInfo
|
|
194
|
+
* @param roomId
|
|
180
195
|
*/
|
|
181
|
-
function onLocalSharedMovieInfo(userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo): void;
|
|
196
|
+
function onLocalSharedMovieInfo(userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId): void;
|
|
182
197
|
/**
|
|
183
198
|
* Полученны данные по собственным остановленным стримам (лайв/мувик)
|
|
184
199
|
*
|
|
185
200
|
* @param userId
|
|
186
201
|
* @param sharedMovieStoppedInfo
|
|
202
|
+
* @param roomId
|
|
187
203
|
*/
|
|
188
|
-
function onLocalSharedMovieStoppedInfo(userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo): void;
|
|
204
|
+
function onLocalSharedMovieStoppedInfo(userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId): void;
|
|
189
205
|
/**
|
|
190
206
|
* Добавили участника
|
|
191
207
|
*
|
|
@@ -414,13 +430,21 @@ declare namespace External {
|
|
|
414
430
|
*/
|
|
415
431
|
function onAutoplayError(): void;
|
|
416
432
|
/**
|
|
417
|
-
* Изменилось состояние зала
|
|
433
|
+
* Изменилось состояние зала ожидания/зала в режиме Audience
|
|
418
434
|
*
|
|
419
435
|
* @param eventType
|
|
420
|
-
* @param totalCount Количество
|
|
436
|
+
* @param totalCount Количество ожидающих/слушателей
|
|
421
437
|
* @param firstParticipants Первые несколько ожидающих в зале
|
|
438
|
+
* @param addedParticipantIds Некоторое количество участников, добавленных в зал
|
|
439
|
+
* @param removedParticipantIds Некоторое количество участников, убранных из зала
|
|
440
|
+
*/
|
|
441
|
+
function onChatRoomUpdated(eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[], addedParticipantIds: ExternalId[], removedParticipantIds: ExternalId[]): void;
|
|
442
|
+
/**
|
|
443
|
+
* Участник повышен/разжалован в зале ожидания/зале в режиме Audience
|
|
444
|
+
*
|
|
445
|
+
* @param demoted участник разжалован
|
|
422
446
|
*/
|
|
423
|
-
function
|
|
447
|
+
function onPromoted(demoted: boolean): void;
|
|
424
448
|
/**
|
|
425
449
|
* Получен микшированный аудио стрим.
|
|
426
450
|
*
|
|
@@ -494,5 +518,11 @@ declare namespace External {
|
|
|
494
518
|
*/
|
|
495
519
|
function onAsrStopped(roomId: number | null): void;
|
|
496
520
|
function onAsrTranscription(id: ExternalParticipantId, text: string, timestamp: number, duration: number): void;
|
|
521
|
+
/**
|
|
522
|
+
* Одобрено повышение пользователя в зеле ожидания/зале в режиме Audience
|
|
523
|
+
*
|
|
524
|
+
* @param adminParticipantId админ, одобривший повышение
|
|
525
|
+
*/
|
|
526
|
+
function onPromotionApproved(adminParticipantId: ExternalParticipantId): void;
|
|
497
527
|
}
|
|
498
528
|
export default External;
|
package/static/Params.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ import { IOnRemoteMovieData, ISharedMovieInfo, ISharedMovieState, ISharedMovieSt
|
|
|
20
20
|
import MuteStates from '../types/MuteStates';
|
|
21
21
|
import { ParticipantStateMapped } from '../types/Participant';
|
|
22
22
|
import { IRoomId, Room, RoomParticipantUpdate, Rooms, RoomsUpdate } from '../types/Room';
|
|
23
|
-
import
|
|
23
|
+
import { IApiEnv } from '../types/Params';
|
|
24
24
|
import { DebugMessageType } from './Debug';
|
|
25
25
|
import { ParticipantStatus } from './External';
|
|
26
26
|
import { JSONObject } from './Json';
|
|
@@ -29,17 +29,26 @@ import { FacingMode } from './WebRTCUtils';
|
|
|
29
29
|
* Параметры инициализации
|
|
30
30
|
*/
|
|
31
31
|
export type ParamsObject = {
|
|
32
|
+
/** @hidden */
|
|
32
33
|
platform: string;
|
|
34
|
+
/** @hidden */
|
|
33
35
|
clientType: string;
|
|
36
|
+
/** @hidden */
|
|
34
37
|
externalUserType: string;
|
|
38
|
+
/** @hidden */
|
|
35
39
|
device: string;
|
|
36
40
|
/**
|
|
37
41
|
* API ключ приложения
|
|
38
42
|
*/
|
|
39
43
|
apiKey: string;
|
|
40
|
-
apiEnv: 'AUTO' | 'PROD' | 'PROD_OK' | 'TEST' | 'VIDEOTEST' | string;
|
|
41
44
|
/** @hidden */
|
|
42
|
-
|
|
45
|
+
apiEnv: IApiEnv;
|
|
46
|
+
/** @hidden */
|
|
47
|
+
apiAuth?: {
|
|
48
|
+
sessionKey?: string;
|
|
49
|
+
sessionSecretKey?: string;
|
|
50
|
+
accessToken?: string;
|
|
51
|
+
};
|
|
43
52
|
/**
|
|
44
53
|
* Токен авторизации
|
|
45
54
|
*/
|
|
@@ -59,18 +68,29 @@ export type ParamsObject = {
|
|
|
59
68
|
externalDomain: string;
|
|
60
69
|
/** @hidden */
|
|
61
70
|
iceServers: IceServer[];
|
|
71
|
+
/** @hidden */
|
|
62
72
|
wssBase: string;
|
|
73
|
+
/** @hidden */
|
|
63
74
|
wssToken: string;
|
|
75
|
+
/** @hidden */
|
|
64
76
|
signalingReconnectDelay: number;
|
|
77
|
+
/** @hidden */
|
|
65
78
|
signalingReconnectMaxDelay: number;
|
|
79
|
+
/** @hidden */
|
|
66
80
|
signalingReconnectMaxCount: number;
|
|
81
|
+
/** @hidden */
|
|
67
82
|
waitConnectionDelay: number;
|
|
83
|
+
/** @hidden */
|
|
68
84
|
waitResponseDelay: number;
|
|
85
|
+
/** @hidden */
|
|
69
86
|
waitMessageDelay: number;
|
|
87
|
+
/** @hidden */
|
|
70
88
|
waitAnotherTabDelay: number;
|
|
89
|
+
/** @hidden */
|
|
71
90
|
debugLog: boolean;
|
|
72
91
|
/**
|
|
73
|
-
* Не
|
|
92
|
+
* Не отправлять в ICE-кандидатах персональные IP-адреса
|
|
93
|
+
* @see [RTCIceTransportPolicy](https://www.w3.org/TR/webrtc/#rtcicetransportpolicy-enum)
|
|
74
94
|
*
|
|
75
95
|
* _По умолчанию: `false`_
|
|
76
96
|
*/
|
|
@@ -130,7 +150,7 @@ export type ParamsObject = {
|
|
|
130
150
|
*/
|
|
131
151
|
displaySurface: DisplayCaptureSurfaceType;
|
|
132
152
|
/**
|
|
133
|
-
* Экземпляр класса `VideoEffects` из `@vkontakte/calls-video-effects`
|
|
153
|
+
* Экземпляр класса `VideoEffects` из [`@vkontakte/calls-video-effects`](https://npmjs.com/package/@vkontakte/calls-video-effects)
|
|
134
154
|
*
|
|
135
155
|
* Можно установить позднее методом `setVideoEffects`
|
|
136
156
|
*/
|
|
@@ -148,7 +168,7 @@ export type ParamsObject = {
|
|
|
148
168
|
*/
|
|
149
169
|
videoEffectMaxHeight: number;
|
|
150
170
|
/**
|
|
151
|
-
* Экземпляр класса `Vmoji` из `@vkontakte/calls-vmoji`
|
|
171
|
+
* Экземпляр класса `Vmoji` из [`@vkontakte/calls-vmoji`](https://npmjs.com/package/@vkontakte/calls-vmoji)
|
|
152
172
|
*
|
|
153
173
|
* Можно установить позднее методом `setVmoji`
|
|
154
174
|
*/
|
|
@@ -156,10 +176,12 @@ export type ParamsObject = {
|
|
|
156
176
|
/**
|
|
157
177
|
* Настройки отрисовки Vmoji.
|
|
158
178
|
*
|
|
159
|
-
* Экземпляр класса `RenderingOptions` из `@vkontakte/calls-vmoji`
|
|
179
|
+
* Экземпляр класса `RenderingOptions` из [`@vkontakte/calls-vmoji`](https://npmjs.com/package/@vkontakte/calls-vmoji)
|
|
160
180
|
*/
|
|
161
181
|
vmojiRenderingOptions: Partial<Vmoji.RenderingOptions> | null;
|
|
182
|
+
/** @hidden */
|
|
162
183
|
iceRestartWaitTime: number;
|
|
184
|
+
/** @hidden */
|
|
163
185
|
transportConnectionWaitTime: number;
|
|
164
186
|
/**
|
|
165
187
|
* Частота получения статистики в миллисекундах
|
|
@@ -192,10 +214,13 @@ export type ParamsObject = {
|
|
|
192
214
|
voiceParams: {
|
|
193
215
|
[key: string]: number;
|
|
194
216
|
};
|
|
217
|
+
/** @hidden */
|
|
195
218
|
specListenerParams: {
|
|
196
219
|
[key: string]: number;
|
|
197
220
|
};
|
|
221
|
+
/** @hidden */
|
|
198
222
|
perfStatReportEnabled: boolean;
|
|
223
|
+
/** @hidden */
|
|
199
224
|
callStatReportEnabled: boolean;
|
|
200
225
|
/**
|
|
201
226
|
* Отдавать приоритет кодеку H264 для исходящего видео
|
|
@@ -210,6 +235,7 @@ export type ParamsObject = {
|
|
|
210
235
|
* _По умолчанию: `true`_
|
|
211
236
|
*/
|
|
212
237
|
preferVP9: boolean;
|
|
238
|
+
/** @hidden */
|
|
213
239
|
audioNack: boolean;
|
|
214
240
|
/**
|
|
215
241
|
* Принимать параллельно видео с камеры и трансляцию экрана от одного и того же участника.
|
|
@@ -247,6 +273,7 @@ export type ParamsObject = {
|
|
|
247
273
|
* @deprecated
|
|
248
274
|
*/
|
|
249
275
|
producerScreenDataChannel: boolean;
|
|
276
|
+
/** @hidden */
|
|
250
277
|
asrDataChannel: boolean;
|
|
251
278
|
/**
|
|
252
279
|
* Размер пакета для отправки трансляции экрана в датаканал в байтах.
|
|
@@ -254,7 +281,9 @@ export type ParamsObject = {
|
|
|
254
281
|
* @hidden
|
|
255
282
|
*/
|
|
256
283
|
consumerScreenDataChannelPacketSize: number;
|
|
284
|
+
/** @hidden */
|
|
257
285
|
screenShareWebmBuilder: boolean;
|
|
286
|
+
/** @hidden */
|
|
258
287
|
noiseSuppression: boolean;
|
|
259
288
|
/**
|
|
260
289
|
* Количество входящих видео-треков.
|
|
@@ -272,7 +301,9 @@ export type ParamsObject = {
|
|
|
272
301
|
* _По умолчанию: `30`_
|
|
273
302
|
*/
|
|
274
303
|
videoTracksCount: number;
|
|
304
|
+
/** @hidden */
|
|
275
305
|
movieShare: boolean;
|
|
306
|
+
/** @hidden */
|
|
276
307
|
breakVideoPayloadTypes: boolean;
|
|
277
308
|
/**
|
|
278
309
|
* Включить постраничный вывод участников. Работает только если включено videoTracksCount (слоты)
|
|
@@ -363,20 +394,33 @@ export type ParamsObject = {
|
|
|
363
394
|
* _По умолчанию: `false`_
|
|
364
395
|
*/
|
|
365
396
|
fastScreenShare: boolean;
|
|
366
|
-
/**
|
|
367
|
-
* Настройки api
|
|
368
|
-
*/
|
|
369
|
-
api: {
|
|
370
|
-
/** таймаут для батчинга на получение externalId */
|
|
371
|
-
userIdsByOkBatchedTimeout: number;
|
|
372
|
-
};
|
|
397
|
+
/** @hidden */
|
|
373
398
|
fastScreenShareFrameRate: number;
|
|
399
|
+
/** @hidden */
|
|
374
400
|
fastScreenShareWidth: number;
|
|
401
|
+
/** @hidden */
|
|
375
402
|
fastScreenShareHeight: number;
|
|
376
403
|
/**
|
|
377
404
|
* Использовать новые правила allMute для админа
|
|
378
405
|
*/
|
|
379
406
|
newMuteRules: boolean;
|
|
407
|
+
/**
|
|
408
|
+
* Включить поддержку приостановки видео в плохой сети.
|
|
409
|
+
*
|
|
410
|
+
* _По умолчанию: `false`_
|
|
411
|
+
*/
|
|
412
|
+
videoSuspend: boolean;
|
|
413
|
+
/**
|
|
414
|
+
* Задержка обновления списка устройств после подключения/отключения камеры или микрофона
|
|
415
|
+
* @hidden
|
|
416
|
+
*/
|
|
417
|
+
enumerateDevicesDelay: number;
|
|
418
|
+
/**
|
|
419
|
+
* Включает логгирование статистики webrtc
|
|
420
|
+
*
|
|
421
|
+
* _По умолчанию: `false`_
|
|
422
|
+
*/
|
|
423
|
+
enableLogPerfStatReport: boolean;
|
|
380
424
|
/**
|
|
381
425
|
* Получен локальный стрим с камеры/микрофона
|
|
382
426
|
*/
|
|
@@ -402,6 +446,14 @@ export type ParamsObject = {
|
|
|
402
446
|
* Если сервер закончил стримить собеседника, вместо стрима будет передан null
|
|
403
447
|
*/
|
|
404
448
|
onRemoteStream?: (userId: ExternalParticipantId, stream: MediaStream | null) => void;
|
|
449
|
+
/**
|
|
450
|
+
* Cтрим собеседника приостановлен/возобновлен.
|
|
451
|
+
*/
|
|
452
|
+
onRemoteStreamSuspended?: (userId: ExternalParticipantId, suspended: boolean) => void;
|
|
453
|
+
/**
|
|
454
|
+
* Стрим с экрана собеседника приостановлен/возобновлен.
|
|
455
|
+
*/
|
|
456
|
+
onRemoteScreenStreamSuspended?: (userId: ExternalParticipantId, suspended: boolean) => void;
|
|
405
457
|
/**
|
|
406
458
|
* Получен стрим с экрана собеседника.
|
|
407
459
|
* Если сервер закончил стримить экран собеседника, вместо стрима будет передан null
|
|
@@ -433,7 +485,7 @@ export type ParamsObject = {
|
|
|
433
485
|
/**
|
|
434
486
|
* Начат звонок
|
|
435
487
|
*/
|
|
436
|
-
onConversation?: (userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants
|
|
488
|
+
onConversation?: (userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants: ExternalParticipant[], rooms?: Rooms) => void;
|
|
437
489
|
/**
|
|
438
490
|
* Начальный список участников для постраничного звонка
|
|
439
491
|
*/
|
|
@@ -441,7 +493,7 @@ export type ParamsObject = {
|
|
|
441
493
|
/**
|
|
442
494
|
* Изменились данные стрима собеседника
|
|
443
495
|
*/
|
|
444
|
-
onRemoteMediaSettings?: (userId: ExternalParticipantId, mediaSettings: MediaSettings, markers
|
|
496
|
+
onRemoteMediaSettings?: (userId: ExternalParticipantId, mediaSettings: MediaSettings, markers: ExternalParticipantListMarkers | null) => void;
|
|
445
497
|
/**
|
|
446
498
|
* Изменились данные стрима собеседника
|
|
447
499
|
*/
|
|
@@ -457,23 +509,23 @@ export type ParamsObject = {
|
|
|
457
509
|
/**
|
|
458
510
|
* Полученны данные по собственным стримам (лайв/мувик)
|
|
459
511
|
*/
|
|
460
|
-
onLocalSharedMovieInfo?: (userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo) => void;
|
|
512
|
+
onLocalSharedMovieInfo?: (userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId) => void;
|
|
461
513
|
/**
|
|
462
514
|
* Полученны данные по собственным остановленным стримам (лайв/мувик)
|
|
463
515
|
*/
|
|
464
|
-
onLocalSharedMovieStoppedInfo?: (userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo) => void;
|
|
516
|
+
onLocalSharedMovieStoppedInfo?: (userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId) => void;
|
|
465
517
|
/**
|
|
466
518
|
* Добавили участника
|
|
467
519
|
*/
|
|
468
|
-
onParticipantAdded?: (userId: ExternalParticipantId, markers
|
|
520
|
+
onParticipantAdded?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null) => void;
|
|
469
521
|
/**
|
|
470
522
|
* Участник присоединился к звонку
|
|
471
523
|
*/
|
|
472
|
-
onParticipantJoined?: (userId: ExternalParticipantId, markers
|
|
524
|
+
onParticipantJoined?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers) => void;
|
|
473
525
|
/**
|
|
474
526
|
* Изменились данные состояний собеседника
|
|
475
527
|
*/
|
|
476
|
-
onRemoteParticipantState?: (userId: ExternalParticipantId, participantState: ParticipantStateMapped, markers
|
|
528
|
+
onRemoteParticipantState?: (userId: ExternalParticipantId, participantState: ParticipantStateMapped, markers: ExternalParticipantListMarkers | null) => void;
|
|
477
529
|
/**
|
|
478
530
|
* Изменился статус соединения собеседников
|
|
479
531
|
*/
|
|
@@ -489,7 +541,7 @@ export type ParamsObject = {
|
|
|
489
541
|
/**
|
|
490
542
|
* Пользователь отключился от звонка
|
|
491
543
|
*/
|
|
492
|
-
onRemoteRemoved?: (userId: ExternalParticipantId, markers
|
|
544
|
+
onRemoteRemoved?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null) => void;
|
|
493
545
|
/**
|
|
494
546
|
* Изменилось состояние звонка
|
|
495
547
|
*/
|
|
@@ -513,7 +565,7 @@ export type ParamsObject = {
|
|
|
513
565
|
/**
|
|
514
566
|
* Закрепляет/открепляет собеседника для всех
|
|
515
567
|
*/
|
|
516
|
-
onPinnedParticipant?: (userId: ExternalParticipantId, unpin: boolean, markers
|
|
568
|
+
onPinnedParticipant?: (userId: ExternalParticipantId, unpin: boolean, markers: ExternalParticipantListMarkers | null, roomId?: number | null) => void;
|
|
517
569
|
/**
|
|
518
570
|
* Закрепляет/открепляет текущего пользователя у других собеседников
|
|
519
571
|
*/
|
|
@@ -604,13 +656,15 @@ export type ParamsObject = {
|
|
|
604
656
|
*/
|
|
605
657
|
onAutoplayError?: () => void;
|
|
606
658
|
/**
|
|
607
|
-
* Изменилось состояние зала
|
|
659
|
+
* Изменилось состояние зала ожидания/зала в режиме Audience
|
|
608
660
|
*
|
|
609
661
|
* @param eventType Тип события
|
|
610
|
-
* @param totalCount Количество
|
|
662
|
+
* @param totalCount Количество ожидающих/слушателей
|
|
611
663
|
* @param firstParticipants Первые несколько ожидающих в зале
|
|
664
|
+
* @param addedParticipantIds Некоторое количество участников, добавленных в зал
|
|
665
|
+
* @param removedParticipantIds Некоторое количество участников, убранных из зала
|
|
612
666
|
*/
|
|
613
|
-
onChatRoomUpdated?: (eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[]) => void;
|
|
667
|
+
onChatRoomUpdated?: (eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[], addedParticipantIds: ExternalId[], removedParticipantIds: ExternalId[]) => void;
|
|
614
668
|
/**
|
|
615
669
|
* Получен микшированный аудио стрим.
|
|
616
670
|
* @hidden
|
|
@@ -684,13 +738,32 @@ export type ParamsObject = {
|
|
|
684
738
|
* @param roomId Id Комнаты
|
|
685
739
|
*/
|
|
686
740
|
onAsrSet?: (data: IAsrData | null, roomId: number | null) => void;
|
|
741
|
+
/**
|
|
742
|
+
* Одобрено повышение пользователя в зеле ожидания/зале в режиме Audience
|
|
743
|
+
*
|
|
744
|
+
* @param adminParticipantId админ, одобривший повышение
|
|
745
|
+
*/
|
|
746
|
+
onPromotionApproved?: (adminParticipantId: ExternalParticipantId) => void;
|
|
747
|
+
/**
|
|
748
|
+
* Участник повышен/разжалован в зале ожидания/зале в режиме Audience
|
|
749
|
+
*
|
|
750
|
+
* @param demoted участник разжалован
|
|
751
|
+
*/
|
|
752
|
+
onPromoted?: (demoted: boolean) => void;
|
|
753
|
+
/**
|
|
754
|
+
* Поддержка переключения качества видео в зависимости от сети
|
|
755
|
+
* Только для режима p2p
|
|
756
|
+
*
|
|
757
|
+
* _По умолчанию: `false`_
|
|
758
|
+
*/
|
|
759
|
+
switchVideoAtBadNetwork: boolean;
|
|
687
760
|
};
|
|
688
761
|
export default abstract class Params {
|
|
689
762
|
private static _params;
|
|
690
763
|
static set(data: {
|
|
691
764
|
[key: string]: any;
|
|
692
765
|
}): void;
|
|
693
|
-
static get(name:
|
|
766
|
+
static get<N extends keyof ParamsObject>(name: N): ParamsObject[N];
|
|
694
767
|
static get appName(): string;
|
|
695
768
|
static get appVersion(): number;
|
|
696
769
|
static get sdkVersion(): string;
|
|
@@ -704,8 +777,8 @@ export default abstract class Params {
|
|
|
704
777
|
static set externalUserType(value: string);
|
|
705
778
|
static get device(): string;
|
|
706
779
|
static get apiKey(): string;
|
|
707
|
-
static get apiEnv():
|
|
708
|
-
static
|
|
780
|
+
static get apiEnv(): IApiEnv;
|
|
781
|
+
static apiEndpoint(apiEnv?: IApiEnv): string;
|
|
709
782
|
static get authToken(): string;
|
|
710
783
|
static set authToken(value: string);
|
|
711
784
|
static get anonymToken(): string;
|
|
@@ -793,12 +866,11 @@ export default abstract class Params {
|
|
|
793
866
|
static get fastScreenShare(): boolean;
|
|
794
867
|
static get screenShareCongestionControl(): boolean;
|
|
795
868
|
static get screenShareCongestionControlThreshold(): number;
|
|
796
|
-
static get api(): {
|
|
797
|
-
/** таймаут для батчинга на получение externalId */
|
|
798
|
-
userIdsByOkBatchedTimeout: number;
|
|
799
|
-
};
|
|
800
869
|
static get fastScreenShareWidth(): number;
|
|
801
870
|
static get fastScreenShareHeight(): number;
|
|
802
871
|
static get newMuteRules(): boolean;
|
|
872
|
+
static get videoSuspend(): boolean;
|
|
873
|
+
static get enumerateDevicesDelay(): number;
|
|
803
874
|
static getScreenFrameRate(fastScreenShare: boolean): number;
|
|
875
|
+
static get switchVideoAtBadNetwork(): boolean;
|
|
804
876
|
}
|
package/static/Utils.d.ts
CHANGED
|
@@ -17,8 +17,8 @@ declare namespace Utils {
|
|
|
17
17
|
port: any;
|
|
18
18
|
} | null>;
|
|
19
19
|
function composeUserId(id: CompositeUserId | OkUserId, type: UserType): CompositeUserId;
|
|
20
|
-
function composeParticipantId(id: CompositeUserId | OkUserId, type: UserType, deviceIdx
|
|
21
|
-
function compose(compositeId: CompositeUserId, deviceIdx
|
|
20
|
+
function composeParticipantId(id: CompositeUserId | OkUserId, type: UserType, deviceIdx?: number): ParticipantId;
|
|
21
|
+
function compose(compositeId: CompositeUserId, deviceIdx?: number): ParticipantId;
|
|
22
22
|
function composeId(participant: SignalingMessage.Participant): ParticipantId;
|
|
23
23
|
function composeMessageId(message: SignalingMessage): ParticipantId;
|
|
24
24
|
function decomposeId(compositeId: CompositeUserId | OkUserId): {
|
package/types/Asr.d.ts
CHANGED
package/types/Conversation.d.ts
CHANGED
|
@@ -51,6 +51,7 @@ export type ConversationData = {
|
|
|
51
51
|
needRate: boolean;
|
|
52
52
|
/** @hidden */
|
|
53
53
|
recordsInfoByRoom: Map<number | null, RecordInfo | null>;
|
|
54
|
+
/** @hidden */
|
|
54
55
|
asrInfoByRoom: Map<number | null, AsrInfo | null>;
|
|
55
56
|
chatId: string | null;
|
|
56
57
|
/** @hidden */
|
|
@@ -73,4 +74,6 @@ export type ConversationData = {
|
|
|
73
74
|
waitingHall: boolean;
|
|
74
75
|
observer: boolean;
|
|
75
76
|
roomId: number | null;
|
|
77
|
+
audienceMode: boolean;
|
|
78
|
+
restricted: boolean;
|
|
76
79
|
};
|
package/types/ExternalId.d.ts
CHANGED
|
@@ -15,22 +15,16 @@ export declare enum ExternalIdType {
|
|
|
15
15
|
}
|
|
16
16
|
export type ExternalUserId = string;
|
|
17
17
|
export declare namespace ExternalIdUtils {
|
|
18
|
-
function fromIds(ids:
|
|
19
|
-
function fromId(id:
|
|
20
|
-
function fromSignaling(signalingId: SignalingMessage.ExternalId):
|
|
18
|
+
function fromIds(ids: ExternalUserId[] | ExternalId[]): ExternalId[];
|
|
19
|
+
function fromId(id: ExternalUserId, type?: ExternalIdType, deviceIdx?: number): ExternalParticipantId;
|
|
20
|
+
function fromSignaling(signalingId: SignalingMessage.ExternalId, deviceIdx?: number): ExternalParticipantId;
|
|
21
21
|
function toString(externalId: ExternalId): ExternalIdString;
|
|
22
|
-
function fromIdToString(id:
|
|
23
|
-
function fromString(stringId: ExternalIdString):
|
|
24
|
-
function compare(id1:
|
|
22
|
+
function fromIdToString(id: ExternalUserId, type?: ExternalIdType, deviceIdx?: number): ExternalIdString;
|
|
23
|
+
function fromString(stringId: ExternalIdString): ExternalParticipantId;
|
|
24
|
+
function compare(id1: ExternalParticipantId, id2: ExternalParticipantId): boolean;
|
|
25
|
+
function getDeviceIdx(externalId: ExternalId | null): number;
|
|
25
26
|
}
|
|
26
27
|
export type ExternalIdString = string;
|
|
27
|
-
export declare namespace ExternalParticipantIdUtils {
|
|
28
|
-
function fromId(id: string, type?: ExternalIdType, deviceIdx?: number): ExternalParticipantId;
|
|
29
|
-
function toString(externalId: ExternalParticipantId): ExternalParticipantIdString;
|
|
30
|
-
function fromSignaling(signalingId: SignalingMessage.ExternalId, deviceIdx: number): ExternalParticipantId;
|
|
31
|
-
function getDeviceIdx(externalId: string | ExternalParticipantId | null): number;
|
|
32
|
-
}
|
|
33
|
-
export type ExternalParticipantIdString = string;
|
|
34
28
|
/**
|
|
35
29
|
* Идентификатор внешнего пользователя
|
|
36
30
|
*/
|
|
@@ -38,7 +32,7 @@ export interface ExternalId {
|
|
|
38
32
|
/**
|
|
39
33
|
* ID пользователя
|
|
40
34
|
*/
|
|
41
|
-
id:
|
|
35
|
+
id: ExternalUserId;
|
|
42
36
|
/**
|
|
43
37
|
* Тип пользователя
|
|
44
38
|
*/
|
|
@@ -48,6 +42,10 @@ export interface ExternalId {
|
|
|
48
42
|
* @hidden
|
|
49
43
|
*/
|
|
50
44
|
observer?: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Индекс устройства (позволяет отличать участников, которые присоединяются к звонку под одной учётной записью с разных устройств)
|
|
47
|
+
*/
|
|
48
|
+
deviceIdx?: number;
|
|
51
49
|
}
|
|
52
50
|
/**
|
|
53
51
|
* Идентификатор участника звонка
|
|
@@ -94,7 +92,7 @@ export interface ExternalParticipant {
|
|
|
94
92
|
* Разрешения на включение устройств
|
|
95
93
|
*/
|
|
96
94
|
unmuteOptions: MediaOption[];
|
|
97
|
-
markers
|
|
95
|
+
markers: ExternalParticipantListMarkers | null;
|
|
98
96
|
movieShareInfos?: ISharedMovieInfo[];
|
|
99
97
|
}
|
|
100
98
|
/**
|
package/types/MuteStates.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export default MuteStates;
|
|
|
13
13
|
* Состояние устройств пользователя установленное админом звонка
|
|
14
14
|
*/
|
|
15
15
|
export interface IMuteParticipantParams {
|
|
16
|
-
externalId?:
|
|
16
|
+
externalId?: ExternalParticipantId | null;
|
|
17
17
|
muteStates: MuteStates;
|
|
18
18
|
requestedMedia?: MediaOption[];
|
|
19
19
|
roomId?: number | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type IApiEnv = 'AUTO' | 'PROD' | 'PROD_OK' | 'TEST' | 'VIDEOTEST' | string;
|
|
@@ -15,12 +15,12 @@ export type Layout = {
|
|
|
15
15
|
/**
|
|
16
16
|
* Приоритет
|
|
17
17
|
*/
|
|
18
|
-
priority
|
|
18
|
+
priority?: number;
|
|
19
19
|
/**
|
|
20
20
|
* Как видео вписано в вьюпорт, по аналогии с CSS object-fit.
|
|
21
21
|
* Поддерживаемые значения: `cv` и `cn`, что соответствует CSS `cover` и `contain`
|
|
22
22
|
*/
|
|
23
|
-
fit
|
|
23
|
+
fit?: string;
|
|
24
24
|
};
|
|
25
25
|
/**
|
|
26
26
|
* Запрос остановки стрима
|
|
@@ -7,7 +7,6 @@ export declare enum MediaType {
|
|
|
7
7
|
SCREEN = "SCREEN",
|
|
8
8
|
STREAM = "STREAM",
|
|
9
9
|
MOVIE = "MOVIE",
|
|
10
|
-
AUDIOSHARE = "AUDIOSHARE",
|
|
11
10
|
ANIMOJI = "ANIMOJI"
|
|
12
11
|
}
|
|
13
12
|
export declare function serializeParticipantStreamDescription(description: ParticipantStreamDescription): StreamDescriptionString;
|
package/types/Room.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ import MediaSettings from './MediaSettings';
|
|
|
18
18
|
import { ISharedMovieInfo, ISharedMovieState, ISharedMovieStoppedInfo } from './MovieShare';
|
|
19
19
|
import MuteStates from './MuteStates';
|
|
20
20
|
import { CompositeUserId, OkUserId, ParticipantId, ParticipantListMarker as ParticipantParticipantListMarker, ParticipantListMarkers, ParticipantListType as ParticipantParticipantListType } from './Participant';
|
|
21
|
+
import { ParticipantStreamDescription } from './ParticipantStreamDescription';
|
|
21
22
|
import { IRoomId } from './Room';
|
|
22
23
|
import VideoSettings from './VideoSettings';
|
|
23
24
|
import { ChatRoom } from './WaitingHall';
|
|
@@ -51,6 +52,17 @@ declare namespace SignalingMessage {
|
|
|
51
52
|
}
|
|
52
53
|
export type ParticipantListType = ParticipantParticipantListType;
|
|
53
54
|
export type ParticipantListMarker = ParticipantParticipantListMarker;
|
|
55
|
+
export type ParticipantUpdateInfo = {
|
|
56
|
+
participantStreamDescription: ParticipantStreamDescription | null;
|
|
57
|
+
streamId: string;
|
|
58
|
+
rtpTimestamp: number | null;
|
|
59
|
+
sequenceNumber: number;
|
|
60
|
+
fastScreenShare: boolean;
|
|
61
|
+
};
|
|
62
|
+
export type ParticipantSuspendInfo = {
|
|
63
|
+
participantStreamDescription: ParticipantStreamDescription | null;
|
|
64
|
+
suspend: boolean;
|
|
65
|
+
};
|
|
54
66
|
export interface Participant {
|
|
55
67
|
id: OkUserId;
|
|
56
68
|
idType?: UserType;
|
|
@@ -372,6 +384,12 @@ declare namespace SignalingMessage {
|
|
|
372
384
|
export interface AsrStopNotification extends Notification {
|
|
373
385
|
roomId?: number;
|
|
374
386
|
}
|
|
387
|
+
export interface ParticipantSourcesUpdateNotification extends Notification {
|
|
388
|
+
participantUpdateInfos: ParticipantUpdateInfo[];
|
|
389
|
+
}
|
|
390
|
+
export interface ParticipantSourcesSuspendNotification extends Notification {
|
|
391
|
+
participantSuspendInfos: ParticipantSuspendInfo[];
|
|
392
|
+
}
|
|
375
393
|
export {};
|
|
376
394
|
}
|
|
377
395
|
export default SignalingMessage;
|
package/types/Statistics.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { TransportTopology } from '../classes/transport/Transport';
|
|
2
|
-
import { ExternalParticipantId } from './ExternalId';
|
|
3
2
|
export type StatTransport = {
|
|
4
3
|
totalRoundTripTime: number;
|
|
5
4
|
currentRoundTripTime: number;
|
|
@@ -7,6 +6,11 @@ export type StatTransport = {
|
|
|
7
6
|
bytesReceived: number;
|
|
8
7
|
local?: ILocalIceCandidateStat;
|
|
9
8
|
remote?: IRemoteIceCandidateStat;
|
|
9
|
+
averageNetStat?: AverageNetStat;
|
|
10
|
+
};
|
|
11
|
+
export type AverageNetStat = {
|
|
12
|
+
currentRoundTripTime: number;
|
|
13
|
+
lostPercent: number;
|
|
10
14
|
};
|
|
11
15
|
export interface IRemoteIceCandidateStat {
|
|
12
16
|
type: RTCIceCandidateType;
|
|
@@ -32,7 +36,7 @@ export type StatRtp = {
|
|
|
32
36
|
pliCount: number;
|
|
33
37
|
firCount: number;
|
|
34
38
|
nackCount: number;
|
|
35
|
-
userId?: string
|
|
39
|
+
userId?: string;
|
|
36
40
|
bandwidth?: number;
|
|
37
41
|
packetLoss?: number;
|
|
38
42
|
clockRate?: number;
|
|
@@ -60,6 +64,7 @@ export type StatItem = {
|
|
|
60
64
|
timestamp: number;
|
|
61
65
|
transport: StatTransport;
|
|
62
66
|
rtps: StatRtp[];
|
|
67
|
+
remoteRtps?: StatRtp[];
|
|
63
68
|
};
|
|
64
69
|
export type StatResult = {
|
|
65
70
|
inbound: {
|