@vkontakte/calls-sdk 2.8.11-dev.fa0dcb9d.0 → 2.8.11

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 (74) hide show
  1. package/CallsSDK.d.ts +46 -23
  2. package/abstract/BaseApi.d.ts +5 -8
  3. package/abstract/BaseSignaling.d.ts +2 -3
  4. package/calls-sdk.cjs.js +9 -9
  5. package/calls-sdk.esm.js +6038 -5138
  6. package/classes/AudioFix.d.ts +5 -1
  7. package/classes/AudioOutput.d.ts +5 -1
  8. package/classes/CallRegistry.d.ts +5 -1
  9. package/classes/Conversation.d.ts +35 -7
  10. package/classes/ConversationResponseValidator.d.ts +3 -0
  11. package/classes/DebugInfo.d.ts +3 -0
  12. package/classes/DisplayLayoutRequester.d.ts +39 -0
  13. package/classes/ExternalIdCache.d.ts +19 -0
  14. package/classes/MediaSource.d.ts +6 -2
  15. package/classes/ParticipantIdRegistry.d.ts +3 -0
  16. package/classes/ProducerCommandSerializationService.d.ts +3 -0
  17. package/classes/SignalingActor.d.ts +3 -1
  18. package/classes/SpeakerDetector.d.ts +2 -1
  19. package/classes/SpecListener.d.ts +10 -1
  20. package/classes/{Logger.d.ts → StatsLogger.d.ts} +3 -13
  21. package/classes/VideoEffectsFpsLimiter.d.ts +3 -0
  22. package/classes/asr/AsrReceiver.d.ts +3 -1
  23. package/classes/codec/LibVPxDecoder.d.ts +3 -0
  24. package/classes/codec/LibVPxEncoder.d.ts +3 -1
  25. package/classes/codec/WebCodecsDecoder.d.ts +3 -0
  26. package/classes/codec/WebCodecsEncoder.d.ts +3 -1
  27. package/classes/codec/WorkerBase.d.ts +7 -0
  28. package/classes/screenshare/BaseStreamBuilder.d.ts +4 -1
  29. package/classes/screenshare/CanvasRenderer.d.ts +3 -1
  30. package/classes/screenshare/ScreenCaptureReceiver.d.ts +7 -1
  31. package/classes/screenshare/ScreenCaptureSender.d.ts +5 -1
  32. package/classes/screenshare/ScreenCongestionControl.d.ts +3 -1
  33. package/classes/screenshare/StreamBuilder.d.ts +5 -1
  34. package/classes/screenshare/TrackGeneratorRenderer.d.ts +3 -1
  35. package/classes/screenshare/WebmBuilder.d.ts +3 -1
  36. package/classes/stat/CodecStatsAggregator.d.ts +7 -7
  37. package/classes/stat/ConversationStats.d.ts +21 -0
  38. package/classes/stat/StatAggregator.d.ts +6 -6
  39. package/classes/stat/StatFirstMediaReceived.d.ts +6 -2
  40. package/classes/stat/StatPings.d.ts +9 -9
  41. package/classes/stat/StatScreenShareFirstFrame.d.ts +3 -1
  42. package/classes/stat/StatSignalingCommands.d.ts +8 -8
  43. package/classes/transport/BaseTransport.d.ts +1 -1
  44. package/classes/transport/DirectStatReporter.d.ts +3 -1
  45. package/classes/transport/DirectTransport.d.ts +14 -1
  46. package/classes/transport/PerfStatReporter.d.ts +5 -1
  47. package/classes/transport/ServerTransport.d.ts +10 -2
  48. package/classes/transport/Transport.d.ts +13 -14
  49. package/default/Api.d.ts +12 -19
  50. package/default/Signaling.d.ts +41 -45
  51. package/default/SignalingTransport.d.ts +68 -0
  52. package/enums/HangupType.d.ts +2 -1
  53. package/enums/SignalingNotification.d.ts +1 -0
  54. package/enums/TransportState.d.ts +10 -0
  55. package/enums/TransportTopology.d.ts +5 -0
  56. package/package.json +1 -1
  57. package/static/Debug.d.ts +27 -8
  58. package/static/External.d.ts +3 -0
  59. package/static/Params.d.ts +32 -8
  60. package/static/ParticipantConnectionStatusUtils.d.ts +16 -0
  61. package/static/Utils.d.ts +3 -2
  62. package/static/WebRTCUtils.d.ts +6 -4
  63. package/types/Conversation.d.ts +1 -1
  64. package/types/ExternalId.d.ts +1 -1
  65. package/types/FastStart.d.ts +1 -0
  66. package/types/Participant.d.ts +12 -1
  67. package/types/ParticipantLayout.d.ts +33 -0
  68. package/types/PushData.d.ts +3 -0
  69. package/types/SignalingMessage.d.ts +12 -2
  70. package/types/Statistics.d.ts +1 -1
  71. package/types/WebTransport.d.ts +4 -0
  72. package/utils/DebugStorage.d.ts +100 -1
  73. package/classes/stat/EventMetricsService.d.ts +0 -9
  74. package/static/ConversationDebugLogger.d.ts +0 -13
