@vkontakte/calls-sdk 2.8.11-dev.d94b3aa4.0 → 2.8.11-dev.f204132b.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.
Files changed (68) hide show
  1. package/CallsSDK.d.ts +57 -25
  2. package/abstract/BaseApi.d.ts +2 -3
  3. package/abstract/BaseSignaling.d.ts +5 -7
  4. package/calls-sdk.cjs.js +11 -11
  5. package/calls-sdk.esm.js +5691 -5190
  6. package/classes/AudioFix.d.ts +5 -1
  7. package/classes/AudioOutput.d.ts +5 -1
  8. package/classes/CallRegistry.d.ts +22 -0
  9. package/classes/Conversation.d.ts +20 -7
  10. package/classes/DebugInfo.d.ts +3 -0
  11. package/classes/DisplayLayoutRequester.d.ts +39 -0
  12. package/classes/ExternalIdCache.d.ts +19 -0
  13. package/classes/MediaSource.d.ts +12 -1
  14. package/classes/ParticipantIdRegistry.d.ts +3 -0
  15. package/classes/ProducerCommandSerializationService.d.ts +3 -0
  16. package/classes/SignalingActor.d.ts +3 -1
  17. package/classes/SpeakerDetector.d.ts +2 -1
  18. package/classes/SpecListener.d.ts +7 -1
  19. package/classes/{Logger.d.ts → StatsLogger.d.ts} +3 -10
  20. package/classes/VideoEffectsFpsLimiter.d.ts +3 -0
  21. package/classes/asr/AsrReceiver.d.ts +3 -1
  22. package/classes/codec/LibVPxDecoder.d.ts +3 -0
  23. package/classes/codec/LibVPxEncoder.d.ts +3 -1
  24. package/classes/codec/WebCodecsDecoder.d.ts +3 -0
  25. package/classes/codec/WebCodecsEncoder.d.ts +3 -1
  26. package/classes/codec/WorkerBase.d.ts +5 -0
  27. package/classes/screenshare/BaseStreamBuilder.d.ts +4 -1
  28. package/classes/screenshare/CanvasRenderer.d.ts +3 -1
  29. package/classes/screenshare/ScreenCaptureReceiver.d.ts +7 -1
  30. package/classes/screenshare/ScreenCaptureSender.d.ts +5 -1
  31. package/classes/screenshare/ScreenCongestionControl.d.ts +3 -1
  32. package/classes/screenshare/StreamBuilder.d.ts +5 -1
  33. package/classes/screenshare/TrackGeneratorRenderer.d.ts +3 -1
  34. package/classes/screenshare/WebmBuilder.d.ts +3 -1
  35. package/classes/stat/CodecStatsAggregator.d.ts +7 -7
  36. package/classes/stat/ConversationStats.d.ts +21 -0
  37. package/classes/stat/StatAggregator.d.ts +6 -6
  38. package/classes/stat/StatFirstMediaReceived.d.ts +5 -3
  39. package/classes/stat/StatPings.d.ts +9 -9
  40. package/classes/stat/StatScreenShareFirstFrame.d.ts +3 -1
  41. package/classes/stat/StatSignalingCommands.d.ts +8 -8
  42. package/classes/transport/BaseTransport.d.ts +1 -1
  43. package/classes/transport/DirectStatReporter.d.ts +3 -1
  44. package/classes/transport/DirectTransport.d.ts +9 -1
  45. package/classes/transport/PerfStatReporter.d.ts +5 -1
  46. package/classes/transport/ServerTransport.d.ts +10 -2
  47. package/classes/transport/Transport.d.ts +11 -14
  48. package/default/Api.d.ts +3 -11
  49. package/default/Signaling.d.ts +13 -3
  50. package/enums/SignalingNotification.d.ts +2 -1
  51. package/enums/TransportState.d.ts +10 -0
  52. package/enums/TransportTopology.d.ts +5 -0
  53. package/package.json +1 -1
  54. package/static/Capabilities.d.ts +5 -0
  55. package/static/Debug.d.ts +27 -8
  56. package/static/External.d.ts +146 -71
  57. package/static/Params.d.ts +98 -70
  58. package/static/Utils.d.ts +3 -2
  59. package/static/WebRTCUtils.d.ts +6 -4
  60. package/types/Capabilities.d.ts +24 -0
  61. package/types/Conversation.d.ts +1 -1
  62. package/types/FastStart.d.ts +1 -0
  63. package/types/ParticipantLayout.d.ts +33 -0
  64. package/types/SignalingMessage.d.ts +8 -1
  65. package/types/Statistics.d.ts +1 -1
  66. package/utils/DebugStorage.d.ts +100 -1
  67. package/classes/stat/EventMetricsService.d.ts +0 -9
  68. package/static/ConversationDebugLogger.d.ts +0 -13
