<html>
<head>
    <base href="https://wiki.asterisk.org/wiki">
            <link rel="stylesheet" href="/wiki/s/en/2176/18/9/_/styles/combined.css?spaceKey=AST&amp;forWysiwyg=true" type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://wiki.asterisk.org/wiki/display/AST/New+in+11">New in 11</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://wiki.asterisk.org/wiki/display/~mjordan">Matt Jordan</a>
    </h4>
        <br/>
                         <h4>Changes (1)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >   longer necessray to control the order that the &#39;permit&#39; and &#39;deny&#39; columns are <br>   returned from queries. <br></td></tr>
            <tr><td class="diff-changed-lines" >* DUNDi now allows the built in variables <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">${NUMBER}, ${IPADDR}</span> <span class="diff-added-words"style="background-color: #dfd;">$\{NUMBER\}, $\{IPADDR\}</span> and <span class="diff-changed-words">$<span class="diff-added-chars"style="background-color: #dfd;">\</span>{SECRET<span class="diff-added-chars"style="background-color: #dfd;">\</span>}</span> to <br></td></tr>
            <tr><td class="diff-unchanged" >   be used within the dynamic weight attribute when specifying a mapping. <br> * CEL backends can now be configured to show &quot;USER_DEFINED&quot; in the EventName <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h1><a name="Newin11-BuildSystem"></a>Build System</h1>
<ul>
        <li>The Asterisk build system will now build and install a shared library<br/>
   (libasteriskssl.so) used to wrap various initialization and shutdown functions<br/>
   from the libssl and libcrypto libraries provided by OpenSSL. This is done so<br/>
   that Asterisk can ensure that these functions do <b>not</b> get called by any<br/>
   modules that are loaded into Asterisk, since they should only be called once<br/>
   in any single process. If desired, this feature can be disabled by supplying<br/>
   the "--disable-asteriskssl" option to the configure script.</li>
        <li>A new make target, 'full', has been added to the Makefile.  This performs<br/>
   the same compilation actions as make all, but will also scan the entirety of<br/>
   each source file for documentation.  This option is needed to generate AMI<br/>
   event documentation.  Note that your system must have Python in order for<br/>
   this make target to succeed.</li>
        <li>The optimization portion of the build system has been reworked to avoid<br/>
   broken builds on certain architectures.  All architecture-specific<br/>
   optimization has been removed in favor of using -march=native to allow gcc<br/>
   to detect the environment in which it is running when possible.  This can<br/>
   be toggled as BUILD_NATIVE under "Compiler Flags" in menuselect.</li>
        <li>BUILD_CFLAGS and BUILD_LDFLAGS can now be passed to menuselect, e.g.,<br/>
   make BUILD_CFLAGS="whatever" BUILD_LDFLAGS="whatever"</li>
        <li>Remove "asterisk/version.h" in favor of "asterisk/ast_version.h".  If you<br/>
   previously parsed the header file to obtain the version of Asterisk, you<br/>
   will now have to go through Asterisk to get the version information.</li>
</ul>



<h1><a name="Newin11-Applications"></a>Applications</h1>

<h2><a name="Newin11-Bridge"></a>Bridge</h2>
<ul>
        <li>Added 'F()' option. Similar to the dial option, this can be supplied with<br/>
   arguments indicating where the callee should go after the caller is hung up,<br/>
   or without options specified, the priority after the Queue will be used.</li>
</ul>


<h2><a name="Newin11-ConfBridge"></a>ConfBridge</h2>
<ul>
        <li>Added menu action admin_toggle_mute_participants.  This will mute / unmute<br/>
   all non-admin participants on a conference.  The confbridge configuration<br/>
   file also allows for the default sounds played to all conference users when<br/>
   this occurs to be overriden using sound_participants_unmuted and<br/>
   sound_participants_muted.</li>
        <li>Added menu action participant_count.  This will playback the number of<br/>
   current participants in a conference.</li>
        <li>Added announcement configuration option to user profile. If set the sound<br/>
   file will be played to the user, and only the user, upon joining the<br/>
   conference bridge.</li>
</ul>


<h2><a name="Newin11-Dial"></a>Dial</h2>
<ul>
        <li>Added 'b' and 'B' options to Dial that execute a Gosub on callee and caller<br/>
   channels respectively before the callee channels are called.</li>
</ul>



