Hi team,
We observed an unexpected call termination in a Twilio → OpenAI SIP → Realtime setup, and I’d like to check whether anyone has seen similar behavior.
Summary
A live call was transferred from Twilio to an OpenAI SIP endpoint for a Realtime voice agent.
While the caller was still speaking, the child SIP leg ended as completed from Twilio’s perspective, and our parent call then hung up because our scenario treats child-call completed as end-of-call.
At the moment, we do not have evidence that our app explicitly ended the session.
What happened
- Parent inbound call started at
2026-04-13 00:17:52 UTC - Caller selected the AI transfer option via DTMF
- Child SIP leg connected to OpenAI and became
in-progressat2026-04-13 00:18:23 UTC - Twilio shows the child leg ended at
2026-04-13 00:18:52 UTC - Twilio status for the child leg was:
CallStatus=completedSipResponseCode=200CallDuration=29
- Our parent call then ended because our TwiML flow maps child
completed→ end →<Hangup/>
Why this looks unexpected
The recording suggests the caller was still talking when the call ended.
The call does not sound like a natural hang-up by the caller.
In Japanese, the caller was cut off around:
...to iu renraku ga kite ita ndesu kedo mo...
which roughly means:
...we had received a message about that, but...
So from the recording, it sounds like the call was interrupted mid-sentence.
What we confirmed on our side
1. No explicit app-side session finish
In our application logs, we did not find:
- our normal
finish_sessiontool execution - our app-side forced hangup logic
- relevant application exceptions around the termination point
2. Realtime transcript stopped earlier than the recording
In our Realtime-side logs, the last user transcript entries were approximately:
Green Eco Construction, this is Kishi speaking.Um...
However, the recording contains additional caller speech after that point.
So it appears the Realtime / SIP path may have stopped processing before the caller had actually finished speaking.
3. Twilio sees this as a normal completion, not an error
Twilio call events for the child leg were roughly:
initiatedringingin-progresscompleted
And the final SIP response code was 200, not an obvious failure code.
Architecture
Our flow is roughly:
- inbound Twilio voice call
- IVR / DTMF selection
- Twilio
<Dial>to OpenAI SIP endpoint - OpenAI Realtime voice agent handles the conversation
- if child leg completes, our current scenario ends the parent call
So in this case, the parent call ending is a downstream effect.
The main question is why the child SIP / Realtime leg completed while the caller was apparently still speaking.
One related thing we noticed
Twilio logged one warning on the child call:
- Warning code:
32113 - Message:
Specifying this header is not allowed: SipHeader_X-Parent-CallSid
We are not sure this is related to the unexpected completion, but mentioning it in case it matters.
Question
Has anyone seen a case where:
- Twilio → OpenAI SIP call becomes
completed - SIP response code is still
200 - there is no app-side
finish_session - and the caller appears to be cut off mid-sentence?
Also, is there any OpenAI-side logging or known Realtime/SIP behavior that could cause the SIP leg to close cleanly from Twilio’s perspective even though the conversation was not actually finished?
Redacted identifiers / metadata
- Date:
2026-04-13 - Parent call duration:
60s - Child SIP leg duration:
29s - Region / carrier details omitted for privacy
- Full call SIDs omitted here, but available if needed in a private support channel
Any guidance would be appreciated. Thanks.