@@ -35,7 +35,8 @@ export declare enum ParticipantStatus {
35
35
  RECONNECT = "RECONNECT",
36
36
  ERROR = "ERROR",
37
37
  HANGUP = "HANGUP",
38
- PERMISSIONS = "PERMISSIONS"
38
+ PERMISSIONS = "PERMISSIONS",
39
+ ONHOLD = "ONHOLD"
39
40
  }
40
41
  /**
41
42
  * Функции обратного вызова для передачи в параметрах инициализации
@@ -47,103 +48,117 @@ declare namespace External {
47
48
  *
48
49
  * @param stream
49
50
  * @param mediaSettings
51
+ * @param conversationId ID звонка
50
52
  */
51
- function onLocalStream(stream: MediaStream | null, mediaSettings: MediaSettings): void;
53
+ function onLocalStream(stream: MediaStream | null, mediaSettings: MediaSettings, conversationId?: string): void;
52
54
  /**
53
55
  * Локальный стрим с экрана добавлен/удалён
54
56
  *
55
57
  * @param stream
56
58
  * @param mediaSettings
59
+ * @param conversationId
57
60
  */
58
- function onScreenStream(stream: MediaStream | null, mediaSettings: MediaSettings): void;
61
+ function onScreenStream(stream: MediaStream | null, mediaSettings: MediaSettings, conversationId?: string): void;
59
62
  /**
60
63
  * Локальный стрим вимоджи добавлен/удалён
61
64
  *
62
65
  * @param stream
63
66
  * @param mediaSettings
67
+ * @param conversationId
64
68
  */
65
- function onVmojiStream(stream: MediaStream | null, mediaSettings: MediaSettings): void;
69
+ function onVmojiStream(stream: MediaStream | null, mediaSettings: MediaSettings, conversationId?: string): void;
66
70
  /**
67
71
  * Получена ошибка Vmoji
68
72
  *
69
73
  * @param error
74
+ * @param conversationId
70
75
  */
71
- function onVmojiError(error: VmojiError): void;
76
+ function onVmojiError(error: VmojiError, conversationId?: string): void;
72
77
  /**
73
78
  * Локальный стрим изменился
74
79
  *
75
80
  * @param mediaSettings
76
81
  * @param kind
82
+ * @param conversationId
77
83
  */
78
- function onLocalStreamUpdate(mediaSettings: MediaSettings, kind: MediaTrackKind): void;
84
+ function onLocalStreamUpdate(mediaSettings: MediaSettings, kind: MediaTrackKind, conversationId?: string): void;
79
85
  /**
80
86
  * Изменился статус локального соединения
81
87
  *
82
88
  * @param status
89
+ * @param conversationId ID звонка
83
90
  */
84
- function onLocalStatus(status: ParticipantStatus): void;
91
+ function onLocalStatus(status: ParticipantStatus, conversationId?: string): void;
85
92
  /**
86
93
  * Получен стрим собеседника.
87
94
  * Если сервер закончил стримить собеседника, вместо стрима будет передан null
88
95
  *
89
96
  * @param userId
90
97
  * @param stream
98
+ * @param conversationId ID звонка
91
99
  */
92
- function onRemoteStream(userId: ExternalParticipantId, stream: MediaStream | null): void;
100
+ function onRemoteStream(userId: ExternalParticipantId, stream: MediaStream | null, conversationId?: string): void;
93
101
  /**
94
102
  * Получен стрим лайв от собеседника.
95
103
  * Если сервер закончил стримить собеседника, вместо стрима будет передан null
96
104
  *
97
105
  * @param userId
98
106
  * @param data
107
+ * @param conversationId
99
108
  */
100
- function onRemoteLive(userId: ExternalParticipantId, data: IOnRemoteMovieData): void;
109
+ function onRemoteLive(userId: ExternalParticipantId, data: IOnRemoteMovieData, conversationId?: string): void;
101
110
  /**
102
111
  * Получен собственный стрим лайв.
103
112
  * Если сервер закончил стримить собеседника, вместо стрима будет передан null
104
113
  *
105
114
  * @param userId
106
115
  * @param data
116
+ * @param conversationId
107
117
  */
108
- function onLocalLive(userId: ExternalParticipantId, data: IOnRemoteMovieData): void;
118
+ function onLocalLive(userId: ExternalParticipantId, data: IOnRemoteMovieData, conversationId?: string): void;
109
119
  /**
110
120
  * Получено обновление стрима или лайва от собеседника.
111
121
  *
112
122
  * @param userId
113
123
  * @param data
124
+ * @param conversationId
114
125
  */
