Hello! Is there a way to know when the user actually picked the call? Custom LLM, call_started gets before the user picking up!
When using Custom LLM, the call_started webhook is triggered when a new call begins, but this doesn’t necessarily mean the user has picked up the phone yet(1).
Based on the webhook documentation, if the call did not connect (like dial failed), the call_started webhook event will not be triggered(1). Additionally, when calls have dial_failed, dial_no_answer, or dial_busy disconnection reasons, they will not have their call_started webhook triggered(1).
From a Discord support case, it was clarified that if “the user ended the call before the agent joined the room, hence the call was not started at all. That’s why not start call webhook”(2). This suggests that call_started fires when the agent joins, not necessarily when the user picks up.
For more precise tracking of when the user actually answers, you may need to monitor the call_ended webhook and check the disconnection_reason field(1). If the call was never answered, you’ll see reasons like dial_no_answer or dial_busy(1).
Unfortunately, the available documentation doesn’t show a separate webhook event specifically for “user picked up the phone” distinct from call_started. The call_started event appears to indicate when the call connection is established with the agent, which may occur before or as the user picks up.
The custom LLM should solely handle messages exchanged during the conversation. Any message sent via the custom LLM before the call connects will only be spoken once the call is actually answered — so there’s no need to wait for a pickup signal.
Hi Omar! Thanks for your response!
My idea is that the AI will talk if after N seconds the user does not answer, but what happens is that the message is being sent while the phone is ringing, so then the user does not listen to the message.
Call id: call_138440ed15c00ec05519faebdd1
Or I also can send you a recording via email
Appreciate the help!