<h2><a name="Newin11-ExternalIVR"></a>ExternalIVR</h2>
<ul>
        <li>Added support for IPv6.</li>
        <li>Add interrupt ('I') command to ExternalIVR.  Sending this command from an<br/>
   external process will cause the current playlist to be cleared, including<br/>
   stopping any audio file that is currently playing.  This is useful when you<br/>
   want to interrupt audio playback only when specific DTMF is entered by the<br/>
   caller.</li>
</ul>



<h2><a name="Newin11-FollowMe"></a>FollowMe</h2>
<ul>
        <li>A new option, 'I' has been added to app_followme. By setting this option,<br/>
   Asterisk will not update the caller with connected line changes when they<br/>
   occur.  This is similar to app_dial and app_queue.</li>
        <li>The 'N' option is now ignored if the call is already answered.</li>
        <li>Added 'b' and 'B' options to FollowMe that execute a Gosub on callee<br/>
   and caller channels respectively before the callee channels are called.</li>
        <li>The winning FollowMe outgoing call is now put on hold if the caller put it on<br/>
   hold.</li>
</ul>


<h2><a name="Newin11-MixMonitor"></a>MixMonitor</h2>
<ul>
        <li>MixMonitor hooks now have IDs associated with them which can be used to<br/>
   assign a target to StopMixMonitor. Use of MixMonitor's i(variable) option<br/>
   will allow storage of the MixMontior ID in a channel variable. StopMixmonitor<br/>
   now accepts that ID as an argument.</li>
        <li>Added 'm' option, which stores a copy of the recording as a voicemail in the<br/>
   indicated mailboxes.</li>
</ul>


<h2><a name="Newin11-MySQL"></a>MySQL</h2>
<ul>
        <li>The connect action in app_mysql now allows you to specify a port number to<br/>
   connect to.  This is useful if you run a MySQL server on a non-standard<br/>
   port number.</li>
</ul>


<h2><a name="Newin11-OSPApplications"></a>OSP Applications</h2>
<ul>
        <li>Increased the default number of allowed destinations from 5 to 12.</li>
</ul>


<h2><a name="Newin11-Page"></a>Page</h2>
<ul>
        <li>The app_page application now no longer depends on DAHDI or app_meetme.  It<br/>
   has been re-architected to use app_confbridge internally.</li>
</ul>


<h2><a name="Newin11-Queue"></a>Queue</h2>
<ul>
        <li>Added queue options autopausebusy and autopauseunavail for automatically<br/>
   pausing a queue member when their device reports busy or congestion.</li>
        <li>The 'ignorebusy' option for queue members has been deprecated in favor of<br/>
   the option 'ringinuse. Also a 'queue set ringinuse' CLI command has been<br/>
   added as well as an AMI action 'QueueMemberRingInUse' to set this variable on a<br/>
   per interface basis. Individual ringinuse values can now be set in<br/>
   queues.conf via an argument to member definitions. Lastly, the queue<br/>
   'ringinuse' setting now only determines defaults for the per member<br/>
   'ringinuse' setting and does not override per member settings like it does<br/>
   in earlier versions.</li>
        <li>Added 'F()' option. Similar to the dial option, this can be supplied with<br/>
   arguments indicating where the callee should go after the caller is hung up,<br/>
   or without options specified, the priority after the Queue will be used.</li>
        <li>Added new option log_member_name_as_agent, which will cause the membername to<br/>
   be logged in the agent field for ADDMEMBER and REMOVEMEMBER queue events if a<br/>
   state_interface has been set.</li>
</ul>


<h2><a name="Newin11-SayUnixTime"></a>SayUnixTime</h2>
<ul>
        <li>Added 'j' option to SayUnixTime. SayUnixTime no longer auto jumps to extension<br/>
   when receiving DTMF.  Use the 'j' option to enable extension jumping. Also<br/>
   changed arguments to SayUnixTime so that every option is truly optional even<br/>
   when using multiple options (so that j option could be used without having to<br/>
   manually specify timezone and format) There are other benefits, e.g., format<br/>
   can now be used without specifying time zone as well.</li>
</ul>


