Skip to content

Latest commit

 

History

History
357 lines (219 loc) · 20 KB

CHANGELOG.md

File metadata and controls

357 lines (219 loc) · 20 KB

2.28.3 (October 2024)

  • [Update]: This version updates the Vonage Video Android SDK to version 2.28.3 and the Vonage Video iOS SDK to version 2.28.2. See the Android SDK release notes and the iOS SDK release notes.

    This version updates sourceCompatibility and targetCompatibility to Java 17 in the Android build.gradle file. When using this version, you will need to specify sourceCompatibility and targetCompatibility in the Android build.gradle file:

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_17
        targetCompatibility JavaVersion.VERSION_17
    }
    

2.28.2 (September 2024)

  • [Update]: This version updates the Vonage Video Android and iOS SDK to version 2.28.1. See the Android SDK release notes and the iOS SDK release notes.

  • [Fix]: Updates react, react-native modules (and axios dependency), and replaces uuid with react-native-uuid. The fixes issue #769. And it prevents an issue that would result from using an upgraded version of uuid.

  • [Fix]: Fixes an error that resulted if you set an OTPublisher event handler for streamCreated without setting one for streamDestroyed.

2.28.1 (September 2024)

  • [Update]: The new OTPublisher.setAudioTransformers() method lets you set (and clear) audio transformers. One transformer, the noise suppression filter, is supported. To use this, call the setAudioTransformers() method of the OTPublisher ref, and pass in an array with one object that has a name property set to 'NoiseSuppression' and a properties property set to an empty string:

    publisherRef.setAudioTransformers([{
      name: 'NoiseSuppression',
      properties: '',
    }]);

    Important: To use this method, you must add the Vonage Media Transformer library to your project, separately from the OpenTok React Native SDK. See Vonage Media Library integration.

  • [Update]: This version adds support for enabling single peer connection for the client, by setting the enableSinglePeerConnection property of the options prop of the OTSession component to true. For more information see this documentation.

2.28.0 (July 2024)

  • [Update]: This version updates the Vonage Video Android SDK and iOS SDK to version 2.28.0.

  • [Update]: The Vonage Video iOS and Android SDKs loaded by this version are reduced in size by removing Vonage Media Library code.

    Important: In order to use the OTPublisher.setVideoTransformers() method (which uses the Vonage Media Library), you must add the Vonage Media Library separately from the Vonage Video React Native SDK. For details, see Vonage Media Library integration.

  • [Update]: For Android, this version of the library requires a minimum Android API level of 24.

  • [Update]: This version adds support for reading the Certificate Authority certificates in the trust store of the host so that it can use them as valid root certificates when connecting to OpenTok services.

  • [Update]: This version adds support for Apple's requirement of the signature for the SDK.

  • [Update]: This version updates a vulnerable Node module (braces).

2.27.6 (June 2024)

  • [Fix]: This version fixes some iOS crashes that were introduced in version 2.27.5. Fixes issue #757.

