The Daily transport implementation enables real-time audio and video communication in your Pipecat iOS applications using Daily’s WebRTC infrastructure.

Installation

Add the Daily transport package to your project:

.package(url: "https://github.com/pipecat-ai/pipecat-client-ios-daily.git", from: "0.3.0")

// Add to your target dependencies
.target(name: "YourApp", dependencies: [
    .product(name: "PipecatClientIOSDaily", package: "pipecat-client-ios-daily")
])

Usage

Create a client using the Daily transport:

import RTVIClientIOS
import RTVIClientIOSDaily

let configOptions = RTVIClientOptions.init(
    enableMic: true,
    params: RTVIClientParams(
        baseUrl: $PIPECAT_API_URL
    )
)

let client = RTVIClient.init(
    transport: DailyTransport.init(options: configOptions),
    options: configOptions
)

try await client.start()

Configuration

Your server endpoint should return Daily-specific configuration:

// Example server response
{
    "url": "https://your-domain.daily.co/room-name",
    "token": "your-daily-token"
}

API Reference

Daily Transport Reference

Complete API documentation for the Daily transport implementation