115
- function onRemoteLiveUpdate(userId: ExternalParticipantId, data: ISharedMovieState): void;
126
+ function onRemoteLiveUpdate(userId: ExternalParticipantId, data: ISharedMovieState, conversationId?: string): void;
116
127
  /**
117
128
  * Получено обновление собственного стрима или лайва.
118
129
  *
119
130
  * @param userId
120
131
  * @param data
132
+ * @param conversationId
121
133
  */
122
- function onLocalLiveUpdate(userId: ExternalParticipantId, data: ISharedMovieState): void;
134
+ function onLocalLiveUpdate(userId: ExternalParticipantId, data: ISharedMovieState, conversationId?: string): void;
123
135
  /**
124
136
  * Получен стрим с экрана собеседника.
125
137
  * Если сервер закончил стримить экран собеседника, вместо стрима будет передан null
126
138
  *
127
139
  * @param userId
128
140
  * @param stream
141
+ * @param conversationId ID звонка
129
142
  */
130
- function onRemoteScreenStream(userId: ExternalParticipantId, stream: MediaStream | null): void;
143
+ function onRemoteScreenStream(userId: ExternalParticipantId, stream: MediaStream | null, conversationId?: string): void;
131
144
  /**
132
145
  * Получен стрим вимоджи собеседника.
133
146
  * Если сервер закончил стримить собеседника, вместо стрима будет передан null
134
147
  *
135
148
  * @param userId
136
149
  * @param stream
150
+ * @param conversationId
137
151
  */
138
- function onRemoteVmojiStream(userId: ExternalParticipantId, stream: MediaStream | null): void;
152
+ function onRemoteVmojiStream(userId: ExternalParticipantId, stream: MediaStream | null, conversationId?: string): void;
139
153
  /**
140
154
  * Cтрим собеседника приостановлен/возобновлен.
141
155
  *
142
156
  * @param userId
143
157
  * @param mediaType тип отключённого/включённого потока
144
158
  * @param suspended true - стрим был приостановлен, false - стрим был запущен
159
+ * @param conversationId
145
160
  */
146
- function onRemoteStreamSuspended(userId: ExternalParticipantId, mediaType: MediaType, suspended: boolean): void;
161
+ function onRemoteStreamSuspended(userId: ExternalParticipantId, mediaType: MediaType, suspended: boolean, conversationId?: string): void;
147
162
  /**
148
163
  * Начат звонок
149
164
  *
@@ -152,106 +167,120 @@ declare namespace External {
152
167
  * @param muteStates Состояние устройств при входе в звонок
153
168
  * @param participants Список участников звонка
154
169
  * @param rooms Список сессионных залов в звонке
170
+ * @param conversationId ID звонка
155
171
  */
156
- function onConversation(userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants: ExternalParticipant[], rooms?: Rooms): void;
172
+ function onConversation(userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants: ExternalParticipant[], rooms?: Rooms, conversationId?: string): void;
157
173
  /**
158
174
  * Постраничные данные про участников при начале звонка
159
175
  * @param chunk
176
+ * @param conversationId
160
177
  */
161
- function onConversationParticipantListChunk(chunk: ExternalParticipantListChunk): void;
178
+ function onConversationParticipantListChunk(chunk: ExternalParticipantListChunk, conversationId?: string): void;
162
179
  /**
163
180
  * Изменились данные стрима собеседника
164
181
  *
165
182
  * @param userId
166
183
  * @param mediaSettings
167
184
  * @param markers
185
+ * @param conversationId
168
186
  */
169
- function onRemoteMediaSettings(userId: ExternalParticipantId, mediaSettings: MediaSettings, markers: ExternalParticipantListMarkers | null): void;
187
+ function onRemoteMediaSettings(userId: ExternalParticipantId, mediaSettings: MediaSettings, markers: ExternalParticipantListMarkers | null, conversationId?: string): void;
170
188
  /**
171
189
  * Изменились данные собственного стрима
172
190
  *
173
191
  * @param userId
174
192
  * @param mediaSettings
193
+ * @param conversationId
175
194
  */
176
- function onLocalMediaSettings(userId: ExternalParticipantId, mediaSettings: MediaSettings): void;
195
+ function onLocalMediaSettings(userId: ExternalParticipantId, mediaSettings: MediaSettings, conversationId?: string): void;
177
196
  /**
178
197
  * Полученны данные по стримам (лайв/мувик) от собеседника
179
198
  *
180
199
  * @param userId
181
200
  * @param sharedMovieInfo
182
201
  * @param roomId
202
+ * @param conversationId
183
203
  */
