@vkontakte/calls-sdk 2.8.8-dev.66d9a330.0 → 2.8.8-dev.6a03dd61.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.
@@ -81,6 +81,7 @@ export default class Conversation extends EventEmitter {
81
81
  private _extractExternalRoomsData;
82
82
  onPush(conversationId: string, type?: UserType, peerId?: number, conversationParams?: string, wsEndpoint?: string): Promise<void>;
83
83
  private _isInWaitingHall;
84
+ private _isWaitForAdmin;
84
85
  private _isRestricted;
85
86
  private _isAudienceMode;
86
87
  private _isAudienceModeListener;
@@ -204,6 +205,10 @@ export default class Conversation extends EventEmitter {
204
205
  sendClientEvent(eventType: string, eventData?: Record<string, string | number | boolean>, immediately?: boolean): void;
205
206
  private _changeMediaSettings;
206
207
  private _stopStreaming;
208
+ /**
209
+ * @param layoutByStreamDescription
210
+ * @param throwErrorOutside false используется при внутреннем обращении, когда обработка ошибки не нужна
211
+ */
207
212
  private _sendUpdateDisplayLayout;
208
213
  private _cleanupCooldownQueue;
209
214
  private _onParticipantSourcesUpdate;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
package/default/Api.d.ts CHANGED
@@ -20,13 +20,16 @@ export default class Api extends BaseApi {
20
20
  logClientEvents(items: ClientEvent[]): void;
21
21
  uploadDebugLogs(conversationId: string, startTime: number, endTime: number, log: string): Promise<void>;
22
22
  joinConversation(conversationId: string, isVideo?: boolean, chatId?: string): Promise<ConversationResponse>;
23
- createConversation(conversationId: string, payload?: string, requireAuthToJoin?: boolean, { onlyAdminCanShareMovie, audienceMode, audioOnly, }?: {
23
+ createConversation(conversationId: string, payload?: string, requireAuthToJoin?: boolean, { onlyAdminCanShareMovie, audienceMode, audioOnly, waitForAdmin, closedConversation, }?: {
24
24
  onlyAdminCanShareMovie?: boolean;
25
25
  audienceMode?: boolean;
26
26
  audioOnly?: boolean;
27
+ waitForAdmin?: boolean;
28
+ closedConversation?: boolean;
27
29
  }, speakerIds?: OkUserId[]): Promise<ConversationResponse>;
28
- startConversation(conversationId: string, ids?: OkUserId[], type?: CallType, isVideo?: boolean, payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean, { onlyAdminCanShareMovie }?: {
30
+ startConversation(conversationId: string, ids?: OkUserId[], type?: CallType, isVideo?: boolean, payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean, { onlyAdminCanShareMovie, waitForAdmin }?: {
29
31
  onlyAdminCanShareMovie?: boolean;
32
+ waitForAdmin?: boolean;
30
33
  }, externalIds?: ExternalId[]): Promise<ConversationResponse>;
31
34
  protected _ensureUuid(): void;
32
35
  deviceId(): string;
@@ -0,0 +1 @@
1
+ export {};
@@ -183,6 +183,9 @@ export default class Signaling extends BaseSignaling {
183
183
  private _convertDisplayLayout;
184
184
  protected _waitConnectionMessage(): void;
185
185
  protected _stopWaitConnectionMessage(): void;
186
+ /**
187
+ * Отвечает за timeout логику в WebSocket, если неполучаем никаких сообщений в течении WAIT_MESSAGE_DELAY, то запускаем реконнект
188
+ */
186
189
  private _startDoctor;
187
190
  private _stopDoctor;
188
191
  private isWebTransportAvailable;
@@ -0,0 +1 @@
1
+ export {};
@@ -5,6 +5,8 @@ declare enum ConversationOption {
5
5
  REQUIRE_AUTH_TO_JOIN = "REQUIRE_AUTH_TO_JOIN",
6
6
  AUDIENCE_MODE = "AUDIENCE_MODE",// Stereo chat room
7
7
  WAITING_HALL = "WAITING_HALL",// Waiting Hall is ON
8
+ WAIT_FOR_ADMIN = "WAIT_FOR_ADMIN",
9
+ ADMIN_IS_HERE = "ADMIN_IS_HERE",
8
10
  ASR = "ASR",
9
11
  FEEDBACK = "FEEDBACK",// Reactions (default = off)
10
12
  RECURRING = "RECURRING"
@@ -21,6 +21,7 @@ declare enum HangupType {
21
21
  UNSUPPORTED = "UNSUPPORTED",
22
22
  OLD_VERSION = "OLD_VERSION",
23
23
  SERVICE_DISABLED = "SERVICE_DISABLED",
24
+ SERVICE_UNAVAILABLE = "SERVICE_UNAVAILABLE",
24
25
  EXTERNAL_API_ERROR = "EXTERNAL_API_ERROR",
25
26
  SOCKET_CLOSED = "SOCKET_CLOSED",
26
27
  ENDED = "ENDED",
@@ -29,6 +30,10 @@ declare enum HangupType {
29
30
  NOT_FOUND = "NOT_FOUND",
30
31
  VCHAT_DETAILED_ERROR = "VCHAT_DETAILED_ERROR",
31
32
  TIMEOUT = "TIMEOUT",
33
+ /**
34
+ * Проблемы при работе через FastStart
35
+ */
36
+ FAST_START_ERROR = "FAST_START_ERROR",
32
37
  /**
33
38
  * Таймаут инициализации вызова – звонок не начался
34
39
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/calls-sdk",
3
- "version": "2.8.8-dev.66d9a330.0",
3
+ "version": "2.8.8-dev.6a03dd61.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",
@@ -28,6 +28,7 @@ import { ParticipantCapabilities } from './SignalingCapabilities';
28
28
  */
29
29
  export declare enum ParticipantStatus {
30
30
  WAITING_HALL = "WAITING_HALL",
31
+ WAIT_FOR_ADMIN = "WAIT_FOR_ADMIN",
31
32
  WAITING = "WAITING",
32
33
  CONNECTING = "CONNECTING",
33
34
  CONNECTED = "CONNECTED",
@@ -104,6 +104,17 @@ export type ParamsObject = {
104
104
  debugLog: boolean;
105
105
  /** @hidden */
106
106
  debug: boolean;
107
+ /**
108
+ * Выставляет таймаут в ms для fetch запросов от sdk
109
+ * По умолчанию 5000 ms
110
+ * @hidden
111
+ */
112
+ apiTimeout: number;
113
+ /**
114
+ * Количество ретраев прежде чем сбросить ошибку
115
+ * @hidden
116
+ */
117
+ apiMaxAttempt: number;
107
118
  /**
108
119
  * Не отправлять в ICE-кандидатах персональные IP-адреса
109
120
  * @see [RTCIceTransportPolicy](https://www.w3.org/TR/webrtc/#rtcicetransportpolicy-enum)
@@ -364,6 +375,10 @@ export type ParamsObject = {
364
375
  * Включить поддержку добавления участника в разговор
365
376
  */
366
377
  addParticipant: boolean;
378
+ /**
379
+ * Включает поддержку режима WAIT_FOR_ADMIN в звонках.
380
+ */
381
+ waitForAdminInGroupCalls: boolean;
367
382
  /**
368
383
  * Индекс участника для первого chunk'а который придет при установке соединения с сервером
369
384
  *
@@ -512,18 +527,6 @@ export type ParamsObject = {
512
527
  * _По умолчанию: `false`_
513
528
  */
514
529
  webtransportFF: boolean;
515
- /**
516
- * Скриншара
517
- * Включить возможность запрашивать ключевой кадр декодером
518
- * @hidden
519
- */
520
- streamBuilderKeyFrameRequest: boolean;
521
- /**
522
- * Скриншара
523
- * Включить переключение на LibVPX при проблемах с WebCodecsDecoder
524
- * @hidden
525
- */
526
- streamBuilderAutoSwitchToLibVPX: boolean;
527
530
  /**
528
531
  * Получен локальный стрим с камеры/микрофона
529
532
  */
@@ -926,6 +929,8 @@ export default abstract class Params {
926
929
  static get apiBaseUrl(): IAPIBaseUrl;
927
930
  static set apiBaseUrl(apiBaseUrl: IAPIBaseUrl);
928
931
  static apiEndpoint(apiEnv?: IApiEnv): string;
932
+ static get apiTimeout(): number;
933
+ static get apiMaxAttempt(): number;
929
934
  static get authToken(): string;
930
935
  static set authToken(value: string);
931
936
  static get anonymToken(): string;
@@ -1010,6 +1015,7 @@ export default abstract class Params {
1010
1015
  static get useRooms(): boolean;
1011
1016
  static get useChatRooms(): boolean;
1012
1017
  static get addParticipant(): boolean;
1018
+ static get waitForAdminInGroupCalls(): boolean;
1013
1019
  static get participantListChunkInitIndex(): number;
1014
1020
  static get participantListChunkInitCount(): number | null;
1015
1021
  static get serverAudioRed(): boolean;
@@ -1038,10 +1044,6 @@ export default abstract class Params {
1038
1044
  static set webtransport(value: boolean);
1039
1045
  static get webtransportFF(): boolean;
1040
1046
  static set webtransportFF(value: boolean);
1041
- static set streamBuilderKeyFrameRequest(value: boolean);
1042
- static get streamBuilderKeyFrameRequest(): boolean;
1043
- static set streamBuilderAutoSwitchToLibVPX(value: boolean);
1044
- static get streamBuilderAutoSwitchToLibVPX(): boolean;
1045
1047
  static toJSON(): {
1046
1048
  apiKey: string;
1047
1049
  apiEnv: string;
@@ -1074,7 +1076,5 @@ export default abstract class Params {
1074
1076
  simulcast: boolean;
1075
1077
  webtransport: boolean;
1076
1078
  webtransportFF: boolean;
1077
- streamBuilderKeyFrameRequest: boolean;
1078
- streamBuilderAutoSwitchToLibVPX: boolean;
1079
1079
  };
1080
1080
  }
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @see https://confluence.vk.team/display/VIDEOOK/Websocket+Capability+Flags
3
+ */
1
4
  declare const PREDICATES: {
2
5
  readonly producerScreenTrack: () => boolean;
3
6
  readonly videoTracksCount: () => boolean;
@@ -13,7 +16,10 @@ declare const PREDICATES: {
13
16
  readonly useChatRooms: () => boolean;
14
17
  readonly audienceModeHandUpTimestamps: () => boolean;
15
18
  readonly animojiBackendRender: () => boolean;
19
+ readonly sessionStateUpdates: () => boolean;
16
20
  readonly addParticipant: () => boolean;
21
+ readonly p2pRelay: () => boolean;
22
+ readonly waitForAdmin: () => boolean;
17
23
  };
18
24
  type ParticipantCapabilitiesKeys = keyof typeof PREDICATES;
19
25
  export type ParticipantCapabilities = Record<ParticipantCapabilitiesKeys, boolean>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -64,6 +64,7 @@ export type ConversationData = {
64
64
  muteStatesPersonal: MuteStates;
65
65
  networkRating: number;
66
66
  waitingHall: boolean;
67
+ waitForAdmin: boolean;
67
68
  observer: boolean;
68
69
  roomId: IRoomId;
69
70
  audienceMode: boolean;
@@ -1,4 +1,4 @@
1
- import { HangupType, IceServer } from '../CallsSDK';
1
+ import { IceServer } from '../CallsSDK';
2
2
  import CallType from '../enums/CallType';
3
3
  import MediaOption from '../enums/MediaOption';
4
4
  import { ExternalId } from './ExternalId';
@@ -12,6 +12,7 @@ export interface InternalParams {
12
12
  deviceId: string;
13
13
  protocolVersion: number;
14
14
  domainId?: string;
15
+ capabilities: string;
15
16
  }
16
17
  export interface InternalCallerParams {
17
18
  id: ID;
@@ -37,10 +38,10 @@ export interface FastStartParams {
37
38
  isVideo?: boolean;
38
39
  }
39
40
  export interface FastStartResponse {
40
- internalCallerParams: string;
41
+ internalCallerParams?: string;
41
42
  rejectedParticipants: {
42
43
  id: string;
43
- status: HangupType;
44
+ status: string;
44
45
  }[];
45
46
  }
46
47
  export type FastStartHandler = (params: FastStartParams) => Promise<FastStartResponse>;
package/types/Params.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export type IApiEnv = 'AUTO' | 'PROD' | 'CALLS' | 'PROD_OK' | 'TEST' | 'VIDEOTEST' | 'CALLSTEST' | string;
1
+ export type IApiEnv = 'AUTO' | 'PROD' | 'CALLS' | 'PROD_OK' | 'TEST' | 'VIDEOTEST' | 'CALLSTEST' | 'CALLS_BETA' | 'CALLS_BENDER' | 'CALLS_MAMES' | 'CALLS_MARS' | string;
2
2
  export type IAPIBaseUrl = string | null;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};