@vkontakte/calls-sdk 2.8.11-dev.d94b3aa4.0 → 2.8.11-dev.fa0dcb9d.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.
@@ -343,7 +343,14 @@ export type ParamsObject = {
343
343
  * Включает поддержку режима WAIT_FOR_ADMIN в звонках.
344
344
  */
345
345
  waitForAdminInGroupCalls: boolean;
346
+ /**
347
+ * Включает поддержку удержания звонка
348
+ */
346
349
  hold: boolean;
350
+ /**
351
+ * Максимальное количество параллельных звонков
352
+ */
353
+ maxParallelCalls: number;
347
354
  /**
348
355
  * Индекс участника для первого chunk'а который придет при установке соединения с сервером
349
356
  *
@@ -490,104 +497,104 @@ export type ParamsObject = {
490
497
  /**
491
498
  * Получен локальный стрим с камеры/микрофона
492
499
  */
493
- onLocalStream?: (stream: MediaStream | null, mediaSettings: MediaSettings) => void;
500
+ onLocalStream?: (stream: MediaStream | null, mediaSettings: MediaSettings, conversationId?: string) => void;
494
501
  /**
495
502
  * Локальный стрим изменился
496
503
  */
497
- onLocalStreamUpdate?: (mediaSettings: MediaSettings, kind: MediaTrackKind) => void;
504
+ onLocalStreamUpdate?: (mediaSettings: MediaSettings, kind: MediaTrackKind, conversationId?: string) => void;
498
505
  /**
499
506
  * Локальный стрим с экрана добавлен/удалён
500
507
  */
501
- onScreenStream?: (stream: MediaStream | null, mediaSettings: MediaSettings) => void;
508
+ onScreenStream?: (stream: MediaStream | null, mediaSettings: MediaSettings, conversationId?: string) => void;
502
509
  /**
503
510
  * Локальный стрим вимоджи добавлен/удалён
504
511
  */
505
- onVmojiStream?: (stream: MediaStream | null, mediaSettings: MediaSettings) => void;
512
+ onVmojiStream?: (stream: MediaStream | null, mediaSettings: MediaSettings, conversationId?: string) => void;
506
513
  /**
507
514
  * Произошла ошибка вимоджи
508
515
  */
509
- onVmojiError?: (error: VmojiError) => void;
516
+ onVmojiError?: (error: VmojiError, conversationId?: string) => void;
510
517
  /**
511
518
  * Изменился статус локального соединения
512
519
  */
513
- onLocalStatus?: (status: ParticipantStatus) => void;
520
+ onLocalStatus?: (status: ParticipantStatus, conversationId?: string) => void;
514
521
  /**
515
522
  * Получен стрим собеседника.
516
523
  * Если сервер закончил стримить собеседника, вместо стрима будет передан null
517
524
  */
518
- onRemoteStream?: (userId: ExternalParticipantId, stream: MediaStream | null) => void;
525
+ onRemoteStream?: (userId: ExternalParticipantId, stream: MediaStream | null, conversationId?: string) => void;
519
526
  /**
520
527
  * Cтрим собеседника приостановлен/возобновлен.
521
528
  */
522
- onRemoteStreamSuspended?: (userId: ExternalParticipantId, mediaType: MediaType, suspended: boolean) => void;
529
+ onRemoteStreamSuspended?: (userId: ExternalParticipantId, mediaType: MediaType, suspended: boolean, conversationId?: string) => void;
523
530
  /**
524
531
  * Получен стрим с экрана собеседника.
525
532
  * Если сервер закончил стримить экран собеседника, вместо стрима будет передан null
526
533
  */
527
- onRemoteScreenStream?: (userId: ExternalParticipantId, stream: MediaStream | null) => void;
534
+ onRemoteScreenStream?: (userId: ExternalParticipantId, stream: MediaStream | null, conversationId?: string) => void;
528
535
  /**
529
536
  * Получен стрим вимоджи собеседника.
530
537
  * Если сервер закончил стримить вимоджи собеседника, вместо стрима будет передан null
531
538
  */
532
- onRemoteVmojiStream?: (userId: ExternalParticipantId, stream: MediaStream | null) => void;
539
+ onRemoteVmojiStream?: (userId: ExternalParticipantId, stream: MediaStream | null, conversationId?: string) => void;
533
540
  /**
534
541
  * Получен стрим трансляция или мувик от собеседника.
535
542
  * Если сервер закончил стримить экран собеседника, вместо стрима будет передан null
536
543
  */
537
- onRemoteLive?: (userId: ExternalParticipantId, data: IOnRemoteMovieData) => void;
544
+ onRemoteLive?: (userId: ExternalParticipantId, data: IOnRemoteMovieData, conversationId?: string) => void;
538
545
  /**
539
546
  * Получен собственный стрим трансляция или мувик.
540
547
  * Если сервер закончил стримить экран собеседника, вместо стрима будет передан null
541
548
  */
542
- onLocalLive?: (userId: ExternalParticipantId, data: IOnRemoteMovieData) => void;
549
+ onLocalLive?: (userId: ExternalParticipantId, data: IOnRemoteMovieData, conversationId?: string) => void;
543
550
  /**
544
551
  * Получено обновление стрима или лайва от собеседника.
545
552
  */
546
- onRemoteLiveUpdate?: (userId: ExternalParticipantId, data: ISharedMovieState) => void;
553
+ onRemoteLiveUpdate?: (userId: ExternalParticipantId, data: ISharedMovieState, conversationId?: string) => void;
547
554
  /**
548
555
  * Получено обновление собственного стрима или лайва.
549
556
  */
550
- onLocalLiveUpdate?: (userId: ExternalParticipantId, data: ISharedMovieState) => void;
557
+ onLocalLiveUpdate?: (userId: ExternalParticipantId, data: ISharedMovieState, conversationId?: string) => void;
551
558
  /**
552
559
  * Начат звонок
553
560
  */
554
- onConversation?: (userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants: ExternalParticipant[], rooms?: Rooms) => void;
561
+ onConversation?: (userId: ExternalParticipantId, mediaModifiers: MediaModifiers, muteStates: MuteStates, participants: ExternalParticipant[], rooms?: Rooms, conversationId?: string) => void;
555
562
  /**
556
563
  * Начальный список участников для постраничного звонка
557
564
  */
558
- onConversationParticipantListChunk?: (chunk: ExternalParticipantListChunk) => void;
565
+ onConversationParticipantListChunk?: (chunk: ExternalParticipantListChunk, conversationId?: string) => void;
559
566
  /**
560
567
  * Изменились данные стрима собеседника
561
568
  */
562
- onRemoteMediaSettings?: (userId: ExternalParticipantId, mediaSettings: MediaSettings, markers: ExternalParticipantListMarkers | null) => void;
569
+ onRemoteMediaSettings?: (userId: ExternalParticipantId, mediaSettings: MediaSettings, markers: ExternalParticipantListMarkers | null, conversationId?: string) => void;
563
570
  /**
564
571
  * Изменились данные стрима собеседника
565
572
  */
566
- onLocalMediaSettings?: (userId: ExternalParticipantId, mediaSettings: MediaSettings) => void;
573
+ onLocalMediaSettings?: (userId: ExternalParticipantId, mediaSettings: MediaSettings, conversationId?: string) => void;
567
574
  /**
568
575
  * Полученны данные по стримам (лайв/мувик) от собеседника
569
576
  */
570
- onRemoteSharedMovieInfo?: (userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId) => void;
577
+ onRemoteSharedMovieInfo?: (userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId, conversationId?: string) => void;
571
578
  /**
572
579
  * Полученны данные по остановленным стримам (лайв/мувик) от собеседника
573
580
  */
574
- onRemoteSharedMovieStoppedInfo?: (userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId) => void;
581
+ onRemoteSharedMovieStoppedInfo?: (userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId, conversationId?: string) => void;
575
582
  /**
576
583
  * Полученны данные по собственным стримам (лайв/мувик)
577
584
  */
578
- onLocalSharedMovieInfo?: (userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId) => void;
585
+ onLocalSharedMovieInfo?: (userId: ExternalParticipantId, sharedMovieInfo: ISharedMovieInfo, roomId?: IRoomId, conversationId?: string) => void;
579
586
  /**
580
587
  * Полученны данные по собственным остановленным стримам (лайв/мувик)
581
588
  */
582
- onLocalSharedMovieStoppedInfo?: (userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId) => void;
589
+ onLocalSharedMovieStoppedInfo?: (userId: ExternalParticipantId, sharedMovieStoppedInfo: ISharedMovieStoppedInfo, roomId?: IRoomId, conversationId?: string) => void;
583
590
  /**
584
591
  * Добавили участника
585
592
  */
586
- onParticipantAdded?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null) => void;
593
+ onParticipantAdded?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null, conversationId?: string) => void;
587
594
  /**
588
595
  * Участник присоединился к звонку
589
596
  */
