Getting Started with Daily Telephony
Phone Numbers
Purchase and manage phone numbers for use with your Pipecat agents
Dial-in
Configure your bot to receive incoming calls
Dial-out
Enable your bot to make outbound calls
Purchase a phone number
You can buy a phone number through the Pipecat Cloud Dashboard:- Go to
Settings
>Telephony
- Follow the UI to purchase a phone number
- Configure the webhook URL to receive incoming calls
Configure Pinless Dial-In
When a phone call or a SIP interconnect call is received on Daily, the call is placed on hold and the caller hears hold music while Daily triggers a webhook (room_creation_api
). This phone number–to–webhook mapping is managed through your Daily domain. You can list, create, update, delete a domain-dialin-config
entry using Daily’s REST API. Below is an example for creating the dial-in config:
phone_number
field, Daily will generate a static SIP URI (sip_uri
) that can be used for SIP interconnect. This is useful if you’re routing calls from providers like Twilio, Telnyx, Exotel, or Plivo.
Dial-in
The call flow for handling inbound calls looks like this:- The user calls your purchased phone number. Daily receives the call and places it on hold.
- A webhook triggers the
room_creation_api
. - Your server calls the Pipecat Cloud endpoint (
{service}/start
) with thedialin_settings
. - The bot starts speaking as soon as the remote user joins.
{service}/
endpoint, simplifying the process. While the update is being rolled out, we provide example servers built with Next.js
and FastAPI
to help you get started with your own implementation.
A call can be received on the
phone_number
or the sip_uri
.Dial-in Example Servers
Complete example of a Pipecat bot implementation that handles both incoming
(dial-in) and outgoing (dial-out) calls with voicemail detection
Dial-out
The call flow looks like this:- Your application calls the Pipecat Cloud endpoint with
dialout_settings
- Bot begins dialing out when the call state moves to
joined
- Bot waits for the remote party to speak before responding