@vkontakte/calls-sdk 2.8.5-dev.1925f9b.0 → 2.8.5-dev.2b864c42.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 CHANGED
@@ -5,7 +5,7 @@ import type { IEffect, VideoEffects } from '@vkontakte/calls-video-effects';
5
5
  import type * as Vmoji from '@vkontakte/calls-vmoji';
6
6
  import BaseApi from './abstract/BaseApi';
7
7
  import BaseLogger from './abstract/BaseLogger';
8
- import BaseSignaling, { AddParticipantParams } from './abstract/BaseSignaling';
8
+ import { AddParticipantParams } from './abstract/BaseSignaling';
9
9
  import HangupReason, { HangupReasonData } from './classes/HangupReason';
10
10
  import { MediaTrackKind } from './classes/MediaSource';
11
11
  import { AudienceModeHandsResponse } from './types/AudienceMode';
@@ -48,7 +48,7 @@ import { IVideoDimentions, MediaSettings } from './types/MediaSettings';
48
48
  import { IAddMovieParams, IMovieMetaData, IMoviePreview, IOnRemoteMovieData, ISharedMovieInfo, ISharedMovieState, ISharedMovieStateResponse, ISharedMovieStoppedInfo, IUpdateMovieData } from './types/MovieShare';
49
49
  import MuteStates, { IMuteParticipantInternalParams, IMuteParticipantParams } from './types/MuteStates';
50
50
  import { IApiEnv } from './types/Params';
51
- import { CompositeUserId, IGetParticipantsParameters, OkUserId, ParticipantId, ParticipantListMarker, ParticipantListMarkers, ParticipantListType, ParticipantStateMapped } from './types/Participant';
51
+ import { CompositeUserId, IGetParticipantsParameters, OkUserId, ParticipantId, ParticipantListMarker, ParticipantListMarkers, ParticipantListType, ParticipantsStateList, ParticipantStateMapped } from './types/Participant';
52
52
  import ParticipantLayout, { Layout, RequestKeyFrame, StopStream } from './types/ParticipantLayout';
53
53
  import { ParticipantListChunkParameters } from './types/ParticipantListChunk';
54
54
  import ParticipantPriority from './types/ParticipantPriority';
@@ -194,7 +194,6 @@ export declare const utils: {
194
194
  participantMarkerCompare: typeof Utils.participantMarkerCompare;
195
195
  };
196
196
  export declare function setApi(api: BaseApi): void;
197
- export declare function setSignalingFactory(signalingFactory: () => BaseSignaling): void;
198
197
  export declare function setLogger(logger: BaseLogger): void;
199
198
  /**
200
199
  * Устанавливает библиотеку эффектов
@@ -208,7 +207,7 @@ export declare function setVideoEffects(effects: VideoEffects): void;
208
207
  * @param vmoji Экземпляр класса `Vmoji` из `@vkontakte/calls-vmoji`
209
208
  * @param sdk Экземпляр модуля `@vkontakte/calls-vmoji`, нужен для проброски дебаг сообщений
210
209
  */
211
- export declare function setVmoji(vmoji: typeof Vmoji, sdk?: Parameters<typeof Vmoji.setSDK>[0] | null, renderingOptions?: Vmoji.RenderingOptions | null): void;
210
+ export declare function setVmoji(vmoji: typeof Vmoji, sdk?: Parameters<typeof Vmoji.setSDK>[0] | null, renderingOptions?: Partial<Vmoji.RenderingOptions>, protocolVersion?: Vmoji.AnimojiVersion): void;
212
211
  /**
213
212
  * Инициализирует библиотеку
214
213
  *
@@ -368,8 +367,13 @@ export declare function changePriorities(priorities: ParticipantPriority[]): Pro
368
367
  * Изменяет состояния пользователя в звонке (например, "поднять руку" или "отошёл")
369
368
  *
370
369
  * @param state Список состояний в виде ключ-значение. Максимальная длина ключей и значений - 5 символов. Пустые значения будут пропущены
370
+ * @param externalId Внешний ID пользователя
371
+ */
372
+ export declare function changeParticipantState(state: Record<string, string>, externalId?: ExternalId): Promise<void>;
373
+ /**
374
+ * Принудительно опустить руки участников в текущем сессионном зале админа
371
375
  */