590
- onParticipantJoined?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers) => void;
597
+ onParticipantJoined?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers, conversationId?: string) => void;
591
598
  /**
592
599
  * Получены данные по изменению локальных состояний со стороны админа
593
600
  * Например, принудительно опущена рука
@@ -595,19 +602,19 @@ export type ParamsObject = {
595
602
  * @param participantState Полный объект состояния участника, полученный от SDK/сервера.
596
603
  * @param global `true` – действие глобальное (для всех участников), `false` – действие локальное (только у текущего пользователя).
597
604
  */
598
- onLocalParticipantState?: (participantState: ParticipantStateMapped, global: boolean) => void;
605
+ onLocalParticipantState?: (participantState: ParticipantStateMapped, global: boolean, conversationId?: string) => void;
599
606
  /**
600
607
  * Изменились данные состояний собеседника
601
608
  */
602
- onRemoteParticipantState?: (userId: ExternalParticipantId, participantState: ParticipantStateMapped, markers: ExternalParticipantListMarkers | null) => void;
609
+ onRemoteParticipantState?: (userId: ExternalParticipantId, participantState: ParticipantStateMapped, markers: ExternalParticipantListMarkers | null, conversationId?: string) => void;
603
610
  /**
604
611
  * Изменились данные состояний нескольких собеседников
605
612
  */