package/CallsSDK.d.ts CHANGED
@@ -9,7 +9,7 @@ import { AddParticipantParams } from './abstract/BaseSignaling';
9
9
  import HangupReason, { HangupReasonData, CustomError } from './classes/HangupReason';
10
10
  import { MediaTrackKind } from './classes/MediaSource';
11
11
  import { AudienceModeHandsResponse } from './types/AudienceMode';
12
- import { TransportTopology } from './classes/transport/Transport';
12
+ import TransportTopology from './enums/TransportTopology';
13
13
  import Api from './default/Api';
14
14
  import Signaling from './default/Signaling';
15
15
  import CallDirection from './enums/CallDirection';
@@ -30,6 +30,7 @@ import SignalingNotification from './enums/SignalingNotification';
30
30
  import UserRole from './enums/UserRole';
31
31
  import UserType from './enums/UserType';
32
32
  import { DebugMessageType } from './static/Debug';
33
+ import * as DebugStorage from './utils/DebugStorage';
33
34
  import { ParticipantStatus } from './static/External';
34
35
  import { JSONArray, JSONObject, JSONType } from './static/Json';
35
36
  import { ParamsObject } from './static/Params';
@@ -49,7 +50,7 @@ import { IAddMovieParams, IMovieMetaData, IMoviePreview, IOnRemoteMovieData, ISh
49
50
  import MuteStates, { IMuteParticipantInternalParams, IMuteParticipantParams } from './types/MuteStates';
50
51
  import { IAPIBaseUrl, IApiEnv } from './types/Params';
51
52
  import { CompositeUserId, IGetParticipantsParameters, OkUserId, ParticipantId, ParticipantListMarker, ParticipantListMarkers, ParticipantListType, ParticipantsStateList, ParticipantStateMapped, ParticipantStateData, ParticipantStateDataKey, ParticipantStateDataValue } from './types/Participant';
52
- import ParticipantLayout, { Layout, RequestKeyFrame, StopStream } from './types/ParticipantLayout';
53
+ import ParticipantLayout, { DisplayLayoutRequest, Layout, RequestKeyFrame, StopStream } from './types/ParticipantLayout';
53
54
  import { ParticipantListChunkParameters } from './types/ParticipantListChunk';
54
55
  import ParticipantPriority from './types/ParticipantPriority';
55
56
  import { MediaType, ParticipantStreamDescription } from './types/ParticipantStreamDescription';
@@ -66,6 +67,8 @@ import { VmojiError } from './types/Vmoji';
66
67
  import { VolumeDetector } from './classes/VolumeDetector';
67
68
  import { FastStartHandler, FastStartParams } from './types/FastStart';
68
69
  import { FastJoinHandler, FastJoinParams, FastJoinResponse } from './types/FastJoin';
70
+ import PushData from './types/PushData';
71
+ export type { CurrentLogItem, DebugLogGetParams, DebugLogSessionInfo, DebugLogStorageStats } from './utils/DebugStorage';
69
72
  /**
70
73
  * Информация о текущем браузере
71
74
  */
@@ -253,6 +256,7 @@ export declare function callInternal(ids: OkUserId[], type: CallType | undefined
253
256
  */
254
257
  export declare function processPush(conversationId: string, conversationParams?: string): Promise<void>;
255
258
  export declare function processPushInternal(conversationId: string, type?: UserType, peerId?: number, conversationParams?: string, wsEndpoint?: string, userId?: number): Promise<void>;
259
+ export declare function getInbounds(): Promise<PushData[]>;
256
260
  /**
257
261
  * Авторизоваться для совершения звонков
258
262
  *
@@ -404,6 +408,12 @@ export declare function putHandsDown(): Promise<void>;
404
408
  * @param layout Список приоритетов
405
409
  */
406
410
  export declare function updateDisplayLayout(layout: ParticipantLayout[]): Promise<void>;
411
+ /**
412
+ * Запрашивает стримы, которые клиент хочет получать для отображения.
413
+ *
414
+ * @param requests Полный список стримов, которые должны приходить на клиент
415
+ */
416
+ export declare function requestDisplayLayout(requests: DisplayLayoutRequest[]): Promise<void>;
407
417
  /**
408
418
  * Выдать или забрать роли в звонке пользователю
409
419
  *
@@ -555,16 +565,6 @@ export declare function stopStream(roomId?: number | null, remove?: boolean): Pr
555
565
  * @param roomId
556
566
  */
557
567
  export declare function publishStream(roomId?: number | null): Promise<undefined>;
558
- /**
559
- * Устанавливает роль участника в запись звонка
560
- * Если хотя бы у одного участника звонка выставлена роль, то в записи звонка будут
561
- * видны только те участники, у кого есть роль.
562
- * @param king участник показывается крупно в записи звонка (только один участник имеет такую роль)
563
- * @param pawns участник показывается в записи звонка
564
- * @param hideParticipantCount скрыть/показать количество невидимых участников
565
- * @param roomId комната
566
- */
567
- export declare function recordSetConf(king?: ExternalId, pawns?: ExternalId[], hideParticipantCount?: boolean, roomId?: number | null): Promise<void>;
568
568
  /**
569
569
  * Получить информацию о трансляции звонка
570
570
  */
@@ -635,6 +635,38 @@ export declare function debug(enabled: boolean): void;
635
635
  * @param args
636
636
  */
637
637
  export declare function debugMessage(type: DebugMessageType, ...args: any[]): void;
638
+ /**
639
+ * Локальные отладочные логи, сохраненные в браузере.
640
+ *
641
+ * Работает при включенном параметре `debugLog: true`.
642
+ * Логи хранятся в IndexedDB: последние 10 звонков, максимум 25 МБ суммарно.
643
+ */
644
+ export declare const debugLogs: {
645
+ /**
646
+ * Возвращает список сохраненных локальных сессий логирования.
647
+ */
648
+ list: typeof DebugStorage.list;
649
+ /**
650
+ * Возвращает логи конкретного звонка вместе с глобальным контекстом SDK.
651
+ */
652
+ get: typeof DebugStorage.get;
653
+ /**
654
+ * Возвращает логи конкретного звонка вместе с глобальным контекстом SDK JSON-строкой.
655
+ */
656
+ getJson: typeof DebugStorage.getJson;
657
+ /**
658
+ * Скачивает логи конкретного звонка вместе с глобальным контекстом SDK JSON-файлом.
659
+ */
660
+ download: typeof DebugStorage.download;
661
+ /**
662
+ * Очищает логи конкретного звонка или все локальные логи SDK.
663
+ */
664
+ clear: typeof DebugStorage.clear;
665
+ /**
666
+ * Возвращает статистику локального хранилища логов.
667
+ */
668
+ stats: typeof DebugStorage.stats;
669
+ };
638
670
  /**
639
671
  * Отправляет клиенские логи по conversationId на сервер OK
640
672
  * @example можно посмотреть в examples/anonym/index.html
@@ -712,16 +744,7 @@ export declare function acceptPromotion(reject?: boolean): Promise<void>;
712
744
  export declare function getParticipantListChunk(participantListChunkParameters: ParticipantListChunkParameters): Promise<ExternalParticipantListChunk>;
713
745
  export declare function getParticipants(parameters: IGetParticipantsParameters): Promise<ExternalParticipant[]>;
714
746
  export declare function feedback(key: string): Promise<SignalingMessage>;
715
- export declare function userFeedbackStats(userResponse: number, reason?: string, groupCallUsersCount?: number): void;
716
- /**
717
- * Логирует клиентское событие статистики
718
- *
719
- * @param eventType Тип события
720
- * @param eventData Дополнительные данные события
721
- * @param immediatelty Отправить ли событие немедленно
722
- */
723
- export declare function logClientEvent(eventType: string, eventData?: Record<string, string | number | boolean>, immediately?: boolean): void;
724
- export declare function enableFeatureForRoles(feature: ConversationFeature, roles: UserRole[]): Promise<void>;
747
+ export declare function enableFeatureForRoles(feature: ConversationFeature, roles: UserRole[], conversationId?: string): Promise<void>;
725
748
  /**
726
749
  * Удаляет записи истории звонков
727
750
  *
@@ -757,5 +780,5 @@ export declare function getSyncedTime(): number;
757
780
  * Версия SDK
758
781
  */
759
782
  export declare function version(): string;
760
- export type { AddParticipantParams, AudienceModeHandsResponse, BrowserName, CompositeUserId, ConversationData, ConversationParams, ConversationResponse, CustomError, ExternalId, ExternalParticipant, ExternalParticipantListChunk, ExternalParticipantListMarker, ExternalParticipantListMarkers as ExternalParticipantMarkers, ExternalParticipantId, GetParticipantsSignalingResponse, GetRoomsSignalingResponse, HangupReasonData, IApiEnv, IAPIBaseUrl, IAsrStartParams, IAsrStopParams, IAsrData, IceServer, JSONArray, JSONObject, JSONType, Layout, MediaModifiers, MediaSettings, MuteStates, OkUserId, ParamsObject, ParticipantId, ParticipantLayout, ParticipantListMarkers, ParticipantListType, ParticipantPriority, ParticipantsStateList, ParticipantStateData, ParticipantStateDataKey, 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, FastStartHandler, FastStartParams, FastJoinHandler, FastJoinParams, FastJoinResponse, };
783
+ export type { AddParticipantParams, AudienceModeHandsResponse, BrowserName, CompositeUserId, ConversationData, ConversationParams, ConversationResponse, CustomError, ExternalId, ExternalParticipant, ExternalParticipantListChunk, ExternalParticipantListMarker, ExternalParticipantListMarkers as ExternalParticipantMarkers, ExternalParticipantId, DisplayLayoutRequest, GetParticipantsSignalingResponse, GetRoomsSignalingResponse, HangupReasonData, IApiEnv, IAPIBaseUrl, IAsrStartParams, IAsrStopParams, IAsrData, IceServer, JSONArray, JSONObject, JSONType, Layout, MediaModifiers, MediaSettings, MuteStates, OkUserId, ParamsObject, ParticipantId, ParticipantLayout, ParticipantListMarkers, ParticipantListType, ParticipantPriority, ParticipantsStateList, ParticipantStateData, ParticipantStateDataKey, 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, FastStartHandler, FastStartParams, FastJoinHandler, FastJoinParams, FastJoinResponse, };
761
784
  export { Api, AuthData, BaseLogger, CallDirection, CallType, ChatRoomEventType, ConversationOption, DebugMessageType, ExternalIdType, FacingMode, FatalError, HangupReason, HangupType, MediaOption, MediaTrackKind, MediaType, MuteState, ParticipantState, ParticipantStateDataValue, ParticipantStatus, RecordRole, Signaling, SignalingCommandType, SignalingConnectionType, SignalingNotification, UserRole, UserType, TransportTopology, RoomsEventType, ConversationFeature, ArrayDequeue, ApiExternal, VolumeDetector, };
@@ -5,6 +5,7 @@ import ConversationParams from '../types/ConversationParams';
5
5
  import ConversationResponse from '../types/ConversationResponse';
6
6
  import { ExternalId, ExternalParticipantId, ExternalUserId } from '../types/ExternalId';
7
7
  import { CompositeUserId, OkUserId, ParticipantId } from '../types/Participant';
8
+ import PushData from '../types/PushData';
8
9
  export type ClientStats = {
9
10
  vcid: ConversationData['id'] | null;
10
11
  [k: string]: string | number | boolean | null;
@@ -44,7 +45,7 @@ export default abstract class BaseApi {
44
45
  audioOnly?: boolean;
45
46
  waitForAdmin?: boolean;
46
47
  closedConversation?: boolean;
47
- }, speakerIds?: OkUserId[]): Promise<ConversationResponse>;
48
+ }, speakerIds?: ExternalId[]): Promise<ConversationResponse>;
48
49
  abstract startConversation(conversationId: string, ids?: OkUserId[], type?: CallType, isVideo?: boolean, payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean, createConversationParameters?: {
49
50
  onlyAdminCanShareMovie?: boolean;
50
51
  }, externalIds?: ExternalId[]): Promise<ConversationResponse>;
