
A comprehensive media management layer built on Dailyâs React Native SDK.
While SmallWebRTCTransport enables lightweight peer-to-peer communication without relying on Dailyâs infrastructure,
the Daily Media Manager leverages Dailyâs mature SDK to deliver enterprise-grade device management and media handling.
Key Features
- Complete Device Management: Full control over cameras, microphones, and speakers with automatic device enumeration and selection
- Device Error Handling: Comprehensive error handling for device permissions, constraints, and availability issues
- Media Control: Enable/disable microphone, camera, and screen sharing with simple API calls
- Track Management: Access to WebRTC media tracks for advanced media processing
- Real-time Updates: Automatic callbacks for device changes and track events
Installation
Install @pipecat-ai/react-native-daily-media-manager along with its peer dependencies:
npm i @pipecat-ai/react-native-daily-media-manager
npm i @daily-co/react-native-daily-js@^0.82.0
npm i @daily-co/react-native-webrtc@^124.0.6-daily.1
npm i @react-native-async-storage/async-storage@^1.24.0
npm i react-native-background-timer@^2.4.1
npm i react-native-get-random-values@^1.11.0
If you are using Expo, you will also need to add the following dependencies:
npm i @daily-co/config-plugin-rn-daily-js@0.0.11
All the details about Expo can be found here.
A full demo can be found here
Quick Start
Instantiate the DailyMediaManager instance, to use it together with the SmallWebRTCTransport:
const options: SmallWebRTCTransportConstructorOptions = {
mediaManager: new DailyMediaManager(),
};
const transport = new RNSmallWebRTCTransport(options);
Contributing
We welcome contributions from the community! Whether you're fixing bugs, improving documentation, or adding new features, here's how you can help:
- Found a bug? Open an issue
- Have a feature idea? Start a discussion
- Want to contribute code? Check our CONTRIBUTING.md guide
- Documentation improvements? Docs PRs are always welcome
Before submitting a pull request, please check existing issues and PRs to avoid duplicates.
We aim to review all contributions promptly and provide constructive feedback to help get your changes merged.
Getting help
âĄď¸ Join our Discord
âĄď¸ Read the docs
âĄď¸ Reach us on X