<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Nov 8, 2016 at 5:19 PM, Jonathan H <span dir="ltr"><<a href="mailto:lardconcepts@gmail.com" target="_blank">lardconcepts@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Asterisk 14.1<br>
<br>
Here's a bit of test dialplan, which works as expected and simulates<br>
exactly what I'm doing at the top of my large dialplan...<br>
<br>
[dial-pre-test]<br>
exten => s,1,NoOp()<br>
    same => n,Set(LIMIT_PLAYAUDIO_CALLER=<wbr>yes)<br>
    same => n,Set(LIMIT_WARNING_FILE=time_<wbr>limit_reached)<br>
    same => n,Dial(Local/s@dial-test,3,L(<wbr>3540000:60000))<br>
    same => n,Hangup()<br>
<br>
[dial-test]<br>
exten => s,1,NoOp()<br>
    same => n,Dial(Local/s@dial-dest,,gH)<br>
    same => n,Playback(goodbye)<br>
    same => n,Hangup()<br>
<br>
[dial-dest]<br>
exten => s,1,Answer()<br>
    same => n,MusicOnHold()<br>
    same => n,Hangup()<br>
<br>
See what I'm doing here? I'm using a little fiddle to allow the caller<br>
to stop listening to music on hold. And it works..... the gH means<br>
that the caller can hang up the remote end. Great!<br>
<br>
BUT.... I have a large dialplan, and something, somehow, somewhere, is<br>
messing with "Disconnect Call".<br>
<br>
Because once through, nothing, not even star, does anything. It's like<br>
the receiving end (dial-dest in the example above) has become deaf!<br>
<br>
I've turned on debug and verbose to level 9, and there's nothing. It<br>
connects, starts music on hold, and then just ignores everything.<br>
<br>
Anything else I can add to the dialplan to see what might be causing<br>
this? (I've also tried dumpchan, too).<br>
<br>
It USED to work, and some point in the last week, it stopped working.<br>
(But the test dialplan above works). Mind boggled!<br>
<br>
Just to double check, yes, it's all set OK<br>
<br>
features show<br>
Builtin Feature           Default Current<br>
---------------           ------- -------<br>
Pickup                    *8      *8<br>
Blind Transfer            #       #<br>
Attended Transfer<br>
One Touch Monitor<br>
Disconnect Call           *       *<br>
<span class="HOEnZb"><font color="#888888"><br></font></span></blockquote><div><br></div><div>Beware of local channel optimization.  You are putting state on local channels<br></div><div>that can optimize out.  When the local channels optimize out they take the<br></div><div>state with them.<br><br></div><div>In the dialplan above you are creating the channel chain below.<br></div><div><br></div><div>PJSIP/caller --> Local/s@dial-test;1 -- Local/s@dial-test;2 --> Local/s@dial-dest;1 -- Local/s@dial-dest;2<br><br></div><div>PJSIP/caller gets the L() duration and sounds put on it.<br></div><div>The Local/s@dial-test;1 gets the L() duration put on it.<br></div><div>The Local/s@dial-test;2 gets the H dial option put on it.<br><br></div><div>There is a bridge connecting PJSIP/caller and Local/s@dial-test;1<br></div><div>There is a bridge connecting Local/s@dial-test;2 and Local/s@dial-dest;1<br><br></div><div>When Local/s@dial-dest;2 executes Answer it will allow Local/s@dial-test;1 and ;2 to<br>optimize out because both ends are in a bridge.  Thus the H dial option will disappear from<br></div><div>the channel chain.<br></div><div><br></div><div>Richard<br></div></div><br></div></div>