184
- function onRemoteSharedMovieInfo(userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId): void;
204
+ function onRemoteSharedMovieInfo(userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId, conversationId?: string): void;
185
205
  /**
186
206
  * Полученны данные по остановленным стримам (лайв/мувик) от собеседника
187
207
  *
188
208
  * @param userId
189
209
  * @param sharedMovieStoppedInfo
190
210
  * @param roomId
211
+ * @param conversationId
191
212
  */
192
- function onRemoteSharedMovieStoppedInfo(userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId): void;
213
+ function onRemoteSharedMovieStoppedInfo(userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId, conversationId?: string): void;
193
214
  /**
194
215
  * Полученны данные по собственным стримам (лайв/мувик)
195
216
  *
196
217
  * @param userId
197
218
  * @param sharedMovieInfo
198
219
  * @param roomId
220
+ * @param conversationId
199
221
  */
200
- function onLocalSharedMovieInfo(userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId): void;
222
+ function onLocalSharedMovieInfo(userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId, conversationId?: string): void;
201
223
  /**
202
224
  * Полученны данные по собственным остановленным стримам (лайв/мувик)
203
225
  *
204
226
  * @param userId
205
227
  * @param sharedMovieStoppedInfo
206
228
  * @param roomId
229
+ * @param conversationId
207
230
  */
208
- function onLocalSharedMovieStoppedInfo(userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId): void;
231
+ function onLocalSharedMovieStoppedInfo(userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId, conversationId?: string): void;
209
232
  /**
210
233
  * Получены данные о совместном использовании стороннего web-приложения
211
234
  *
212
235
  * @param userId
213
236
  * @param sharedUrl
214
237
  * @param roomId
238
+ * @param conversationId
215
239
  */
216
- function onRemoteSharedUrl(userId: ExternalParticipantId, sharedUrl: string | undefined, roomId: IRoomId): void;
240
+ function onRemoteSharedUrl(userId: ExternalParticipantId, sharedUrl: string | undefined, roomId: IRoomId, conversationId?: string): void;
217
241
  /**
218
242
  * Добавили участника
219
243
  *
220
244
  * @param userId
221
245
  * @param markers
246
+ * @param conversationId ID звонка
222
247
  */
223
- function onParticipantAdded(userId: ExternalId, markers: ExternalParticipantListMarkers | null): void;
248
+ function onParticipantAdded(userId: ExternalId, markers: ExternalParticipantListMarkers | null, conversationId?: string): void;
224
249
  /**
225
250
  * Участник подключился
226
251
  *
227
252
  * @param userId
228
253
  * @param markers
254
+ * @param conversationId ID звонка
229
255
  */
230
- function onParticipantJoined(userId: ExternalId, markers: ExternalParticipantListMarkers | null): void;
231
- function onLocalParticipantState(participantState: ParticipantStateMapped, global?: boolean): void;
256
+ function onParticipantJoined(userId: ExternalId, markers: ExternalParticipantListMarkers | null, conversationId?: string): void;
257
+ function onLocalParticipantState(participantState: ParticipantStateMapped, global?: boolean, conversationId?: string): void;
232
258
  /**
233
259
  * Изменились данные состояний собеседника
234
260
  *
235
261
  * @param userId
236
262
  * @param participantState
237
263
  * @param markers
264
+ * @param conversationId
238
265
  */
239
- function onRemoteParticipantState(userId: ExternalParticipantId, participantState: ParticipantStateMapped, markers: ExternalParticipantListMarkers | null): void;
266
+ function onRemoteParticipantState(userId: ExternalParticipantId, participantState: ParticipantStateMapped, markers: ExternalParticipantListMarkers | null, conversationId?: string): void;
240
267
  /**
241
268
  * Изменились данные состояний нескольких собеседников
242
269
  *
243
270
  * @param stateList
244
271
  * @param roomId
272
+ * @param conversationId
245
273
  */
246
- function onRemoteParticipantsState(stateList: ParticipantsStateList, roomId?: IRoomId): void;
274
+ function onRemoteParticipantsState(stateList: ParticipantsStateList, roomId?: IRoomId, conversationId?: string): void;
247
275
  /**
248
276
  * Изменился статус соединения собеседников
249
277
  *
250
278
  * @param userIds
251
279
  * @param status
252
280
  * @param data
281
+ * @param conversationId ID звонка
253
282
  */