606
- onRemoteParticipantsState?: (stateList: ParticipantsStateList, roomId?: IRoomId) => void;
613
+ onRemoteParticipantsState?: (stateList: ParticipantsStateList, roomId?: IRoomId, conversationId?: string) => void;
607
614
  /**
608
615
  * Изменился статус соединения собеседников
609
616
  */
610
- onRemoteStatus?: (userIds: ExternalParticipantId[], status: ParticipantStatus, data: any) => void;
617
+ onRemoteStatus?: (userIds: ExternalParticipantId[], status: ParticipantStatus, data: any, conversationId?: string) => void;
611
618
  /**
612
619
  * Разрешения на доступы были запрошены в браузере
613
620
  */
@@ -619,56 +626,56 @@ export type ParamsObject = {
619
626
  /**
620
627
  * Пользователь отключился от звонка
621
628
  */
622
- onRemoteRemoved?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null) => void;
629
+ onRemoteRemoved?: (userId: ExternalParticipantId, markers: ExternalParticipantListMarkers | null, conversationId?: string) => void;
623
630
  /**
624
631
  * Изменилось состояние звонка
625
632
  */
626
- onCallState?: (isCallActive: boolean, canAddParticipants: boolean, conversation: ConversationData) => void;
633
+ onCallState?: (isCallActive: boolean, canAddParticipants: boolean, conversation: ConversationData, conversationId?: string) => void;
627
634
  /**
628
635
  * Изменилось состояние камеры или микрофона
629
636
  */
630
- onDeviceSwitched?: (mediaOption: MediaOption, enabled: boolean) => void;
637
+ onDeviceSwitched?: (mediaOption: MediaOption, enabled: boolean, conversationId?: string) => void;
631
638
  /**
632
639
  * Изменились состояния устройств пользователя или разрешения включать камеру/микрофон
633
640
  */
634
- onMuteStates?: (muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll: boolean, unmute: boolean, userId: ExternalParticipantId | null, adminId: ExternalParticipantId | null, stateUpdated?: boolean, requestedMedia?: MediaOption[], roomId?: number | null) => void;
641
+ onMuteStates?: (muteStates: MuteStates, unmuteOptions: MediaOption[], mediaOptions: MediaOption[], muteAll: boolean, unmute: boolean, userId: ExternalParticipantId | null, adminId: ExternalParticipantId | null, stateUpdated?: boolean, requestedMedia?: MediaOption[], roomId?: number | null, conversationId?: string) => void;
635
642
  /**
636
643
  * Изменились роли собеседника в звонке
637
644
  */
