@vkontakte/calls-sdk 2.6.2-dev.65f330d.0 → 2.6.2-dev.6d2004b.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
@@ -40,14 +40,18 @@ import IceServer from './types/IceServer';
40
40
  import MediaModifiers from './types/MediaModifiers';
41
41
  import { IVideoDimentions, MediaSettings } from './types/MediaSettings';
42
42
  import MuteStates from './types/MuteStates';
43
- import { IGetParticipantsParameters, OkUserId, ParticipantStateMapped } from './types/Participant';
43
+ import { IGetParticipantsParameters, OkUserId, ParticipantId, ParticipantStateMapped } from './types/Participant';
44
44
  import ParticipantLayout, { Layout, StopStream } from './types/ParticipantLayout';
45
45
  import { ParticipantListChunkParameters } from './types/ParticipantListChunk';
46
46
  import ParticipantPriority from './types/ParticipantPriority';
47
47
  import { MediaType, ParticipantStreamDescription } from './types/ParticipantStreamDescription';
48
+ import { Room, RoomsUpdate, RoomParticipantUpdate } from './types/Room';
49
+ import RoomsEventType from './enums/RoomsEventType';
48
50
  import SignalingMessage from './types/SignalingMessage';
49
51
  import { WaitingHallResponse } from './types/WaitingHall';
50
- import { ISharedMovieInfo, ISharedMovieStoppedInfo, ISharedMovieState, ISharedMovieStateResponse, IAddMovieParams } from './types/MovieShare';
52
+ import { IFeedbackExternal } from './types/Feedback';
53
+ import { ISharedMovieInfo, ISharedMovieStoppedInfo, ISharedMovieState, ISharedMovieStateResponse, IAddMovieParams, IOnRemoteMovieData, IMoviePreview, IUpdateMovieData } from './types/MovieShare';
54
+ import ConversationFeature from './enums/ConversationFeature';
51
55
  /**
52
56
  * Информация о текущем браузере
53
57
  */
@@ -186,9 +190,10 @@ export declare function init(params: Partial<ParamsObject>): Promise<void>;
186
190
  * @param payload Дополнительные данные для передачи на сервер
187
191
  * @param joiningAllowed Создать токен комнаты для подключения по ссылке
188
192
  * @param requireAuthToJoin Запретить анонимам подключаться по ссылке (если поддерживается сервером)
193
+ * @param onlyAdminCanShareMovie Только администратор может включать совметсный просмотр
189
194
  */
190
- export declare function callTo(externalId?: string | ExternalId | string[] | ExternalId[], mediaOptions?: MediaOption[], payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean): Promise<ConversationData>;
191
- export declare function callInternal(ids: OkUserId[], type: CallType, mediaOptions: MediaOption[], payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean): Promise<ConversationData>;
195
+ export declare function callTo(externalId?: string | ExternalId | string[] | ExternalId[], mediaOptions?: MediaOption[], payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean, onlyAdminCanShareMovie?: boolean): Promise<ConversationData>;
196
+ export declare function callInternal(ids: OkUserId[], type: CallType, mediaOptions: MediaOption[], payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean, onlyAdminCanShareMovie?: boolean): Promise<ConversationData>;
192
197
  /**
193
198
  * Обработать пуш о входящем звонке
194
199
  *
@@ -276,6 +281,13 @@ export declare function changeDevice(kind: MediaDeviceKind, deviceId: string): P
276
281
  * @param state Включить или выключить
277
282
  */
278
283
  export declare function captureScreen(state: boolean): Promise<void>;
