I’ve built an outbound voice call agent using n8n + Twilio + Ultravox, where the call connects successfully, but I can’t hear Ultravox’s response nor does my voice input reach Ultravox — how can I fix this bi-directional audio issue?

Hey everyone :waving_hand:

I’ve built an outbound voice call agent using n8n + Twilio + Ultravox. Here’s how it works:

  • I’m fetching phone numbers from Google Sheets.
  • Using Twilio’s API, a call is made to the number with a TwiML that connects to the Ultravox WebSocket URL.
  • Before that, I trigger a POST request to Ultravox’s /api/calls endpoint to get the joinUrl.
  • Everything seems to work:
    • The call does come through to the recipient.
    • Ultravox detects the connection and logs the conversation attempt.
    • Its system prompt and first message also show in Ultravox logs.

BUT — on the actual phone call:

  • I can’t hear Ultravox saying anything.
  • Ultravox doesn’t receive what I speak either (no response or logs based on input).

So basically, the call connects, but bi-directional audio is completely broken .

I’ve double-checked:

  • Audio sample rates are 8000 Hz (as expected for Twilio).
  • WebSocket config seems fine in Ultravox’s payload.
  • Twilio call is hitting the right TwiML with the stream.

Attaching screenshots from Ultravox showing that it detects the call and initial message is sent.

Would really appreciate any insights — is this an issue with Twilio’s stream setup, n8n handling, or Ultravox config?

Thanks in advance :folded_hands: