This guide covers Pipecat Cloud-specific configuration for Exotel WebSocket
integration. For a complete guide including dial-in, dial-out, and advanced
features, see the Exotel WebSocket Integration
guide.
How It Works
Pipecat Cloud implements Exotel’s bidirectional voice streaming protocol. While audio streams flow through WebSockets, the call session is controlled through Exotel’s App Bazaar configuration and the Voicebot Applet. When Pipecat Cloud receives an incoming WebSocket connection from Exotel, it processes theConnected and Start messages to initialize a new bot instance. All WebSocket messages are forwarded to your bot, including any custom parameters set in your App Bazaar configuration. This allows your bot to leverage Exotel’s API for advanced call control - such as recording conversations, transferring to human agents, or implementing complex call flows.
Prerequisites
Before setting up this integration, ensure you have:- An Exotel account with voice streaming enabled
- A Pipecat Cloud account with an Exotel Websockets-compatible bot
Pipecat Cloud Configuration
1. Purchase and Configure Phone Number
Purchase a phone number from Exotel if you haven’t already:- Navigate to ExoPhones and purchase a number
- Complete KYC verification if required
2. Enable Voice Streaming
Voice streaming may not be enabled by default on all accounts:- Contact Exotel support at
hello@exotel.com - Request: “Enable Voicebot Applet for voice streaming for account [Your Account SID]”
- Include your use case: “AI voice bot integration”
3. Get Your Organization Name
Retrieve your Pipecat Cloud organization name using the Pipecat CLI:4. Create App Bazaar Flow
- Navigate to App Bazaar in your Exotel dashboard
- Click “Create” to create a new app
- Build your call flow:
- Drag the “Voicebot” applet to your call flow (not “Stream” or “Passthru”)
- Configure the WebSocket URL:
AGENT_NAMEwith your deployed bot’s name (e.g.,customer-support)ORGANIZATION_NAMEwith your organization name from step 3 (e.g.,three-random-words-randomnumber)
wss://api.pipecat.daily.co/ws/exotel?serviceHost=customer-support.industrious-purple-cat-12345
Using Regional EndpointsIf you deployed your agent to a specific region, use the regional WebSocket endpoint:
wss://{region}.api.pipecat.daily.co/ws/exotel?serviceHost=AGENT_NAME.ORGANIZATION_NAMEFor example, for Europe: wss://eu-central.api.pipecat.daily.co/ws/exotel?serviceHost=my-agent.my-orgLearn more about regional endpoints.- Drag a “Hangup” applet at the end to properly terminate calls
5. Link Phone Number to App
- Navigate to “ExoPhones” in your dashboard
- Find your purchased number and click the edit/pencil icon
- Under “App”, select the custom app you created
- Save the configuration