opentok-react-native
Advanced tools
Changelog
2.27.2 (March 2024)
videoSource
setting set to "screen"
) failed if the app did not have camera access permission. This version fixes the issue, so that screen-sharing can proceed without camera access permission.Note: In Android 6.0 (API Level 23
) and higher, the OpenTok React Native SDK automatically adds the camera access permission. However, an app or user can disable it independently of the SDK.
Changelog
2.27.1 (March 2024)
PermissionsAndroid.PERMISSIONS.CAMERA
or PermissionsAndroid.PERMISSIONS.RECORD_AUDIO
were not true
. This version fixes that, by having audio-only or video-only publishers skip the PermissionsAndroid.PERMISSIONS.CAMERA
or PermissionsAndroid.PERMISSIONS.RECORD_AUDIO
check if the videoTrack
or audioTrack
property of the properties
prop of the OTPublisher component is set to false
. You can set these props to false
based on these permissions:import { PermissionsAndroid } from 'react-native';
// ...
<OTPublisher
properties={{
videoTrack={{(Platform.OS === 'ios' || PermissionsAndroid.CAMERA)}}
}}
/>
Note: In Android 6.0 (API Level 23
) and higher, the OpenTok React Native SDK automatically adds these permissions. However, an app or user can disable them independently of the SDK.
[Fix]: On Android, setting the videoTrack
property of the properties
prop of the OTPublisher component false
resulted in the app to crash. This version fixes the issue (issue #652).
[Fix]: Fixes some TypeScript definitions (issue #725).
Changelog
2.27.0 (March 2024)
[Update]: Update OpenTok Android SDK and OpenTok iOS SDK to version 2.27.0.
This version adds support for the VP9 codec in relayed sessions. For more information, see the video codecs documentation.
This version adds support for adaptive media routing. For more information, see the adaptive media routing documentation.
For more details, see the release notes for the OpenTok iOS and Android SDKs.
[Update]: This version adds support for end-to-end encryption. The OTSession
component includes a new encryptionSecret
prop, which you can use to set and change the encryption secret used by the local client.
[Update]: This version adds a new OTPublisher audioFallback
option, which supports both subscriber and publisher audio fallback. The audioFallback.subscriber
property replaces the OTPublisher audioFallbackEnabled
option, which is deprecated.
The OTPublisher component has new callback functions for publisher audio fallback-related events: videoDisabled()
, videoEnabled()
, videoDisableWarning()
, and videoDisableWarningLifted()
. See the audio fallback developer guide.
[Update]: The OTPublisher.setVideoTransformer()
method now supports the background image replacement transformer in Android (as well as iOS). And the custom radius option for the background blur filter is now supported in Android (as well as iOS).
[Update]: The axios package is updated. This updates a vulnerable version of in the follow-redirects dependency.
[Fix]: This version fixes some issues in the TypeScript definitions.
[Fix]: This version fixes the following events, which were not being dispatched:
[Fix]: This version fixes the OTSession.forceMuteAll()
method in iOS.
Changelog
2.26.1 (October 2023)
[Update]: The new OTPublisher.setVideoTransformers()
method lets you set (and clear)
video transformers, such as a background blur for a publisher (issues #631 and #682).
For more info, see the docs: OTPublisher.
[Update]: Live Captions API enhancements (issue #643)
The new OTPublisher.publishCaptions option lets you enable and disable captions for a published stream (if captions are enabled for the session). For more info, see the docs:OTPublisher.
The new OTSubscriber.subscribeToCaptions option lets you turn captions on and off for a subscriber (if captions are enabled for the session and the publisher is publishing captions). For more info, see the docs: OTSubscriber.
The new OTSubscriber captionReceived event is dispatched when a subscriber receives a caption. For more info, see the docs: OTSubscriber.
For more information, see the Live Captions developer guide.
[Fix]: Fixes an issue in which applications could not connect to a session when
the proxyUrl
option for OTSession was set. - issue #645
[Fix]: Fixes an issue a stream is not destroyed immediately after unmounting an OTSession component or when the OTSession.disconnect()
method is called. - issues #685 and #686
Changelog
2.26.0 (October 2023)
[Update]: Update OpenTok Android SDK and OpenTok iOS SDK to version 2.26.1.
See the release notes for the OpenTok ioS SDK and the Android SDK.
For Android, this version of the library requires a mininum Android API level of 23.
There are changes to iOS 14 networking affecting relayed sessions — see the list of known issues in the OpenTok iOS SDK release notes.
Changelog
2.25.4 (October 2023)
Changelog
2.25.3 (September 2023)
[Update]: Add API to implement functionality missing from the OpenTok Android and iOS SDKs:
OTSession.getCapabilities()
methodreportIssue()
methods and rtcStatsReport
events added to OTPublisher and OTSubscriberscalableScreenshare
option (in the OTPublisher properties)audioNetworkStats
and videoNetworkStats
eventsOTPublisher.getRtcStatsReport()
method and OTPublisher rtcStatsReport
eventresolution
(for FHD video support)audioVolume
property.muteForce
event and OTSession muteForced
event.For more info, see the docs:
Changelog
2.25.2 (July 5 2023)
Changelog
2.25.1 (June 27 2023)
Changelog
2.25.0 (May 17 2023)
[Update]: Update OpenTok Android SDK and OpenTok iOS SDK to version 2.25.1.
Note that with this version, we are pinning the major and minor release versions (2.25) to match the corresponding versions in the OpenTok Android and iOS SDKs.
For iOS, note that this version supports iOS 13+, removes support for FAT binaries and drops 32-bit support. The OpenTok iOS SDK is now available as the OTXCFramework Pod file. (The OpenTok pod file was for FAT binaries.)
See the release notes for the OpenTok ioS SDK and the Android SDK.
[Fix]: Fixes an issue in which applications could not connect to a session when
the proxyUrl
option for OTSession was set. - issue #645