<h2><a name="Newin11-Voicemail"></a>Voicemail</h2>
<ul>
        <li>Addition of the VM_INFO function - see Function changes.</li>
        <li>The imapserver, imapport, and imapflags configuration options can now be<br/>
   overriden on a user by user basis.</li>
        <li>When voicemail plays a message's envelope with saycid set to yes, when<br/>
   reaching the caller id field it will play a recording of a file with the same<br/>
   base name as the sender's callerid if there is a similarly named file in<br/>
   &lt;astspooldir&gt;/recordings/callerids/</li>
        <li>Voicemails now contains a unique message identifier "msg_id", which is stored<br/>
   in the message envelope with the sound files.  IMAP backends will now store<br/>
   the message identifiers with a header of "X-Asterisk-VM-Message-ID".  ODBC<br/>
   backends will store the message identifier in a "msg_id" column.  See<br/>
   UPGRADE.txt for more information.</li>
        <li>Added VoiceMailPlayMsg application.  This application will play a single<br/>
   voicemail message from a mailbox.  The result of the application, SUCCESS or<br/>
   FAILED, is stored in the channel variable VOICEMAIL_PLAYBACKSTATUS.</li>
</ul>


<h2><a name="Newin11-Functions"></a>Functions</h2>
<ul>
        <li>Hangup handlers can be attached to channels using the CHANNEL() function.<br/>
   Hangup handlers will run when the channel is hung up similar to the h<br/>
   extension. The hangup_handler_push option will push a GoSub compatible<br/>
   location in the dialplan onto the channel's hangup handler stack.  The<br/>
   hangup_handler_pop option will remove the last added location, and optionally<br/>
   replace it with a new GoSub compatible location.  The hangup_handler_wipe<br/>
   option will remove all locations on the stack, and optionally add a new<br/>
   location.</li>
        <li>The expression parser now recognizes the ABS() absolute value function,<br/>
   which will convert negative floating point values to positive values.</li>
        <li>FAXOPT(faxdetect) will enable a generic fax detect framehook for dialplan<br/>
   control of faxdetect.</li>
        <li>Addition of the VM_INFO function that can be used to retrieve voicemail<br/>
   user information, such as the email address and full name.<br/>
   The MAILBOX_EXISTS dialplan function has been deprecated in favour of<br/>
   VM_INFO.</li>
        <li>The REDIRECTING function now supports the redirecting original party id<br/>
   and reason.</li>
        <li>Two new functions have been added: FEATURE() and FEATUREMAP().  FEATURE()<br/>
   lets you set some of the configuration options from the <a href="/wiki/pages/createpage.action?spaceKey=AST&amp;title=general&amp;linkCreation=true&amp;fromPageId=20840465" class="createlink">general</a> section<br/>
   of features.conf on a per-channel basis.  FEATUREMAP() lets you customize<br/>
   the key sequence used to activate built-in features, such as blindxfer,<br/>
   and automon.  See the built-in documentation for details.</li>
        <li>MESSAGE(from) for incoming SIP messages now returns "display-name" &lt;uri&gt;<br/>
   instead of simply the uri.  This is the format that MessageSend() can use<br/>
   in the from parameter for outgoing SIP messages.</li>
        <li>Added the PRESENCE_STATE function.  This allows retrieving presence state<br/>
   information from any presence state provider.  It also allows setting<br/>
   presence state information from a CustomPresence presence state provider.<br/>
   See AMI/CLI changes for related commands.</li>
        <li>Added the AMI_CLIENT function to make manager account attributes available<br/>
   to the dialplan. It currently supports returning the current number of<br/>
   active sessions for a given account.</li>
</ul>


<h1><a name="Newin11-ChannelDrivers"></a>Channel Drivers</h1>

<h2><a name="Newin11-chanlocal"></a>chan_local</h2>
<ul>
        <li>Added a manager event "LocalBridge" for local channel call bridges between<br/>
   the two pseudo-channels created.</li>
</ul>


<h2><a name="Newin11-chandahdi"></a>chan_dahdi</h2>
<ul>
        <li>Added dialtone_detect option for analog ports to disconnect incoming<br/>
   calls when dialtone is detected.</li>
        <li>Added option colp_send to send ISDN connected line information.  Allowed<br/>
   settings are block, to not send any connected line information; connect, to<br/>
   send connected line information on initial connect; and update, to send<br/>
   information on any update during a call.  Default is update.</li>
        <li>Add options namedcallgroup and namedpickupgroup to support installations<br/>
   where a higher number of groups (&gt;64) is required.</li>
</ul>


