@vkontakte/calls-sdk 2.8.12-dev.c60cf16f.0 → 2.8.12-dev.c8b26761.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
@@ -14,6 +14,7 @@ import Api from './default/Api';
14
14
  import Signaling from './default/Signaling';
15
15
  import CallDirection from './enums/CallDirection';
16
16
  import CallType from './enums/CallType';
17
+ import type ClientHangupReason from './enums/ClientHangupReason';
17
18
  import ChatRoomEventType from './enums/ChatRoomEventType';
18
19
  import ConversationFeature from './enums/ConversationFeature';
19
20
  import ConversationOption from './enums/ConversationOption';
@@ -67,6 +68,7 @@ import { VmojiError } from './types/Vmoji';
67
68
  import { VolumeDetector } from './classes/VolumeDetector';
68
69
  import { FastStartHandler, FastStartParams } from './types/FastStart';
69
70
  import { FastJoinHandler, FastJoinParams, FastJoinResponse } from './types/FastJoin';
71
+ import { FastHangupHandler, FastHangupParams, FastHangupResponse, HangupParams } from './types/FastHangup';
70
72
  import PushData from './types/PushData';
71
73
  export type { CurrentLogItem, DebugLogGetParams, DebugLogSessionInfo, DebugLogStorageStats } from './utils/DebugStorage';
72
74
  /**
@@ -272,8 +274,14 @@ export declare function authorize(authToken?: string, apiBaseUrl?: IAPIBaseUrl):
272
274
  export declare function acceptCall(mediaOptions?: MediaOption[], conversationId?: string): Promise<ConversationData>;
273
275
  /**
274
276
  * Отклонить входящий звонок
277
+ *
278
+ * @param params Параметры завершения. `params.conversationId` — ID звонка
279
+ * (по умолчанию текущий активный), `params.reason` — причина завершения
280
+ * для проброса в сигналинг (по умолчанию `REJECTED`). См. {@link ClientHangupReason}.
281
+ * `params.onFastHangup` — опционально: вместо Calls API hangup при отклонении.
282
+ * На закрытии вкладки не используется. См. {@link HangupParams}.
275
283
  */
276
- export declare function declineCall(conversationId?: string): Promise<void>;
284
+ export declare function declineCall(params?: HangupParams): Promise<void>;
277
285
  /**
278
286
  * Присоединиться к активному звонку
279
287
  *
@@ -295,8 +303,16 @@ export declare function joinCallInternal(conversationId: string, mediaOptions: M
295
303
  export declare function joinCallByLink(joinLink: string, mediaOptions?: MediaOption[], anonymToken?: string, observedIds?: ExternalUserId[], payload?: string, onFastJoin?: FastJoinHandler): Promise<ConversationData>;
296
304
  /**
297
305
  * Завершить текущий разговор
306
+ *
307
+ * @param params Параметры завершения. `params.conversationId` — ID звонка
308
+ * (по умолчанию текущий активный), `params.reason` — причина завершения
309
+ * для проброса в сигналинг: по умолчанию `HUNGUP` (если звонок активен) или `CANCELED`.
310
+ * См. {@link ClientHangupReason}.
311
+ * `params.onFastHangup` — опционально: вместо Calls API hangup, если обработчик передан.
312
+ * Без него API hangup не вызывается (signaling hangup остаётся). На `pagehide` всегда beacon.
313
+ * См. {@link HangupParams}.
298
314
  */
299
- export declare function hangup(conversationId?: string): Promise<void>;
315
+ export declare function hangup(params?: HangupParams): Promise<void>;
300
316
  /**
301
317
  * Добавить собеседника в звонок
302
318
  *
@@ -781,5 +797,5 @@ export declare function getSyncedTime(): number;
781
797
  * Версия SDK
782
798
  */
783
799
  export declare function version(): string;
784
- 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, };
800
+ export type { AddParticipantParams, AudienceModeHandsResponse, BrowserName, ClientHangupReason, 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, FastHangupHandler, FastHangupParams, FastHangupResponse, HangupParams, };
785
801
  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, };
@@ -38,7 +38,7 @@ export default abstract class BaseApi {
38
38
  */
39
39
  setAbortSignal(signal: AbortSignal | undefined): void;
40
40
  abstract authorize(): Promise<void>;
41
- abstract userId(participantId: ParticipantId): Promise<ExternalParticipantId>;
41
+ abstract userId(participantId: ParticipantId): ExternalParticipantId;
42
42
  abstract deviceId(): string;
43
43
  abstract createConversation(conversationId: string, payload?: string, requireAuthToJoin?: boolean, createConversationParameters?: {
44
44
  onlyAdminCanShareMovie?: boolean;
@@ -42,6 +42,9 @@ export interface AddParticipantParams {
42
42
  */
43
43
  payload?: string;
44
44
  }
45
+ export declare class SignalingDisposedError extends Error {
46
+ constructor(command?: string);
47
+ }
45
48
  /**
46
49
  * Should trigger SignalingEvent.NOTIFICATION on notification message and SignalingEvent.FAILED on error
47
50
  * https://wiki.odkl.ru/display/projects/Signaling+API#SignalingAPI-Notifications
@@ -55,7 +58,7 @@ export default abstract class BaseSignaling extends EventEmitter {
55
58
  */
56
59
  setAbortSignal(signal: AbortSignal | undefined): void;
57
60
  abstract connect(connectionType: SignalingConnectionType, conversation?: ConversationResponse): Promise<SignalingMessage.Connection>;
58
- abstract close(): void;
61
+ abstract dispose(cause?: Error): void;
59
62
  abstract hangup(reason: string): Promise<SignalingMessage | void>;
60
63
  abstract acceptCall(mediaSettings: MediaSettings): Promise<SignalingMessage>;
61
64
  abstract sendSdp(participantId: ParticipantId, sdp: RTCSessionDescriptionInit, extraPayload?: Record<string, any>): Promise<SignalingMessage>;
@@ -130,9 +133,7 @@ export default abstract class BaseSignaling extends EventEmitter {
130
133
  requestRealloc(): void;
131
134
  setEndpoint(endpoint: string): void;
132
135
  setWebTransportEndpoint(endpoint: string | null): void;
133
- setConversationId(conversationId: string): void;
134
136
  readyToSend(isReady?: boolean): void;
135
- cleanup(): void;
136
- requestTestMode(consumerCommand: string, producerCommand: string | null): void;
137
+ requestTestMode(consumerCommand: string, producerCommand: string | null): Promise<SignalingMessage | void>;
137
138
  getNextCommandSequenceNumber(): number;
138
139
  }