254
- function onRemoteStatus(userIds: ExternalParticipantId[], status: ParticipantStatus, data?: any): void;
283
+ function onRemoteStatus(userIds: ExternalParticipantId[], status: ParticipantStatus, data?: any, conversationId?: string): void;
255
284
  /**
256
285
  * Разрешения на доступы были запрошены в браузере
257
286
  */
@@ -268,23 +297,26 @@ declare namespace External {
268
297
  *
269
298
  * @param userId
270
299
  * @param markers
300
+ * @param conversationId ID звонка
271
301
  */
272
- function onRemoteRemoved(userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null): void;
302
+ function onRemoteRemoved(userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null, conversationId?: string): void;
273
303
  /**
274
304
  * Изменилось состояние звонка
275
305
  *
276
306
  * @param isCallActive Активен ли сейчас звонок
277
307
  * @param canAddParticipants Можно ли добавлять собеседников
278
308
  * @param conversation Информация о звонке
309
+ * @param conversationId ID звонка
279
310
  */
280
- function onCallState(isCallActive: boolean, canAddParticipants: boolean, conversation: ConversationData): void;
311
+ function onCallState(isCallActive: boolean, canAddParticipants: boolean, conversation: ConversationData, conversationId?: string): void;
281
312
  /**
282
313
  * Изменилось состояние камеры или микрофона
283
314
  *
284
315
  * @param mediaOption Тип устройства
285
316
  * @param enabled Включено или выключено
317
+ * @param conversationId ID звонка
286
318
  */
287
- function onDeviceSwitched(mediaOption: MediaOption, enabled: boolean): void;
319
+ function onDeviceSwitched(mediaOption: MediaOption, enabled: boolean, conversationId?: string): void;
288
320
  /**
289
321
  * Изменились состояния устройств пользователя или разрешения включать камеру/микрофон
290
322
  *
@@ -298,23 +330,26 @@ declare namespace External {
298
330
  * @param stateUpdated Если `true`, значит глобальное/персональное состояние изменилось и поля `muteStates`/`unmuteOptions` содержат обновления, если `false`, значит, эти поля не имеют значения
299
331
  * @param requestedMedia Какие устройства попросили включить участника
300
332
  * @param roomId ID сессионного зала или ничего в случае основного зала
333
+ * @param conversationId
301
334
  */
302
- function onMuteStates(muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll?: boolean, unmute?: boolean, userId?: ExternalParticipantId | null, adminId?: ExternalParticipantId | null, stateUpdated?: boolean, requestedMedia?: MediaOption[], roomId?: number | null): void;
335
+ function onMuteStates(muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll?: boolean, unmute?: boolean, userId?: ExternalParticipantId | null, adminId?: ExternalParticipantId | null, stateUpdated?: boolean, requestedMedia?: MediaOption[], roomId?: number | null, conversationId?: string): void;
303
336
  /**
304
337
  * Изменились роли собеседника в звонке
305
338
  *
306
339
  * @param userId Внешний ID пользователя
307
340
  * @param roles Список ролей
308
341
  * @param isInitial Коллбек вызван при инициализации (переподключение в звонок, заранее назначенный админ)
342
+ * @param conversationId
309
343
  */
310
- function onRolesChanged(userId: ExternalId, roles: UserRole[], isInitial?: boolean): void;
344
+ function onRolesChanged(userId: ExternalId, roles: UserRole[], isInitial?: boolean, conversationId?: string): void;
311
345
  /**
312
346
  * Изменились свои роли в звонке
313
347
  *
314
348
  * @param roles Список ролей
315
349
  * @param isInitial Коллбек вызван при инициализации (переподключение в звонок, заранее назначенный админ)
350
+ * @param conversationId
316
351
  */
317
- function onLocalRolesChanged(roles: UserRole[], isInitial?: boolean): void;
352
+ function onLocalRolesChanged(roles: UserRole[], isInitial?: boolean, conversationId?: string): void;
318
353
  /**
319
354
  * Закрепляет/открепляет собеседника для всех
320
355
  *
@@ -322,47 +357,62 @@ declare namespace External {
322
357
  * @param unpin Открепить или закрепить
323
358
  * @param markers
324
359
  * @param roomId ID сессионного зала или ничего в случае основного зала
360
+ * @param conversationId
325
361
  */
326
- function onPinnedParticipant(userId: ExternalParticipantId, unpin: boolean, markers: ExternalParticipantListMarkers | null, roomId?: number | null): void;
362
+ function onPinnedParticipant(userId: ExternalParticipantId, unpin: boolean, markers: ExternalParticipantListMarkers | null, roomId?: number | null, conversationId?: string): void;
327
363
  /**
328
364
  * Закрепляет/открепляет текущего пользователя у других собеседников
329
365
  *
330
366
  * @param unpin Открепить или закрепить
331
367
  * @param roomId ID сессионного зала или ничего в случае основного зала
368
+ * @param conversationId
332
369
  */
333
- function onLocalPin(unpin: boolean, roomId?: number | null): void;
370
+ function onLocalPin(unpin: boolean, roomId?: number | null, conversationId?: string): void;
334
371
  /**
335
372
  * Изменились опции звонка
336
373
  *
337
374
  * @param options Список опций звонка
375
+ * @param conversationId
338
376
  */
339
- function onOptionsChanged(options: ConversationOption[]): void;
377
+ function onOptionsChanged(options: ConversationOption[], conversationId?: string): void;
340
378
  /**
341
379
  * Входящий звонок был принят мной
380
+ *
381
+ * @param conversationId ID звонка
382
+ */
383
+ function onCallAccepted(conversationId?: string): void;
384
+ /**
385
+ * Установление определенного звонка как активного
386
+ *
387
+ * @param conversationId ID звонка
342
388
  */
343
- function onCallAccepted(): void;
389
+ function onCallActive(conversationId: string): void;
344
390
  /**
345
391
  * Исходящий звонок был принят кем-то
392
+ *
346
393
  * @param userId
347
394
  * @param capabilities
395
+ * @param conversationId ID звонка
348
396
  */
349
- function onAcceptedCall(userId: ExternalId, capabilities: ParticipantCapabilities): void;
350
- function onRateNeeded(): void;
397
+ function onAcceptedCall(userId: ExternalId, capabilities: ParticipantCapabilities, conversationId?: string): void;
398
+ function onRateNeeded(conversationId?: string): void;
351
399
  /**
352
400
  * Изменился говорящий в звонке
353
401
  *
354
402
  * @param userId
403
+ * @param conversationId ID звонка
355
404
  */
356
- function onSpeakerChanged(userId: ExternalParticipantId): void;
405
+ function onSpeakerChanged(userId: ExternalParticipantId, conversationId?: string): void;
357
406
  /**
358
407
  * Громкость собеседников
359
408
  *
360
409
  * @param volumes
410
+ * @param conversationId
361
411
  */
362
412
  function onVolumesDetected(volumes: {
363
413
  uid: ExternalParticipantId;
364
414
  volume: number;
365
- }[]): void;
415
+ }[], conversationId?: string): void;
366
416
  /**
367
417
  * Громкость своего микрофона
368
418
  *
@@ -370,7 +420,7 @@ declare namespace External {
370
420
  * @param isMicEnabled
371
421
  */
