<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://reviewboard.asterisk.org/r/1825/">https://reviewboard.asterisk.org/r/1825/</a>
     </td>
    </tr>
   </table>
   <br />









<div>




<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="https://reviewboard.asterisk.org/r/1825/diff/1/?file=26499#file26499line434" style="color: black; font-weight: bold; text-decoration: underline;">/trunk/include/asterisk/utils.h</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">int ast_pthread_create_detached_stack(pthread_t *thread, pthread_attr_t *attr, void*(*start_routine)(void *),</pre></td>

  </tr>
 </tbody>




 
 



 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">434</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="kt">void</span> <span class="n">ast_replace_macro_delimiter</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">s</span><span class="p">);</span></pre></td>
  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">It&#39;s probably a good idea to rename the function something a little more appropriate such as ast_replace_subargument_delimiter since it handles more than just macros.</pre>
</div>
<br />

<div>




<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="https://reviewboard.asterisk.org/r/1825/diff/1/?file=26500#file26500line149" style="color: black; font-weight: bold; text-decoration: underline;">/trunk/main/features.c</a>
    <span style="font-weight: normal;">

     (Diff revision 1)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">ASTERISK_FILE_VERSION(__FILE__, &quot;$Revision$&quot;)</pre></td>

  </tr>
 </tbody>




 
 



 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">149</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="cm">                                                &lt;note&gt;</span></pre></td>
  </tr>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">150</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="cm">                                                        &lt;para&gt;Using this option from a Macro() or GoSub() might not make sense as there would be no return points.&lt;/para&gt;</span></pre></td>
  </tr>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">151</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="cm">                                                &lt;/note&gt;</span></pre></td>
  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">It&#39;s probably worth noting that this will override the &#39;x&#39; option.</pre>
</div>
<br />



<p>- opticron</p>


<br />
<p>On March 22nd, 2012, 9:37 a.m., jrose wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Asterisk Developers, Mark Michelson and Matt Jordan.</div>
<div>By jrose.</div>


<p style="color: grey;"><i>Updated March 22, 2012, 9:37 a.m.</i></p>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Similar to the F option added to queue, this adds a new option to the bridge application to transfer the party that gets bridged upon (awkwardly worded maybe) to a position in the dialplan specified by the bridge F option from the perspective of the channel that bridged.

Also moves a shared function from a couple of places for app_dial and app_queue into utils.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">A sip phone would dial the following extension:
exten =&gt; 045,1,NoOp(BindBape)
exten =&gt; 045,2,Answer()
exten =&gt; 045,3,Set(GLOBAL(CHANBAPE)=${CHANNEL})
exten =&gt; 045,4,Playback(tt-weasels)
exten =&gt; 045,5,Wait(30)
exten =&gt; 045,6,HangUp()


>From here, a second phone would dial any of these extensions:
exten =&gt; 046,1,NoOp(BrideBape)
exten =&gt; 046,2,Answer()
exten =&gt; 046,3,Bridge(${CHANBAPE}, F(5))
exten =&gt; 046,4,Playback(tt-monkeys)
exten =&gt; 046,5,NoOp(Finish!)
exten =&gt; 046,6,NoOp(Finish More!)

exten =&gt; 047,1,NoOp(BridgeBape2)
exten =&gt; 047,2,Answer()
exten =&gt; 047,3,Bridge(${CHANBAPE}, F)
exten =&gt; 047,4,Playback(tt-allbusy)
exten =&gt; 047,5,NoOp(BridgeBape2 finish)

exten =&gt; 048,1,NoOp(BridgeBape3)
exten =&gt; 048,2,Answer()
exten =&gt; 048,3,Bridge(${CHANBAPE}, F(049,4))
exten =&gt; 048,4,NoOp(Failure)

exten =&gt; 050,1,NoOp(BrigeBape4)
exten =&gt; 050,2,Answer()
exten =&gt; 050,3,Bridge(${CHANBAPE}, F(bridgetestcontext,20,1))


Also this stuff:
exten =&gt; 049,1,NoOp(Failure)
exten =&gt; 049,2,NoOp(Failure)
exten =&gt; 049,3,NoOp(Failure)
exten =&gt; 049,4,Playback(tt-weasels)
exten =&gt; 049,5,NoOp(BridgeBape3 Success)

[bridgetestcontext]
exten =&gt; 20,1,NoOp(Successful bape4)
exten =&gt; 20,n,Playback(tt-somethingwrong)






For each of these cases, I just checked to make sure that hanging up the bridger resulted in the bridged party getting sent to the expected position.

There will be automated tests added for bridging in general as well as for this feature into testsuite soon as well.</pre>
  </td>
 </tr>
</table>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://issues.asterisk.org/jira/browse/ASTERISK-19282">ASTERISK-19282</a>


</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/trunk/apps/app_dial.c <span style="color: grey">(360188)</span></li>

 <li>/trunk/apps/app_queue.c <span style="color: grey">(360188)</span></li>

 <li>/trunk/include/asterisk/utils.h <span style="color: grey">(360188)</span></li>

 <li>/trunk/main/features.c <span style="color: grey">(360188)</span></li>

 <li>/trunk/main/utils.c <span style="color: grey">(360188)</span></li>

</ul>

<p><a href="https://reviewboard.asterisk.org/r/1825/diff/" style="margin-left: 3em;">View Diff</a></p>




  </td>
 </tr>
</table>








  </div>
 </body>
</html>