@@ -68,15 +69,10 @@ export default abstract class BaseApi {
68
69
  * method: vchat.clientStats
69
70
  */
70
71
  logClientStats(items: ClientStats[]): void;
71
- /**
72
- * method: vchat.clientEvents
73
- */
74
- logClientEvents(items: ClientEvent[]): void;
75
72
  abstract uploadDebugLogs(conversationId: string, startTime: number, endTime: number, log: string): Promise<void>;
76
- abstract getOkIdsByExternalIds(externalIds: ExternalId[]): Promise<OkUserId[]>;
77
- abstract getParticipantIdsByExternalIds(externalIds: ExternalId[]): Promise<Map<ExternalId, ParticipantId>>;
78
- abstract getExternalIdsByOkIds(uids: OkUserId[]): Promise<ExternalParticipantId[]>;
79
73
  getCachedOkIdByExternalId(externalId: ExternalId): ParticipantId | null;
74
+ getCachedRawOkIdByExternalId(externalId: ExternalId): OkUserId | null;
75
+ getCachedExternalIdByOkId(okId: OkUserId): ExternalParticipantId | null;
80
76
  cacheExternalId(compositeId: OkUserId | CompositeUserId | ParticipantId, externalId: ExternalParticipantId): void;
81
77
  mapDecorativeId(decorativeId: OkUserId | CompositeUserId | ParticipantId, okId: OkUserId | CompositeUserId): void;
82
78
  unmapDecorativeId(decorativeId: OkUserId | CompositeUserId | ParticipantId): void;
@@ -86,4 +82,5 @@ export default abstract class BaseApi {
86
82
  removeHistoryRecords(recordIds: number[]): Promise<void>;
87
83
  getServerTime(): Promise<number>;
88
84
  cleanup(): void;
85
+ getInbounds(): Promise<PushData[]>;
89
86
  }
@@ -4,7 +4,7 @@ import { TCapabilities } from '../types/Capabilities';
4
4
  import { StreamDescriptionString } from '../types/ParticipantStreamDescription';
5
5
  import { PerfStatReport } from '../types/PerfStatReporter';
6
6
  import { NetworkStatReport } from '../types/NetworkStatReport';
7
- import { TransportTopology } from '../classes/transport/Transport';
7
+ import TransportTopology from '../enums/TransportTopology';
8
8
  import ConversationFeature from '../enums/ConversationFeature';
9
9
  import ConversationOption from '../enums/ConversationOption';
10
10
  import MediaOption from '../enums/MediaOption';
@@ -22,7 +22,7 @@ import { ParticipantLayout, RequestKeyFrame, StopStream } from '../types/Partici
22
22
  import { ParticipantListChunkParameters } from '../types/ParticipantListChunk';
23
23
  import SignalingMessage, { GetParticipantsSignalingResponse, GetRoomsSignalingResponse } from '../types/SignalingMessage';
24
24
  import { ChangeSimulcast } from '../types/ChangeSimulcast';
25
- import { IPublishStreamData, IRecordConfData, IStartStreamData, IStopStreamData } from '../types/Streams';
25
+ import { IPublishStreamData, IStartStreamData, IStopStreamData } from '../types/Streams';
26
26
  import { SharingStatReport } from '../classes/screenshare/SharingStatReport';
27
27
  /**
28
28
  * Параметры добавления пользователя в звонок
@@ -91,7 +91,6 @@ export default abstract class BaseSignaling extends EventEmitter {
91
91
  abstract startStream(data: IStartStreamData): Promise<SignalingMessage>;
92
92
  abstract stopStream(data: IStopStreamData): Promise<SignalingMessage>;
93
93
  abstract publishStream(data: IPublishStreamData): Promise<SignalingMessage>;
94
- abstract recordSetConf(conf: IRecordConfData): Promise<SignalingMessage>;
95
94
  abstract getRecordStatus(): Promise<SignalingMessage>;
96
95
  abstract switchTopology(topology: TransportTopology, force?: boolean): Promise<SignalingMessage>;
97
96
  abstract reportPerfStat(report: PerfStatReport): Promise<SignalingMessage>;