372
422
  function onLocalVolume(volume: number, isMicEnabled: boolean): void;
373
- function onJoinStatus(available: boolean, chatId: string): void;
423
+ function onJoinStatus(available: boolean, chatId: string, conversationId?: string): void;
374
424
  /**
375
425
  * Звонок был завершен
376
426
  *
@@ -397,16 +447,18 @@ declare namespace External {
397
447
  * @param message Сообщение
398
448
  * @param from ID отправителя
399
449
  * @param direct Личное сообщение или общее
450
+ * @param conversationId
400
451
  */
401
- function onChatMessage(message: string, from: ExternalParticipantId, direct?: boolean): void;
452
+ function onChatMessage(message: string, from: ExternalParticipantId, direct?: boolean, conversationId?: string): void;
402
453
  /**
403
454
  * Получены данные от собеседника
404
455
  *
405
456
  * @param data Данные
406
457
  * @param from ID отправителя
407
458
  * @param direct Личное сообщение или общее
459
+ * @param conversationId
408
460
  */
409
- function onCustomData(data: JSONObject, from: ExternalParticipantId, direct?: boolean): void;
461
+ function onCustomData(data: JSONObject, from: ExternalParticipantId, direct?: boolean, conversationId?: string): void;
410
462
  /**
411
463
  * Начата запись звонка
412
464
  *
@@ -417,28 +469,33 @@ declare namespace External {
417
469
  * @param externalMovieId Внешний ID ролика
418
470
  * @param externalOwnerId Внешний ID пользователя/группы от которого ведётся трансляция
419
471
  * @param roomId ID зала в котором стартанула запись
472
+ * @param conversationId
420
473
  */
421
- function onRecordStarted(initiator: ExternalParticipantId, movieId: number, startTime: number, type: 'STREAM' | 'RECORD', externalMovieId?: string, externalOwnerId?: string, roomId?: number | null): void;
474
+ function onRecordStarted(initiator: ExternalParticipantId, movieId: number, startTime: number, type: 'STREAM' | 'RECORD', externalMovieId?: string, externalOwnerId?: string, roomId?: number | null, conversationId?: string): void;
422
475
  /**
423
476
  * Закончена запись звонка
424
477
  * @param roomId ID зала в котором остановлена запись
478
+ * @param stopBy
479
+ * @param conversationId
425
480
  */