372
- export declare function changeParticipantState(state: Record<string, string>): Promise<void>;
376
+ export declare function putHandsDown(): Promise<void>;
373
377
  /**
374
378
  * Изменяет лейаут.
375
379
  * Также сообщает серверу каких участников звонка стримить на этот клиент
@@ -413,6 +417,13 @@ export declare function setMediaModifiers(mediaModifiers: MediaModifiers): Promi
413
417
  * @param enabled true - включить, false - отключить
414
418
  */
415
419
  export declare function enableVideoSuspend(enabled: boolean): Promise<void>;
420
+ /**
421
+ * Режим, при котором будет предложено включить автоматическое
422
+ * отключение приёма видео в условиях плохого соединения
423
+ *
424
+ * @param enabled true - включить, false - отключить
425
+ */
426
+ export declare function enableVideoSuspendSuggest(enabled: boolean): Promise<void>;
416
427
  /**
417
428
  * Включить/выключить опции звонка
418
429
  *
@@ -504,7 +515,7 @@ export declare function forceRelayPolicy(enabled: boolean): void;
504
515
  * @param groupId
505
516
  * @param roomId
506
517
  */
507
- export declare function startStream(isRecord?: boolean, name?: string | null, movieId?: string | null, privacy?: 'PUBLIC' | 'FRIENDS' | 'DIRECT_LINK', groupId?: string | null, roomId?: number | null, externalAccessKey?: string | null): Promise<undefined>;
518
+ export declare function startStream(isRecord?: boolean, name?: string | null, movieId?: string | null, privacy?: 'PUBLIC' | 'FRIENDS' | 'DIRECT_LINK', groupId?: string | null, roomId?: number | null): Promise<undefined>;
508
519
  /**
509
520
  * Завершить трансляцию звонка
510
521
  * @param roomId
@@ -619,6 +630,12 @@ export declare function setAudioStream(stream: MediaStream): Promise<void>;
619
630
  * нужен только в случае присвоения участнику чужого аватара
620
631
  */
621
632
  export declare function setVmojiSvg(svg: string | ArrayBuffer, externalId?: ExternalId | null, customKey?: string | null): Promise<void>;
633
+ /**
634
+ * Позволяет установить цвет фона собственного vmoji
635
+ *
636
+ * @param {(RGBTuple|string)} fill - цвет в виде rgb-кортежа или hex-кода
637
+ */
638
+ export declare function setVmojiFill(fill: Vmoji.RGBTuple | string): void;
622
639
  /**
623
640
  * Получить состояние зала ожидания
624
641
  *
@@ -656,6 +673,14 @@ export declare function getParticipantListChunk(participantListChunkParameters:
656
673
  export declare function getParticipants(parameters: IGetParticipantsParameters): Promise<ExternalParticipant[]>;
657
674
  export declare function feedback(key: string): Promise<SignalingMessage>;
658
675
  export declare function userFeedbackStats(userResponse: number, reason?: string, groupCallUsersCount?: number): void;
676
+ /**
677
+ * Логирует клиентское событие статистики
678
+ *
679
+ * @param eventType Тип события
680
+ * @param eventData Дополнительные данные события
681
+ * @param immediatelty Отправить ли событие немедленно
682
+ */
683
+ export declare function logClientEvent(eventType: string, eventData?: Record<string, string | number | boolean>, immediately?: boolean): void;
659
684
  export declare function enableFeatureForRoles(feature: ConversationFeature, roles: UserRole[]): Promise<void>;
660
685
  /**
661
686
  * Удаляет записи истории звонков
@@ -682,5 +707,5 @@ export declare function sendTestCommand(name: string, params?: any): void;
682
707
  * Версия SDK
683
708
  */
684
709
  export declare function version(): string;
