Releases: daily-co/react-native-daily-js
0.63.0
Features
- Added support for update the receive settings for custom tracks.
- Created a new event ,
dialin-ready
, which is triggered when the sip dialin worker is ready to accept call.
0.62.0
Features
- Introduced a new method,
updateScreenShare
, enabling the muting and unmuting of screen audio and video during screen sharing. - Introduced a new method,
localScreenAudio
, for checking if local audio screen sharing is enabled. - Introduced a new method,
localScreenVideo
, for checking if local video screen sharing is enabled.
Bugfixes
- Fixed issue on React Native Android that could prevent the app from doing a proper cleanup when it was destroyed.
Other improvements
- Leave the meeting on React Native Android if the app is destroyed.
- When
enforce_unique_user_ids
is enabled, a rejoining user is not tested formax_participant
checks.
0.61.0
Features
- Introduced support for adaptive bitrate layers. This will improve the visual call quality by utilizing an adaptive bitrate and resolution strategy for the topmost SFU layer.
Bugfixes
- Making it explicit that input settings are not supported in React Native.
- Preventing error on join if audio level is started before starting the camera.
- Fixed cleanup of internals on
destroy()
resulting in memory bloat for subsequent instances.
Other improvements
- Updated dependencies to remove security vulnerabilities.
- Updated what information is sent to Sentry when clients have networking issues.
0.60.0
Features
-
Added support for the Audio Level APIs. (Docs forthcoming. See daily-js docs for now...)
New methods include:startLocalAudioLevelObserver()
stopLocalAudioLevelObserver()
getLocalAudioLevel()
startRemoteParticipantsAudioLevelObserver()
stopRemoteParticipantsAudioLevelObserver()
getRemoteParticipantsAudioLevel()
New events include:
local-audio-level
remote-participants-audio-level
Bugfixes
- Fixed an issue with adaptive bitrate where, in certain situation, the resolution scale was not increasing.
- Fixed an issue with logs missing client information and reporting the daily-js version as 0.0.0.
- Fixed a bug where if the call machine bundle file initially fails to load, but then succeeds, you are still left in a broken state
Other improvements
- Added a new field,
cpuUsageBasedOnTargetDecode
, to thecpuInboundVideoStats
included in the response ofgetCpuLoadStats()
- Updated dependencies to remove security vulnerabilities.
- Downgraded the multiple call object console error to a console warning.
- Re-introduced official support for providing a
mediaStream
instartScreenShare()
. Initially, this was deprecated to discourage use of screenshares for the purpose of custom tracks. Note that for most use cases, we still recommend usingstartScreenShare()
without amediaStream
and the custom tracks API for sharing additional tracks.
0.59.0
Features
- Added support for targeting android API version 34.
⚠️ This version now requires"@daily-co/react-native-webrtc": "^118.0.3-daily.1"
.
Bugfixes
- Fixed a crash in
updateInputSettings()
when called afterload()
but before an initializing call tostartCamera()
,preAuth()
, orjoin()
.
Other improvements
- Updated TypeScript declaration file to make it so that event objects in event handlers don't erroneously appear to customers to be possibly
undefined
. - Added ability to detect and log autoplay errors.
0.58.0
Features
- Added ability to set a name on dialOut participants. See
displayName
in `startDialOut() docs
Other improvements
-
Implemented a new
forceDiscardTrack
option forsetLocalAudio(false)
. This option will enforce daily to discard the track along with muting the mic. Doing so will have the effect of turning off mic-in-use indicators. While this sounds ideal, this flag should be used cautiously. By default, we do not discard the microphone track because unmuting would require re-fetching the track and introduce a delay that likely clips the start of someone talking. To use, simply callsetLocalAudio
like so:setLocalAudio(false, { forceDiscardTrack: true })
-
Updated audio settings in SFU mode to enable Opus FEC (forward error correction) by default.
-
Removed unnecessary messaging and stored set of objects related to registering/de-registering daily event callbacks.
-
Added includeRawResponse field to startTranscription() options. If true, all incoming transcription-message events will include a new rawResponse field with Deepgram's raw data. See docs here
0.57.0
Improvements
- For HIPAA domains, allow
user_id
s to appear in logs and the/meetings
REST API endpoint, if and only if they’re UUIDs.
0.56.0
Features
- Introduced support for multiple outbound calls from a single room.
- Developed a new method,
sendDTMF
, for transmitting DTMF signals.
Bugfixes
- Fixed the types returned from
testPeerToPeerCallQuality
to align with the newtestCallQuality
while making sure the now-deprecatedtestConnectionQuality
types remain unchanged and backwards compatible. - Fixed an issue where certain logs that weren't supposed to log when
terse_logging
is turned on were still logging. - Fixed an issue where
raw-tracks
was not closing recording after maxDuration. - Resolved instances leading to "Cannot read properties of null (reading 'typeName').”
- Updated
localAudio()
/localVideo()
to use supported track states.
Other improvements
- Added more logs to the set of logs that are omitted when terse logging is on.
0.55.2
Patch Fix
- Updated daily-js dependency to pull in daily-js patch release (0.57.2)
Features
- Introduced a new
local-screen-share-canceled
event to indicate when a user cancels out of the browser’s screen sharing dialog (only works on Chrome) - Added
availableOutgoingBitrate
togetNetworkStats()
and metrics ⚠️ DeprecatedtestConnectionQuality()
, renaming it totestPeerToPeerCallQuality()
in preparation for a new and preferred pre-call test function,testCallQuality()
. (testCallQuality()
is in pre-beta and not ready for production use.)
Bugfixes
- Fixed logging of duplicate call object detection to ensure it reaches the logging endpoint.
updateWaitingParticipants()
failures will no longer error out the meeting- Corrected TypeScript definition for
layout.participants
in streaming / recording - Fixed breakage in ability to run apps from file: URLs
- Corrected TypeScript definition for events to include
local-audio-level
andremote-participants-audio-level
events.
Other improvements
- Fixed npm packaging to correctly show the open source license (bsd-2)
- Updated “Something is amiss” fatal errors to be more informative
- Updated generic “Error during call” fatal errors to provide more informative messages about what actually went wrong
- Added estimated bandwidth capacity, bandwidth measurement, and averages along with other underlying improvements to the
testPeerToPeerCallQuality()
pre-call function. - Added support for providing custom background images to the video processor via an
ArrayBuffer
0.54.0
Features
- Added support for the new
auto_start_transcription
meeting token setting. - Added a
transcription-message
event, simplifying receiving transcriptions. Previously, the only way would be to listen forapp-message
events from the sender'transcription'
(this approach still works).
Other improvements
- Added logging to allow better tracking of various join time actions.
⚠️ Breaking change: remove support for thedetect_language
transcription option, as it's not supported for real-time transcriptions. This change will require you to remove detect_language to use this version of daily-js.⚠️ Breaking change: remove daily-js-provided transcription settings defaults, instead relying on the transcription service’s defaults. This allows the users to set only the settings they need without interference from our default settings. This is useful, for example, in the case of the nova-2 model, where a user should only need to specify the model without having to specify anything else. Since this change may alter your exact transcription settings, please double-check transcription behavior when migrating to this version of daily-js.- Add support for
punctuate
andendpointing
transcription parameters. Also adding support for anextra
object which can be used to specify additional transcription properties. - Silence annoying console errors when you
leave()
ordestroy()
your call object before youjoin()
.