284
+ /**
285
+ * Включить/выключить захват экрана
286
+ *
287
+ * @param screenState Включить или выключить захват экрана.
288
+ * @param audioShareState Включить или выключить захват звука. Может быть использован только вместе с захватом экрана.
289
+ */
290
+ export declare function captureScreenAndAudio(screenState: boolean, audioShareState: boolean): Promise<void>;
279
291
  /**
280
292
  * Позволяет установить кастомный стрим для видео
281
293
  * например для стрима из canvas, с наложением изображений
@@ -395,9 +407,12 @@ export declare function customDataInternal(data: JSONObject, uid?: OkUserId | nu
395
407
  *
396
408
  * @param payload Дополнительные данные для передачи на сервер
397
409
  * @param requireAuthToJoin Запретить анонимам подключаться по ссылке (если поддерживается сервером)
410
+ * @param startConversationParameters Дополнительные параметры для создания звонка (например onlyAdminCanShareMovie)
398
411
  * @returns Токен комнаты
399
412
  */
400
- export declare function startConversation(payload?: string, requireAuthToJoin?: boolean): Promise<string>;
413
+ export declare function startConversation(payload?: string, requireAuthToJoin?: boolean, { onlyAdminCanShareMovie }?: {
414
+ onlyAdminCanShareMovie?: boolean;
415
+ }): Promise<string>;
401
416
  /**
402
417
  * Создать токен комнаты для подключения по ссылке к существующему звонку
403
418
  *
@@ -456,18 +471,43 @@ export declare function addMovie(params: IAddMovieParams): Promise<{
456
471
  /**
457
472
  * Изменить видео/лайв в звонке
458
473
  *
459
- * @param movieId
460
- * @param gain
461
- * @param offset
462
- * @param pause
474
+ * @param params
463
475
  */
464
- export declare function updateMovie(movieId: string, gain?: number, offset?: number, pause?: boolean): Promise<void>;
476
+ export declare function updateMovie(params: IUpdateMovieData): Promise<void>;
465
477
  /**
466
478
  * Удалить видео/лайв из звонка
467
479
  *
468
480
  * @param movieId
469
481
  */
470
482
  export declare function removeMovie(movieId: string): Promise<void>;
483
+ /**
484
+ * Обновить комнаты
485
+ * @param rooms id в случае обновления комнаты
486
+ * @param assignRandomly рандомно назначить участников комнаты из свободных в соответствии с participantCount
487
+ */
488
+ export declare function updateRooms(rooms: {
489
+ id?: number;
490
+ name?: string;
491
+ participantCount?: number;
492
+ active?: boolean;
493
+ }[], assignRandomly: boolean): Promise<void>;
494
+ /**
495
+ * Активировать комнаты
496
+ * @param roomIds
497
+ * @param deactivate
498
+ */
499
+ export declare function activateRooms(roomIds: number[], deactivate: boolean): Promise<void>;
500
+ /**
501
+ * Cменить комнату
502
+ * @param toRoomId
503
+ * @param participantId
504
+ */
505
+ export declare function switchRoom(toRoomId?: number, participantId?: ParticipantId): Promise<void>;
506
+ /**
507
+ * Удалить комнаты
508
+ * @param roomIds
509
+ */
510
+ export declare function removeRooms(roomIds: number[]): Promise<void>;
471
511
  /**
472
512
  * Устанавливает интервал обновления статистики и вызова `onStatistics`
473
513
  *
@@ -517,6 +557,8 @@ export declare function getWaitingHall(pageMarker?: string | null, count?: numbe
517
557
  export declare function promoteParticipant(externalId: ExternalId, demote?: boolean): Promise<void>;
518
558
  export declare function getParticipantListChunk(participantListChunkParameters: ParticipantListChunkParameters): Promise<import("./types/ExternalId").ExternalParticipantListChunk>;
519
559
  export declare function getParticipants(parameters: IGetParticipantsParameters): Promise<ExternalParticipant[]>;
560
+ export declare function feedback(key: string): Promise<SignalingMessage>;
561
+ export declare function enableFeatureForRoles(feature: ConversationFeature, roles: UserRole[]): Promise<void>;
520
562
  /**
521
563
  * Удаляет записи истории звонков
522
564
  *
@@ -527,5 +569,5 @@ export declare function removeHistoryRecords(recordIds: number[]): Promise<void>
527
569
  * Версия SDK
528
570
  */