<h2><a name="Newin11-chanmotif"></a>chan_motif</h2>
<ul>
        <li>A new channel driver named chan_motif has been added which provides support for<br/>
   Google Talk and Jingle in a single channel driver. This new channel driver includes<br/>
   support for both audio and video, RFC2833 DTMF, all codecs supported by Asterisk,<br/>
   hold, unhold, and ringing notification. It is also compliant with the current Jingle<br/>
   specification, current Google Jingle specification, and the original Google Talk<br/>
   protocol.</li>
</ul>


<h2><a name="Newin11-chanooh323"></a>chan_ooh323</h2>
<ul>
        <li>Added NAT support for RTP.  Setting in config is 'nat', which can be set<br/>
   globally and overriden on a peer by peer basis.</li>
        <li>Direct media functionality has been added. Options in config are:<br/>
   directmedia (directrtp) and directrtpsetup (earlydirect)</li>
        <li>ChannelUpdate events now contain a CallRef header.</li>
</ul>



<h2><a name="Newin11-chansip"></a>chan_sip</h2>
<ul>
        <li>Asterisk will no longer substitute CID number for CID name in the display<br/>
   name field if CID number exists without a CID name. This change improves<br/>
   compatibility with certain device features such as Avaya IP500's directory<br/>
   lookup service.</li>
        <li>A new setting for autocreatepeer (autocreatepeer=persistent) allows peers<br/>
   created using that setting to not be removed during SIP reload.</li>
        <li>Added settings recordonfeature and recordofffeature.  When receiving an INFO<br/>
   request with a "Record:" header, this will turn the requested feature on/off.<br/>
   Allowed values are 'automon', 'automixmon', and blank to disable.  Note that<br/>
   dynamic features must be enabled and configured properly on the requesting<br/>
   channel for this to function properly.</li>
        <li>Add support to realtime for the 'callbackextension' option.</li>
        <li>When multiple peers exist with the same address, but differing<br/>
   callbackextension options, incoming requests that are matched by address<br/>
   will be matched to the peer with the matching callbackextension if it is<br/>
   available.</li>
        <li>Two new NAT options, auto_force_rport and auto_comedia, have been added<br/>
   which set the force_rport and comedia options automatically if Asterisk<br/>
   detects that an incoming SIP request crossed a NAT after being sent by<br/>
   the remote endpoint.</li>
        <li>NAT settings are now a combinable list of options. The equivalent of the<br/>
   deprecated nat=yes is nat=force_rport,comedia. nat=no behaves as before.</li>
        <li>Adds an option send_diversion which can be disabled to prevent<br/>
   diversion headers from automatically being added to INVITE requests.</li>
        <li>Add support for lightweight NAT keepalive. If enabled a blank packet will<br/>
   be sent to the remote host at a given interval to keep the NAT mapping open.<br/>
   This can be enabled using the keepalive configuration option.</li>
        <li>Add option 'tonezone' to specify country code for indications.  This option<br/>
   can be set both globally and overridden for specific peers.</li>
        <li>The SIP Security Events Framework now supports IPv6.</li>
        <li>Add a new setting for directmedia, 'outgoing', to alleviate INVITE glares<br/>
   between multiple user agents. When set, for directmedia reinvites,<br/>
   Asterisk will not send an immediate reinvite on an incoming call leg. This<br/>
   option is useful when peered with another SIP user agent that is known to<br/>
   send immediate direct media reinvites upon call establishment.</li>
        <li>Add support for WebSocket transport. This can be configured using 'ws' or 'wss'<br/>
   as the transport.</li>
        <li>Add options subminexpiry and submaxexpiry to set limits of subscription<br/>
   timer independently from registration timer settings. The setting of the<br/>
   registration timer limits still is done by options minexpiry, maxexpiry<br/>
   and defaultexpiry. For backwards compatibility the setting of minexpiry<br/>
   and maxexpiry also is used to configure the subscription timer limits if<br/>
   subminexpiry and submaxexpiry are not set in sip.conf.</li>
        <li>Set registration timer limits to default values when reloading sip<br/>
   configuration and values are not set by configuration.</li>
        <li>Add options namedcallgroup and namedpickupgroup to support installations<br/>
   where a higher number of groups (&gt;64) is required.</li>
        <li>When a MESSAGE request is received, the address the request was received from<br/>
   is now saved in the SIP_RECVADDR variable.</li>
        <li>Add ANI2/OLI parsing for SIP.  The "From" header in INVITE requests is now<br/>
   parsed for the presence of "isup-oli", "ss7-oli", or "oli" tags.  If present,<br/>
   the ANI2/OLI information is set on the channel, which can be retrieved using<br/>
   the CALLERID function.</li>
        <li>Peers can now be configured to support negotiation of ICE candidates using<br/>
   the setting icesupport.  See res_rtp_asterisk changes for more information.</li>
        <li>Added support for format attribute negotiation.  See the Codecs changes for<br/>
   more information.</li>
        <li>Extra headers specified with SIPAddHeader are sent with the REFER message<br/>
   when using Transfer application. See refer_addheaders in sip.conf.sample.</li>
