<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/2713/">https://reviewboard.asterisk.org/r/2713/</a>
     </td>
    </tr>
   </table>
   <br />



 <p>Ship it!</p>









<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/2713/diff/1/?file=42961#file42961line223" style="color: black; font-weight: bold; text-decoration: underline;">/trunk/main/bridge_basic.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; ">int ast_bridge_features_ds_get_string(struct ast_channel *chan, char *buffer, size_t buf_size)</pre></td>

  </tr>
 </tbody>



 
 

 <tbody>

  <tr>
    <th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2">223</font></th>
    <td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="kt">int</span> <span class="nf">ast_bridge_features_ds_set</span><span class="p">(</span><span class="k">struct</span> <span class="n">ast_channel</span> <span class="o">*</span><span class="n">chan</span><span class="p">,</span> <span class="k">struct</span> <span class="n">ast_flags</span> <span class="o">*</span><span class="n">flags</span><span class="p">)</span></pre></td>
    <th bgcolor="#e9eaa8" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">223</font></th>
    <td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="k"><span class="hl">static</span></span><span class="hl"> </span><span class="kt">int</span> <span class="nf">ast_bridge_features_ds_set<span class="hl">_full</span></span><span class="p">(</span><span class="k">struct</span> <span class="n">ast_channel</span> <span class="o">*</span><span class="n">chan</span><span class="p">,</span> <span class="k">struct</span> <span class="n">ast_flags</span> <span class="o">*</span><span class="n">flags</span><span class="p"><span class="hl">,</span></span><span class="hl"> </span><span class="kt"><span class="hl">int</span></span><span class="hl"> </span><span class="n"><span class="hl">replace</span></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;">Traditionally anything not exposed shouldn&#39;t have an ast_ prefix.</pre>
</div>
<br />



<p>- Joshua</p>


<br />
<p>On July 29th, 2013, 9:55 p.m. UTC, jrose wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/static/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, kmoore, Matt Jordan, and rmudgett.</div>
<div>By jrose.</div>


<p style="color: grey;"><i>Updated July 29, 2013, 9:55 p.m.</i></p>







<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-22209">ASTERISK-22209</a>


</div>



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


<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;">Prior to this patch, using CHANNEL(dtmf_features) to set features on a channel would be overridden when using certain applications that bridge calls. This patch fixes Dial and Queue so that they leave existing DTMF features already set on the channel&#39;s feature datastore in tact and simply append their requested features.</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;">Predial handlers were used to append Transfer and Record features to both the caller and callee. Dial was used to call SIP/B with the parking feature enabled on the caller end only. This worked as anticipated with the caller having access to all three features while the callee had access to transfer and record features, but not parking.

A similar test was done against queues, but no predial handlers were used and instead the DTMF features were only set on the channel in the dialplan. But in general this worked the same way. Features applied with the queue application options were mixed with the existing features set with the CHANNEL(dtmf_features) function.</pre>
  </td>
 </tr>
</table>


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

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

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

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

</ul>

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







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








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