529
571
  export declare function version(): string;
530
- export type { AddParticipantParams, ConversationData, ConversationParams, ConversationResponse, ExternalId, ExternalParticipant, ExternalParticipantListMarkers as ExternalParticipantMarkers, ExternalParticipantId, HangupReasonData, IceServer, JSONArray, JSONObject, JSONType, Layout, MediaModifiers, MediaSettings, MuteStates, OkUserId, ParamsObject, ParticipantLayout, ParticipantPriority, ParticipantStateMapped, ParticipantStreamDescription, ParticipantListChunkParameters, IGetParticipantsParameters, SignalingMessage, StatResult, StopStream, WaitingHallResponse, IVideoDimentions, ISharedMovieInfo, ISharedMovieStoppedInfo, ISharedMovieState, ISharedMovieStateResponse, IAddMovieParams, };
531
- export { Api, 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, Utils, TransportTopology, };
572
+ export type { AddParticipantParams, ConversationData, ConversationParams, ConversationResponse, ExternalId, ExternalParticipant, ExternalParticipantListMarkers as ExternalParticipantMarkers, ExternalParticipantId, HangupReasonData, IceServer, JSONArray, JSONObject, JSONType, Layout, MediaModifiers, MediaSettings, MuteStates, OkUserId, ParamsObject, ParticipantLayout, ParticipantPriority, ParticipantStateMapped, ParticipantStreamDescription, ParticipantListChunkParameters, IGetParticipantsParameters, SignalingMessage, StatResult, StopStream, WaitingHallResponse, IVideoDimentions, IFeedbackExternal, ISharedMovieInfo, ISharedMovieStoppedInfo, ISharedMovieState, ISharedMovieStateResponse, IAddMovieParams, IOnRemoteMovieData, IMoviePreview, Room, RoomsUpdate, RoomParticipantUpdate, IUpdateMovieData, };
573
+ export { Api, 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, Utils, TransportTopology, RoomsEventType, };
@@ -19,8 +19,12 @@ export default abstract class BaseApi {
19
19
  abstract init(): void;
20
20
  abstract authorize(): Promise<void>;
21
21
  abstract userId(participantId: CompositeUserId): Promise<ExternalId>;
22
- abstract createConversation(conversationId: string, payload?: string, requireAuthToJoin?: boolean): Promise<ConversationResponse>;
23
- abstract startConversation(conversationId: string, ids?: OkUserId[], type?: CallType, isVideo?: boolean, payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean): Promise<ConversationResponse>;
22
+ abstract createConversation(conversationId: string, payload?: string, requireAuthToJoin?: boolean, createConversationParameters?: {
23
+ onlyAdminCanShareMovie?: boolean;
24
+ }): Promise<ConversationResponse>;
25
+ abstract startConversation(conversationId: string, ids?: OkUserId[], type?: CallType, isVideo?: boolean, payload?: string, joiningAllowed?: boolean, requireAuthToJoin?: boolean, createConversationParameters?: {
26
+ onlyAdminCanShareMovie?: boolean;
27
+ }): Promise<ConversationResponse>;
24
28
  abstract joinConversation(conversationId: string, isVideo?: boolean, chatId?: string): Promise<ConversationResponse>;
25
29
  createJoinLink(conversationId: string): Promise<{
26
30
  join_link: string;
@@ -2,6 +2,7 @@ import EventEmitter from '../classes/EventEmitter';
2
2
  import { ParticipantIdRegistry } from '../classes/ParticipantIdRegistry';
3
3
  import { PerfStatReport } from '../classes/transport/PerfStatReporter';
4
4
  import { TransportTopology } from '../classes/transport/Transport';
5
+ import ConversationFeature from '../enums/ConversationFeature';
5
6
  import ConversationOption from '../enums/ConversationOption';
6
7
  import MediaOption from '../enums/MediaOption';
7
8
  import RecordRole from '../enums/RecordRole';
@@ -11,7 +12,7 @@ import { JSONObject } from '../static/Json';
11
12
  import ConversationResponse from '../types/ConversationResponse';
12
13
  import MediaModifiers from '../types/MediaModifiers';
13
14
  import MediaSettings from '../types/MediaSettings';
14
- import { IAddMovieParams, ISharedMovieState } from '../types/MovieShare';
15
+ import { IAddMovieParams, IUpdateMovieData } from '../types/MovieShare';
15
16
  import MuteStates from '../types/MuteStates';
16
17
  import { CompositeUserId, ParticipantId } from '../types/Participant';
17
18
  import { ParticipantLayout, RequestKeyFrame, StopStream } from '../types/ParticipantLayout';
@@ -58,8 +59,12 @@ export default abstract class BaseSignaling extends EventEmitter {
58
59
  [streamDesc: string]: ParticipantLayout | StopStream | RequestKeyFrame;
59
60
  }): Promise<SignalingMessage | void>;
60
61
  abstract addMovie(data: IAddMovieParams): Promise<SignalingMessage>;
61
- abstract updateMovie(data: ISharedMovieState): Promise<SignalingMessage>;
62
+ abstract updateMovie(data: IUpdateMovieData): Promise<SignalingMessage>;
62
63
  abstract removeMovie(data: any): Promise<SignalingMessage>;
64
+ abstract updateRooms(rooms: Record<any, any>[], assignRandomly: boolean): Promise<SignalingMessage>;
65
+ abstract activateRooms(roomIds: number[], deactivate: boolean): Promise<SignalingMessage>;
66
+ abstract switchRoom(toRoomId?: number, participantId?: ParticipantId): Promise<SignalingMessage>;
67
+ abstract removeRooms(roomIds: number[]): Promise<SignalingMessage>;
63
68
  abstract startStream(data: any): Promise<SignalingMessage>;
64
69
  abstract stopStream(): Promise<SignalingMessage>;
65
70
  abstract recordSetRole(participantId: ParticipantId, role: RecordRole | null): Promise<SignalingMessage>;
@@ -71,6 +76,7 @@ export default abstract class BaseSignaling extends EventEmitter {
71
76
  abstract customData(data: JSONObject, participantId: ParticipantId | null): Promise<SignalingMessage>;
72
77
  abstract grantRoles(participantId: CompositeUserId, roles: UserRole[], revoke: boolean): Promise<SignalingMessage>;
73
78
  abstract muteParticipant(participantId: ParticipantId | null, muteStates: MuteStates, requestedMedia: MediaOption[]): Promise<SignalingMessage>;
79
+ abstract enableFeatureForRoles(feature: ConversationFeature, roles: UserRole[]): Promise<SignalingMessage>;
74
80
  abstract pinParticipant(participantId: ParticipantId, unpin: boolean): Promise<SignalingMessage>;
75
81
  abstract updateMediaModifiers(mediaModifiers: MediaModifiers): Promise<SignalingMessage>;
76
82
  abstract changeOptions(changes: {
@@ -78,6 +84,7 @@ export default abstract class BaseSignaling extends EventEmitter {
78
84
  }): Promise<SignalingMessage>;
79
85
  abstract getWaitingHall(fromId: WaitingParticipantId | null, count?: number, backward?: boolean): Promise<SignalingMessage>;
80
86
  abstract promoteParticipant(participantId: CompositeUserId, demote?: boolean): Promise<SignalingMessage>;
87
+ abstract feedback(key: string): Promise<SignalingMessage>;
81
88
  abstract setProducerNotificationDataChannel(dataChannel: RTCDataChannel): void;
82
89
  abstract setProducerCommandDataChannel(dataChannel: RTCDataChannel): void;
83
90
  abstract useCommandDataChannel(status: boolean): void;