</ul>


<h2><a name="Newin11-chanskinny"></a>chan_skinny</h2>
<ul>
        <li>Added skinny version 17 protocol support.</li>
</ul>


<h2><a name="Newin11-chanunistim"></a>chan_unistim</h2>
<ul>
        <li>Added ability to use multiple lines for a single phone.  This allows multiple<br/>
   calls to occur on a single phone, using callwaiting and switching between calls.</li>
        <li>Added option 'sharpdial' allowing end dialing by pressing # key</li>
        <li>Added option 'interdigit_timer' to control phone dial timeout</li>
        <li>Added options 'cwstyle', 'cwvolume' controlling callwaiting appearance</li>
        <li>Added global 'debug' option, that enables debug in channel driver</li>
        <li>Added ability to translate on-screen menu in multiple languages. Tested on<br/>
   Russian languages.  Supported encodings: ISO 8859-1, ISO 8859-2, ISO 8859-4,<br/>
   ISO 8859-5, ISO 2022-JP. Language controlled by 'language' and on-screen<br/>
   menu of phone</li>
        <li>In addition to English added French and Russian languages for on-screen menus</li>
        <li>Reworked dialing number input: added dialing by timeout, immediate dial on<br/>
   on dialplan compare, phone number length now not limited by screen size</li>
        <li>Added ability to pickup a call using features.conf defined value and<br/>
   on-screen key</li>
</ul>


<h2><a name="Newin11-chanmISDN%3A"></a>chan_mISDN:</h2>
<ul>
        <li>Add options namedcallgroup and namedpickupgroup to support installations<br/>
   where a higher number of groups (&gt;64) is required.</li>
</ul>


<h1><a name="Newin11-Core"></a>Core</h1>
<ul>
        <li>The minimum DTMF duration can now be configured in asterisk.conf<br/>
   as "mindtmfduration". The default value is (as before) set to 80 ms.<br/>
   (previously it was only available in source code)</li>
        <li>Named ACLs can now be specified in acl.conf and used in configurations that<br/>
   use ACLs. As a general rule, if some derivative of 'permit' or 'deny' is<br/>
   used to specify an ACL, a similar form of 'acl' will add a named ACL to the<br/>
   working ACL. In addition, some CLI commands have been added to provide<br/>
   show information and allow for module reloading - see CLI Changes.</li>
        <li>Rules in ACLs (specified using 'permit' and 'deny') can now contain multiple<br/>
   items (separated by commas), and items in the rule can be negated by prefixing<br/>
   them with '!'. This simplifies Asterisk Realtime configurations, since it is no<br/>
   longer necessray to control the order that the 'permit' and 'deny' columns are<br/>
   returned from queries.</li>
        <li>DUNDi now allows the built in variables ${NUMBER}, ${IPADDR} and ${SECRET} to<br/>
   be used within the dynamic weight attribute when specifying a mapping.</li>
        <li>CEL backends can now be configured to show "USER_DEFINED" in the EventName<br/>
   header, instead of putting the user defined event name there.  When enabled<br/>
   the UserDefType header is added for user defined events.  This feature is<br/>
   enabled with the setting show_user_defined.</li>
        <li>Macro has been deprecated in favor of GoSub.  For redirecting and connected<br/>
   line purposes use the following variables instead of their macro equivalents:<br/>
   REDIRECTING_SEND_SUB, REDIRECTING_SEND_SUB_ARGS, CONNECTED_LINE_SEND_SUB,<br/>
   CONNECTED_LINE_SEND_SUB_ARGS.  For CCSS, use cc_callback_sub instead of<br/>
   cc_callback_macro in channel configurations.</li>
        <li>Asterisk can now use a system-provided NetBSD editline library (libedit) if it<br/>
   is available.</li>
        <li>Call files now support the "early_media" option to connect with an outgoing<br/>
   extension when early media is received.</li>