685
- export type { AddParticipantParams, AudienceModeHandsResponse, BrowserName, CompositeUserId, ConversationData, ConversationParams, ConversationResponse, ExternalId, ExternalParticipant, ExternalParticipantListChunk, ExternalParticipantListMarker, ExternalParticipantListMarkers as ExternalParticipantMarkers, ExternalParticipantId, GetParticipantsSignalingResponse, GetRoomsSignalingResponse, HangupReasonData, IApiEnv, IAsrStartParams, IAsrStopParams, IAsrData, IceServer, JSONArray, JSONObject, JSONType, Layout, MediaModifiers, MediaSettings, MuteStates, OkUserId, ParamsObject, ParticipantId, ParticipantLayout, ParticipantListMarkers, ParticipantListType, ParticipantPriority, ParticipantStateMapped, ParticipantStreamDescription, ParticipantListChunkParameters, ParticipantListMarker, RequestKeyFrame, Rooms, IGetParticipantsParameters, ScreenCaptureSettings, SignalingMessage, StatResult, StopStream, WaitingHallResponse, IMovieMetaData, IVideoDimentions, IFeedbackExternal, ISharedMovieInfo, ISharedMovieStoppedInfo, ISharedMovieState, ISharedMovieStateResponse, IAddMovieParams, IOnRemoteMovieData, IMoviePreview, IRoomId, Room, RoomsUpdate, RoomParticipantUpdate, IUpdateMovieData, IFeaturesPerRole, IMuteParticipantParams, IMuteParticipantInternalParams, IStartStreamData, IStopStreamData, IPublishStreamData, VmojiError, };
686
- export { Api, AuthData, BaseApi, BaseLogger, BaseSignaling, CallDirection, CallType, ChatRoomEventType, ConversationOption, DebugMessageType, ExternalIdType, FacingMode, FatalError, HangupReason, HangupType, MediaOption, MediaTrackKind, MediaType, MuteState, ParticipantState, ParticipantStatus, RecordRole, Signaling, SignalingCommandType, SignalingConnectionType, SignalingNotification, UserRole, UserType, TransportTopology, RoomsEventType, ConversationFeature, ArrayDequeue, ApiExternal, };
710
+ export type { AddParticipantParams, AudienceModeHandsResponse, BrowserName, CompositeUserId, ConversationData, ConversationParams, ConversationResponse, ExternalId, ExternalParticipant, ExternalParticipantListChunk, ExternalParticipantListMarker, ExternalParticipantListMarkers as ExternalParticipantMarkers, ExternalParticipantId, GetParticipantsSignalingResponse, GetRoomsSignalingResponse, HangupReasonData, IApiEnv, IAsrStartParams, IAsrStopParams, IAsrData, IceServer, JSONArray, JSONObject, JSONType, Layout, MediaModifiers, MediaSettings, MuteStates, OkUserId, ParamsObject, ParticipantId, ParticipantLayout, ParticipantListMarkers, ParticipantListType, ParticipantPriority, ParticipantsStateList, ParticipantStateMapped, ParticipantStreamDescription, ParticipantListChunkParameters, ParticipantListMarker, RequestKeyFrame, Rooms, IGetParticipantsParameters, ScreenCaptureSettings, SignalingMessage, StatResult, StopStream, WaitingHallResponse, IMovieMetaData, IVideoDimentions, IFeedbackExternal, ISharedMovieInfo, ISharedMovieStoppedInfo, ISharedMovieState, ISharedMovieStateResponse, IAddMovieParams, IOnRemoteMovieData, IMoviePreview, IRoomId, Room, RoomsUpdate, RoomParticipantUpdate, IUpdateMovieData, IFeaturesPerRole, IMuteParticipantParams, IMuteParticipantInternalParams, IStartStreamData, IStopStreamData, IPublishStreamData, VmojiError, };
711
+ export { Api, AuthData, BaseApi, BaseLogger, CallDirection, CallType, ChatRoomEventType, ConversationOption, DebugMessageType, ExternalIdType, FacingMode, FatalError, HangupReason, HangupType, MediaOption, MediaTrackKind, MediaType, MuteState, ParticipantState, ParticipantStatus, RecordRole, Signaling, SignalingCommandType, SignalingConnectionType, SignalingNotification, UserRole, UserType, TransportTopology, RoomsEventType, ConversationFeature, ArrayDequeue, ApiExternal, };
@@ -8,6 +8,13 @@ export type ClientStats = {
8
8
  vcid: ConversationData['id'] | null;
9
9
  [k: string]: string | number | null;
10
10
  };
