<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/2691/">https://reviewboard.asterisk.org/r/2691/</a>
</td>
</tr>
</table>
<br />
<table bgcolor="#e0e0e0" width="100%" cellpadding="8" style="border: 1px gray solid;">
<tr>
<td>
<h1 style="margin-right: 0.2em; padding: 0; font-size: 10pt;">This change has been marked as submitted.</h1>
</td>
</tr>
</table>
<br />
<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, David Lee, Matt Jordan, and rmudgett.</div>
<div>By jrose.</div>
<p style="color: grey;"><i>Updated Aug. 5, 2013, 11:59 a.m.</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</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;">Committed in revision 396182</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-21973">ASTERISK-21973</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;">Some bridges/bridge technology observe a property on channels known as bridge roles. Bridge roles can affect the flow of media in a bridge. One example of this is that the holding bridge technology has two roles at the moment, those being 'holding_participant' and 'announcer'. If no role is specified on channels entering that bridge, they are automatically holding participants and just hear music on hold (or other entertainment options if they are set via role options, but that doesn't apply to ARI yet).
However, if an announcer joins the bridge, all participants currently hearing music on hold will cease to hear music on hold and the announcer will send one way audio to all participants in the bridge. Prior to the addition of this option, there was no way to add a channel to a holding bridge as an announcer through ARI. Now you can do cool things like this:
1. Stick a bunch of people, dogs, scarecrows, automatons, lions, etc in a holding bridge where they are stuck listening to music on hold for a while.
2. Add an announcer channel to the holding bridge so that they can hear a booming voice say "I am the Great and Powerful Wizard of Public Domain Literature!'
3. Remove the announcer and have them resume music on hold.
And it is glorious.</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;">Actually, the scenario described above was pretty much how I tested it.</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/bridging_roles.h <span style="color: grey">(395076)</span></li>
<li>/trunk/include/asterisk/stasis_app.h <span style="color: grey">(395076)</span></li>
<li>/trunk/main/bridging_roles.c <span style="color: grey">(395076)</span></li>
<li>/trunk/res/res_stasis_http_bridges.c <span style="color: grey">(395076)</span></li>
<li>/trunk/res/stasis/control.c <span style="color: grey">(395076)</span></li>
<li>/trunk/res/stasis_http/resource_bridges.h <span style="color: grey">(395076)</span></li>
<li>/trunk/res/stasis_http/resource_bridges.c <span style="color: grey">(395076)</span></li>
<li>/trunk/rest-api/api-docs/bridges.json <span style="color: grey">(395076)</span></li>
</ul>
<p><a href="https://reviewboard.asterisk.org/r/2691/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>