638
- onRolesChanged?: (userId: ExternalParticipantId, roles: UserRole[], isInitial?: boolean) => void;
645
+ onRolesChanged?: (userId: ExternalParticipantId, roles: UserRole[], isInitial?: boolean, conversationId?: string) => void;
639
646
  /**
640
647
  * Изменились свои роли в звонке
641
648
  */
642
- onLocalRolesChanged?: (roles: UserRole[], isInitial?: boolean) => void;
649
+ onLocalRolesChanged?: (roles: UserRole[], isInitial?: boolean, conversationId?: string) => void;
643
650
  /**
644
651
  * Закрепляет/открепляет собеседника для всех
645
652
  */
646
- onPinnedParticipant?: (userId: ExternalParticipantId, unpin: boolean, markers: ExternalParticipantListMarkers | null, roomId?: number | null) => void;
653
+ onPinnedParticipant?: (userId: ExternalParticipantId, unpin: boolean, markers: ExternalParticipantListMarkers | null, roomId?: number | null, conversationId?: string) => void;
647
654
  /**
648
655
  * Закрепляет/открепляет текущего пользователя у других собеседников
649
656
  */
650
- onLocalPin?: (unpin: boolean) => void;
657
+ onLocalPin?: (unpin: boolean, conversationId?: string) => void;
651
658
  /**
652
659
  * Изменились опции звонка
653
660
  */
654
- onOptionsChanged?: (options: ConversationOption[]) => void;
655
- onRateNeeded?: Function;
661
+ onOptionsChanged?: (options: ConversationOption[], conversationId?: string) => void;
662
+ onRateNeeded?: (conversationId?: string) => void;
656
663
  /**
657
664
  * Изменился говорящий в звонке
658
665
  */
659
- onSpeakerChanged?: (userId: ExternalParticipantId) => void;
666
+ onSpeakerChanged?: (userId: ExternalParticipantId, conversationId?: string) => void;
660
667
  /**
661
668
  * Громкость собеседников
662
669
  */
663
670
  onVolumesDetected?: (volumes: {
664
671
  uid: ExternalParticipantId;
665
672
  volume: number;
666
- }[]) => void;
673
+ }[], conversationId?: string) => void;
667
674
  /**
668
675
  * Громкость своего микрофона
669
676
  */
670
677
  onLocalVolume?: (volume: number, isMicEnabled: boolean) => void;
671
- onJoinStatus?: Function;
678
+ onJoinStatus?: (available: boolean, chatId: string, conversationId?: string) => void;
672
679
  /**
673
680
  * Звонок был завершен
674
681
  */
