<html>
<head>
<meta name="viewport" content="width=device-width" />
<base href="https://wiki.asterisk.org/wiki" />
<style type="text/css">
body, #email-content, #email-content-inner { font-family: Arial,FreeSans,Helvetica,sans-serif; }
body, p, blockquote, pre, code, td, th, li, dt, dd { font-size: 13px; }
small { font-size: 11px; }
body { width:100% !important; -webkit-font-smoothing: antialiased; }
body,
#email-wrapper { background-color: #f0f0f0; }
#email-wrapper-inner { padding: 20px; text-align: center; }
#email-content-inner { background-color: #fff; border: 1px solid #bbb; color: $menuTxtColour; padding:20px; text-align:left; }
#email-wrapper-inner > table { width: 100%; }
#email-wrapper-inner.thin > table { margin: 0 auto; width: 50%; }
#email-footer { padding: 0 16px 32px 16px; margin: 0; }
.email-indent { margin: 8px 0 16px 0; }
.email-comment { margin: 0 0 0 56px; }
.email-comment.removed { background-color: #ffe7e7; border: 1px solid #df9898; padding: 0 8px;}
#email-title-avatar { text-align: left; vertical-align: top; width: 48px; padding-right: 8px; }
#email-title-flavor { margin: 0; padding: 0 0 4px 0; }
#email-title-heading { font-size: 16px; line-height: 20px; min-height: 20px; margin: 0; padding: 0; }
#email-title .icon { border: 0; padding: 0 5px 0 0; text-align: left; vertical-align: middle; }
#email-actions { border-top: 1px solid #bbb; color: #505050; margin: 8px 0 0 0; padding: 0; }
#email-actions td { padding-top: 8px; }
#email-actions .left { max-width: 45%; text-align: left; }
#email-actions .right { text-align: right; }
.email-reply-divider { border-top: 1px solid #bbb; color: #505050; margin: 32px 0 8px 0; padding: 8px 0; }
.email-section-title { border-bottom: 1px solid #bbb; margin: 8px 0; padding: 8px 0 0 0; }
.email-metadata { color: #505050; }
a { color: #326ca6; text-decoration: none; }
a:hover { color: #336ca6; text-decoration: underline; }
a:active {color: #326ca6; }
a.email-footer-link { color: #505050; font-size: 11px; }
.email-item-list { list-style: none; margin: 4px 0; padding-left: 0; }
.email-item-list li { list-style: none; margin: 0; padding: 4px 0; }
.email-list-divider { color: #505050; padding: 0 0.35em; }
.email-operation-icon { padding-right: 5px; }
.avatar { -ms-interpolation-mode: bicubic; border-radius: 3px;}
.avatar-link { margin: 2px; }
.tableview th { border-bottom: 1px solid #69C; font-weight: bold; text-align: left; }
.tableview td { border-bottom: 1px solid #bbbbbb; text-align: left; padding: 4px 16px 4px 0; }
.aui-message { margin: 1em 0; padding: 8px; }
.aui-message.info { background-color: #e0f0ff; border: 1px solid #9eb6d4; }
.aui-message.success { background-color: #ddfade; border: 1px solid #93c49f; }
.aui-message.error,
.aui-message.removed { background-color: #ffe7e7; border: 1px solid #df9898; color: #000; }
.call-to-action-table { margin: 10px 1px 1px 1px;}
.call-to-cancel-container, .call-to-action-container { padding: 5px 20px; }
.call-to-cancel-container { border: 1px solid #aaa; background-color: #eee; border-radius: 3px; }
.call-to-cancel-container a.call-to-cancel-button { background-color: #eee; font-size: 14px; line-height: 1; padding: 0; margin: 0; color: #666; font-family: sans-serif;}
.call-to-action-container { border: 1px solid #486582; background-color: #3068A2; border-radius: 3px; padding: 4px 10px; }
.call-to-action-container a.call-to-action-button { background-color: #3068A2; font-size: 14px; line-height: 1; padding: 0; margin: 0; color: #fff; font-weight: bold; font-family: sans-serif; }
/** The span around the inline task checkbox image */
.diff-inline-task-overlay {
display: inline-block;
text-align: center;
height: 1.5em;
padding: 5px 0px 1px 5px;
margin-right: 5px;
/** Unfortunately, the negative margin-left is stripped out in gmail */
margin-left: -5px;
}
@media handheld, only screen and (max-device-width: 480px) {
div, a, p, td, th, li, dt, dd { -webkit-text-size-adjust: auto; }
small, small a { -webkit-text-size-adjust: 90%; }
td[id=email-wrapper-inner] { padding: 2px !important; }
td[id=email-content-inner] { padding: 8px !important; }
td[id="email-wrapper-inner"][class="thin"] > table { text-align: left !important; width: 100% !important; }
td[id=email-footer] { padding: 8px 12px !important; }
div[class=email-indent] { margin: 8px 0px !important; }
div[class=email-comment] { margin: 0 !important; }
p[id=email-title-flavor] a { display: block; } /* puts the username and the action on separate lines */
p[id=email-permalink] { padding: 4px 0 0 0 !important; }
table[id=email-actions] td { padding-top: 0 !important; }
table[id=email-actions] td.right { text-align: right !important; }
table[id=email-actions] .email-list-item { display: block; margin: 1em 0 !important; word-wrap: normal !important; }
span[class=email-list-divider] { display: none; }
}
</style>
</head>
<body style="font-family: Arial, FreeSans, Helvetica, sans-serif; font-size: 13px; width: 100%; -webkit-font-smoothing: antialiased; background-color: #f0f0f0">
<table id="email-wrapper" width="100%" cellspacing="0" cellpadding="0" border="0" style="background-color: #f0f0f0">
<tbody>
<tr valign="middle">
<td id="email-wrapper-inner" style="font-size: 13px; padding: 20px; text-align: center">
<table id="email-content" cellspacing="0" cellpadding="0" border="0" style="font-family: Arial, FreeSans, Helvetica, sans-serif; width: 100%">
<tbody>
<tr valign="top">
<td id="email-content-inner" align="left" style="font-family: Arial, FreeSans, Helvetica, sans-serif; font-size: 13px; background-color: #fff; border: 1px solid #bbb; padding: 20px; text-align: left">
<table id="email-title" cellpadding="0" cellspacing="0" border="0" width="100%">
<tbody>
<tr>
<td id="email-title-avatar" rowspan="2" style="font-size: 13px; text-align: left; vertical-align: top; width: 48px; padding-right: 8px"> <img class="avatar" src="cid:avatar_ce51dcf276530e4a4b00548e2a6d0905" border="0" height="48" width="48" style="-ms-interpolation-mode: bicubic; border-radius: 3px" /> </td>
<td valign="top" style="font-size: 13px">
<div id="email-title-flavor" class="email-metadata" style="margin: 0; padding: 0 0 4px 0; color: #505050">
<a href=" https://wiki.asterisk.org/wiki/display/~mjordan " style="color:#326ca6;text-decoration:none;; color: #326ca6; text-decoration: none">Matt Jordan</a> edited the page:
</div> </td>
</tr>
<tr>
<td valign="top" style="font-size: 13px"> <h2 id="email-title-heading" style="font-size: 16px; line-height: 20px; min-height: 20px; margin: 0; padding: 0"> <a href="https://wiki.asterisk.org/wiki/display/AST/New+in+12" style="color: #326ca6; text-decoration: none"> <img class="icon" src="cid:page-icon" alt="" style="border: 0; padding: 0 5px 0 0; text-align: left; vertical-align: middle" /> <strong style="font-size:16px;line-height:20px;vertical-align:top;">New in 12</strong> </a> </h2> </td>
</tr>
</tbody>
</table>
<div class="email-indent" style="margin: 8px 0 16px 0">
<div class="email-diff">
<div id="page-diffs" class="wiki-content">
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">Specifications have been written for the affected interfaces<span class="diff-html-removed" id="removed-diff-0" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">. These specifications are available on the Asterisk wiki</span>:<span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-1" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">* AMI - </span><a href="https://wiki.asterisk.org/wiki/x/dAFRAQ" rel="nofollow" style="color: #326ca6; text-decoration: none"><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">https://wiki.asterisk.org/wiki/x/dAFRAQ</span></a> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> * CEL - </span><a href="https://wiki.asterisk.org/wiki/x/4ICLAQ" rel="nofollow" style="color: #326ca6; text-decoration: none"><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">https://wiki.asterisk.org/wiki/x/4ICLAQ</span></a> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> * CDRs - </span><a href="https://wiki.asterisk.org/wiki/x/pwpRAQ" rel="nofollow" style="color: #326ca6; text-decoration: none"><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">https://wiki.asterisk.org/wiki/x/pwpRAQ</span></a> </p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-added" id="added-diff-0" style="font-size: 100%; background-color: #ddfade;">AMI 1.4 Specification</span></a> </li>
<li style="font-size: 13px"> <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-added" style="font-size: 100%; background-color: #ddfade;">Asterisk 12 CEL Specification</span></a> </li>
<li style="font-size: 13px"> <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-added" style="font-size: 100%; background-color: #ddfade;">Asterisk 12 CDR Specification</span></a> </li>
</ul>
<p class="diff-block-target diff-block-context" style="font-size: 13px">It is <strong>highly</strong> recommended that anyone migrating to Asterisk 12 read the information regarding its release both in <span class="diff-html-removed" id="removed-diff-2" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">this file </span><span class="diff-html-added" id="added-diff-1" style="font-size: 100%; background-color: #ddfade;">the CHANGES files </span>and in the accompanying UPGRADE.txt file.<span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-3" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">More detailed information on the major changes can be found on the Asterisk wiki at </span><a href="https://wiki.asterisk.org/wiki/x/0YCLAQ" rel="nofollow" style="color: #326ca6; text-decoration: none"><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">https://wiki.asterisk.org/wiki/x/0YCLAQ</span></a><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">.</span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-4" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span> </p>
<h1 id="Newin12-BuildSystem" class="diff-block-context"> <span style="line-height: 1.25;">Build System</span> </h1>
<ul class="diff-block-context">
<li style="font-size: 13px">Added build option <code style="font-size: 13px">DISABLE_INLINE</code>. This option can be used to work around a bug in gcc. For more information, see <a href="http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47816" class="external-link" rel="nofollow" style="color: #326ca6; text-decoration: none">http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47816</a> </li>
<li style="font-size: 13px">Removed the <code style="font-size: 13px">CHANNEL_TRACE</code> development mode build option. Certain aspects of the <code style="font-size: 13px">CHANNEL_TRACE</code> build option were incompatible with the new bridging architecture.</li>
<li style="font-size: 13px">Asterisk now optionally uses <code style="font-size: 13px">libxslt</code> to improve XML documentation generation and maintainability. If libxslt is not available on the system, some XML documentation will be incomplete.</li>
<li style="font-size: 13px">Asterisk now depends on <code style="font-size: 13px">libjansson</code>. If a package of <code style="font-size: 13px">libjansson</code> is not available on your distro, please see <a href="http://www.digip.org/jansson/" class="external-link" rel="nofollow" style="color: #326ca6; text-decoration: none">http://www.digip.org/jansson/</a>.</li>
<li style="font-size: 13px">Asterisk now depends on <code style="font-size: 13px">libuuid</code> and, optionally, <code style="font-size: 13px">uriparser</code>. It is recommended that you install <code style="font-size: 13px">uriparser</code>, even if it is optional.</li>
<li style="font-size: 13px">The new SIP stack and channel driver currently use a particular version of PJSIP. Please see <a href="https://wiki.asterisk.org/wiki/x/J4GLAQ" rel="nofollow" style="color: #326ca6; text-decoration: none">https://wiki.asterisk.org/wiki/x/J4GLAQ</a> for more information on configuring and installing PJSIP for usage with Asterisk.</li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target">
<li style="font-size: 13px"> <span style="line-height: 1.5;">Along with <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">AgentRequest</a>, this application has been modified to be a </span>replacement for <code style="font-size: 13px">chan_agent</code>. The act of a channel calling the AgentLogin application places the channel into a pool of agents that can be requested by the AgentRequest application. Note that this application, as well as all other agent related functionality, is now provided by the <code style="font-size: 13px">app_agent_pool</code> module. See <a href="#Newin12-channels_chan_agent" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-2" style="background-color: #d6f0ff;">chan_agent</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span>and <a href="/wiki/display/AST/New+in+12" style="color: #326ca6; text-decoration: none">AgentRequest</a> for more information.</li>
<li style="font-size: 13px">This application no longer performs agent authentication. If authentication is desired, the dialplan needs to perform this function using the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Authenticate</a> or <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">VMAuthenticate</a> application or through an AGI script before running AgentLogin.</li>
<li style="font-size: 13px">If this application is called and the agent is already logged in, the dialplan will continue exection with the <code style="font-size: 13px">AGENT_STATUS</code> channel variable set to <code style="font-size: 13px">ALREADY_LOGGED_IN</code>.</li>
<li style="font-size: 13px">The <em><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">agents.conf</a></em> schema has changed. Rather than specifying agents on a single line in comma delineated fashion, each agent is defined in a separate context. This allows agents to use the power of context templates in their definition.</li>
<li style="font-size: 13px">A number of parameters from <em><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">agents.conf</a></em> have been removed. This includes:
<ul>
<li style="font-size: 13px"> <code style="font-size: 13px">maxloginretries</code> </li>
<li style="font-size: 13px"> <code style="font-size: 13px">autologoffunavail</code> </li>
<li style="font-size: 13px"> <code style="font-size: 13px">updatecdr</code> </li>
<li style="font-size: 13px"> <code style="font-size: 13px">goodbye</code> </li>
<li style="font-size: 13px"> <code style="font-size: 13px">group</code> </li>
<li style="font-size: 13px"> <code style="font-size: 13px">recordformat</code> </li>
<li style="font-size: 13px"> <code style="font-size: 13px">urlprefix</code> </li>
<li style="font-size: 13px"> <code style="font-size: 13px">savecallsin</code> </li>
</ul>These options were obsoleted by the move from a channel driver model to the bridging/application model provided by <code style="font-size: 13px">app_agent_pool</code>.</li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target">
<li style="font-size: 13px">The channel variable <code style="font-size: 13px">CPLAYBACKSTATUS</code> may now return the value <code style="font-size: 13px">REMOTESTOPPED</code>. This occurs when playback is stopped by a remote interface, such as AMI. See the AMI action <a href="#Newin12-ami_controlplayback" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-3" style="background-color: #d6f0ff;">ControlPlayback</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span>for more information.</li>
</ul>
<h2 id="Newin12-Directory" class="diff-block-context"> <span style="line-height: 1.4285715;"><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Directory</a></span> </h2>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"> </span><span style="line-height: 1.4285715;">The <code style="font-size: 13px">app_parkandannounce</code> module has been removed. The application </span><span style="line-height: 1.4285715;">ParkAndAnnounce is now provided by the <code style="font-size: 13px">res_parking</code> module. See the </span><span style="line-height: 1.4285715;"><a href="#Newin12-res_parking" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-4" style="background-color: #d6f0ff;">res_parking</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span>changes for more information.</span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target">
<li style="font-size: 13px">Masquerades as an operation inside Asterisk have been effectively hidden by the migration to the Bridging API. As such, many 'quirks' of Asterisk no longer occur. This includes renaming of channels, "<ZOMBIE>" channels, dropping of frame/audio hooks, and other internal implementation details that users had to deal with. This fundamental change has large implications throughout the changes documented for this version.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Multiple parties in a bridge may now be transferred. If a participant in a multi-party bridge initiates a blind transfer, a Local channel will be used to execute the dialplan location that the transferer sent the parties to. If a participant in a multi-party bridge initiates an attended transfer, several options are possible. If the attended transfer results in a transfer to an application, a Local channel is used. If the attended transfer results in a transfer to another channel, the resulting channels will be merged into a single bridge.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The channel variable <code style="font-size: 13px">ATTENDED_TRANSFER_COMPLETE_SOUND</code> is no longer channel driver specific. If the channel variable is set on the transferrer channel, the sound will be played to the target of an attended transfer.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The channel variable <code style="font-size: 13px">BRIDGEPEER</code> becomes a comma separated list of peers in </span><span style="line-height: 1.4285715;">a multi-party bridge. The <code style="font-size: 13px">BRIDGEPEER</code> value can have a maximum of 10 peers </span><span style="line-height: 1.4285715;">listed. Any more peers in the bridge will not be included in the list. {{</span><span style="line-height: 1.4285715;">BRIDGEPEER}} is not valid in holding bridges like parking since those channels </span><span style="line-height: 1.4285715;">do not talk to each other even though they are in a bridge.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"> </span><span style="line-height: 1.4285715;">The channel variable <code style="font-size: 13px">BRIDGEPVTCALLID</code> is only valid for two party bridges </span><span style="line-height: 1.4285715;">and will contain a value if the <code style="font-size: 13px">BRIDGEPEER</code>'s channel driver supports it.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"> </span><span style="line-height: 1.4285715;">A channel variable <code style="font-size: 13px">ATTENDEDTRANSFER</code> is now set which indicates which channel </span><span style="line-height: 1.4285715;">was responsible for an attended transfer in a similar fashion to <code style="font-size: 13px">BLINDTRANSFER</code>.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"> </span><span style="line-height: 1.4285715;">Modules using the Configuration Framework or Sorcery must have XML </span><span style="line-height: 1.4285715;">configuration documentation. This configuration documentation is included </span><span style="line-height: 1.4285715;">with the rest of Asterisk's XML documentation, and is accessible via CLI </span><span style="line-height: 1.4285715;">commands. See the<a href="#Newin12-CLI" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span><span class="diff-html-changed" id="changed-diff-5" style="background-color: #d6f0ff;">CLI changes</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span>for more information.</span> </li>
</ul>
<h2 id="Newin12-AMI%28AsteriskManagerInterface%29" class="diff-block-context"> <span style="line-height: 1.4285715;"> </span><span style="line-height: 1.4285715;">AMI (Asterisk Manager Interface)</span> </h2>
<ul class="diff-block-target">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Major changes were made to both the syntax as well as the semantics of the </span><span style="line-height: 1.4285715;">AMI protocol. In particular, AMI events have been substantially improved </span><span style="line-height: 1.4285715;">in this version of Asterisk. For more information, please see the </span><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span style="line-height: 1.4285715;">AMI </span><span style="line-height: 1.4285715;">specification</span></a><span style="line-height: 1.4285715;">.</span> </li>
<li style="font-size: 13px"> <a href="https://wiki.asterisk.org/wiki/x/dAFRAQ" style="line-height: 1.4285715;; color: #326ca6; text-decoration: none" rel="nofollow"><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-6" style="background-color: #d6f0ff;">AMI events that reference a particular channel or bridge will now always contain a standard set of fields. When multiple channels or bridges are referenced in an event, fields for at least some subset of the channels and bridges in the event will be prefixed with a descriptive name to avoid name collisions. See the </span></span></a><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-7" style="background-color: #d6f0ff;">AMI event </span></a><span class="diff-html-changed" style="background-color: #d6f0ff;">documentation for more information.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The CLI command <code style="font-size: 13px">manager show commands</code> no longer truncates command names longer than 15 characters and no longer shows authorization requirement for commands. <code style="font-size: 13px">manager show command</code> now displays the privileges needed for using a given manager command instead.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">SIPshowpeer</a> action will now include a <em>SubscribeContext</em> field for a peer in its response if the peer has a subscribe context set.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">SIPqualifypeer</a> action now acknowledges the request once it has established that the request is against a known peer. It also issues a new event, <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">SIPQualifyPeerDone</a>, once the qualify action has been completed.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">PlayDTMF</a> action now supports an optional <em>Duration</em> parameter. This specifies the duration of the digit to be played, in milliseconds.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Added <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">VoicemailRefresh</a> action to allow an external entity to trigger mailbox </span><span style="line-height: 1.4285715;">updates when changes occur instead of requiring the use of <code style="font-size: 13px">pollmailboxes</code>.</span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target">
<li style="font-size: 13px">Added a new action <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">ControlPlayback</a>. The ControlPlayback action allows an AMI client to manipulate audio currently being played back on a channel. The supported operations depend on the application being used to send audio to the channel. When the audio playback was initiated using the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">ControlPlayback</a> application or <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">CONTROL STREAM FILE</a> AGI command, the audio can be paused, stopped, restarted, reversed, or skipped forward. When initiated by other mechanisms (such as the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Playback</a> application), the audio can be stopped, reversed, or skipped forward.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Channel related events now contain a snapshot of channel state, adding new </span><span style="line-height: 1.4285715;">fields to many of these events.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The AMI event <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Newexten</a> field <em>Extension</em> is deprecated, and may be removed </span><span style="line-height: 1.4285715;">in a future release. Please use the common <em>Exten</em> field instead.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The AMI event <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">UserEvent</a> from <code style="font-size: 13px">app_userevent</code> now contains the channel state </span><span style="line-height: 1.4285715;">fields. The channel state fields will come before the body fields.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The AMI events <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">ParkedCall</a>, <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">ParkedCallTimeOut</a>, <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">ParkedCallGiveUp</a>, and </span><span style="line-height: 1.4285715;"><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">UnParkedCall</a> have changed significantly in the new <a href="#Newin12-res_parking" style="color: #326ca6; text-decoration: none"><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-8" style="background-color: #d6f0ff;">res_parking</span></code><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span></a> module.</span>
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <em>Channel</em> and <em>From</em> headers are gone.</span>
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">For the channel that was parked </span><span style="line-height: 1.4285715;">or is coming out of parking, a <em>Parkee</em> channel snapshot is issued and it </span><span style="line-height: 1.4285715;">has a number of fields associated with it. The old <em>Channel</em> header relayed </span><span style="line-height: 1.4285715;">the same data as the new <em>ParkeeChannel</em> header.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <em>From</em> field was ambiguous and changed meaning depending on the event. </span><span style="line-height: 1.4285715;">For most of these, it was the name of the channel that parked the call </span><span style="line-height: 1.4285715;">(the <em>Parker</em>).</span> </li>
</ul> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">There is no longer a header that provides this channel name, </span><span style="line-height: 1.4285715;">however the <em>ParkerDialString</em> will contain a dialstring to redial the </span><span style="line-height: 1.4285715;">device that parked the call.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">On <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">UnParkedCall</a> events, the <em>From</em> header would instead represent the channel responsible for retrieving the parkee. It receives a channel snapshot labeled <em>Retriever</em>. The <em>From</em> field is is replaced with <em>RetrieverChannel</em>.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Lastly, the <em>Exten</em> field has been replaced with <em>ParkingSpace</em>.</span> </li>
</ul> </li>
<li style="font-size: 13px">The AMI event Parkinglot (response to <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Parkinglots</a> command) in a similar fashion has changed the field names <em>StartExten</em> and <em>StopExten</em> to <em>StartSpace</em> and <em>StopSpace</em> respectively.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The deprecated use of | (pipe) as a separator in the <code style="font-size: 13px">channelvars</code> setting in <em>manager.conf</em> has been removed.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Channel Variables conveyed with a channel no longer contain the name of the channel as part of the key field, i.e., <code style="font-size: 13px">ChanVariable(SIP/foo): bar=baz</code> is now <code style="font-size: 13px">ChanVariable: bar=baz</code>. When multiple channels are present in a single AMI event, the various <em>ChanVariable</em> fields will contain a prefix that specifies which channel they correspond to.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The NewPeerAccount AMI event is no longer raised. The <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">NewAccountCode</a> AMI event always conveys the AMI event for a particular channel.</span> </li>
<li style="font-size: 13px">All <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Reload</a> events have been consolidated into a single event type. This event will always contain a <em>Module</em> field specifying the name of the module and a <em>Status</em> field denoting the result of the reload. All modules now issue this event when being reloaded.</li>
<li style="font-size: 13px">The ModuleLoadReport event has been removed. Most AMI connections would fail to receive this event due to being connected after modules have loaded. AMI connections that want to know when Asterisk is ready should listen for the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">FullyBooted</a> event.</li>
<li style="font-size: 13px"> <code style="font-size: 13px">app_fax</code> now sends the same send fax/receive fax events as <code style="font-size: 13px">res_fax</code>. The FaxSent event is now the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">SendFAX</a> event, and the FaxReceived event is now the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">ReceiveFAX</a> event.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The MusicOnHold event is now two events: <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">MusicOnHoldStart</a> and </span><span style="line-height: 1.4285715;"><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">MusicOnHoldStop</a>. The sub type field has been removed.</span> </li>
<li style="font-size: 13px">The JabberEvent event has been removed. It is not AMI's purpose to be a carrier for another protocol.</li>
<li style="font-size: 13px">The <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Bridge</a> Manager action's <em>Playtone</em> header now accepts more fine-grained options. <code style="font-size: 13px">Channel1</code> and <code style="font-size: 13px">Channel2</code> may be specified in order to play a tone to the specific channel. <code style="font-size: 13px">Both</code> may be specified to play a tone to both</li>
<li style="font-size: 13px">channels. The old <code style="font-size: 13px">yes</code> option is still accepted as a way of playing the tone to <code style="font-size: 13px">Channel2</code> only.</li>
<li style="font-size: 13px">The AMI <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Status</a> response event to the AMI <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Status</a> action replaces the <em>BridgedChannel</em> and <em>BridgedUniqueid</em> headers with the <em>BridgeID</em> header to indicate what bridge the channel is currently in.</li>
<li style="font-size: 13px">The AMI Hold event has been moved out of individual channel drivers, into core, and is now two events: <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Hold</a> and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Unhold</a>. The status field has been removed.</li>
<li style="font-size: 13px">The AMI events in <code style="font-size: 13px">app_queue</code> have been made more consistent with each other. Events that reference channels (QueueCaller* and Agent*) will show information about each channel. The (infamous) Join and Leave AMI events have been changed to <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">QueueCallerJoin</a> and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">QueueCallerLeave</a>.</li>
<li style="font-size: 13px">The <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">MCID</a> AMI event now publishes a channel snapshot when available and its non-channel-snapshot parameters now use either the <em>MCallerID</em> or <em>MConnectedID</em> prefixes with Subaddr*, Name*, and Num* suffixes instead of <em>CallerID</em> and <em>ConnectedID</em> to avoid confusion with similarly named parameters in the channel snapshot.</li>
<li style="font-size: 13px">The AMI events Agentlogin and Agentlogoff have been renamed <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">AgentLogin</a> and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">AgentLogoff</a> respectively.</li>
<li style="font-size: 13px">The <em>Channel</em> key used in the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">AlarmClear</a>, <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Alarm</a>, and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">DNDState</a> has been renamed <em>DAHDIChannel</em> since it does not convey an Asterisk channel name.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">ChannelUpdate events have been removed.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">All AMI events now contain a <em>SystemName</em> field, if available.</span> </li>
<li style="font-size: 13px">Local channel optimization is now conveyed in two events: <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">LocalOptimizationBegin</a> and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">LocalOptimizationEnd</a>. The Begin event is sent when the Local channel driver begins attempting to optimize itself out of the media path; the End event is sent after the channel halves have successfully optimized themselves out of the media path.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Local channel information in events is now prefixed with <em>LocalOne</em> and <em>LocalTwo.</em></span><span style="line-height: 1.4285715;"> This replaces the suffix of '1' and '2' for the two halves of </span><span style="line-height: 1.4285715;">the Local channel. This affects the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">LocalBridge</a>, <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">LocalOptimizationBegin</a>, </span><span style="line-height: 1.4285715;">and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">LocalOptimizationEnd</a> events.</span> </li>
<li style="font-size: 13px">The option <code style="font-size: 13px">allowmultiplelogin</code> can now be set or overriden in a particular account. When set in the general context, it will act as the default setting for defined accounts.</li>
<li style="font-size: 13px">The BridgeAction event was removed. It technically added no value, as the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Bridge</a> Action already receives confirmation of the bridge through a successful completion Event.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The BridgeExec events were removed. These events duplicated the events that </span><span style="line-height: 1.4285715;">occur in the Bridging API, and are conveyed now through <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">BridgeCreate</a>, </span><span style="line-height: 1.4285715;"><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">BridgeEnter</a>, and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">BridgeLeave</a> events.</span> </li>
<li style="font-size: 13px">The <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">RTCPSent</a>/<a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">RTCPReceived</a> events have been significantly modified from previous versions. They now report all SR/RR packets sent/received, and have been restructured to better reflect the data sent in a SR/RR. In particular, the event structure now supports multiple report blocks.</li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Added <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">BlindTransfer</a> and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">AttendedTransfer</a> events. These events are </span><span style="line-height: 1.4285715;">raised when a blind transfer/attended transfer completes successfully. </span><span style="line-height: 1.4285715;">They contain information about the transfer that just completed, including </span><span style="line-height: 1.4285715;">the location of the transferred channel.</span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Parking has been pulled from core and placed into a separate module called </span><span style="line-height: 1.4285715;"><a href="#Newin12-res_parking" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-9" style="background-color: #d6f0ff;">res_parking</span></a>. Configuration for </span><span style="line-height: 1.4285715;">parking should now be performed in <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><em>res_parking.conf</em></a>. Configuration for </span><span style="line-height: 1.4285715;">parking in <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><em>features.conf</em> </a> is now unsupported.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Core attended transfers now have several new options. While performing an </span><span style="line-height: 1.4285715;">attended transfer, the transferer now has the following options:</span>
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px">*1</code> - cancel the attended transfer (configurable via <code style="font-size: 13px">atxferabort</code>)</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px">*2</code> - complete the attended transfer, dropping out of the call </span><span style="line-height: 1.4285715;">(configurable via <code style="font-size: 13px">atxfercomplete</code>)</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px">*3</code> - complete the attended transfer, but stay in the call. This will turn </span><span style="line-height: 1.4285715;">the call into a multi-party bridge (configurable via <code style="font-size: 13px">atxferthreeway</code>)</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px">*4</code> - swap to the other party. Once an attended transfer has begun, this </span><span style="line-height: 1.4285715;">options may be used multiple times (configurable via <code style="font-size: 13px">atxferswap</code>)</span> </li>
</ul> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">For DTMF blind and attended transfers, the channel variable <code style="font-size: 13px">TRANSFER_CONTEXT</code> </span><span style="line-height: 1.4285715;">must be on the channel initiating the transfer to have any effect.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <code style="font-size: 13px">BRIDGE_FEATURES</code> channel variable would previously only set features for </span><span style="line-height: 1.4285715;">the calling party and would set this feature regardless of whether the </span><span style="line-height: 1.4285715;">feature was in caps or in lowercase. Use of a caps feature for a letter </span><span style="line-height: 1.4285715;">will now apply the feature to the calling party while use of a lowercase </span><span style="line-height: 1.4285715;">letter will apply that feature to the called party.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Add support for <code style="font-size: 13px">automixmon</code> to the <code style="font-size: 13px">BRIDGE_FEATURES</code> channel variable.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The channel variable <code style="font-size: 13px">DYNAMIC_PEERNAME</code> is redundant with <code style="font-size: 13px">BRIDGEPEER</code> and is </span><span style="line-height: 1.4285715;">removed. The more useful <code style="font-size: 13px">DYNAMIC_WHO_ACTIVATED</code> gives the channel name that </span><span style="line-height: 1.4285715;">activated the dynamic feature.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The channel variables <code style="font-size: 13px">DYNAMIC_FEATURENAME</code> and <code style="font-size: 13px">DYNAMIC_WHO_ACTIVATED</code> are set </span><span style="line-height: 1.4285715;">only on the channel executing the dynamic feature. Executing a dynamic </span><span style="line-height: 1.4285715;">feature on the bridge peer in a multi-party bridge will execute it on all </span><span style="line-height: 1.4285715;">peers of the activating channel.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">You can now have the settings for a channel updated using the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">FEATURE()</a> </span><span style="line-height: 1.4285715;">and <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">FEATUREMAP() </a>functions inherited to child channels by setting <code style="font-size: 13px">FEATURE(inherit)=yes</code>.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px">automixmon</code> now supports additional channel variables from <code style="font-size: 13px">automon</code> including: <code style="font-size: 13px">TOUCH_MIXMONITOR_PREFIX</code>, <code style="font-size: 13px">TOUCH_MIXMONITOR_MESSAGE_START</code>, and <code style="font-size: 13px">TOUCH_MIXMONITOR_MESSAGE_STOP</code>.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">A new general <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><em>features.conf</em> </a> option <code style="font-size: 13px">recordingfailsound</code> has been added which </span><span style="line-height: 1.4285715;">allows setting a failure sound for a user tries to invoke a recording feature </span><span style="line-height: 1.4285715;">such as <code style="font-size: 13px">automon</code> or <code style="font-size: 13px">automixmon</code> and it fails.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">It is no longer necessary (or possible) to define the <code style="font-size: 13px">ATXFER_NULL_TECH</code> in <code style="font-size: 13px">features.c</code> </span><span style="line-height: 1.4285715;">for <code style="font-size: 13px">atxferdropcall=no</code> to work properly. This option now just </span><span style="line-height: 1.4285715;">works.</span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target">
<li style="font-size: 13px">Added support for <a href="http://tools.ietf.org/html/rfc3327" class="external-link" rel="nofollow" style="color: #326ca6; text-decoration: none">RFC 3327 "Path"</a> headers. This can be enabled in <em>sip.conf</em> using the <code style="font-size: 13px">supportpath</code> setting, either on a global basis or on a peer basis. This setting enables Asterisk to route outgoing out-of-dialog requests via a set of proxies by using a pre-loaded route-set defined by the Path headers in the <code style="font-size: 13px">REGISTER</code> request. See <a href="#Newin12-Realtime" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-10" style="background-color: #d6f0ff;">Realtime</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span>updates for more configuration information.</li>
<li style="font-size: 13px"> <p style="font-size: 13px"> <span style="line-height: 1.4285715;">The <code style="font-size: 13px">SIP_CODEC</code> family of variables may now specify more than one codec. Each </span><span style="line-height: 1.4285715;">codec must be separated by a comma. The first codec specified is the </span><span style="line-height: 1.4285715;">preferred codec for the offer. This allows a dialplan writer to specify both </span><span style="line-height: 1.4285715;">audio and video codecs, e.g., </span> </p>
<table class="diff-macro" style="background-color: #f0f0f0;border: 1px solid #dddddd;margin: 10px 1px;padding: 0 2px 2px;width: 100%;">
<thead>
<tr>
<th class="diff-macro-title" style="background-color: transparent; text-align: left; font-weight: normal;padding: 5px;; font-size: 13px"><span class="icon macro-placeholder-icon" style="background-color: ;line-height: 20px;"><img src="https://wiki.asterisk.org/wiki/s/en_GB-1988229788/4252/6ac85e9b14675c5514a674e1aecae99c9505ed36.48/_/images/icons/macrobrowser/dropdown/noformat.png" style="padding-right: 5px; vertical-align: text-bottom;" /> </span>No Format</th>
</tr>
</thead>
<tbody>
<tr>
<td class="diff-macro-body" style="background-color: #fff;border: 1px solid #dddddd;padding: 10px;; font-size: 13px"> <pre style="font-size: 13px">same => n,Set(SIP_CODEC=ulaw,h264)</pre> </td>
</tr>
</tbody>
</table> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <code style="font-size: 13px">callevents</code> parameter has been removed. <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">Hold</a> AMI events are now raised </span><span style="line-height: 1.4285715;">in the core, and can be filtered out using the <code style="font-size: 13px">eventfilter</code> parameter </span><span style="line-height: 1.4285715;">in <em>manager.conf</em>.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Added <code style="font-size: 13px">ignore_requested_pref</code>. When enabled, this will use the preferred </span><span style="line-height: 1.4285715;">codecs configured for a peer instead of the requested codec.</span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">Added the <code style="font-size: 13px">immeddialkey</code> parameter. If set, when the user presses the </span><span style="line-height: 1.4285715;">configured key the already entered number will be immediately dialed. This </span><span style="line-height: 1.4285715;">is useful when the dialplan allows for variable length pattern matching. </span>Valid options are <code style="font-size: 13px">*</code> and <code style="font-size: 13px">#</code>.</li>
<li style="font-size: 13px">Added the <code style="font-size: 13px">callfwdtimeout</code> parameter. This configures the amount of time (in <span style="line-height: 1.4285715;">milliseconds) before a call forward is considered to not be answered.</span> </li>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The <code style="font-size: 13px">serviceurl</code> parameter allows Service URLs to be attached to line </span><span style="line-height: 1.4285715;">buttons.</span> </li>
</ul>
<h1 id="Newin12-Functions" class="diff-block-context">Functions</h1>
<h2 id="Newin12-AGENT" class="diff-block-target"> <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-11" style="background-color: #d6f0ff;">AGENT</span></a> </h2>
<ul class="diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;">The password option has been disabled, as the <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none">AgentLogin</a> application no </span><span style="line-height: 1.4285715;">longer provides authentication.</span> </li>
</ul>
<h2 id="Newin12-AUDIOHOOK_INHERIT" class="diff-block-target diff-block-context"> <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-12" style="background-color: #d6f0ff;">AUDIOHOOK_INHERIT</span></a> </h2>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-changed" id="changed-diff-14" style="background-color: #d6f0ff;">Due to changes in the Asterisk core, this function is no longer needed </span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-added" id="added-diff-2" style="font-size: 100%; background-color: #ddfade;">to preserve </span><span class="diff-html-changed" id="changed-diff-15" style="background-color: #d6f0ff;">a </span><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-16" style="background-color: #d6f0ff;">MixMonitor</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span><span class="diff-html-changed" id="changed-diff-17" style="background-color: #d6f0ff;">on a channel during transfer operations and </span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-added" id="added-diff-3" style="font-size: 100%; background-color: #ddfade;">dialplan execution</span><span class="diff-html-changed" id="changed-diff-18" style="background-color: #d6f0ff;">. It is effectively obsolete.</span> </li>
</ul>
<h2 id="Newin12-CDR%28function%29" class="diff-block-target diff-block-context"> <a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-19" style="background-color: #d6f0ff;">CDR (function)</span></a> </h2>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-changed" id="changed-diff-21" style="background-color: #d6f0ff;">The </span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-22" style="background-color: #d6f0ff;">amaflags</span></code> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-added" id="added-diff-4" style="font-size: 100%; background-color: #ddfade;"> and </span><code style="font-size: 13px"><span class="diff-html-added" style="font-size: 100%; background-color: #ddfade;">accountcode</span></code><span class="diff-html-added" style="font-size: 100%; background-color: #ddfade;"> attributes </span><span class="diff-html-changed" id="changed-diff-23" style="background-color: #d6f0ff;">for the </span><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-24" style="background-color: #d6f0ff;">CDR</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span><span class="diff-html-changed" id="changed-diff-25" style="background-color: #d6f0ff;">function </span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-added" id="added-diff-5" style="font-size: 100%; background-color: #ddfade;">are deprecated</span><span class="diff-html-changed" id="changed-diff-26" style="background-color: #d6f0ff;">. Use the </span><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-27" style="background-color: #d6f0ff;">CHANNEL</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span><span class="diff-html-changed" id="changed-diff-28" style="background-color: #d6f0ff;">function instead to access these attributes.</span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-29" style="background-color: #d6f0ff;">The </span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-30" style="background-color: #d6f0ff;">l</span></code></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-6" style="font-size: 100%; background-color: #ddfade;"> option </span><span class="diff-html-changed" id="changed-diff-31" style="background-color: #d6f0ff;">has been removed. When reading a CDR attribute, the </span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-7" style="font-size: 100%; background-color: #ddfade;">most </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-32" style="background-color: #d6f0ff;">recent record is always used. When writing a CDR attribute, all non-</span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-8" style="font-size: 100%; background-color: #ddfade;">finalized </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-33" style="background-color: #d6f0ff;">CDRs are updated.</span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-changed" id="changed-diff-35" style="background-color: #d6f0ff;">The </span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-36" style="background-color: #d6f0ff;">r</span></code> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-added" id="added-diff-9" style="font-size: 100%; background-color: #ddfade;"> option </span><span class="diff-html-changed" id="changed-diff-37" style="background-color: #d6f0ff;">has been removed, for the same reason as the </span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-38" style="background-color: #d6f0ff;">l</span></code> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span class="diff-html-added" id="added-diff-10" style="font-size: 100%; background-color: #ddfade;"> option</span><span class="diff-html-changed" id="changed-diff-39" style="background-color: #d6f0ff;">.</span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-40" style="background-color: #d6f0ff;">The </span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-41" style="background-color: #d6f0ff;">s</span></code></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-11" style="font-size: 100%; background-color: #ddfade;"> option </span><span class="diff-html-changed" id="changed-diff-42" style="background-color: #d6f0ff;">has been removed, as </span><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-43" style="background-color: #d6f0ff;">LOCKED</span></code></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-12" style="font-size: 100%; background-color: #ddfade;"> semantics </span><span class="diff-html-changed" id="changed-diff-44" style="background-color: #d6f0ff;">no longer exist in </span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-13" style="font-size: 100%; background-color: #ddfade;">the </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-45" style="background-color: #d6f0ff;">CDR engine.</span></span> </li>
</ul>
<h2 id="Newin12-CDR_PROP" class="diff-block-target diff-block-context"> <span style="line-height: 1.4285715;"><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-47" style="background-color: #d6f0ff;">CDR_PROP</span></a></span> </h2>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-49" style="background-color: #d6f0ff;">A new function </span><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-50" style="background-color: #d6f0ff;">CDR_PROP</span></a><span class="diff-html-changed" style="background-color: #d6f0ff;"> </span><span class="diff-html-changed" id="changed-diff-51" style="background-color: #d6f0ff;">has been added. This function lets you set </span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-14" style="font-size: 100%; background-color: #ddfade;">properties </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-52" style="background-color: #d6f0ff;">on a channel's active CDRs. This function is write-only. Properties </span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-15" style="font-size: 100%; background-color: #ddfade;">accept </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-53" style="background-color: #d6f0ff;">boolean values to set/clear them on the channel's CDRs. Valid </span></span> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-16" style="font-size: 100%; background-color: #ddfade;">properties </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-54" style="background-color: #d6f0ff;">include:</span></span>
<ul></ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-17" style="font-size: 100%; background-color: #ddfade;"> </span><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-56" style="background-color: #d6f0ff;">party_a</span></code></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-18" style="font-size: 100%; background-color: #ddfade;"> </span><span class="diff-html-changed" id="changed-diff-57" style="background-color: #d6f0ff;">- make this channel the preferred Party A in any CDR between </span></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-19" style="font-size: 100%; background-color: #ddfade;">two </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-58" style="background-color: #d6f0ff;">channels. If two channels have this property set, the creation time of </span></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-20" style="font-size: 100%; background-color: #ddfade;">the </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-59" style="background-color: #d6f0ff;">channel is used to determine who is Party A. Note that dialed channels </span></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-21" style="font-size: 100%; background-color: #ddfade;">are </span></span><span style="line-height: 1.4285715;"><span class="diff-html-added" style="font-size: 100%; background-color: #ddfade;">ever </span><span class="diff-html-changed" id="changed-diff-60" style="background-color: #d6f0ff;">Party A in a CDR.</span></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-62" style="background-color: #d6f0ff;">disable</span></code></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-22" style="font-size: 100%; background-color: #ddfade;"> </span><span class="diff-html-changed" id="changed-diff-63" style="background-color: #d6f0ff;">- disable CDRs on this channel. This is analogous to the </span><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-64" style="background-color: #d6f0ff;">NoCDR</span></a></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-23" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-65" style="background-color: #d6f0ff;">application when set to </span><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-66" style="background-color: #d6f0ff;">True</span></code><span class="diff-html-changed" id="changed-diff-67" style="background-color: #d6f0ff;">, and analogous to the </span></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-68" style="background-color: #d6f0ff;">e</span></code></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-24" style="font-size: 100%; background-color: #ddfade;"> option </span><span class="diff-html-changed" id="changed-diff-69" style="background-color: #d6f0ff;">in </span><a class="confluence-link unresolved" href="#" style="color: #326ca6; text-decoration: none"><span class="diff-html-changed" id="changed-diff-70" style="background-color: #d6f0ff;">ResetCDR</span></a></span> </li>
</ul> </li>
</ul>
<p class="diff-context-placeholder" style="font-size: 13px">...</p>
<ul class="diff-block-target diff-block-context">
<li style="font-size: 13px">
<ul>
<li style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-25" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-71" style="background-color: #d6f0ff;">when set to </span><code style="font-size: 13px"><span class="diff-html-changed" id="changed-diff-72" style="background-color: #d6f0ff;">False</span></code><span class="diff-html-changed" id="changed-diff-73" style="background-color: #d6f0ff;">.</span></span> </li>
</ul> </li>
</ul>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-26" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-75" style="background-color: #d6f0ff;">CHANNEL</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-42" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-27" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-77" style="background-color: #d6f0ff;">* Added the argument 'dtmf_features'. This sets the DTMF features that will </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-43" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">be</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-28" style="font-size: 100%; background-color: #ddfade;">be </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-78" style="background-color: #d6f0ff;">enabled on a channel when it enters a bridge. Allowed values are 'T', 'K',</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-29" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-79" style="background-color: #d6f0ff;">'H', 'W', and 'X', and are analogous to the parameters passed to the </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-45" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">Dial</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-30" style="font-size: 100%; background-color: #ddfade;">Dial </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-80" style="background-color: #d6f0ff;">application.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-31" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-81" style="background-color: #d6f0ff;">* Added the argument 'after_bridge_goto'. This can be set to a parseable </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-46" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">Goto</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-32" style="font-size: 100%; background-color: #ddfade;">Goto </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-82" style="background-color: #d6f0ff;">string, i.e., [[context],extension],priority. If set on a channel, if </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-47" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">a</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-33" style="font-size: 100%; background-color: #ddfade;">a </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-83" style="background-color: #d6f0ff;">channel leaves a bridge but is not hung up it will resume dialplan </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-48" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">execution</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-34" style="font-size: 100%; background-color: #ddfade;">execution </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-84" style="background-color: #d6f0ff;">at that location.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-35" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-85" style="background-color: #d6f0ff;">JITTERBUFFER</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-49" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-36" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-87" style="background-color: #d6f0ff;">* JITTERBUFFER now accepts an argument of 'disabled' which can be </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-50" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">used</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-37" style="font-size: 100%; background-color: #ddfade;">used </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-88" style="background-color: #d6f0ff;">to remove jitterbuffers previously set on a channel with JITTERBUFFER.</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-38" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-89" style="background-color: #d6f0ff;">The value of this setting is ignored when disabled is used for the argument.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-39" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-90" style="background-color: #d6f0ff;">PJSIP_DIAL_CONTACTS</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-52" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-40" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-92" style="background-color: #d6f0ff;">* A new function provided by chan_pjsip, this function can be used </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-53" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">in</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-41" style="font-size: 100%; background-color: #ddfade;">in </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-93" style="background-color: #d6f0ff;">conjunction with the Dial application to construct a dial string that </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-54" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">will</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-42" style="font-size: 100%; background-color: #ddfade;">will </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-94" style="background-color: #d6f0ff;">dial all contacts on an Address of Record associated with a chan_</span></span><span class="diff-html-removed" id="removed-diff-55" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">pjsip</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-43" style="font-size: 100%; background-color: #ddfade;">pjsip </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-95" style="background-color: #d6f0ff;">endpoint.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-44" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-96" style="background-color: #d6f0ff;">PJSIP_MEDIA_OFFER</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-56" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-45" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-98" style="background-color: #d6f0ff;">* Provided by chan_pjsip, this function sets the codecs to be </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-57" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">offerred </span><span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-46" style="font-size: 100%; background-color: #ddfade;">offered </span><span class="diff-html-changed" id="changed-diff-99" style="background-color: #d6f0ff;">on </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-58" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">the</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-47" style="font-size: 100%; background-color: #ddfade;">the </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-100" style="background-color: #d6f0ff;">outbound channel prior to dialing.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-48" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-101" style="background-color: #d6f0ff;">REDIRECTING</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-59" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-49" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-103" style="background-color: #d6f0ff;">* Redirecting reasons can now be set to arbitrary strings. This </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-60" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">means</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-50" style="font-size: 100%; background-color: #ddfade;">means </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-104" style="background-color: #d6f0ff;">that the REDIRECTING dialplan function can be used to set the </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-61" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">redirecting</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-51" style="font-size: 100%; background-color: #ddfade;">redirecting </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-105" style="background-color: #d6f0ff;">reason to any string. It also allows for custom strings to be read as </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-62" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">the</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-52" style="font-size: 100%; background-color: #ddfade;">the </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-106" style="background-color: #d6f0ff;">redirecting reason from SIP Diversion headers.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-53" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-107" style="background-color: #d6f0ff;">SPEECH_ENGINE</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-63" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-54" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-109" style="background-color: #d6f0ff;">* The SPEECH_ENGINE function now supports read operations. When read from, </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-64" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">it</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-55" style="font-size: 100%; background-color: #ddfade;">it </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-110" style="background-color: #d6f0ff;">will return the current value of the requested attribute.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-56" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-111" style="background-color: #d6f0ff;">Resources</span></span><span class="diff-html-removed" id="removed-diff-65" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-57" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-113" style="background-color: #d6f0ff;">res_agi (Asterisk Gateway Interface)</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-66" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-58" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-115" style="background-color: #d6f0ff;">* The manager event AGIExec has been split into AGIExecStart and AGIExecEnd.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-59" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-116" style="background-color: #d6f0ff;">* The manager event AsyncAGI has been split into AsyncAGIStart, AsyncAGIExec,</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-60" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-117" style="background-color: #d6f0ff;">and AsyncAGIEnd.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-61" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-118" style="background-color: #d6f0ff;">* The CONTROL STREAM FILE command now accepts an offsetms parameter. </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-68" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">This</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-62" style="font-size: 100%; background-color: #ddfade;">This </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-119" style="background-color: #d6f0ff;">will start the playback of the audio at the position specified. It </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-69" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">will</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-63" style="font-size: 100%; background-color: #ddfade;">will </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-120" style="background-color: #d6f0ff;">also return the final position of the file in 'endpos'.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-64" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-121" style="background-color: #d6f0ff;">* The CONTROL STREAM FILE command will now populate the </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-70" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">CPLAYBACKSTATUS</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-65" style="font-size: 100%; background-color: #ddfade;">CPLAYBACKSTATUS </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-122" style="background-color: #d6f0ff;">channel variable if the user stopped the file playback or if a </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-71" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">remote</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-66" style="font-size: 100%; background-color: #ddfade;">remote </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-123" style="background-color: #d6f0ff;">entity stopped the playback. If neither stopped the playback, it </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-72" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">will</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-67" style="font-size: 100%; background-color: #ddfade;">will </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-124" style="background-color: #d6f0ff;">indicate the overall success/failure of the playback. If stopped early,</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-68" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-125" style="background-color: #d6f0ff;">the final offset of the file will be set in the CPLAYBACKOFFSET </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-74" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">channel</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-69" style="font-size: 100%; background-color: #ddfade;">channel </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-126" style="background-color: #d6f0ff;">variable.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-70" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-127" style="background-color: #d6f0ff;">* The SAY ALPHA command now accepts an additional parameter to </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-75" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">control</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-71" style="font-size: 100%; background-color: #ddfade;">control </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-128" style="background-color: #d6f0ff;">whether it specifies the case of uppercase, lowercase, or all letters </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-76" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">to</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-72" style="font-size: 100%; background-color: #ddfade;">to </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-129" style="background-color: #d6f0ff;">provide functionality similar to SayAlphaCase.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-73" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-130" style="background-color: #d6f0ff;">res_ari (Asterisk RESTful Interface) (and others)</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-77" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-74" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-132" style="background-color: #d6f0ff;">* The Asterisk RESTful Interface (ARI) provides a mechanism to expose </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-78" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">and</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-75" style="font-size: 100%; background-color: #ddfade;">and </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-133" style="background-color: #d6f0ff;">control telephony primitives in Asterisk by remote client. This </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-79" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">includes</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-76" style="font-size: 100%; background-color: #ddfade;">includes </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-134" style="background-color: #d6f0ff;">channels, bridges, endpoints, media, and other fundamental concepts. </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-80" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">Users</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-77" style="font-size: 100%; background-color: #ddfade;">Users </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-135" style="background-color: #d6f0ff;">of ARI can develop their own communications applications, </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-81" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">controlling</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-78" style="font-size: 100%; background-color: #ddfade;">controlling </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-136" style="background-color: #d6f0ff;">multiple channels using an HTTP RESTful interface and receiving JSON </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-82" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">events</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-79" style="font-size: 100%; background-color: #ddfade;">events </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-137" style="background-color: #d6f0ff;">about the objects via a WebSocket connection. ARI can be configured </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-83" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">in</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-80" style="font-size: 100%; background-color: #ddfade;">in </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-138" style="background-color: #d6f0ff;">Asterisk via ari.conf. For more information on ARI, see</span></span> </p>
<p class="diff-block-context" style="font-size: 13px"> <a href="https://wiki.asterisk.org/wiki/x/0YCLAQ" rel="nofollow" style="color: #326ca6; text-decoration: none">https://wiki.asterisk.org/wiki/x/0YCLAQ</a> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> </p>
<table class="diff-macro bodyless" style="background-color: #f0f0f0;border: 1px solid #dddddd;margin: 10px 1px;padding: 0 2px 2px;width: 100%;margin: 5px 0; padding: 0; width: auto;">
<thead>
<tr>
<th class="diff-macro-title" style="background-color: transparent; text-align: left; font-weight: normal;padding: 5px;; font-size: 13px"><span class="icon macro-placeholder-icon" style="background-color: ;line-height: 20px;"><img src="https://wiki.asterisk.org/wiki/s/en_GB-1988229788/4252/6ac85e9b14675c5514a674e1aecae99c9505ed36.48/_/images/icons/macrobrowser/dropdown/anchor.png" style="padding-right: 5px; vertical-align: text-bottom;" /> </span>Anchor</th>
</tr>
</thead>
<tbody>
<tr>
<td class="diff-macro-properties" style="background-color: #fafafa; padding: 0 0 0 5px; font-size: 12px; text-align: left;padding: 0; border: 1px solid #dddddd;; font-size: 13px">
<table>
<tbody>
<tr>
<td style="background-color: #fafafa; padding: 0 0 0 5px; font-size: 12px; text-align: left;; font-size: 13px"></td>
<td style="background-color: #fafafa; padding: 0 0 0 5px; font-size: 12px; text-align: left;; font-size: 13px">res_parking</td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table>
<span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-140" style="background-color: #d6f0ff;">res_parking</span></span>
<p style="font-size: 13px"></p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-84" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">-------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-81" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-142" style="background-color: #d6f0ff;">* Parking has been extracted from the Asterisk core as a loadable module,</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-82" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-143" style="background-color: #d6f0ff;">res_parking. Configuration for parking is now provided by res_parking.conf.</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-83" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-144" style="background-color: #d6f0ff;">Configuration through features.conf is no longer supported.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-84" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-145" style="background-color: #d6f0ff;">* res_parking uses the configuration framework. If an invalid configuration </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-87" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">is</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-85" style="font-size: 100%; background-color: #ddfade;">is </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-146" style="background-color: #d6f0ff;">supplied, res_parking will fail to load or fail to reload. Previously,</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-86" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-147" style="background-color: #d6f0ff;">invalid configurations would generally be accepted, with certain </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-89" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">errors</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-87" style="font-size: 100%; background-color: #ddfade;">errors </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-148" style="background-color: #d6f0ff;">resulting in individually disabled parking lots.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">* Parked calls are now placed in bridges. While this is largely <span class="diff-html-removed" id="removed-diff-90" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">an</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> architectural </span><span class="diff-html-added" id="added-diff-88" style="font-size: 100%; background-color: #ddfade;">an architectural </span>change, it does have implications on how channels in a <span class="diff-html-removed" id="removed-diff-91" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">parking</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> lot </span><span class="diff-html-added" id="added-diff-89" style="font-size: 100%; background-color: #ddfade;">parking lot </span>are viewed. For example, commands that display channels in bridges <span class="diff-html-removed" id="removed-diff-92" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">will</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> now </span><span class="diff-html-added" id="added-diff-90" style="font-size: 100%; background-color: #ddfade;">will now </span>also display the channels in a parking lot.</p>
<p class="diff-block-target" style="font-size: 13px">* The order of arguments for the new parking applications have been modified.<br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> Timeout </span><span class="diff-html-added" id="added-diff-91" style="font-size: 100%; background-color: #ddfade;"> Timeout </span>and return context/exten/priority are now implemented as options,<br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> while </span><span class="diff-html-added" id="added-diff-92" style="font-size: 100%; background-color: #ddfade;"> while </span>the name of the parking lot is now the first parameter. See <span class="diff-html-removed" id="removed-diff-95" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">the</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> application </span><span class="diff-html-added" id="added-diff-93" style="font-size: 100%; background-color: #ddfade;">the application </span>documentation for Park, ParkedCall, and ParkAndAnnounce for <span class="diff-html-removed" id="removed-diff-96" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">more</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> in</span><span class="diff-html-added" id="added-diff-94" style="font-size: 100%; background-color: #ddfade;">more in</span>-depth information as well as syntax.</p>
<p class="diff-block-target" style="font-size: 13px">* Extensions are by default no longer automatically created in the dialplan <span class="diff-html-removed" id="removed-diff-97" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">to</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> park </span><span class="diff-html-added" id="added-diff-95" style="font-size: 100%; background-color: #ddfade;">to park </span>calls or pickup parked calls. Generation of dialplan extensions can <span class="diff-html-removed" id="removed-diff-98" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">be</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> enabled </span><span class="diff-html-added" id="added-diff-96" style="font-size: 100%; background-color: #ddfade;">be enabled </span>using the 'parkext' configuration option.</p>
<p class="diff-block-target" style="font-size: 13px">* ADSI functionality for parking is no longer supported. The 'adsipark'<br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> configuration </span><span class="diff-html-added" id="added-diff-97" style="font-size: 100%; background-color: #ddfade;"> configuration </span>option has been removed as a result.</p>
<p class="diff-block-target" style="font-size: 13px">* The PARKINGSLOT channel variable has been deprecated in favor <span class="diff-html-removed" id="removed-diff-100" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">of</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> PARKING</span><span class="diff-html-added" id="added-diff-98" style="font-size: 100%; background-color: #ddfade;">of PARKING</span>_SPACE to match the naming scheme of the new system.</p>
<p class="diff-block-target" style="font-size: 13px">* PARKING_SPACE and PARKEDLOT channel variables will now be set for a <span class="diff-html-removed" id="removed-diff-101" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">parked</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> channel </span><span class="diff-html-added" id="added-diff-99" style="font-size: 100%; background-color: #ddfade;">parked channel </span>even when the configuration option 'comebactoorigin' is enabled.</p>
<p class="diff-block-target" style="font-size: 13px">* A new CLI command 'parking show' has been added. This allows a user <span class="diff-html-removed" id="removed-diff-102" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">to</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> inspect </span><span class="diff-html-added" id="added-diff-100" style="font-size: 100%; background-color: #ddfade;">to inspect </span>the parking lots that are currently in use.<br /> <span class="diff-html-added" id="added-diff-101" style="font-size: 100%; background-color: #ddfade;"> </span>'parking show <parkinglot>' will also show the parked calls in a <span class="diff-html-removed" id="removed-diff-104" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">specific</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> parking </span><span class="diff-html-added" id="added-diff-102" style="font-size: 100%; background-color: #ddfade;">specific parking </span>lot.</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">* The CLI command 'parkedcalls' is now deprecated in favor <span class="diff-html-removed" id="removed-diff-105" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">of</span> <br /> <span class="diff-html-added" id="added-diff-103" style="font-size: 100%; background-color: #ddfade;">of </span>'parking show <parkinglot>'.</p>
<p class="diff-block-target" style="font-size: 13px">* The AMI command 'ParkedCalls' will now accept a 'ParkingLot' argument <span class="diff-html-removed" id="removed-diff-106" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">which</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> can </span><span class="diff-html-added" id="added-diff-104" style="font-size: 100%; background-color: #ddfade;">which can </span>be used to get a list of parked calls for a specific parking lot.</p>
<p class="diff-block-target" style="font-size: 13px">* The AMI command 'Park' field 'Channel2' has been deprecated and <span class="diff-html-removed" id="removed-diff-107" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">replaced</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> with </span><span class="diff-html-added" id="added-diff-105" style="font-size: 100%; background-color: #ddfade;">replaced with </span>'TimeoutChannel'. If both 'Channel2' and 'TimeoutChannel' <span class="diff-html-removed" id="removed-diff-108" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">are</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> specified</span><span class="diff-html-added" id="added-diff-106" style="font-size: 100%; background-color: #ddfade;">are specified</span>, 'TimeoutChannel' will be used. The field 'TimeoutChannel' is <span class="diff-html-removed" id="removed-diff-109" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">no</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> longer </span><span class="diff-html-added" id="added-diff-107" style="font-size: 100%; background-color: #ddfade;">no longer </span>a required argument.</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">* The ParkAndAnnounce application is now provided through res_parking <span class="diff-html-removed" id="removed-diff-110" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">instead</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> of </span><span class="diff-html-added" id="added-diff-108" style="font-size: 100%; background-color: #ddfade;">instead of </span>through the separate app_parkandannounce module.</p>
<p class="diff-block-target" style="font-size: 13px">* ParkAndAnnounce will no longer go to the next position in dialplan on <span class="diff-html-removed" id="removed-diff-111" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">timeout</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> by </span><span class="diff-html-added" id="added-diff-109" style="font-size: 100%; background-color: #ddfade;">timeout by </span>default. Instead, it will follow the timeout rules of the parking lot. <span class="diff-html-removed" id="removed-diff-112" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">The</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> old </span><span class="diff-html-added" id="added-diff-110" style="font-size: 100%; background-color: #ddfade;">The old </span>behavior can be reproduced by using the 'c' option.</p>
<p class="diff-block-target" style="font-size: 13px">* Dynamic parking lots will now fail to be created under the <span class="diff-html-removed" id="removed-diff-113" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">following</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> conditions</span><span class="diff-html-added" id="added-diff-111" style="font-size: 100%; background-color: #ddfade;">following conditions</span>:</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">- if the parking lot specified by PARKINGDYNAMIC does not exist</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">- if they require exclusive park and parkedcall extensions which <span class="diff-html-removed" id="removed-diff-114" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">overlap</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> with </span><span class="diff-html-added" id="added-diff-112" style="font-size: 100%; background-color: #ddfade;">overlap with </span>existing parking lots.</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">* Dynamic parking lots will be cleared on reload for dynamic parking lots <span class="diff-html-removed" id="removed-diff-115" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">that</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> currently </span><span class="diff-html-added" id="added-diff-113" style="font-size: 100%; background-color: #ddfade;">that currently </span>contain no calls. Dynamic parking lots containing parked <span class="diff-html-removed" id="removed-diff-116" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">calls</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> will </span><span class="diff-html-added" id="added-diff-114" style="font-size: 100%; background-color: #ddfade;">calls will </span>persist through the reloads without alteration.</p>
<p class="diff-block-target" style="font-size: 13px">* If 'parkext_exclusive' is set for a parking lot and that extension <span class="diff-html-removed" id="removed-diff-117" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">is</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> already </span><span class="diff-html-added" id="added-diff-115" style="font-size: 100%; background-color: #ddfade;">is already </span>in use when that parking lot tries to register it, this is <span class="diff-html-removed" id="removed-diff-118" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">now</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> considered </span><span class="diff-html-added" id="added-diff-116" style="font-size: 100%; background-color: #ddfade;">now considered </span>a parking system configuration error. Configurations which <span class="diff-html-removed" id="removed-diff-119" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">do</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> this </span><span class="diff-html-added" id="added-diff-117" style="font-size: 100%; background-color: #ddfade;">do this </span>will be rejected.</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px">* Added channel variable PARKER_FLAT. This contains the name of the <span class="diff-html-removed" id="removed-diff-120" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">extension</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> that </span><span class="diff-html-added" id="added-diff-118" style="font-size: 100%; background-color: #ddfade;">extension that </span>would be used if 'comebacktoorigin' is enabled. This can be useful <span class="diff-html-removed" id="removed-diff-121" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">when</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> comebacktoorigin </span><span class="diff-html-added" id="added-diff-119" style="font-size: 100%; background-color: #ddfade;">when comebacktoorigin </span>is disabled, but the dialplan or an external <span class="diff-html-removed" id="removed-diff-122" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">control</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> mechanism </span><span class="diff-html-added" id="added-diff-120" style="font-size: 100%; background-color: #ddfade;">control mechanism </span>wants to use the extension in the park-dial context that <span class="diff-html-removed" id="removed-diff-123" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">was</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> generated </span><span class="diff-html-added" id="added-diff-121" style="font-size: 100%; background-color: #ddfade;">was generated </span>to re-dial the parker on timeout.</p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-151" style="background-color: #d6f0ff;">res_pjsip (and many others)</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-124" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-122" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-153" style="background-color: #d6f0ff;">* A large number of resource modules make up the SIP stack based on pjsip.</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-123" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-154" style="background-color: #d6f0ff;">The chan_pjsip channel driver users these resource modules to </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-126" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">provide</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-124" style="font-size: 100%; background-color: #ddfade;">provide </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-155" style="background-color: #d6f0ff;">various SIP functionality in Asterisk. The majority of configuration </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-127" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">for</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-125" style="font-size: 100%; background-color: #ddfade;">for </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-156" style="background-color: #d6f0ff;">these modules is performed in pjsip.conf. Other modules may use </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-128" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">their</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-126" style="font-size: 100%; background-color: #ddfade;">their </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-157" style="background-color: #d6f0ff;">own configuration files.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-127" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-158" style="background-color: #d6f0ff;">res_rtp_asterisk</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-129" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-128" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-160" style="background-color: #d6f0ff;">* ICE/STUN/TURN support in res_rtp_asterisk has been made optional. To </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-130" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">enable</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-129" style="font-size: 100%; background-color: #ddfade;">enable </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-161" style="background-color: #d6f0ff;">them, an Asterisk-specific version of PJSIP needs to be installed.</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-130" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-162" style="background-color: #d6f0ff;">Tarballs are available from </span></span><a href="https://github.com/asterisk/pjproject/tags/" style="line-height: 1.4285715;; color: #326ca6; text-decoration: none" class="external-link" rel="nofollow"><span class="diff-html-changed" id="changed-diff-163" style="background-color: #d6f0ff;">https://github.com/asterisk/pjproject/tags/</span></a><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-164" style="background-color: #d6f0ff;">.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-131" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-165" style="background-color: #d6f0ff;">res_statsd/res_chan_stats</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-132" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-132" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-167" style="background-color: #d6f0ff;">* A new resource module, res_statsd, has been added, which acts as a </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-133" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">statsd</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-133" style="font-size: 100%; background-color: #ddfade;">statsd </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-168" style="background-color: #d6f0ff;">client. This module allows Asterisk to publish statistics to a </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-134" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">statsd</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-134" style="font-size: 100%; background-color: #ddfade;">statsd </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-169" style="background-color: #d6f0ff;">server. In conjunction with res_chan_stats, it will publish statistics </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-135" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">about</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-135" style="font-size: 100%; background-color: #ddfade;">about </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-170" style="background-color: #d6f0ff;">channels to the statsd server. It can be configured via res_statsd.conf.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-136" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-171" style="background-color: #d6f0ff;">res_xmpp</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-136" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-137" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-173" style="background-color: #d6f0ff;">* Device state for XMPP buddies is now available using the following format:</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-138" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-174" style="background-color: #d6f0ff;">XMPP/<client name>/<buddy </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-138" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">address></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-139" style="font-size: 100%; background-color: #ddfade;">address> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-175" style="background-color: #d6f0ff;">If any resource is available the device state is considered to be not in use.</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-140" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-176" style="background-color: #d6f0ff;">If no resources exist or all are unavailable the device state is </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-140" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">considered</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-141" style="font-size: 100%; background-color: #ddfade;">considered </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-177" style="background-color: #d6f0ff;">to be unavailable.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-142" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-178" style="background-color: #d6f0ff;">Scripts</span></span><span class="diff-html-removed" id="removed-diff-141" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-143" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-180" style="background-color: #d6f0ff;">Realtime/Database Scripts</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-142" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-144" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-182" style="background-color: #d6f0ff;">* Asterisk previously included example db schemas in the contrib/realtime/</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-145" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-183" style="background-color: #d6f0ff;">directory of the source tree. This has been replaced by a set of </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-144" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">database</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-146" style="font-size: 100%; background-color: #ddfade;">database </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-184" style="background-color: #d6f0ff;">migrations using the Alembic framework. This allows you to use alembic </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-145" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">to </span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-147" style="font-size: 100%; background-color: #ddfade;">to </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-185" style="background-color: #d6f0ff;">initialize the database for you. It will also serve as a database </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-146" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">migration</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-148" style="font-size: 100%; background-color: #ddfade;">migration </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-186" style="background-color: #d6f0ff;">tool when upgrading Asterisk in the future.</span></span><span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-149" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-187" style="background-color: #d6f0ff;">See contrib/ast-db-manage/README.md for more details.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-148" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">safe_asterisk</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">------------------</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> * The safe_asterisk script will now install over previously installations.</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> In previous versions of Asterisk, once installed a 'make install' would</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> skip over safe_asterisk if it was already installed.</span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">* Certain options in safe_asterisk can now be configured from the</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> safe_asterisk.conf file. A sample version of this is located in the</span> <br /> <span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> configs/ folder.</span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-150" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-188" style="background-color: #d6f0ff;">sip_to_res_pjsip.py</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-149" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">-------------------</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-151" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-190" style="background-color: #d6f0ff;">* A new script has been added in the contrib/scripts/sip_to_res_pjsip folder.</span></span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-152" style="font-size: 100%; background-color: #ddfade;"> </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-191" style="background-color: #d6f0ff;">This python script will convert an existing sip.conf file to </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-151" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">a</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-153" style="font-size: 100%; background-color: #ddfade;">a </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-192" style="background-color: #d6f0ff;">pjsip.conf file, for use with the chan_pjsip channel driver. This </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-152" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">script</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-154" style="font-size: 100%; background-color: #ddfade;">script </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-193" style="background-color: #d6f0ff;">is meant to be an aid in converting an existing chan_sip configuration </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-153" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">to</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-155" style="font-size: 100%; background-color: #ddfade;">to </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-194" style="background-color: #d6f0ff;">a chan_pjsip configuration, but it is expected that configuration </span></span><span class="diff-html-removed" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span><span class="diff-html-removed" id="removed-diff-154" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;">beyond</span> <br /> <span style="line-height: 1.4285715;"><span class="diff-html-added" id="added-diff-156" style="font-size: 100%; background-color: #ddfade;">beyond </span></span><span style="line-height: 1.4285715;"><span class="diff-html-changed" id="changed-diff-195" style="background-color: #d6f0ff;">what the script provides will be needed.</span></span> </p>
<p class="diff-block-target diff-block-context" style="font-size: 13px"> <span class="diff-html-removed" id="removed-diff-155" style="font-size: 100%; background-color: #ffe7e7; text-decoration: line-through;"> </span> </p>
<p class="diff-block-context" style="font-size: 13px"> <span style="line-height: 1.4285715;"> <br /> </span> </p>
</div>
</div>
</div>
<table id="email-actions" class="email-metadata" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-top: 1px solid #bbb; color: #505050; margin: 8px 0 0 0; padding: 0; color: #505050">
<tbody>
<tr>
<td class="left" valign="top" style="font-size: 13px; padding-top: 8px; max-width: 45%; text-align: left"> <span class="email-list-item"><a href="https://wiki.asterisk.org/wiki/display/AST/New+in+12" style="color: #326ca6; text-decoration: none">View Online</a> </span> <span class="email-list-divider" style="color: #505050; padding: 0 0.350em">·</span> <span class="email-list-item"><a href="https://wiki.asterisk.org/wiki/plugins/likes/like.action?contentId=26476750" style="color: #326ca6; text-decoration: none">Like</a> </span> <span class="email-list-divider" style="color: #505050; padding: 0 0.350em">·</span> <span class="email-list-item"><a href="https://wiki.asterisk.org/wiki/pages/diffpagesbyversion.action?pageId=26476750&revisedVersion=5&originalVersion=4" style="color: #326ca6; text-decoration: none">View Changes</a> </span> <span class="email-list-divider" style="color: #505050; padding: 0 0.350em">·</span> <span class="email-list-item"><a href="https://wiki.asterisk.org/wiki/display/AST/New+in+12?showComments=true&showCommentArea=true#addcomment" style="color: #326ca6; text-decoration: none">Add Comment</a> </span> </td>
<td class="right" width="50%" valign="top" style="font-size: 13px; padding-top: 8px; text-align: right"> <span class="email-list-item"><a href="https://wiki.asterisk.org/wiki/users/removespacenotification.action?spaceKey=AST" style="color: #326ca6; text-decoration: none">Stop watching space</a> </span> <span class="email-list-divider" style="color: #505050; padding: 0 0.350em">·</span> <span class="email-list-item"><a href="https://wiki.asterisk.org/wiki/users/editmyemailsettings.action" style="color: #326ca6; text-decoration: none">Manage Notifications</a> </span> </td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td id="email-footer" align="center" style="font-size: 13px; padding: 0 16px 32px 16px; margin: 0"> <small style="font-size: 11px"> This message was sent by <a class="email-footer-link" style="color:#505050;font-size:11px;text-decoration:none;; color: #326ca6; text-decoration: none; color: #505050; font-size: 11px" href="http://www.atlassian.com/software/confluence">Atlassian Confluence</a> 5.1.5, <a class="email-footer-link" style="color:#505050;font-size:11px;text-decoration:none;; color: #326ca6; text-decoration: none; color: #505050; font-size: 11px" href="http://www.atlassian.com/software/confluence/overview/team-collaboration-software?utm_source=email-footer">Team Collaboration Software</a> </small> </td>
</tr>
</tbody>
</table>
</body>
</html>