have set up a call queue using Asterisk (strategy: ring all) and I am experiencing an issue where two agents simultaneously answer a call and one agent is connected to the caller while the other agent hears silence or a “dead air” tone. Is there a way to play a message or sound to the agent who answered the call but did not connect with the caller, such as “call answered by another agent”
i started to try to see by
ConnectedLineIDNum but both are populated
any other ideas how to check if it is a fake answer ?
There isn’t such a thing as a “fake answer” you either answered or you didn’t.
I suspect that the dead air is from the SIP client itself, so unless you actually see in the logs that this client answered (which is unlikely) then there isn’t a way you can do anything from Asterisk.
Unless I’m misunderstanding the situation here.
The leg B was answered in asterisk just not bridge withe calle .
Can you please share a complete call trace via pastebin.com?
Have you tried looking into the C option to Queue() application to mark all calls as “answered elsewhere”? This will percolate up to the channel drivers, for example, with PJSIP it will add text to the Reason header ie. “Call completed elsewhere”, which may or may not display on your phone screen (depends on your phone.)
Not exactly what you want though, per the friendly audio let down
To get audio, one option to explore might be Local channels as Queue members. You could include in the Local/123@context you use some hangup extension logic with something like
exten => h,n,Originate(my-friendly-let-down-spooler) to send a separate call to the Queue members letting them know what happened (checking in an earlier priority
h,n-1 if they actually missed the call.)