История изменений
Все изменения SDK сгруппированы по версиям и типам.
v2.8.8
✨ Новые возможности
- Добавили новый статус CALL_TIMEOUT в
HangupType - Обновили тип в
onHangup, если пришел от socket invalid-token, то сбрасываем ошибку из processPush - ONEME-29902: добавили выключение капабилити wait_for_admin, прокидываем капабилити теперь при faststart, joinconversation
- Добавили поддержку таймаута в запросы api с лимитом 5 секунд, лимит можно менять через apiTimeout Добавили возможность менять количество ретраев прежде чем сбросить ошибку в api через apiMaxAttempt.
- ONEME-27548: добавили обработку статусов SERVICE_UNAVAILABLE; доработали доктор реконнекта, теперь он не бесконечный
- Ручка streamBuilderKeyFrameRequest включает возможность запрашивать декодером ключевой кадр при просмотре скриншары
- Ручка streamBuilderAutoSwitchToLibVPX включает возможность переключиться на LibVPXDecoder с WebCodecsDecoder при проблемах декодирования последним
- CALLS-3856: Добавлена возможность ожидания админа для начала звонка
- Добавлен проброс capabilities пользователя в коллбек
onAcceptedCall. Добавлен капабилити addParticipant - calls test environments update
🐛 Исправления
- Правильно реагируем на on-link-changed событие и обновляем его в conversation
- CALLS-3465: Расширение информации об ошибке в сигналинге при закрытии соединения
- ONEME-26173: добавили обработку ошибок от fast start
- CALLS-3246: Фикс скриншары в windows 10
- CALLS-3246: фикс декодера скриншары
- feat(sandbox): упрощение процесса разработки песочницы и обновление импортов
- Добавили описание
FatalErrorв code - CALLS-3458: обработка ошибки update-display-layout при внутреннем обращении
- CALLS-3461: исправление проблемы с получением roomId
- ONEME-23645: поправили баг иногда не прилетает volume по участникам которые прекратили говорить
- chore: поправили скрипты сборки в nexus
- ONEME-25435: сообщаем клиентам о стейте партисипанта, если он был при подключении к звонку
- CALLS-3467: исправлена проблема с рендером скриншары через CanvasRenderer в FireFox
- Изменение в работе запроса UDL. Теперь клиенту не нужно следить за топологией, а UDl нужно запрашивать всегда. При смене топологии на серверную SDK запросит у медиа сервера актуальные слои.
- Удаление ручек streamBuilderKeyFrameRequest и streamBuilderAutoSwitchToLibVPX
- ONEME-29902: поправили баг что некорректно определялся зал ожидания
- CALLS-3469: исправлена проблема удаления партисипантов после переподключения
- поправили номер капабилити ADD_PARTICIPANT согласно документации от бекенда
- CALL-28816: Передача UserAgent в адресе при подключении к WebTransport
- Изменили тип ошибки с SOCKET_CLOSED на NETWORK_ERROR если не получилось за 10 попыток подключиться к сигналингу
- CALLS-3470: Исправлена проблема с ошибкой при создании RTCPeerConnection
- CALLS-3466: решение проблемы с CanvasRenderer в FireFox
- CALLS-3793: Оптимизирована логика открытия транспорта - множественные вызовы консолидированы в один.
v2.8.7
✨ Новые возможности
- Добавили новый тип
HangupType: TIMEOUT - Добавлен флаг
globalв событиеonLocalParticipantState— показывает, что изменение состояния (например, опускание руки) применено ко всем участникам, а не только к текущему пользователю. - Добавили поле role для
ExternalParticipant - CALL-26309: поддержка скриншары по rtp
- Добавлен флаг
globalв событиеonLocalParticipantState - Добавлены роли участников в событие
onConversationи исправлен id администратора - Добавлены новые API endpoints
- Добавлена функция
removeStream - Добавлены события транспорта signaling
- Добавлена поддержка WebTransport
- Добавлена поддержка быстрого старта с обработчиком
onFastStart - Обновлен API для добавления участников
- Добавлены метрики
codec_usageиcall_finish - Добавлена статистика
hardwareConcurrency - Добавлена поддержка simulcast
- Добавлен параметр locale для add-movie
- Добавлен параметр
apiBaseUrl
🐛 Исправления
- CALL-29033: Добавлена статистика по пингам
- Рефакторинг WebTransport: замена while-цикла на async generator с for-await синтаксисом
- Пофиксили проблему, что не приходит adminId в
onMuteStatesесли действие выполнил локальный участник - Исправлена проблема черного экрана в сафари при первом получении видео трека
- CALL-29033: Исправлена проблема отправки статистики сигналинга
- CALL-29033: Добавлена статистика по командам сигналинга
- CALLS-3145: откатил ломающую логику changedevice
- CALL-29279: Отсылаем корректный hangup reason при закрытии вкладки
- CALLS-3318 обновление библиотеки @vkontakte/calls-video-effects до версии 2.2.3-beta.6
- При потере интернет соединения сбрасываем
HangupReason:HangupType.SOCKET_CLOSED, вместо ошибки с текстомConnection closed` - Поправили ошибку, что в звонок нельзя зайти с simulcast, но без audioShare
- better plaintext logs
- Скидываем ошибку если не получилось добавить участника в звонок из-за ошибки
- CALLS-3229: фикс проблемы с подключением к невалидному webtransport адресу при входящем звонке
- Отправляем событие
onFeaturesPerRolesвместе сonCallStateна старте. Перестали сеттить undefined в событии FeaturePerChanged на поле featuresPerRoles, так как там никогда и не приходило это значение - CALL-28935: Добавили кастомный пакет changeset, что лучше вести CHANGELOG.md файл
- При потере интернет соединения теперь возвращается
HangupReason.SOCKET_CLOSED` вместо общей ошибки - Исправлен неправильный импорт типа hangup
- Исправлен парсинг SDP для simulcast
- Исправлена замена silent audio track при смене микрофона
- Исправлено чтение lengthPrefix
- Исправлен webtransport endpoint в парсинге conversation параметров
- Удален trailing slash из API base URL
- Исправлено получение joinLink из conversation
- Теперь выбрасывается
HangupReasonвместо объекта - Исправлена проблема с screen sharing в Safari
- Очистка состояния simulcast клиента при переподключении
- Исправлены названия hangup
- Исправлено дублирование звонков
- Добавлена обработка ошибок API при логировании статистики клиента
- Обновлен deployment скрипт
- Исправлены типизации
- Исправлена инициализация LocalVolumeDetector когда MediaSource готов
- Добавлено сообщение об ошибке для занятого mediasource
♻️ Рефакторинг
- Добавлен SignalingActor для обработки signaling уведомлений
- Асинхронная загрузка участников
- Использование external ids для старта звонка
- Переименован
cpu_hardware_concurrency
🔧 Изменения
- Добавлена клиентская capability
ANIMOJI_BACKEND_RENDER - Добавлен prettier
- Добавлено больше логов для коммуникации с MAX backend
- Обновлен TypeScript и рефакторинг для использования WebTransport в браузере без обертки
- Используется MAX backend для получения session токенов
- Обновлены api и server ключи
- Изменения для NodeJS 22.12.0
- Улучшено создание звонков в sandbox
- Добавлен новый sandbox
- Добавлены типизации для аргумента state в
changeParticipantState - Обновлен vmoji пакет
🗑️ Удалено
- Удален toggle и код для warmup
- Удален silent track warmup для старых версий Safari
- Удален вызов
getConversationParams
v2.8.5
✨ Новые возможности
- Изменен метод
changeParticipantStateи добавлен новый методputHandsDownдля принудительного опускания рук всех участников - Добавлен коллбэк
onLocalParticipantState - Добавлен режим, при котором будет предложено включить автоматическое отключение приёма видео в условиях плохого соединения (метод
enableVideoSuspendSuggestи коллбэкonVideoSuspendSuggest) - Добавлен коллбэк
onRemoteParticipantsState - Добавлена поддержка аудиоэффектов (
setAudioEffects,changeAudioEffect) - Метод
addParticipantтеперь может принимать массив участников для добавления в звонок
🐛 Исправления
- Исправлена проблема с одновременным запуском двух демонстраций экрана в звонке
- Исправлена проблема с вызовом
removeParticipantдля участника не в звонке - Исправлено переполнение очереди при отправке демонстрации экрана
- Исправления демонстрации экрана для Safari 17.4 и новее
- Исправлено открытие соединения при входе в звонок с включенной записью
- Исправления демонстрации экрана для Opera и Yandex Browser
- Исправлена работа коллбэка
onDeviceChange - Другие исправления и улучшения
🔧 Изменения
- Обработаны повторные вызовы метода
SDK.init()` - Обновлена библиотека
@vkontakte/calls-video-effects
v2.8.4
✨ Новые возможности
- Добавлен коллбэк
onAcceptedCall - Добавлен коллбэк
onPeerRegistered - Добавлена возможность отключения приема видео при плохой сети
- Добавлен метод
SDK.enableVideoSuspend - Добавлен коллбэк
onRemoteStreamSuspended
🐛 Исправления
- Исправления и улучшения видео-эффектов
- Исправлено качество демонстрации экрана в Safari
- Исправлена утечка памяти в Firefox при активной демонстрации экрана
- Исправлена проблема когда звук не воспроизводился, если в браузере заблокирован автоплей
- Другие исправления и улучшения
🔧 Изменения
- Различные улучшения vmoji
v2.8.3
✨ Новые возможности
- Добавлен коллбэк
onAsrTranscription
🐛 Исправления
- Другие исправления и улучшения
🔧 Изменения
- Новые видеоэффекты Overlay, Filter, Combined (обновитесь до
@vkontakte/calls-video-effects@2.2.1) - Оптимизации видео в условиях плохой сети
v2.8.2
⚠️ Важные изменения
- ⚠️ Breaking: Удалены параметры
batchParticipantsOnStart,filteredMessagesи коллбэкonParticipantStatus - ⚠️ Breaking: Метод
SDK.changePrioritiesтеперь deprecated и будет удален в будущих релизах. ИспользуйтеupdateDisplayLayoutвместо него - ⚠️ Breaking: Изменились возвращаемые значения коллбэков
onLocalSharedMovieInfoиonLocalSharedMovieStoppedInfo - ⚠️ Breaking: Удален метод
recordSetRole, вместо него добавленrecordSetConf
✨ Новые возможности
- Поддержка ASR и совместного просмотра в сессионных залах
- Добавлена документация по
updateDisplayLayout - Добавлен метод
SDK.publishStreamдля публикации трансляции звонка
🐛 Исправления
- Исправлена отправка трансляции экрана в Safari 16.4
- Исправлено зависание в статусе
WAITING, когда собеседник вошел в звонок слишком быстро - Исправлено сохранение используемых устройств
- Исправлено переполнение системного буфера при отправке трансляции экрана
- Другие исправления и улучшения
♻️ Рефакторинг
- Переработана логика определения состояний реконнекта
- Переработана и улучшена отправка кадров при трансляции экрана
- Переработана библиотека видео эффектов (обновитесь до
@vkontakte/calls-video-effects@2.0.1)
🔧 Изменения
- Метод
SDK.changeDeviceтеперь можно вызвать до старта звонка, для установки устройств заранее - Улучшена обработка подключения/отключения устройств во время звонка
v2.8.1
⚠️ Важные изменения
- ⚠️ Breaking: Изменились аргументы метода
SDK.startAsr - ⚠️ Breaking: Изменились аргументы метода
SDK.setLocalResolution - ⚠️ Breaking: Удален метод
SDK.browser.saveDeviceId - ⚠️ Breaking: Изменились параметры по-умолчанию:
videoTracksCount: 30,serverAudioRed: true,p2pAudioRed: true,joinFromMultipleDevices: false - ⚠️ Breaking: Работа с параметром
videoTracksCount: 0не будет поддерживаться в будущих релизах. Убедитесь, что вы отправляете корректные значения вSDK.updateDisplayLayout
✨ Новые возможности
- Начальная поддержка ASR (улучшения и доработки)
- Добавлен вспомогательный метод
SDK.browser.setResolution - Начальная поддержка vmoji (улучшения и доработки)
🐛 Исправления
- Исправлена ошибка переключения камер с включенными эффектами
- Исправлена утечка памяти в некоторых браузерах при приеме трансляции экрана
- Исправление пропадания звука при реконнекте со включенной трансляцией экрана
- Другие исправления и улучшения
v2.7.1
⚠️ Важные изменения
- ⚠️ Breaking: Метод
SDK.changeDeviceбольше не включает камеру/микрофон, если они выключены
✨ Новые возможности
- Начальная поддержка ASR
- Поддержка захвата звука при трансляции экрана
- Начальная поддержка "быстрой трансляции экрана" (с худшим качеством)
- Начальная поддержка vmoji
🐛 Исправления
- Другие исправления и улучшения
🔧 Изменения
- Улучшения трансляции экрана
- Методы
SDK.browser.getSavedCameraиSDK.browser.getSavedMicrophoneтеперь возвращают используемое устройство, даже если не было сохранения - Изменился метод
SDK.changeDevice. Для мобильных устройств, он может принимать неdeviceId, аFacingMode(подробнее в документации) - Улучшена и дополнена документация
v2.6.2
✨ Новые возможности
- Добавлен метод
SDK.version - Добавлен колбэк
onJoinLinkChanged - Добавлен
HangupType.ANOTHER_DEVICE` - приходит, если пользователь вошел в звонок с другого устройства - Добавлен
HangupType.CALLER_IS_REJECTED` - Добавлена возможность совместного просмотра видео в звонке
- Начальная поддержка текстовой расшифровки звонка
- Начальная поддержка разделения звонка на комнаты
- Возможность трансляции системного звука вместе с экраном
🐛 Исправления
- Исправлено зависание трансляции экрана в Safari при переключении вкладки
- Исправлен старт трансляции экрана в Safari 16
- Исправления для старых браузеров (в частности Firefox 52 ESR)
- Другие исправления и улучшения
🔧 Изменения
- Изменились параметры колбэка
onMuteStates - Изменились аргументы метода
SDK.joinCallByLink
🗑️ Удалено
- Параметры
producerScreenTrackиconsumerScreenTrackтеперь deprecated и будут удалены в будущих релизах
v2.6.1
✨ Новые возможности
- Добавлены параметры
serverAudioRedиp2pAudioRedдля включения Redundancy Extension - В p2p звонке в
onRemoteStreamтеперь приходит стрим без аудио (для сохранения старой логики добавлен параметрpreserveAudioTracks) - Начальная поддержка постраничного вывода участников звонка (для звонков с большим количеством участников)
- Добавлены параметры
useParticipantListChunk,participantListChunkInitIndex,participantListChunkInitCount - Добавлены колбэки
onConversationParticipantListChunk,onParticipantAdded,onParticipantJoined - Добавлены методы
SDK.getParticipantListChunk,SDK.getParticipants
🐛 Исправления
- Исправлена отрисовка трансляции экрана в Safari 15
- Исправлен вывод звука в мобильном сафари
- Исправлен краш при старте записи звонка, если вызов еще не принят
- Другие исправления и улучшения
🔧 Изменения
- Улучшена отрисовка трансляции экрана в chrome-based браузерах
- Изменились аргументы в колбэках
onRemoteMediaSettings,onRemoteParticipantState,onRemoteRemoved,onPinnedParticipant
🗑️ Удалено
- Удалён полифил для
BigInteger, теперь используется нативныйbigint - Удалён параметр
participantStateMapped, изменились аргументы колбэкаonRemoteParticipantState
v2.5.2
⚠️ Важные изменения
- ⚠️ Breaking: Добавлена тестовая возможность входить в звонок одним пользователем с разных устройств
- ⚠️ Breaking: Установлены параметры по-умолчанию
✨ Новые возможности
- Добавлен параметр
apiEnv: AUTOдля автоматического определения лучшего API домена
🐛 Исправления
- Исправлен вызов
onRolesChangedпри входе участника в звонок - Исправлена проблема в Firefox, вызванная большим количеством STUN/TURN серверов
- Исправлена проблема, иногда не отображалась трансляция экрана
- Исправлены фантомные вызовы
onDeviceChangeпосле завершения звонка - Исправлен неправильный выбор микрофона/камеры при старте звонка
- Исправлено отображение трансляции экрана в Safari 15
- Исправлена ситуация, когда входящий звонок мог прийти на то же устройство при активном звонке
🔧 Изменения
- Во многих колбэках изменились типы с
ExternalIdнаExternalParticipantId producerScreenTrack: trueconsumerScreenTrack: truebatchParticipantsOnStart: trueonParticipantStatusзаменен наonRemoteStatus
🗑️ Удалено
- Из
ParticipantLayoutудален параметрkeyFrame
v2.5.1
⚠️ Важные изменения
- ⚠️ Breaking: Изменились аргументы метода
SDK.muteParticipant - ⚠️ Breaking: Удалены колбэки
onUnmuteRequestиonUnmutePermission - ⚠️ Breaking: Изменились аргументы колбэка
onConversation
✨ Новые возможности
- Добавлен колбэк
onMuteStates - Добавлены новые статусы завершения звонка в
HangupType
🐛 Исправления
- Исправление трансляции экрана в Safari 15
- Исправление воспроизведения звука в Safari 15
- Другие исправления и улучшения
🔧 Изменения
- Изменились аргументы метода
SDK.setLocalResolution - Изменились аргументы метода
SDK.updateMovie
v2.4.3
✨ Новые возможности
- Добавлен метод
recordSetRoleдля установки роли участника в записи звонка
🐛 Исправления
- Исправлен потерянный статус
WAITING - Различные исправления и улучшения
🔧 Изменения
- Изменился колбэк
onUnmutePermission
🗑️ Удалено
- Добавлен метод
removeHistoryRecordsдля удаления записей из истории звонков
v2.4.2
✨ Новые возможности
- Добавлена возможность изменять устройство вывода звука методом
changeDevice - Добавлен параметр
participantStateMapped- в колбэкеonRemoteParticipantStateбудет приходить время события - Добавлен параметр
batchParticipantsOnStart- в колбэкеonConversationбудет приходить список участников звонка
🐛 Исправления
- Различные исправления в p2p звонке
- Исправление замирания трансляции экрана
- Исправление трансляции экрана для поддержки Chrome 93
- Различные исправления и улучшения
v2.4.1
⚠️ Важные изменения
- ⚠️ Breaking: Изменилось имя пакета в NPM на @vkontakte/calls-sdk и имя модуля UMD на
VKCallsSDK - ⚠️ Breaking: Удалён метод
SDK.call - ⚠️ Breaking: Изменились аргументы методов
SDK.callTo,SDK.acceptCall,SDK.joinCall,SDK.joinCallByLink— вместо параметраneedVideoтеперь набор опцийmediaOptions - ⚠️ Breaking: Удалён параметр
allowMissingMic— новое поведение соответствует старому значениюtrue
✨ Новые возможности
- Добавлена поддержка Зала Ожидания — методы
SDK.getWaitingHall,SDK.promoteParticipantи колбэкonChatRoomUpdated
🐛 Исправления
- Различные исправления и улучшения
🔧 Изменения
- Оптимизация определения плохой сети в p2p звонках
v2.3.9
✨ Новые возможности
- Добавлен метод
OKCallsSDK.setAudioStreamдля установки аудио стрима - Начальная поддержка приёма и отправки трансляции экрана вместе с видео с камеры
- Добавлены колбэки
onScreenStream,onRemoteLive,onRemoteScreenStream
🐛 Исправления
- Различные исправления и улучшения
v2.3.8
🐛 Исправления
- Исправлено значение
packetLossв статистике - Исправлена ошибка при которой пропадал звук в групповом звонке при реконнекте
- Различные исправления реконнектов
🔧 Изменения
- Полностью перешли на одно соединение в серверной топологии и unified plan
🗑️ Удалено
- Сообщение
onNetworkStatusудалено окончательно.onNetworkStatusChangedтеперь работает и для p2p
v2.3.5
🐛 Исправления
- Исправления реконнектов
- Исправления статусов CONNECTING и CONNECTED
- Различные исправления и улучшения
🔧 Изменения
- Различные оптимизации трансляции экрана
- Увеличен framerate трансляции экрана до 15 fps
- Параметры по умолчанию -
preferVP9: true,preferH264: false
v2.3.4
🐛 Исправления
- Другие исправления и улучшения
🔧 Изменения
- Приём трансляции экрана через датаканал
- Обработана смена топологии во время входящего звонка
- По умолчанию включены все датаканалы, unified plan и single session
🗑️ Удалено
- Удалена поддержка p2p звонков больше чем на 2 участников
v2.3.3
✨ Новые возможности
- Возможность создавать только один peerconnection на серверной топологии
- Добавлены колбэки
onNetworkStatusChangedиonNetworkStatusChangedдля определения состояния сети - Добавлена возможность разбана пользователя методом
OKCallsSDK.addParticipant
🐛 Исправления
- Исправлена проблема неправильного соотношения сторон шаринга экрана
- Исправлено дублирование и устаревание логов
- Другие исправления и улучшения
🔧 Изменения
- Улучшена стабильность P2P звонка
- Методы подключения к звонку теперь будут кидать исключение, если уже есть активный звонок
- Локальное видео теперь не отправляется на сервер, если никто из собеседников его не смотрит
v2.3.2
🐛 Исправления
- Исправление сборки и зависимостей версии 2.3.1
v2.3.1
⚠️ Важные изменения
- ⚠️ Breaking: Удален параметр
directAudioOutput, теперь стандартное поведение аналогично значениюAudioElementMix
✨ Новые возможности
- Добавлен метод
OKCallsSDK.debugMessageдля добавления сообщений в отладочный лог SDK - Изменился метод
OKCallsSDK.removeParticipant, добавлена возможность бана участника
🐛 Исправления
- Исправлен старт записи звонка в звонке с одним участником
- Исправлен "робовойс" в хроме
♻️ Рефакторинг
- Переработана трансляция экрана (WebCodecs + LibVPx)
🔧 Изменения
- При смене топологии теперь будет вызываться колбэк
onCallState - Обработана ошибка получения участников звонка из апи
v2.2.7
⚠️ Важные изменения
- ⚠️ Breaking: Методы
toggleLocalAudioиtoggleLocalVideoтеперь выбрасывают ошибку при отсутствии необходимых разрешений
✨ Новые возможности
- Возможность получения информации о говорящих через дата-канал
- Возможность получения видео треков только при включении видео собеседником
- Базовая поддержка Unified Plan (пока в отключке)
🐛 Исправления
- Исправлены неверные статусы разрешений камеры и микрофона (при первой выдаче разрешений)
- Исправлена проблема перманентного мьюта при реконнекте
🔧 Изменения
- Метод
setLocalResolutionтеперь не влияет на скриншаринг - Временно отключено сообщение о плохой сети, т.к. работает нестабильно. Для включения старой логики использовать параметр
badConnectionDetector: true - Улучшение стабильности при реконнектах
v2.2.6
✨ Новые возможности
- Возможность запрета анонимного джойна
- Добавлен метод
OKCallsSDK.changeConversationOptionsи колбэкonOptionsChanged
🐛 Исправления
- Различные исправления и улучшения
v2.2.5
✨ Новые возможности
- Поддержка смены кодека с сервера
v2.2.4
⚠️ Важные изменения
- ⚠️ Breaking: Метод
OKCallsSDK.callобъявлен deprecated - используйтеOKCallsSDK.callToвместо него
✨ Новые возможности
- Добавлен колбэк
onLocalPin - Поддержка старта записи звонка от группы
- Добавлены параметры
preferH264иpreferVP9
🐛 Исправления
- Исправлен старт записи звонка в звонке с одним участником
- Другие исправления и улучшения
🔧 Изменения
- Изменился колбэк
onConversation - Ускорены методы сбора статистики
v2.2.3
🐛 Исправления
- Небольшое исправление
OKCallsSDK.unmuteRequest
v2.2.2
⚠️ Важные изменения
- ⚠️ Breaking: Изменились парамеры методов
OKCallsSDK.muteParticipantиOKCallsSDK.unmuteRequest
🐛 Исправления
- Исправлен метод
OKCallsSDK.setStatisticsInterval - Другие исправления и улучшения
🔧 Изменения
- Отклоняем входящий звонок, если уже есть один входящий
v2.2.1
⚠️ Важные изменения
- ⚠️ Breaking: Изменились параметры метода
OKCallsSDK.muteParticipant
✨ Новые возможности
- Добавлен метод
OKCallsSDK.unmuteRequest - Начальная поддержка видео-эффектов
- Добавлен метод
OKCallsSDK.setVideoEffects - Добавлен метод
OKCallsSDK.changeVideoEffect
v2.1.19
✨ Новые возможности
- Добавлен метод
OKCallsSDK.setMediaModifiersдля изменения настроек серверного шумодава
🐛 Исправления
- Разные исправления
v2.1.18
✨ Новые возможности
- Добавлен колбэк
onUnmutePermission
🐛 Исправления
- Исправлены статусы пользователей в режиме
AudioElementMix - Небольшие исправления и улучшения
🗑️ Удалено
- Удален метод
OKCallsSDK.switchConference - Удалены колбэки
onUserPermissionsиonConferenceMode - Удален параметр
timeв колбэкеonUnmuteRequest
v2.1.17
🐛 Исправления
- Исправление отправки звука попыткой переинициализации микрофона
🔧 Изменения
- Отключение браузерного шумодава в групповом звонке
- Метод
OKCallsSDK.setStatisticsIntervalдля установки интервала сбора статистики - Колбэк
onAutoplayErrorдля определения заблокированного автозапуска аудио в браузере
v2.1.16
✨ Новые возможности
- Добавлен режим конференции
- Добавлены методы
OKCallsSDK.switchConference,OKCallsSDK.grantRoles,OKCallsSDK.pinParticipant - Добавлены колбэки
onConferenceMode,onDeviceSwitched,onUnmuteRequest,onRolesChanged,onLocalRolesChanged,onPinnedParticipant
🐛 Исправления
- Исправлена логика реконнектов при недоступности сервера
🔧 Изменения
- Параметр
directAudioOutputтеперь может принимать значениеAudioElementMixдля получения звука всех собеседников в одном треке - Метод
OKCallsSDK.muteParticipantтеперь может выключать камеры в режиме конференции
v2.1.15
🐛 Исправления
- Исправлена обработка кандидатов при звонке 1-1
🔧 Изменения
- Параметр
directAudioOutputтеперь может принимать значенияAudioElementиAudioContext
v2.1.14
🐛 Исправления
- Исправлен некорректный детект сторонних браузеров на iOS
🔧 Изменения
- При попытке позвонить или добавить в звонок несуществующего пользователя, теперь вернется ошибка
v2.1.13
✨ Новые возможности
- Добавлен колбэк
onLocalStatus, показывающий состояние локального соединения - Добавлен параметр
forceRelayPolicyи методOKCallsSDK.forceRelayPolicyдля скрытия IP адреса в кандидатах при звонке 1:1 - Добавлен колбэк
onStatistics, возвращающий техническую информацию по звонку - Добавлен метод
OKCallsSDK.setLocalResolutionдля изменения размеров локального видео во время звонка
🐛 Исправления
- Исправлено долгое подключение при звонке 1:1 с заблокированным UDP
🔧 Изменения
- Запрос
OKCallsSDK.browser.getUserAudioс включеннымallowMissingMicбольше не запрашивает камеру - Понижен FPS скриншаринга по умолчанию до 10
v2.1.12
🐛 Исправления
- Исправлена проблема присоединения к звонку в Firefox
🔧 Изменения
- Методы
OKCallsSDK.browser.getUserVideoиOKCallsSDK.browser.getUserAudioпринимаютdeviceIdдля получения стрима с нужного устройства
v2.1.11
🐛 Исправления
- Исправлена ошибка применения серверных настроек звонка
- Исправления и улучшения
v2.1.10
🐛 Исправления
- Исправлена ошибка добавления кандидата при звонке 1-1
- Исправлена ошибка применения серверных настроек звонка
v2.1.9
✨ Новые возможности
- Добавлен параметр
domain - Добавлен метод
OKCallsSDK.setVolume
v2.1.8
🐛 Исправления
- Исправлено отображение черного квадрата вместо видео в Opera
v2.1.7
✨ Новые возможности
- Добавлен параметр
videoFrameRate - Добавлен параметр
directAudioOutput - Добавлен метод
OKCallsSDK.browser.getAudioContext
🐛 Исправления
- Исправлен детектор громкости собеседников
v2.1.6
✨ Новые возможности
- Добавлен метод
OKCallsSDK.changeParticipantStateи колбэкonRemoteParticipantState
🐛 Исправления
- Исправлен звонок без микрофона
🔧 Изменения
- Метод
OKCallsSDK.customDataтеперь может отправлять сообщения всем участникам звонка
v2.1.5
✨ Новые возможности
- Добавлен метод
OKCallsSDK.updateDisplayLayout
v2.1.4
✨ Новые возможности
- Добавлен метод
OKCallsSDK.removeJoinLink - Добавлены колбэки
onNetworkStatusиonDebugMessage
🐛 Исправления
- Исправлена проблема пропадания треков в Safari при переподключении собеселника к звонку
- Исправлен переход собеседников в реконнект при добавлении пользователя в звонок в Safari
- Исправлено включение микрофона в Firefox Mobile
- Исправлен детектор громкости микрофона в Firefox Windows
🔧 Изменения
- Колбэки
onLocalVolumeиonVolumesDetectedтеперь возвращают значения громкости без сглаживания
v2.1.3
🐛 Исправления
- Исправлен переход в состояние переподключения при добавлении собеседника в звонок
- Исправлено включение/выключение микрофона
- Исправлена проблема CSP
🔧 Изменения
- Увеличен FPS трансляции экрана
v2.1.2
🐛 Исправления
- Исправлено получение текущего пользователя
🔧 Изменения
onRemoteRemovedтеперь вызывается без задержки
v2.1.1
✨ Новые возможности
- Возможность создать звонок со ссылкой и сразу подключиться к нему методом
OKCallsSDK.call
🔧 Изменения
- Библиотека теперь собирается в ES5 для лучшей совместимости
- Улучшены переподключения к звонку
v2.0.7
🐛 Исправления
- Исправлен двойной вызов
onRemoteRemoved
v2.0.6
🐛 Исправления
- Исправлена ошибка версии 2.0.5 при перезаходе пользователя в звонок
v2.0.5
✨ Новые возможности
- Добавлен параметр
apiEnvдля звонков через разные окружения
🐛 Исправления
- Исправлена ошибка при отключении камеры или микрофона во время звонка
🔧 Изменения
- Улучшена стабильность соединений и реконнектов
- Изменился колбэк
onConversation- теперь возвращает текущего пользователяuserId:ExternalId` - Улучшено качество видео с камеры
- Больше не поддерживаются браузеры без поддержки
RTCRtpSender.prototype.replaceTrack
v2.0.3
✨ Новые возможности
- Добавлен метод
OKCallsSDK.chatHistoryдля получения истории сообщений чата - Добавлены методы записи и трансляции звонка
- Добавлены параметр
allowMissingMicи колбэкonPermissionsErrorдля разрешения звонка без микрофона
🐛 Исправления
- Исправлено некорректное завершение вызова при принятии пуша на двух вкладках в браузере
- Исправлена проблема соединения при заблокированном UDP
🔧 Изменения
- Улучшен алгоритм переподключения PeerConnection
- Публикация в NPM
v1.2.2
🐛 Исправления
- Исправлено: отклоняем push если есть активный звонок
🔧 Изменения
- Не удаляем видео трек при отключении камеры собеседника
- Метод для отправки сообщений в чат
OKCallsSDK.chatMessageи параметрonChatMessage - Метод для отправки внутренних сообщений
OKCallsSDK.customDataи параметрonCustomData
v1.2.1
✨ Новые возможности
- Добавлен метод
OKCallsSDK.muteParticipant - Добавлена возможность присоединения к звонку по ссылке:
- Добавлены методы
OKCallsSDK.joinCallByLink,OKCallsSDK.createJoinLink,OKCallsSDK.getAnonymTokenByLink - Добавлен необязательный параметр инициализации
anonymToken
🐛 Исправления
- Исправлено: не освобождалась камера при завершении звонка
- Исправлено: Firefox ругался на большое количество STUN серверов
🔧 Изменения
- Изменились аргументы метода
OKCallsSDK.startConversation - Внешние ID пользователей теперь являются объектами
ExternalId: - Изменились аргументы методов
OKCallsSDK.call,OKCallsSDK.addParticipant,OKCallsSDK.removeParticipant,OKCallsSDK.changePriorities - Изменились аргументы колбэков
onRemoteStream,onRemoteMediaSettings,onParticipantStatus,onRemoteRemoved,onSpeakerChanged,onVolumesDetected
v1.1.2
🐛 Исправления
- Исправлено обновление списка устройств при получении браузерных разрешений
v1.1.1
⚠️ Важные изменения
- ⚠️ Breaking:
onHangupтеперь возвращает сообщение типаHangupReason - ⚠️ Breaking: Методы начала звонка при ошибке возвращают
HangupReason - ⚠️ Breaking: При отключении камеры собеседником из его стрима удаляется трек, добавляется обратно при включении
✨ Новые возможности
- Добавлен колбэк
onTokenExpired - Добавлен колбэк
onLocalVolume
🔧 Изменения
- Увеличены таймауты ожидания сообщений сигналинга
- Изменены параметры по-умолчанию в детекторе говорящего
- Методы переключения и получения устройств возвращают ошибку при неудаче
- Ретраи API вызовов
v1.0.27
🐛 Исправления
- Исправлена ошибка в
onVolumesDetected
🔧 Изменения
- Метод
OKCallsSDK.authorizeтеперь может принимать параметромauthTokenдля авторизации - Некоторые методы из
OKCallsSDK.browserтеперь доступны до инициализации - При завершении шаринга экрана теперь восстанавливается состояние камеры, которое было до шаринга
v1.0.26
✨ Новые возможности
- Добавлен параметр
onVolumesDetectedс уровнями громкости собеседников
🐛 Исправления
- Исправлена проблема с маппингом внешних ID на внутренние
🔧 Изменения
- Шаринг экрана теперь доступен даже если не подключена камера
- Корректное завершение вызова при обновлении страницы в браузере
v1.0.25
🔧 Изменения
- Улучшена стабильность определения состояний
v1.0.24
🐛 Исправления
- Исправлена ситуация, когда данные пришли раньше, чем информация о собеседнике
🔧 Изменения
- Выключаем камеру при остановке шаринга экрана
v1.0.23
🐛 Исправления
- Исправлены неверные статусы собеседников при подключении к звонку
v1.0.22
🐛 Исправления
- Исправлено двойное включение камеры при завершении шаринга экрана
- Исправлено получение пропущенных состояний при реконнекте сигналинга
- Исправлены статусы собеседников при принятии входящего звонка
- Исправлена слишком частая отправка статистики в сигналинг
v1.0.21
✨ Новые возможности
- Добавлены методы
OKCallsSDK.browser.getOutputиOKCallsSDK.browser.getSavedOutput - Добавлен параметр инициализации
voiceParams.speakerLevelMultiplier
🔧 Изменения
- Используем big-integer для вычисления подписи звонка
v1.0.20
✨ Новые возможности
- Добавлен колбэк
onFingerprintChange- вызывается при изменении подписи звонка 1:1
🐛 Исправления
- Исправлены методы
OKCallsSDK.changeDeviceиOKCallsSDK.captureScreen- теперь промис реджектится при неудаче - Возможно, исправлена проблема с недостающими собеседниками в групповом звонке
v1.0.19
✨ Новые возможности
- Добавлен параметр
immortalв методOKCallsSDK.startConversation
v1.0.18
🐛 Исправления
- Исправлена команда
OKCallsSDK.changePriorities
🔧 Изменения
- Старый Microsoft Edge исключён из поддерживаемых браузеров
v1.0.17
🐛 Исправления
- Исправлен callback
onSpeakerChanged. Теперь возвращает правильный ID пользователя
🔧 Изменения
- WebRTC adapter обновлен до версии 7.5.1
v1.0.16
🔧 Изменения
- Метод
OKCallsSDK.callтеперь может принимать массив ID пользователей для создания группового звонка - Метод
OKCallsSDK.processPushтеперь принимает только ID звонка - Метод
OKCallsSDK.startConversationтеперь возвращает только ID звонка
v1.0.15
🐛 Исправления
- Исправлена ошибка авторизации методом
OKCallsSDK.authorize()`
v1.0.14
✨ Новые возможности
- Добавлен метод
OKCallsSDK.startConversation()` для начала звонка без подключения пользователей - В параметры добавлен колбэк
onDeviceChange, вызывается при подключении/отключении камеры или микрофона - Добавлен метод
OKCallsSDK.browser.isScreenCapturingSupported()` для определения, доступен ли шаринг экрана в браузере - Добавлен метод
OKCallsSDK.captureScreen(true/false)` для шаринга экрана
🔧 Изменения
- Изменились параметры метода
OKCallsSDK.joinCall()` - Больше не нужно передавать appId в параметрах инициализации