@vkontakte/calls-sdk 2.6.2-dev.f64ca50.0 → 2.6.2-dev.f69c395.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.
@@ -3,6 +3,7 @@ export default class ScreenCaptureSender {
3
3
  private readonly _datachannel;
4
4
  private _destroyed;
5
5
  private _needKeyframe;
6
+ private readonly DATA_SIZE;
6
7
  constructor(track: MediaStreamTrack, datachannel: RTCDataChannel);
7
8
  private _requestFrame;
8
9
  private _wrapHeader;
@@ -1,3 +1,4 @@
1
+ export declare const HEADER_SIZE = 11;
1
2
  export interface FrameChunkHeader {
2
3
  timestamp: number;
3
4
  start: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/calls-sdk",
3
- "version": "2.6.2-dev.f64ca50.0",
3
+ "version": "2.6.2-dev.f69c395.0",
4
4
  "author": "vk.com",
5
5
  "description": "Library for video calls based on the vk.com platform",
6
6
  "homepage": "https://vk.com",
@@ -1,7 +1,7 @@
1
1
  export declare function init(): void;
2
2
  export declare function sendBeakon(method: string, params?: {
3
3
  [key: string]: any;
4
- }, noSession?: boolean): void;
4
+ }, noSession?: boolean): Promise<void>;
5
5
  export declare function request(method: string, params?: {
6
6
  [key: string]: any;
7
7
  }, noSession?: boolean): Promise<unknown>;
@@ -187,8 +187,10 @@ declare namespace External {
187
187
  * @param unmute Разрешение включить устройство
188
188
  * @param userId Пользователь, для которого изменились разрешения или `null` для текущего пользователя
189
189
  * @param adminId Пользователь, который изменил разрешения
190
+ * @param stateUpdated Если `true`, значит глобальное/персональное состояние изменилось и поля `muteStates`/`unmuteOptions` содержат обновления, если `false`, значит, эти поля не имеют значения
191
+ * @param requestedMedia Какие устройства попросили влючить участника
190
192
  */
191
- function onMuteStates(muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll?: boolean, unmute?: boolean, userId?: ExternalParticipantId | null, adminId?: ExternalParticipantId | null): void;
193
+ function onMuteStates(muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll?: boolean, unmute?: boolean, userId?: ExternalParticipantId | null, adminId?: ExternalParticipantId | null, stateUpdated?: boolean, requestedMedia?: MediaOption[]): void;
192
194
  /**
193
195
  * Изменились роли собеседника в звонке
194
196
  *
@@ -186,6 +186,7 @@ export declare type ParamsObject = {
186
186
  * Работает только при приёме экрана через дата-канал.
187
187
  *
188
188
  * _По умолчанию: `true`_
189
+ * @deprecated
189
190
  */
190
191
  producerScreenTrack: boolean;
191
192
  /**
@@ -193,12 +194,19 @@ export declare type ParamsObject = {
193
194
  * Работает только при отправке экрана через дата-канал.
194
195
  *
195
196
  * _По умолчанию: `true`_
197
+ * @deprecated
196
198
  */
197
199
  consumerScreenTrack: boolean;
198
200
  producerNotificationDataChannel: boolean;
199
201
  producerCommandDataChannel: boolean;
200
202
  consumerScreenDataChannel: boolean;
201
203
  producerScreenDataChannel: boolean;
204
+ /**
205
+ * Размер пакета для отправки трансляции экрана в датаканал в байтах.
206
+ * Максимальный размер пакета 65536 bytes в хроме, но по стандарту лучше максимум 16 Кб.
207
+ * @hidden
208
+ */
209
+ consumerScreenDataChannelPacketSize: number;
202
210
  screenShareWebmBuilder: boolean;
203
211
  noiseSuppression: boolean;
204
212
  /**
@@ -349,7 +357,7 @@ export declare type ParamsObject = {
349
357
  /**
350
358
  * Изменились состояния устройств пользователя или разрешения включать камеру/микрофон
351
359
  */
352
- onMuteStates?: (muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll: boolean, unmute: boolean, userId: ExternalParticipantId | null, adminId: ExternalParticipantId | null) => void;
360
+ onMuteStates?: (muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll: boolean, unmute: boolean, userId: ExternalParticipantId | null, adminId: ExternalParticipantId | null, stateUpdated?: boolean, requestedMedia?: MediaOption[]) => void;
353
361
  /**
354
362
  * Изменились роли собеседника в звонке
355
363
  */
@@ -544,6 +552,7 @@ export default abstract class Params {
544
552
  static get producerCommandDataChannel(): boolean;
545
553
  static get consumerScreenDataChannel(): boolean;
546
554
  static get producerScreenDataChannel(): boolean;
555
+ static get consumerScreenDataChannelPacketSize(): number;
547
556
  static get screenShareWebmBuilder(): boolean;
548
557
  static get noiseSuppression(): boolean;
549
558
  static set noiseSuppression(value: boolean);
package/static/Utils.d.ts CHANGED
@@ -60,5 +60,9 @@ declare namespace Utils {
60
60
  * https://stash.odkl.ru/projects/ODKL/repos/odnoklassniki-webrtc/browse/src/main/java/one/webrtc/domain/conversation/ParticipantIndex.java#67-78
61
61
  */
62
62
  function participantMarkerCompare(marker1: ExternalParticipantListMarker | undefined, marker2: ExternalParticipantListMarker | undefined): number;
63
+ /** убирает все ключи со значением `V` на 1 уровне */
64
+ function objectFilterOutValues<T extends Record<string, V>, V = unknown>(obj: T, value?: V | V[]): Partial<T>;
65
+ function objectReduce<R, T extends Object>(obj: T, callback: (acc: R, value: T[keyof T], key: keyof T) => R, initialValue: R): R;
66
+ const setImmediate: (fn: VoidFunction) => VoidFunction;
63
67
  }
64
68
  export default Utils;
@@ -0,0 +1,12 @@
1
+ import MediaOption from '../enums/MediaOption';
2
+ import MediaSettings from './MediaSettings';
3
+ import { Participant } from './Participant';
4
+ export interface IProcessMuteStateParams {
5
+ mediaOptions?: MediaOption[];
6
+ muteAll?: boolean;
7
+ unmute?: boolean;
8
+ serverSettings?: MediaSettings | null;
9
+ admin?: Participant | null;
10
+ stateUpdated?: boolean;
11
+ requestedMedia?: MediaOption[];
12
+ }
@@ -148,6 +148,8 @@ declare namespace SignalingMessage {
148
148
  muteStates: MuteStates;
149
149
  unmuteOptions?: MediaOption[];
150
150
  mediaOptions: MediaOption[];
151
+ requestedMedia?: MediaOption[];
152
+ stateUpdated?: boolean;
151
153
  unmute?: boolean;
152
154
  muteAll?: boolean;
153
155
  }