<div dir="ltr"><div><div>I don't see any other messages in this thread other than your initial one and my response, perhaps the listserv hasn't relayed it to me yet.<br><br></div><div>I switch between ExecIf/GotoIf/GosubIf and the IF function as needed in my dialplan design, if It's just a one liner I'll usually use either the IF function or the ExecIf, When I need to handle multiple different lines I either Gosub to a different context to handle things and return or use a priority label in the same context.<br></div><div><br></div>I've not run into any problem with colons in my IF statements but I don't think that's something I've had to work with/around before. <br><br></div>
<div>Shoot, I must have erased the colon when I was trying to fix the parentheses.<br><br></div><div>It seems like these days everyone wants to use ARI, You could always send the call into Stasis and handle your logic in a language of your choice but that's a whole different discussion. <br></div>

</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Feb 20, 2019 at 12:14 PM Brian J. Murrell <<a href="mailto:brian@interlinx.bc.ca">brian@interlinx.bc.ca</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Wed, 2019-02-20 at 11:46 -0700, John Kiniston wrote:<br>
> Use the IF function to evaluate and change the dial command directly.<br>
<br>
Thanks for taking the time, but that doesn't actually answer the<br>
question I asked.  It in fact answers the caveat I specifically<br>
mentioned:<br>
<br>
> Granted the particular above example could probably be better<br>
> written to simply modify $ARG2 based on ${SIP} rather than having two<br>
> Dial() branches<br>
<br>
But I also stated that I was just using it as example of a need to<br>
branch and how cumbersome using Goto[If] makes it.<br>
<br>
Again, appreciate that you took the time, but really looking for an<br>
answer to the "better way to branch" question.<br>
<br>
> My braces and parens may be off in this example sorry if it doesn't<br>
> work<br>
> out of the box.<br>
> exten => s,n,Dial(${IF($["${SIP}" = "PJSIP"]?<br>
> ${PJSIP_DIAL_CONTACTS(${STRREPLACE(ARG2,"PJSIP/","")})}{ARG2})},20,Tt<br>
> Ww)<br>
<br>
Hah.  This won't work either, for the reason I asked about in my<br>
followup question about where the "true" value of an ${IF ...}has a<br>
colon in it and is taken to be the end of the true value and the start<br>
of the false value.<br>
<br>
And your ${IF ...} is missing the colon between the true and false<br>
values but I still understood what you were getting at.<br>
<br>
Cheers,<br>
b.<br>
<br>
-- <br>
_____________________________________________________________________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" rel="noreferrer" target="_blank">http://www.api-digital.com</a> --<br>
<br>
Check out the new Asterisk community forum at: <a href="https://community.asterisk.org/" rel="noreferrer" target="_blank">https://community.asterisk.org/</a><br>
<br>
New to Asterisk? Start here:<br>
      <a href="https://wiki.asterisk.org/wiki/display/AST/Getting+Started" rel="noreferrer" target="_blank">https://wiki.asterisk.org/wiki/display/AST/Getting+Started</a><br>
<br>
asterisk-users mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-users" rel="noreferrer" target="_blank">http://lists.digium.com/mailman/listinfo/asterisk-users</a></blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature">A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.<br>---Heinlein</div>