> ## Documentation Index
> Fetch the complete documentation index at: https://docs.daily.co/llms.txt
> Use this file to discover all available pages before exploring further.

# May 31, 2025

> The latest updates to Daily's real-time audio and video APIs.

## Overview

Mobile SDKs now support canReceive permissions and improved connection reliability. The Python SDK gets powerful custom audio track capabilities. Meeting move aware recording is enabled by default, we've added call transfer webhooks, and transcription saves are now more resilient.

Complete release history for our client SDKs is available in our Github release notes:

* [daily-js](https://github.com/daily-co/daily-js/releases)
* [react-native-daily-js](https://github.com/daily-co/react-native-daily-js/releases)
* [daily-react](https://github.com/daily-co/daily-react/releases)
* [daily-ios](https://github.com/daily-co/daily-client-ios/blob/main/CHANGELOG.md)
* [daily-android](https://github.com/daily-co/daily-client-android/blob/main/CHANGELOG.md)
* [daily-python](https://github.com/daily-co/daily-python/blob/main/CHANGELOG.md)

***

## daily-js

[View full release notes →](https://github.com/daily-co/daily-js/releases)

### 0.79.0

* Improved Krisp error handling.
* Removed a client-side limit on `max_live_streams`.
* Disabled Redux DevTools in production builds.

***

## react-native-daily-js

[View full release notes →](https://github.com/daily-co/react-native-daily-js/releases)

### 0.76.0

* Removed a client-side limit on `max_live_streams`.
* Disabled Redux DevTools in production builds.

***

## daily-android

[View full release notes →](https://github.com/daily-co/daily-client-android/blob/main/CHANGELOG.md)

### 0.31.0

* Added support for the `canReceive` permission to manage which media tracks remote participants can receive.
* Improved connection reliability by retrying signaling channel connections and using an alternate WebSocket URI format.
* Fixed a bug where custom ICE server configurations were not being applied.

***

## daily-ios

[View full release notes →](https://github.com/daily-co/daily-client-ios/blob/main/CHANGELOG.md)

### 0.31.0

* Added support for the `canReceive` permission to manage which media tracks remote participants can receive.
* Improved connection reliability by retrying signaling channel connections and using an alternate WebSocket URI format.

***

## daily-python

[View full release notes →](https://github.com/daily-co/daily-python/blob/main/CHANGELOG.md)

### 0.19.1

* Fixed an audio renderer issue that caused garbled audio with remote stereo tracks.
* Added handling for meeting session ID changes that occur mid-call.

### 0.19.0

* Introduced `CustomAudioTrack` for use as an additional custom track or as the main microphone input.
* Added support for `displayName`, `userId`, `video`, `codecs`, and `permissions` in `start_dialout()`.
* Added `sample_rate` and `callback_interval_ms` arguments to `set_audio_renderer()` for more control over audio data.
* Updated `add_custom_audio_track()` and `update_custom_audio_track()` to accept a `CustomAudioTrack` instance.
* Switched to using system-level root certificates on all platforms.
* Fixed a bug where blocking virtual microphones could fail to send audio.

### 0.18.2

* Fixed an installation issue on macOS versions older than 15.0.
* Corrected type hints for `remove_custom_track()`.

### 0.18.1

* Improved connection reliability by retrying signaling channel connections and using an alternate WebSocket URI format.
* Fixed a bug with virtual microphone completion callbacks.

***

## Media Services

### Recording

* Meeting move aware recording and streaming is now enabled by default. This feature [(previously in pre-beta)](/changelog/062-2024-11-25#recording-and-streaming-recovery-during-meeting-moves-pre-beta) automatically resumes recordings and live streams when meetings are transferred between servers during maintenance or failovers, eliminating gaps in recorded content.

### Telephony

* Introduced new webhooks to track call transfer status: `calltransfer.triggered`, `calltransfer.initiated`, `calltransfer.answered`, and `calltransfer.complete`.
* Added support for passing custom SIP headers during pinless dial-in, which are now available in the `sipHeaders` object in the webhook payload.
* Added `canReceive` permission controls for dial-in and dial-out participants via the `startDialOut()` API and room properties.
* On-demand SIP dial-out endpoints are now the default behavior, improving resource efficiency.

### Transcription

* Transcripts are now saved to storage every two minutes by default, improving data resilience.
* The `/transcript` and `/transcripts` API endpoints now include `roomName`, `participantMinutes`, and `isVttAvailable` for more detailed information.
* Fixed a race condition that could cause duplicate transcription messages when participant settings were updated rapidly.