11
+ export type ClientEvent = {
12
+ timestamp: number;
13
+ call_topology: 'D' | 'S';
14
+ event_type: string;
15
+ vcid: ConversationData['id'] | null;
16
+ [k: string]: string | number | boolean | null;
17
+ };
11
18
  export type LogItem = {
12
19
  count?: number;
13
20
  custom: ClientStats;
@@ -52,6 +59,10 @@ export default abstract class BaseApi {
52
59
  * method: vchat.clientStats
53
60
  */
54
61
  logClientStats(items: ClientStats[]): void;
62
+ /**
63
+ * method: vchat.clientEvents
64
+ */
65
+ logClientEvents(items: ClientEvent[]): void;
55
66
  abstract getOkIdsByExternalIds(externalIds: ExternalId[]): Promise<OkUserId[]>;
56
67
  abstract getParticipantIdsByExternalIds(externalIds: ExternalId[]): Promise<Map<ExternalId, ParticipantId>>;
57
68
  abstract getExternalIdsByOkIds(uids: OkUserId[]): Promise<ExternalParticipantId[]>;
@@ -43,12 +43,11 @@ export default abstract class BaseSignaling extends EventEmitter {
43
43
  abstract close(): void;
44
44
  abstract hangup(reason: string): Promise<SignalingMessage | void>;
45
45
  abstract acceptCall(mediaSettings: MediaSettings): Promise<SignalingMessage>;
46
- abstract sendSdp(participantId: ParticipantId, sdp: RTCSessionDescriptionInit): Promise<SignalingMessage>;
46
+ abstract sendSdp(participantId: ParticipantId, sdp: RTCSessionDescriptionInit, extraPayload?: Record<string, any>): Promise<SignalingMessage>;
47
47
  abstract sendCandidate(participantId: ParticipantId, candidate: RTCIceCandidate): Promise<SignalingMessage>;
48
48
  abstract changeMediaSettings(mediaSettings: MediaSettings): Promise<SignalingMessage>;
49
- abstract changeParticipantState(state: {
50
- [key: string]: string;
51
- }): Promise<SignalingMessage>;
49
+ abstract changeParticipantState(state: Record<string, string>, compositeUserId?: CompositeUserId): Promise<SignalingMessage>;
50
+ abstract putHandsDown(): Promise<SignalingMessage>;
52
51
  abstract addParticipant(participantId: CompositeUserId, params?: AddParticipantParams): Promise<SignalingMessage>;
53
52
  abstract removeParticipant(participantId: CompositeUserId, ban?: boolean): Promise<SignalingMessage>;
54
53
  abstract allocateConsumer(description: RTCSessionDescription | null, capabilities: {
@@ -92,6 +91,7 @@ export default abstract class BaseSignaling extends EventEmitter {
92
91
  abstract pinParticipant(participantId: ParticipantId, unpin: boolean, roomId: number | null): Promise<SignalingMessage>;
93
92
  abstract updateMediaModifiers(mediaModifiers: MediaModifiers): Promise<SignalingMessage>;
94
93
  abstract enableVideoSuspend(enabled: boolean): Promise<SignalingMessage>;
94
+ abstract enableVideoSuspendSuggest(enabled: boolean): Promise<SignalingMessage>;
95
95
  abstract changeOptions(changes: {
96
96
  [key in ConversationOption]?: boolean;
97
97
  }): Promise<SignalingMessage>;
@@ -106,6 +106,7 @@ export default abstract class BaseSignaling extends EventEmitter {
106
106
  abstract useCommandDataChannel(status: boolean): void;
107
107
  abstract getParticipantListChunk(participantListChunkParameters: ParticipantListChunkParameters): Promise<SignalingMessage>;
108
108
  abstract getParticipants(externalIds: SignalingMessage.ExternalId[]): Promise<GetParticipantsSignalingResponse>;
109
+ abstract getPeerId(): number | null;
109
110
  abstract startAsr(params: IAsrStartParams): Promise<SignalingMessage>;
110
111
  abstract stopAsr(params?: IAsrStopParams): Promise<SignalingMessage>;
111
112
  abstract requestAsr(request: boolean): Promise<SignalingMessage>;