</ul>


<h2><a name="Newin11-AGI"></a>AGI</h2>
<ul>
        <li>A new channel variable, AGIEXITONHANGUP, has been added which allows<br/>
   Asterisk to behave like it did in Asterisk 1.4 and earlier where the<br/>
   AGI application would exit immediately after a channel hangup is detected.</li>
        <li>IPv6 addresses are now supported when using FastAGI (agi://).  Hostnames<br/>
   are resolved and each address is attempted in turn until one succeeds or<br/>
   all fail.</li>
</ul>


<h2><a name="Newin11-AMI%28AsteriskManagerInterface%29"></a>AMI (Asterisk Manager Interface)</h2>
<ul>
        <li>The originate action now has an option "EarlyMedia" that enables the<br/>
   call to bridge when we get early media in the call. Previously,<br/>
   early media was disregarded always when originating calls using AMI.</li>
        <li>Added setvar= option to manager accounts (much like sip.conf)</li>
        <li>Originate now generates an error response if the extension given is not found<br/>
   in the dialplan</li>
        <li>MixMonitor will now show IDs associated with the mixmonitor upon creating<br/>
   them if the i(variable) option is used. StopMixMonitor will accept<br/>
   MixMonitorID as an option to close specific MixMonitors.</li>
        <li>The SIPshowpeer manager action response field "SIP-Forcerport" has been<br/>
   updated to include information about peers configured with<br/>
   nat=auto_force_rport by returning "A" if auto_force_rport is set and nat is<br/>
   detected, and "a" if it is set and nat is not detected. "Y" and "N" are still<br/>
   returned if auto_force_rport is not enabled.</li>
        <li>Added SIPpeerstatus manager command which will generate PeerStatus events<br/>
   similar to the existing PeerStatus events found in chan_sip on demand.</li>
        <li>Hangup now can take a regular expression as the Channel option.  If you want<br/>
   to hangup multiple channels, use /regex/ as the Channel option.  Existing<br/>
   behavior to hanging up a single channel is unchanged, but if you pass a regex,<br/>
   the manager will send you a list of channels back that were hung up.</li>
        <li>Support for IPv6 addresses has been added.</li>
        <li>AMI Events can now be documented in the Asterisk source. Note that AMI event<br/>
   documentation is only generated when Asterisk is compiled using 'make full'.<br/>
   See the CLI section for commands to display AMI event information.</li>
        <li>The AMI Hangup event now includes the AccountCode header so you can easily<br/>
   correlate with AMI Newchannel events.</li>
        <li>The QueueMemberStatus, QueueMemberAdded, and QueueMember events now include<br/>
   the StateInterface of the queue member.</li>
        <li>Added AMI event SessionTimeout in the Call category that is issued when a<br/>
   call is terminated due to either RTP stream inactivity or SIP session timer<br/>
   expiration.</li>
        <li>CEL events can now contain a user defined header UserDefType.  See core<br/>
   changes for more information.</li>
        <li>OOH323 ChannelUpdate events now contain a CallRef header.</li>
        <li>Added PresenceState command.  This command will report the presence state for<br/>
   the given presence provider.</li>
        <li>Added Parkinglots command.  This will list all parking lots as a series of<br/>
   AMI Parkinglot events.</li>
        <li>Added MessageSend command.  This behaves in the same manner as the<br/>
   MessageSend application, and is a technolgoy agnostic mechanism to send out<br/>
   of call text messages.</li>
        <li>Added "message" class authorization.  This grants an account permission to<br/>
   send out of call messages.  Write-only.</li>
</ul>


<h2><a name="Newin11-CLI"></a>CLI</h2>
<ul>
        <li>The "dialplan add include" command has been modified to create context a context<br/>
   if one does not already exist. For instance, "dialplan add include foo into bar"<br/>
   will create context "bar" if it does not already exist.</li>
        <li>A  "dialplan remove context" command has been added to remove a context from<br/>
   the dialplan</li>
        <li>The "mixmonitor list &lt;channel&gt;" command will now show MixMonitor ID, and the<br/>
   filenames of all running mixmonitors on a channel.</li>
        <li>The debug level of "pri set debug" is now a bitmask ranging from 0 to 15 if<br/>
   numeric instead of 0, 1, or 2.</li>
        <li>"stun show status" will show a table describing how the STUN client is<br/>
   behaving.</li>
        <li>"acl show <a href="/wiki/pages/createpage.action?spaceKey=AST&amp;title=named+acl&amp;linkCreation=true&amp;fromPageId=20840465" class="createlink">named acl</a>" will show information regarding a Named ACL.  The<br/>
   acl module can be reloaded with "reload acl".</li>
        <li>Added CLI command to display AMI event information - "manager show events",<br/>
   which shows a list of all known and documented AMI events, and "manager show<br/>
   event <a href="/wiki/pages/createpage.action?spaceKey=AST&amp;title=event+name&amp;linkCreation=true&amp;fromPageId=20840465" class="createlink">event name</a>", which shows detail information about a specific AMI<br/>
   event.</li>
        <li>The result of the CLI command "queue show" now includes the state interface<br/>
   information of the queue member.</li>
        <li>The command "core set verbose" will now set a separate level of logging for<br/>
   each remote console without affecting any other console.</li>
        <li>Added command "cdr show pgsql status" to check connection status</li>
        <li>"sip show channel" will now display the complete route set.</li>
        <li>Added "presencestate list" command.  This command will list all custom<br/>
   presence states that have been set by using the PRESENCE_STATE dialplan<br/>
   function.</li>
        <li>Added "presencestate change &lt;entity&gt; &lt;state&gt;[,&lt;subtype&gt;[,message<a href="/wiki/pages/createpage.action?spaceKey=AST&amp;title=%2Coptions&amp;linkCreation=true&amp;fromPageId=20840465" class="createlink">,options</a>]]"<br/>
   command.  This changes a custom presence to a new state.</li>
</ul>


<h2><a name="Newin11-Codecs"></a>Codecs</h2>
<ul>
        <li>Codec lists may now be modified by the '!' character, to allow succinct<br/>
   specification of a list of codecs allowed and disallowed, without the<br/>
   requirement to use two different keywords.  For example, to specify all<br/>
   codecs except g729 and g723, one need only specify allow=all,!g729,!g723.</li>
        <li>Add support for parsing SDP attributes, generating SDP attributes, and<br/>
   passing it through. This support includes codecs such as H.263, H.264, SILK,<br/>
   and CELT. You are able to set up a call and have attribute information pass.<br/>
   This should help considerably with video calls.</li>
        <li>The iLBC codec can now use a system-provided iLBC library if one is installed,<br/>
   just like the GSM codec.</li>
</ul>


<h2><a name="Newin11-DUNDichanges"></a>DUNDi changes</h2>
<ul>
        <li>Added CLI commands dundi show hints and dundi show cache which will list DUNDi<br/>
   'DONTASK' hints in the cache and list all DUNDi cache entires respectively.</li>
</ul>


<h2><a name="Newin11-Logging"></a>Logging</h2>
<ul>
        <li>Asterisk version and build information is now logged at the beginning of a<br/>
   log file.</li>
        <li>Threads belonging to a particular call are now linked with callids which get<br/>
   added to any log messages produced by those threads. Log messages can now be<br/>
   easily identified as involved with a certain call by looking at their call id.<br/>
   Call ids may also be attached to log messages for just about any case where<br/>
   it can be determined to be related to a particular call.</li>
        <li>Each logging destination and console now have an independent notion of the<br/>
   current verbosity level.  Logger.conf now allows an optional argument to<br/>
   the 'verbose' specifier, indicating the level of verbosity sent to that<br/>
   particular logging destination.  Additionally, remote consoles now each<br/>
   have their own verbosity level.  The command 'core set verbose' will now set<br/>
   a separate level for each remote console without affecting any other<br/>
   console.</li>
</ul>


<h2><a name="Newin11-MusicOnHold"></a>Music On Hold</h2>
<ul>
        <li>Added 'announcement' option which will play at the start of MOH and between<br/>
   songs in modes of MOH that can detect transitions between songs (eg.<br/>
   files, mp3, etc).</li>
</ul>


<h2><a name="Newin11-Parking"></a>Parking</h2>
<ul>
        <li>New per parking lot options: comebackcontext and comebackdialtime. See<br/>
   configs/features.conf.sample for more details.</li>
        <li>Channel variable PARKER is now set when comebacktoorigin is disabled in<br/>
   a parking lot.</li>
        <li>Channel variable PARKEDCALL is now set with the name of the parking lot<br/>
   when a timeout occurs.</li>
</ul>


<h2><a name="Newin11-CDRs"></a>CDRs</h2>

<h3><a name="Newin11-CDRPostgresqlDriver"></a>CDR Postgresql Driver</h3>
<ul>
        <li>Added command "cdr show pgsql status" to check connection status</li>
</ul>



<h3><a name="Newin11-CDRAdaptiveODBCDriver"></a>CDR Adaptive ODBC Driver</h3>
<ul>
        <li>Added schema option for databases that support specifying a schema.</li>
</ul>



<h1><a name="Newin11-ResourceModules"></a>Resource Modules</h1>

<h2><a name="Newin11-Calendars"></a>Calendars</h2>
<ul>
        <li>A CALENDAR_SUCCESS=1/0 channel variable is now set to show whether or not<br/>
   CALENDAR_WRITE has completed successfully.</li>
</ul>



<h2><a name="Newin11-resrtpasterisk"></a>res_rtp_asterisk</h2>
<ul>
        <li>A new option, 'probation' has been added to rtp.conf<br/>
   RTP in strictrtp mode can now require more than 1 packet to exit learning<br/>
   mode with a new source (and by default requires 4). The probation option<br/>
   allows the user to change the required number of packets in sequence to any<br/>
   desired value. Use a value of 1 to essentially restore the old behavior.<br/>
   Also, with strictrtp on, Asterisk will now drop all packets until learning<br/>
   mode has successfully exited. These changes are based on how pjmedia handles<br/>
   media sources and source changes.</li>
        <li>Add support for ICE/STUN/TURN in res_rtp_asterisk.  This option can be<br/>
   enabled or disabled using the icesupport setting.  A variety of other<br/>
   settings have been introduced to configure STUN/TURN connections.</li>
</ul>


<h2><a name="Newin11-rescorosync"></a>res_corosync</h2>
<ul>
        <li>A new module, res_corosync, has been introduced.  This module uses the<br/>
   Corosync cluster enginer (<a href="http://www.corosync.org" class="external-link" rel="nofollow">http://www.corosync.org</a>) to allow a local cluster<br/>
   of Asterisk servers to both Message Waiting Indication (MWI) and/or<br/>
   Device State (presence) information.  This module is very similar to, and<br/>
   is a replacement for the res_ais module that was in previous releases of<br/>
   Asterisk.</li>
</ul>



<h2><a name="Newin11-resxmpp"></a>res_xmpp</h2>
<ul>
        <li>This module adds a cleaned up, drop-in replacement for res_jabber called<br/>
   res_xmpp. This provides the same externally facing functionality but is<br/>
   implemented differently internally.  res_jabber has been deprecated in favor<br/>
   of res_xmpp; please see the UPGRADE.txt file for more information.</li>
</ul>



<h1><a name="Newin11-Scripts"></a>Scripts</h1>
<ul>
        <li>The safe_asterisk script has been updated to allow several of its parameters<br/>
   to be set from environment variables.  This also enables a custom run<br/>
   directory of Asterisk to be specified, instead of defaulting to /tmp.</li>
        <li>The live_ast script will now look for the LIVE_AST_BASE_DIR variable and use<br/>
   its value to determine the directory to assume is the top-level directory of<br/>
   the source tree.  If the variable is not set, it defaults to the current<br/>
   behavior and uses the current working directory.</li>
</ul>

    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;" class="grey">
                        <a href="https://wiki.asterisk.org/wiki/users/removespacenotification.action?spaceKey=AST">Stop watching space</a>
            <span style="padding: 0px 5px;">|</span>
                <a href="https://wiki.asterisk.org/wiki/users/editmyemailsettings.action">Change email notification preferences</a>
</div>
        <a href="https://wiki.asterisk.org/wiki/display/AST/New+in+11">View Online</a>
        |
        <a href="https://wiki.asterisk.org/wiki/pages/diffpagesbyversion.action?pageId=20840465&revisedVersion=2&originalVersion=1">View Changes</a>
                |
        <a href="https://wiki.asterisk.org/wiki/display/AST/New+in+11?showComments=true&amp;showCommentArea=true#addcomment">Add Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>