426
- function onRecordStopped(roomId: number | null | undefined, stopBy: ExternalParticipantId | null): void;
481
+ function onRecordStopped(roomId: number | null | undefined, stopBy: ExternalParticipantId | null, conversationId?: string): void;
427
482
  /**
428
483
  * Состояние своей сети
429
484
  *
430
485
  * @param rating Оценка качества соединения от 0 до 1
486
+ * @param conversationId
431
487
  */
432
- function onLocalNetworkStatusChanged(rating: number): void;
488
+ function onLocalNetworkStatusChanged(rating: number, conversationId?: string): void;
433
489
  /**
434
490
  * Состояние сети участников
435
491
  *
436
492
  * @param status Оценки качества соединения участников от 0 до 1
493
+ * @param conversationId
437
494
  */
438
495
  function onNetworkStatusChanged(status: {
439
496
  uid: ExternalParticipantId;
440
497
  rating: number;
441
- }[]): void;
498
+ }[], conversationId?: string): void;
442
499
  /**
443
500
  * Получено отладочное сообщение. Работает только при выключенном режиме отладки
444
501
  *
@@ -446,6 +503,9 @@ declare namespace External {
446
503
  * @param args
447
504
  */
448
505
  function onDebugMessage(type: DebugMessageType, ...args: any[]): void;
506
+ function onDebugMessageWithContext(type: DebugMessageType, context: {
507
+ conversationId: string | null;
508
+ }, ...args: any[]): void;
449
509
  /**
450
510
  * Статистика звонка
451
511
  *
@@ -465,103 +525,118 @@ declare namespace External {
465
525
  * @param firstParticipants Первые несколько ожидающих в зале
466
526
  * @param addedParticipantIds Некоторое количество участников, добавленных в зал
467
527
  * @param removedParticipantIds Некоторое количество участников, убранных из зала
528
+ * @param conversationId
468
529
  */
469
- function onChatRoomUpdated(eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[], addedParticipantIds: ExternalId[], removedParticipantIds: ExternalId[]): void;
530
+ function onChatRoomUpdated(eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[], addedParticipantIds: ExternalId[], removedParticipantIds: ExternalId[], conversationId?: string): void;
470
531
  /**
471
532
  * Участник повышен/разжалован в зале ожидания/зале в режиме Audience
472
533
  *
473
534
  * @param demoted участник разжалован
535
+ * @param conversationId
474
536
  */
475
- function onPromoted(demoted: boolean): void;
537
+ function onPromoted(demoted: boolean, conversationId?: string): void;
476
538
  /**
477
539
  * Получен микшированный аудио стрим.
478
540
  *
479
541
  * @param stream стрим от WebRTC
542
+ * @param conversationId
480
543
  */
481
- function onRemoteMixedAudioStream(stream: MediaStream): void;
544
+ function onRemoteMixedAudioStream(stream: MediaStream, conversationId?: string): void;
482
545
  /**
483
546
  * Получена новая ссылка на звонок
484
547
  * @param joinLink токен присоединения к звонку
548
+ * @param conversationId
485
549
  */
486
- function onJoinLinkChanged(joinLink: string | null): void;
550
+ function onJoinLinkChanged(joinLink: string | null, conversationId?: string): void;
487
551
  /**
488
552
  * Получено обновление по сессионным залам
489
553
  * @param updates
554
+ * @param conversationId
490
555
  */
491
- function onRoomsUpdated(updates: Partial<Record<RoomsEventType, RoomsUpdate>>): void;
556
+ function onRoomsUpdated(updates: Partial<Record<RoomsEventType, RoomsUpdate>>, conversationId?: string): void;
492
557
  /**
493
558
  * Получено обновление по сессионному залу
494
559
  * @param eventTypes
495
560
  * @param roomId
496
561
  * @param room
497
562
  * @param deactivate
563
+ * @param conversationId
498
564
  */
499
- function onRoomUpdated(eventTypes: RoomsEventType[], roomId: number, room: Room | null, deactivate: boolean | null): void;
565
+ function onRoomUpdated(eventTypes: RoomsEventType[], roomId: number, room: Room | null, deactivate: boolean | null, conversationId?: string): void;
500
566
  /**
501
567
  * Получено обновление по участникам сессионного зала
502
568
  * @param update
569
+ * @param conversationId
503
570
  */
