Joshua C. Colp
2022-Nov-11 16:11 UTC
[asterisk-users] Answer()ing a local Originate takes 500ms!?
On Fri, Nov 11, 2022 at 12:09 PM Antony Stone < Antony.Stone at asterisk.open.source.it> wrote:> Hi. > > Asterisk 16.2.1 > > I have a dialplan where one context (named "inbound") performs: > > Originate(Local/${Target}@inOrig,exten,inbound,${EXTEN},208) > > The idea is that this command will spawn a "call" to the context "inOrig" > on > the same machine, and then return to the "inbound" context at priority 208. > > Priority 208 is simply a NoOp(Returned from inOrig) > > The "inOrig" context does: > > NoOp(Answering inbound call) > Answer() > NoOp(Returned to inbound context) > Originate(Local/${EXTEN}@dialout,exten,BridgIt,${EXTEN},1) > > It's all doing what I want / expect, but I am seeing, completely > consistently, > a 500ms delay in the Answer() application. > > So, I get the following sequence of timings: > > 08:41:49.514918 inbound:201 Originate(.....) > 08:41:49.516459 inOrig:1 NoOp(Answering inbound call) > 08:41:49.517016 inOrig:2 Answer() > 08:41:49.517489 inbound:208 NoOp(Returned from inOrig) > 08:41:50.017454 inOrig:3 NoOp(Returned to inbound context) > > I have analysed dozens of calls and there is always a ~500ms delay between > when the Answer() has clearly completed (because control returns to > priority > 208 of the "inbound" context), and when the inOrig context continues with > the > following NoOp. > > https://wiki.asterisk.org/wiki/display/AST/Application_Answer tells me > that > the Answer() application takes an optional parameter which causes Asterisk > to > wait that number of milliseconds before returning to the dialplan after > answering the call. > > Does this undocumentedly default to 500? > > Are the results I'm seeing expected, is there something wrong with my > dialplans, is there some way to eliminate this delay? >There is a hard coded minimum of 500 milliseconds for media to flow. You'd have to modify the code to remove it. -- Joshua C. Colp Asterisk Project Lead Sangoma Technologies Check us out at www.sangoma.com and www.asterisk.org -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20221111/00c3c45f/attachment.html>
Antony Stone
2022-Nov-11 16:15 UTC
[asterisk-users] Answer()ing a local Originate takes 500ms!?
On Friday 11 November 2022 at 17:11:26, Joshua C. Colp wrote:> On Fri, Nov 11, 2022 at 12:09 PM Antony Stone wrote: > > > > https://wiki.asterisk.org/wiki/display/AST/Application_Answer tells me > > that the Answer() application takes an optional parameter which causes > > Asterisk to wait that number of milliseconds before returning to the > > dialplan after answering the call. > > > > Does this undocumentedly default to 500?> There is a hard coded minimum of 500 milliseconds for media to flow. You'd > have to modify the code to remove it.Urgh! Is there _anything_ I can do in either the Originate() or the Answer() to avoid this, without having to rebuild Asterisk? And, separately, please can I request that: a) this minimum is documented b) it can be over-ridden at the user's own risk if the supplied parameter is lower than 500. Thanks, Antony. -- A good conversation is like a miniskirt; short enought to retain interest, but long enough to cover the subject. - Celeste Headlee Please reply to the list; please *don't* CC me.