presently how to differentiate and identify, an ou...
# telephony
o
presently how to differentiate and identify, an outbound call where user picked up vs call went to voicemail with livekit sdk/webhooks? in both the situations, from telnyx vendor are showing up with 200ok in sip response, and we are seeing sip.callStatus participant attribute as
active
only for both the cases. is there a reliable way to detect user picked up or voicemail? can we request anything to telnyx that can help us out here? I asked on #C088ZNU7QQ5 here, and response was to use the vad/heuristic measures. nothing deterministic. cc: @blue-cat-31749 @jolly-terabyte-69375
basically help us differentiate 1. call went to voicemail or call was picked up by user? 2. call was answered by user or not?
r
I think what most folks do is use the AI to detect voice mail and handle it that way.
o
so in livekit+telnyx combination there is no way to say: call was answered by user or not? deterministically with sip events, or ringing information or any other webhook etc for outbound sip trunk calls?
r
a call answer is call answer. You should see a 200OK for the INVITE regardless of what was on the other end and answered the call.
In some cases the other end is an AI agent 😉
b
For general outbound use cases, the process is that we initiate an outbound call and then there are a few cases that can happen 1. User picks the call 2. User disconnects the call 3. Call rings until some time limit and then either just hangs up or goes to voicemail 4. ... (of course some other cases we can think of but keeping it short for brevity) I see that there are a few participant events that I can subscribe to figure out what's happening. I was trying to figure out for any outbound initiated call, if I can tell that it was answered or remained unanswered. Here, "remained unanswered" could also mean going to voicemail after ringing for some duration. This may have a different meaning to the entity initiating an outbound call vs an outbound call straight up connecting to voicemail or connecting to voicemail after pressing on the hangup button. Basically, trying to figure out status of different kinds of unreachability with the user. Something we can do here? If in the end it means that there are no special events to discretely determine an unreachable user which may or may not reach voicemail in the end then we will probably work at an application layer logic to fit our needs.
r
b
Thanks, this helps.
m
@refined-appointment-81829 These events are really important that I think they should be added as standard events in your SDK.
Especially in the new Telephony SDK.