504
- function onRoomParticipantsUpdated(update: RoomParticipantUpdate): void;
571
+ function onRoomParticipantsUpdated(update: RoomParticipantUpdate, conversationId?: string): void;
505
572
  /**
506
573
  * Произошел переход в другой активный зал (или основной)
507
574
  * @param roomId
575
+ * @param conversationId
508
576
  */
509
- function onRoomSwitched(roomId: number | null): void;
577
+ function onRoomSwitched(roomId: number | null, conversationId?: string): void;
510
578
  /**
511
579
  * Установить id сессионного зала на старте звонка
512
580
  * @param roomId
581
+ * @param conversationId
513
582
  */
514
- function onRoomStart(roomId: number | null): void;
583
+ function onRoomStart(roomId: number | null, conversationId?: string): void;
515
584
  /**
516
585
  * Получена новая реакция
517
586
  */
518
- function onFeedback(feedback: IFeedbackExternal[], roomId?: number | null): void;
587
+ function onFeedback(feedback: IFeedbackExternal[], roomId?: number | null, conversationId?: string): void;
519
588
  /**
520
589
  * Изменилось состояние пермиссий фич в звонке
521
590
  *
522
591
  * @param featuresPerRole Информация о доступных фичах по ролям
592
+ * @param conversationId
523
593
  */
524
- function onFeaturesPerRoleChanged(featuresPerRole: IFeaturesPerRole): void;
594
+ function onFeaturesPerRoleChanged(featuresPerRole: IFeaturesPerRole, conversationId?: string): void;
525
595
  /**
526
596
  * Изменился Vmoji-аватар пользователя
527
597
  * @param externalId Id пользователя
598
+ * @param conversationId
528
599
  */
529
- function onParticipantVmojiUpdate(externalId: ExternalParticipantId): void;
600
+ function onParticipantVmojiUpdate(externalId: ExternalParticipantId, conversationId?: string): void;
530
601
  /**
531
602
  * Установка начальных параметров текстовой расшифровки звонка. (Используется при входе в звонок/ смене комнаты)
532
603
  * @param data Начальная информация по ASR
533
604
  * @param roomId Id Комнаты
605
+ * @param conversationId
534
606
  */
535
- function onAsrSet(data: IAsrData | null, roomId: number | null): void;
607
+ function onAsrSet(data: IAsrData | null, roomId: number | null, conversationId?: string): void;
536
608
  /**
537
609
  * Начата текстовая расшифровка звонка
538
610
  * @param initiatorId Id пользователя, запустившего расшифровку звонка
539
611
  * @param movieId Id расшифровки
540
612
  * @param roomId Id Комнаты
613
+ * @param conversationId
541
614
  */
542
- function onAsrStarted(initiatorId: ExternalParticipantId, movieId: number, roomId: number | null): void;
615
+ function onAsrStarted(initiatorId: ExternalParticipantId, movieId: number, roomId: number | null, conversationId?: string): void;
543
616
  /**
544
617
  * Закончена текстовая расшифровка звонка
545
618
  * @param roomId Id Комнаты
619
+ * @param conversationId
546
620
  */
547
- function onAsrStopped(roomId: number | null): void;
548
- function onAsrTranscription(id: ExternalParticipantId, text: string, timestamp: number, duration: number): void;
621
+ function onAsrStopped(roomId: number | null, conversationId?: string): void;
622
+ function onAsrTranscription(id: ExternalParticipantId, text: string, timestamp: number, duration: number, conversationId?: string): void;
549
623
  /**
550
624
  * Изменился id участника (деанонимизация)
551
625
  * @param prevId
552
626
  * @param newId
627
+ * @param conversationId
553
628
  */
554
- function onParticipantIdChanged(prevId: ExternalParticipantId, newId: ExternalParticipantId): void;
555
- function onVideoSuspendSuggest(bandwidth: number): void;
629
+ function onParticipantIdChanged(prevId: ExternalParticipantId, newId: ExternalParticipantId, conversationId?: string): void;
630
+ function onVideoSuspendSuggest(bandwidth: number, conversationId?: string): void;
556
631
  /**
557
632
  * Одобрено повышение пользователя в зеле ожидания/зале в режиме Audience
558
633
  *
559
634
  * @param adminParticipantId админ, одобривший повышение
560
635
  */
561
- function onPromotionApproved(adminParticipantId: ExternalParticipantId): void;
636
+ function onPromotionApproved(adminParticipantId: ExternalParticipantId, conversationId?: string): void;
562
637
  /**
563
638
  * Собеседник подключился к сигналлингу
564
639
  */
565
- function onPeerRegistered(): void;
640
+ function onPeerRegistered(conversationId?: string): void;
566
641
  }
567
642
  export default External;