Skip to content
Snippets Groups Projects
CHANGES 239 KiB
Newer Older
==============================================================================
===
=== This file documents the new and/or enhanced functionality added in
=== the Asterisk versions listed below. This file does NOT include
=== changes in behavior that would not be backwards compatible with
=== previous versions; for that information see the UPGRADE.txt file
=== and the other UPGRADE files for older releases.
===
==============================================================================
Matthew Jordan's avatar
Matthew Jordan committed
------------------------------------------------------------------------------
--- Functionality changes from Asterisk 13 to Asterisk 14 --------------------
------------------------------------------------------------------------------

Applications
------------------

ConfBridge
------------------
 * Added the ability to pass options to MixMonitor when recording is used with
   ConfBridge. This includes the addition of the following configuration
   parameters for the 'bridge' object:
   - record_file_timestamp: whether or not to append the start time to the
     recorded file name
   - record_options: the options to pass to the MixMonitor application
   - record_command: a command to execute when recording is finished
   Note that these options may also be with the CONFBRIDGE function.

SMS
------------------
 * Added the 'n' option, which prevents the SMS from being written to the log
   file. This is needed for those countries with privacy laws that require
   providers to not log SMS content.

CDRs
------------------
cdr_odbc
------------------
 * Added a new configuration option, "newcdrcolumns", which enables use of the
   post-1.8 CDR columns 'peeraccount', 'linkedid', and 'sequence'.

------------------
cdr_csv
------------------
 * Added a new configuration option, "newcdrcolumns", which enables use of the
   post-1.8 CDR columns 'peeraccount', 'linkedid', and 'sequence'.

Channel Drivers
------------------
Matthew Jordan's avatar
Matthew Jordan committed

chan_dahdi
------------------
 * The CALLERID(ani2) value for incoming calls is now populated in featdmf
   signaling mode.  The information was previously discarded.
 * Added the force_restart_unavailable_chans compatibility option.  When
   enabled it causes Asterisk to restart the ISDN B channel if an outgoing
   call receives cause 44 (Requested channel not available).
chan_iax2
------------------
 * The iax.conf forcejitterbuffer option has been removed.  It is now always
   forced if you set iax.conf jitterbuffer=yes.  If you put a jitter buffer
   on a channel it will be on the channel.
 * A new configuration parameters, 'calltokenexpiration', has been added that
   controls the duration before a call token expires. Default duration is 10
   seconds. Setting this to a higher value may help in lagged networks or those
   experiencing high packet loss.
chan_sip
------------------
 * New 'rtpbindaddr' global setting. This allows a user to define which
   ipaddress to bind the rtpengine to. For example, chan_sip might bind
   to eth0 (10.0.0.2) but rtpengine to eth1 (192.168.1.10).
 * DTLS related configuration options can now be set at a general level.
   Enabling DTLS support, though, requires enabling it at the user
   or peer level.
Matthew Jordan's avatar
Matthew Jordan committed

chan_pjsip
------------------
 * New 'user_eq_phone' endpoint setting. This adds a 'user=phone' parameter
   to the request URI and From URI if the user is determined to be a phone number.
 * New 'moh_passthrough' endpoint setting. This will pass hold and unhold requests
   through using SIP re-invites with sendonly and sendrecv accordingly.
 * Added the pjsip.conf system type disable_tcp_switch option.  The option
   allows the user to disable switching from UDP to TCP transports described
   by RFC 3261 section 18.1.1.
 * New 'line' and 'endpoint' options added on outbound registrations. This allows some
   identifying information to be added to the Contact of the outbound registration.
   If this information is present on messages received from the remote server
   the message will automatically be associated with the configured endpoint on the
   outbound registration.
Core
------------------
 * The core of Asterisk uses a message bus called "Stasis" to distribute
   information to internal components. For performance reasons, the message
   distribution was modified to make use of a thread pool instead of a
   dedicated thread per consumer in certain cases. The initial settings for
   the thread pool can now be configured in 'stasis.conf'.

 * A new core DNS API has been implemented which provides a common interface
   for DNS functionality. Modules that use this functionality will require that
   a DNS resolver module is loaded and available.

Functions
------------------

CHANNEL
------------------
 * Added CHANNEL(onhold) item that returns 1 (onhold) and 0 (not-onhold) for
   the hold status of a channel.

DTMF Features
------------------
 * The transferdialattempts default value has been changed from 1 to 3. The
   transferinvalidsound has been changed from "pbx-invalid" to "privacy-incorrect".
   These were changed to make DTMF transfers be more user-friendly by default.


Resources
------------------

res_musiconhold
------------------
 * Added sort=randstart to the sort options. It sorts the files by name and
   then chooses the first file to play at random.
 * Added preferchannelclass=no option to prefer the application-passed class
   over the channel-set musicclass. This allows separate hold-music from
   application (e.g. Queue or Dial) specified music.
res_resolver_unbound
------------------
 * Added a res_resolver_unbound module which uses the libunbound resolver library
   to perform DNS resolution. This module requires the libunbound library to be
   installed in order to be used.

res_pjsip
------------------
 * A new SIP resolver using the core DNS API has been implemented. This relies on
   external SIP resolver support in PJSIP which is only available as of PJSIP
   2.4. If this support is unavailable the existing built-in PJSIP SIP resolver
   will be used instead. The new SIP resolver provides NAPTR support, improved
   SRV support, and AAAA record support.

CEL Backends
------------------

cel_pgsql
------------------
 * Added a new option, 'usegmtime', which causes timestamps in CEL events
   to be logged in GMT.
------------------------------------------------------------------------------
--- Functionality changes from Asterisk 13.3.0 to Asterisk 13.4.0 ------------
------------------------------------------------------------------------------

chan_pjsip
------------------
 * New 'rpid_immediate' option to control if connected line update information
   goes to the caller immediately or waits for another reason to send the
   connected line information update.  See the online option documentation for
   more information.  Defaults to 'no' as setting it to 'yes' can result in
   many unnecessary messages being sent to the caller.

 * The configuration setting 'progressinband' now defaults to 'no', which
   matches the actual behavior of previous versions.

res_pjsip
------------------
 * A new CLI command has been added: "pjsip show settings", which shows
   both the global and system configuration settings.

 * A new aor option has been added: "qualify_timeout", which sets the timeout
   in seconds for a qualify.  The default is 3 seconds.  This overrides the
   hard coded 32 seconds in pjproject.

 * Endpoint status will now change to "Unreachable" when all contacts are
   unavailable.  When any contact becomes available, the endpoint will status
   will change back to "Reachable".

 * A new global option has been added: "max_initial_qualify_time", which
   sets the maximum amount of time from startup that qualifies should be
   attempted on all contacts.

res_ari_channels
------------------
 * Two new events, 'ChannelHold' and 'ChannelUnhold', have been added to the
   events data model. These events are raised when a channel indicates a hold
   or unhold, respectively.

func_holdintercept
------------------
 * A new dialplan function, HOLD_INTERCEPT, has been added. This function, when
   placed on a channel, intercepts hold/unhold indications signalled by the
   channel and prevents them from moving on to other channels in a bridge with
   the hold initiator. Instead, AMI or ARI events are raised indicating that
   the channel wanted to place someone on hold. This allows external
Loading
Loading full blame...