2.27.5 (June 2024)

  • [Fix]: This version fixes the OTSubscriber captionReceived event handler. It also fixes the OTPublisher publishCaptions option in iOS.

  • [Fix]: Calling OTSubscriber.getRtcStatsReport() method was resulting in an error. This version fixes the issue.

  • [Fix]: Setting the enableStereoOutput option of the OTSession component was causing apps to crash in Android. The custom audio driver (used in Android when the enableStereoOutput option is set) is broken. This version disables the enableStereoOutput option in Android.

  • [Fix] The subscribeToSelf prop of the OTSubscriber component was not working. This version fixes the issue (issue #612).

2.27.4 (April 2024)

  • [Update]: This version updates the Vonage Video iOS SDK version to 2.27.3. This version adds a privacy manifest required by Apple's App store. Issue #737.

  • [Update]: The installation instructions in the README file are updated, with new details on required Android permissions (such as android.permission.BLUETOOTH).

2.26.2 (April 2024)

2.25.5 (April 2024)

2.27.3 (March 2024)

2.27.2 (March 2024)

  • [Fix]: On Android, a screen-sharing OTPublisher (one with the 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.

  • [Update]: Updates react-native and axios packages to fix vulnerable dependencies.

2.27.1 (March 2024)

  • [Fix]: On Android, OTPublisher components failed with an error when either 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).

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:

    • OTPublisher audioNetworkStats
    • OTPublisher videoNetworkStats
    • OTPublisher muteForced
    • OTSession muteForced
  • [Fix]: This version fixes the OTSession.forceMuteAll() method in iOS.

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

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.

2.25.4 (October 2023)

  • [Fix]: Fixes TypeScript definitions - issue #690.

2.25.3 (September 2023)

  • [Update]: Add API to implement functionality missing from the OpenTok Android and iOS SDKs:

    • OTSession.getCapabilities() method
    • reportIssue() methods and rtcStatsReport events added to OTPublisher and OTSubscriber
    • OTPublisher scalableScreenshare option (in the OTPublisher properties)
    • OTPublisher audioNetworkStats and videoNetworkStats events
    • OTPublisher.getRtcStatsReport() method and OTPublisher rtcStatsReport event
    • "1920x1080" option for OTPublisher resolution (for FHD video support)
    • OTSubscriber audioVolume property.
    • OT.getSupportedCodecs() method.
    • OT.forceMuteAll(), OT.forceMuteStream(), OT.disableForceMute() methods. OTPublisher muteForce event and OTSession muteForced event.

For more info, see the docs:

  • [Fix]: Fix android app crash due to permission missing.
  • [Fix]: Fix OTSubscriber audioVolume and other properties not working -- issue #694

2.25.2 (July 5 2023)

  • [Fix]: Fix crash on iOS when publishing a screen-sharing stream.

2.25.1 (June 27 2023)

  • [Fix]: Fix camera lifecycle on Android. - issue #645

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

0.21.4 (April 12 2023)

  • [Update]: Revert OpenTok iOS SDK back 2.23.1. There are issues with linked libraries in the OpenTok iOS SDK v2.24.0+ that cause issues when used in React Native. We are working on a bug fix.

0.21.3 (March 2023)

  • [Update]: iOS SDK to 2.24.2 and Android to 2.24.2 - issue #629

0.21.2 (February 14, 2023)

  • [Update]: iOS SDK to 2.23.1 and Android to 2.23.1
  • [Fix]: Fix video freeze issue in Android 13 simulator (API level 33) - issue #628

0.21.1 (Oct 14, 2022)

  • [Update]: iOS SDK to 2.23.1 and Android to 2.23.1
  • [Update]: min target for iOS is now 12.0

0.21.0 (June 14, 2022)

  • [Update]: Add DTX Option for Publisher
  • [Update]: Android Native SDK to 2.22.3 and iOS to 2.22.3

0.20.3 (May 18, 2022)

  • [Fix]: Updates from DependatBot

0.20.2 (May 16, 2022)

  • [Update]: Readme file update with Bintray instructions
  • [Update]: Android Native SDK to 2.21.5 and iOS to 2.21.3
  • [Fix]: Typescrit types fixed audioLevel

0.20.1 (Jan 28, 2022)

  • [Update]: Add Content Hint API on the OTPublisher object
  • [Update]: Add timestamp property on the audioNetworkStats and videoNetworkStats
  • [Fix]: Bump opentok-react-native version to

0.20.0 (Jan 26, 2022)

  • [Update]: update SDKs iOS to 2.21.3 and Android to 2.21.4

0.19.0 (Oct 11, 2021)

  • [Update]: update SDKs Android to 2.20.2
  • [Update]: added IceConfig options in the Session Options object
  • [Fix]: added missing typings in @types/index.d.ts
  • [Fix]: fix crash in OTSubscriberLayout #525

0.18.0 (Jun 24, 2021)

  • [Update]: update SDKs iOS to 2.20.0 and Android to 2.20.1
  • [Fix]: fix crash in OTPublisherLayout when sessionId is null. Fix: #462 (comment)
  • [Fix]: Downgrade uuidv4 module to 3.4.0 due to UUID#375
  • [Fix]: OTCustomAudioDrive added file in project.pbxproj
  • [Fix]: Update Github Actions

0.17.2 (May 27, 2021)

  • [Fix]: Fixed incorrect audio bitrate sanitization #473
  • [Fix]: Fix audio crash on teardown #495

0.17.1 (May 25, 2021)

  • [Fix]: Fixed @opentok/types (merged from PR505)
  • [Fix]: Fixed double listeners #271 (merged from PR307)

0.17.0 (Apr 29, 2021)

  • [Feature]: Updated to react-native 0.64.0
  • [Fix]: Updated npm dependencies
  • [Fix]: Fixed react-native 0.64.0 nativeEvents.listeners() crash PR493

0.16.0 (Apr 19, 2021)

  • [Feature]: Added support for stereo output on iOS and Android using CustomAudioDevice

0.15.0 (Jan 26, 2021)

  • [Feature]: OTSubscriber: added preferredResolution and preferredFrameRate properties.
  • [Fix]: Fixed android app crash with API level 29 (merged from PR456). Adheres to: #455
  • iOS SDK updated to 2.18.1
  • Android SDK updated to 2.18.1
  • Added typescript support

0.14.0 (May 22, 2020)

  • [Feature]: Update of iOS SDK to 2.17.0 and Android SDK to 2.17.1
  • OTSessionManager.java#248 mSubscriber.destroy() removed as from 2.17.x, resources will be automatically released by the garbage collector.

0.13.0 (Mar 23, 2020)

  • [Feature]: Add Session Options support, both iOS and Android. Note: iceConfig option is not currently supported
  • [Feature]: Update of iOS SDK to 2.16.5 and Android SDK to 2.16.5

0.12.2 (Dec 4, 2019)

  • [Fix]: Prevent to unpublish on disconnected sessions (merged from PR356). Adheres to: #337
  • [Feature]: Add podspec for autolinking support in RN 0.6x (merged from PR358). Adheres to: #332
  • Android SDK updated to 2.16.3

0.12.1 (Aug 30, 2019)

  • [Fix]: Fix an error when updating streamId for subscriber component (merged from PR326). Adheres to: #315, #324
  • [Fix]: Use Context API for passing props down the component tree (merged from PR333). Adheres to: #329, #335
  • [Fix]: Fix Attempted to register RCTBridgeModule class OTSessionManager issue after opening/reloading app (merged from PR336).
  • [Fix]: Fix reload in iOS (merged from PR339).
  • [Fix]: Fix security vulnerabilities on dependencies (merged from PR339).

0.12.0 (Aug 5, 2019)

  • [Feature]: Add Multi-session support (merged from PR311). Adheres to: #218, #271

0.11.2 (July 2, 2019)

  • [Feature]: Enable OTSubscriber children custom render (merged from PR306). Adheres to: #289, #174
  • iOS SDK updated to 2.16.1
  • Android SDK updated to 2.16.1

0.x.x (todo)