@@ -676,12 +683,12 @@ export type ParamsObject = {
676
683
  /**
677
684
  * Входящий звонок был принят мной
678
685
  */
679
- onCallAccepted?: () => void;
686
+ onCallAccepted?: (conversationId?: string) => void;
680
687
  /**
681
688
  * Исходящий звонок был принят кем-то
682
689
  * @param userId
683
690
  */
684
- onAcceptedCall?: (userId: ExternalParticipantId, capabilities: ParticipantCapabilities) => void;
691
+ onAcceptedCall?: (userId: ExternalParticipantId, capabilities: ParticipantCapabilities, conversationId?: string) => void;
685
692
  /**
686
693
  * Список устройств изменился
687
694
  */
@@ -698,25 +705,25 @@ export type ParamsObject = {
698
705
  /**
699
706
  * Получено сообщение чата
700
707
  */
701
- onChatMessage?: (message: string, from: ExternalParticipantId, direct: boolean) => void;
708
+ onChatMessage?: (message: string, from: ExternalParticipantId, direct: boolean, conversationId?: string) => void;
702
709
  /**
703
710
  * Получены данные от собеседника
704
711
  */
705
- onCustomData?: (data: JSONObject, from: ExternalParticipantId, direct: boolean) => void;
712
+ onCustomData?: (data: JSONObject, from: ExternalParticipantId, direct: boolean, conversationId?: string) => void;
706
713
  /**
707
714
  * Начата трансляция/запись звонка
708
715
  */
709
- onRecordStarted?: (initiator: ExternalParticipantId, movieId: number, startTime: number, type: 'STREAM' | 'RECORD', externalMovieId?: string, externalOwnerId?: string, roomId?: number | null) => void;
716
+ onRecordStarted?: (initiator: ExternalParticipantId, movieId: number, startTime: number, type: 'STREAM' | 'RECORD', externalMovieId?: string, externalOwnerId?: string, roomId?: number | null, conversationId?: string) => void;
710
717
  /**
711
718
  * Закончена трансляция/запись звонка
712
719
  */
713
- onRecordStopped?: (roomId: number | null, stopBy: ExternalParticipantId | null) => void;
720
+ onRecordStopped?: (roomId: number | null, stopBy: ExternalParticipantId | null, conversationId?: string) => void;
714
721
  /**
715
722
  * Состояние своей сети
716
723
  *
717
724
  * @param rating Оценка качества соединения от 0 до 1
718
725
  */
719
- onLocalNetworkStatusChanged?: (rating: number) => void;
726
+ onLocalNetworkStatusChanged?: (rating: number, conversationId?: string) => void;
720
727
  /**
721
728
  * Состояние сети участников
722
729
  *
@@ -725,7 +732,7 @@ export type ParamsObject = {
725
732
  onNetworkStatusChanged?: (status: {
726
733
  uid: ExternalParticipantId;
727
734
  rating: number;
728
- }[]) => void;
735
+ }[], conversationId?: string) => void;
729
736
  /**
730
737
  * Получено отладочное сообщение. Работает только при выключенном режиме отладки
731
738
  */
@@ -747,74 +754,74 @@ export type ParamsObject = {
747
754
  * @param addedParticipantIds Некоторое количество участников, добавленных в зал
748
755
  * @param removedParticipantIds Некоторое количество участников, убранных из зала
749
756
  */
750
- onChatRoomUpdated?: (eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[], addedParticipantIds: ExternalId[], removedParticipantIds: ExternalId[]) => void;
757
+ onChatRoomUpdated?: (eventType: ChatRoomEventType, totalCount: number, firstParticipants: ExternalId[], addedParticipantIds: ExternalId[], removedParticipantIds: ExternalId[], conversationId?: string) => void;
751
758
  /**
752
759
  * Получен микшированный аудио стрим.
753
760
  * @hidden
754
761
  * @param stream стрим от WebRTC
755
762
  */
756
- onRemoteMixedAudioStream?: (stream: MediaStream) => void;
763
+ onRemoteMixedAudioStream?: (stream: MediaStream, conversationId?: string) => void;
757
764
  /**
758
765
  * Получена новая ссылка на звонок
759
766
  * @param joinLink токен присоединения к звонку
760
767
  */
761
- onJoinLinkChanged?: (joinLink: string) => void;
768
+ onJoinLinkChanged?: (joinLink: string, conversationId?: string) => void;
762
769
  /**
763
770
  * Получено обновление списка сессионных залов
764
771
  * @param updates список обновлений по залам
765
772
  */
766
- onRoomsUpdated?: (updates: Partial<Record<RoomsEventType, RoomsUpdate>>) => void;
773
+ onRoomsUpdated?: (updates: Partial<Record<RoomsEventType, RoomsUpdate>>, conversationId?: string) => void;
767
774
  /**
768
775
  * Получено обновление сессионных зало
769
776
  * @param eventTypes список событий
770
777
  * @param roomId номер сессионного зала
771
778
  * @param room сессионный зал
772
779
  */
773
- onRoomUpdated?: (eventTypes: RoomsEventType[], roomId: number, room: Room | null, deactivate: boolean | null) => void;
780
+ onRoomUpdated?: (eventTypes: RoomsEventType[], roomId: number, room: Room | null, deactivate: boolean | null, conversationId?: string) => void;
774
781
  /**
775
782
  * Получение обновление списка участников в сессионном зале
776
783
  * @param update обновление списка участников
777
784
  */
778
- onRoomParticipantsUpdated?: (update: RoomParticipantUpdate) => void;
785
+ onRoomParticipantsUpdated?: (update: RoomParticipantUpdate, conversationId?: string) => void;
779
786
  /**
780
787
  * Получение информации о смене зала
781
788
  * @param roomId номер сессионного зала
782
789
  */
783
- onRoomSwitched?: (roomId: number | null) => void;
790
+ onRoomSwitched?: (roomId: number | null, conversationId?: string) => void;
784
791
  /**
785
792
  * Установить id сессионного зала на старте звонка
786
793
  * @param roomId номер сессионного зала
787
794
  */
788
- onRoomStart?: (roomId: number | null) => void;
795
+ onRoomStart?: (roomId: number | null, conversationId?: string) => void;
789
796
  /**
790
797
  * Получены новые реакции в звонке
791
798
  * @param feedback массив с реакциями
792
799
  */
793
- onFeedback?: (feedback: IFeedbackExternal[], roomId: number | null) => void;
800
+ onFeedback?: (feedback: IFeedbackExternal[], roomId: number | null, conversationId?: string) => void;
794
801
  /**
795
802
  * Изменился список ролей, которым доступны ConversationFeatures
796
803
  *
797
804
  * @param featuresPerRole Объект вида ключ: ConversationFeature = значение: UserRole[]
798
805
  * (если ключ фичи отсутствует, или в ролях пустой массив, считаем фичу доступной для всех пользователей)
799
806
  */
800
- onFeaturesPerRoleChanged?: (featuresPerRole: IFeaturesPerRole) => void;
807
+ onFeaturesPerRoleChanged?: (featuresPerRole: IFeaturesPerRole, conversationId?: string) => void;
801
808
  /**
802
809
  * Изменился Vmoji-аватар пользователя
803
810
  * @param externalId Id пользователя, у которого изменился аватар
804
811
  */
805
- onParticipantVmojiUpdate?: (externalId: ExternalParticipantId) => void;
812
+ onParticipantVmojiUpdate?: (externalId: ExternalParticipantId, conversationId?: string) => void;
806
813
  /**
807
814
  * Начата текстовая расшифровка звонка
808
815
  * @param initiatorId Id пользователя, запустившего расшифровку звонка
809
816
  * @param movieId Id расшифровки
810
817
  * @param roomId Id комнаты
811
818
  */
812
- onAsrStarted?: (initiatorId: ExternalParticipantId, movieId: number, roomId: number | null) => void;
819
+ onAsrStarted?: (initiatorId: ExternalParticipantId, movieId: number, roomId: number | null, conversationId?: string) => void;
813
820
  /**
814
821
  * Закончена текстовая расшифровка звонка
815
822
  * @param roomId Id комнаты
816
823
  */
817
- onAsrStopped?: (roomId: number | null) => void;
824
+ onAsrStopped?: (roomId: number | null, conversationId?: string) => void;
818
825
  /**
819
826
  * Получена расшифровка речи
820
827
  * @param id Id пользователя, произнесшего реплику
@@ -822,47 +829,53 @@ export type ParamsObject = {
822
829
  * @param timestamp Время расшифровки
823
830
  * @param duration Длительность реплики в расшифровке
824
831
  */
825
- onAsrTranscription?: (id: ExternalParticipantId, text: string, timestamp: number, duration: number) => void;
832
+ onAsrTranscription?: (id: ExternalParticipantId, text: string, timestamp: number, duration: number, conversationId?: string) => void;
826
833
  /**
827
834
  * Установка начальных параметров текстовой расшифровки звонка. (Используется при входе в звонок/ смене комнаты)
828
835
  * @param data Начальная информация по ASR
829
836
  * @param roomId Id Комнаты
830
837
  */
831
- onAsrSet?: (data: IAsrData | null, roomId: number | null) => void;
838
+ onAsrSet?: (data: IAsrData | null, roomId: number | null, conversationId?: string) => void;
832
839
  /**
833
840
  * Админ начал/остановил совместное использование стороннего web-приложения
834
841
  * @param userId id участника-админа
835
842
  * @param sharedUrl url страницы
836
843
  */
837
- onRemoteSharedUrl?: (userId: ExternalParticipantId, sharedUrl: string | undefined, roomId: IRoomId) => void;
844
+ onRemoteSharedUrl?: (userId: ExternalParticipantId, sharedUrl: string | undefined, roomId: IRoomId, conversationId?: string) => void;
838
845
  /**
839
846
  * Изменился id участника (деанонимизация)
840
847
  * @param prevId
841
848
  * @param newId
842
849
  */
843
- onParticipantIdChanged?: (prevId: ExternalParticipantId, newId: ExternalParticipantId) => void;
850
+ onParticipantIdChanged?: (prevId: ExternalParticipantId, newId: ExternalParticipantId, conversationId?: string) => void;
844
851
  /**
845
852
  * Предложение включить режим автоматического отключения приёма видео
846
853
  * в плохой сети
847
854
  * @param bandwidth текущая полоса пропускания, kbps
848
855
  */
849
- onVideoSuspendSuggest?: (bandwidth: number) => void;
856
+ onVideoSuspendSuggest?: (bandwidth: number, conversationId?: string) => void;
850
857
  /**
851
858
  * Одобрено повышение пользователя в зале ожидания/зале в режиме Audience
852
859
  *
853
860
  * @param adminParticipantId админ, одобривший повышение
854
861
  */
855
- onPromotionApproved?: (adminParticipantId: ExternalParticipantId) => void;
862
+ onPromotionApproved?: (adminParticipantId: ExternalParticipantId, conversationId?: string) => void;
856
863
  /**
857
864
  * Участник повышен/разжалован в зале ожидания/зале в режиме Audience
858
865
  *
859
866
  * @param demoted участник разжалован
860
867
  */
861
- onPromoted?: (demoted: boolean) => void;
868
+ onPromoted?: (demoted: boolean, conversationId?: string) => void;
869
+ /**
870
+ * Активным установлен определенный звонок
871
+ *
872
+ * @param conversationId ID звонка
873
+ */
874
+ onCallActive?: (conversationId: string) => void;
862
875
  /**
863
876
  * Собеседник подключился к сигналлингу
864
877
  */
865
- onPeerRegistered?: () => void;
878
+ onPeerRegistered?: (conversationId?: string) => void;
866
879
  };
867
880
  export default abstract class Params {
868
881
  private static _params;
@@ -971,6 +984,7 @@ export default abstract class Params {
971
984
  static get addParticipant(): boolean;
972
985
  static get waitForAdminInGroupCalls(): boolean;
973
986
  static get hold(): boolean;
987
+ static get maxParallelCalls(): number;
974
988
  static get participantListChunkInitIndex(): number;
975
989
  static get participantListChunkInitCount(): number | null;
976
990
  static get filterObservers(): boolean;
@@ -0,0 +1,24 @@
1
+ export type TCapabilities = {
2
+ estimatedPerformanceIndex: number;
3
+ audioMix: boolean;
4
+ consumerUpdate: boolean;
5
+ producerNotificationDataChannelVersion: number;
6
+ producerCommandDataChannelVersion: number;
7
+ consumerScreenDataChannelVersion: number;
8
+ producerScreenDataChannelVersion: number;
9
+ asrDataChannelVersion: number;
10
+ animojiDataChannelVersion: number;
11
+ animojiBackendRender: boolean;
12
+ onDemandTracks: boolean;
13
+ unifiedPlan: boolean;
14
+ singleSession: boolean;
15
+ videoTracksCount: number;
16
+ red: boolean;
17
+ audioShare: boolean;
18
+ fastScreenShare: boolean;
19
+ videoSuspend: boolean;
20
+ simulcast: boolean;
21
+ consumerFastScreenShare: boolean;
22
+ consumerFastScreenShareQualityOnDemand: boolean;
23
+ transparentAudio: boolean;
24
+ };
@@ -366,6 +366,9 @@ declare namespace SignalingMessage {
366
366
  export interface Connection extends Notification {
367
367
  endpoint: string;
368
368
  conversation: Conversation;
369
+ conversationParams: {
370
+ serverTime: number;
371
+ };
369
372
  isConcurrent: boolean;
370
373
  peerId: PeerId;
371
374
  mediaModifiers: MediaModifiers;
@@ -452,6 +455,10 @@ declare namespace SignalingMessage {
452
455
  export interface VideoSuspendSuggest extends Notification {
453
456
  bandwidth: number;
454
457
  }
458
+ export interface Hold extends Notification {
459
+ participantId: ParticipantId;
460
+ hold: boolean;
461
+ }
455
462
  export {};
456
463
  }
457
464
  export default SignalingMessage;