Newer
Older
Tilghman Lesher
committed
of the URI parameter to the AGI function call in your dial plan. Also note
that specifying a port number in the AGI URI will disable SRV lookups,
even if you use the hagi: protocol.
* No longer support MSG_OOB flag on HANGUP.
Logger changes
--------------
* Added rotatestrategy option to logger.conf, along with two new options:
"timestamp" which will use the time to name the logger files instead of
sequence number; and "rotate", which rotates the names of the log files,
similar to the way syslog rotates files.
* Added exec_after_rotate option to logger.conf, which allows a system
command to be run after rotation. This is primarily useful with
rotatestrategy=rotate, to allow a limit on the number of log files kept
and to ensure that the oldest log file gets deleted.
* Added realtime support for the queue log
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
-------------------
* The cdr_manager module has a [mappings] feature, like cdr_custom,
to add fields to the manager event from the CDR variables.
* Added cdr_adaptive_odbc, a new module that adapts to the structure of your
backend database CDR table. Specifically, additional, non-standard
columns are supported, merely by setting the corresponding CDR variable in
your dialplan. In addition, you may alias any column to another name (for
example, if you want the 'src' CDR variable to be column 'ANI' in the DB,
simply "alias src => ANI" in the configuration file). Records may be
posted to more than one backend, simply by specifying multiple categories
in the configuration file. And finally, you may filter which CDRs get
posted to each backend, by specifying a filter (which the record must
match) for the particular category. Filters are additive (meaning all
rules must match to post that CDR).
* The Postgres CDR module now supports some features of the cdr_adaptive_odbc
module. Specifically, you may add additional columns into the table and
they will be set, if you set the corresponding CDR variable name. Also,
if you omit columns in your database table, they will be silently skipped
(but a record will still be inserted, based on what columns remain). Note
that the other two features from cdr_adaptive_odbc (alias and filter) are
not currently supported.
* The ResetCDR application now has an 'e' option that re-enables a CDR if it
has been disabled using the NoCDR application.
Russell Bryant
committed
Miscellaneous New Modules
-------------------------
* Added a new CDR module, cdr_sqlite3_custom.
* Added a new realtime configuration module, res_config_sqlite
* Added a new codec translation module, codec_resample, which re-samples
signed linear audio between 8 kHz and 16 kHz to help support wideband
codecs.
* Added a new module, res_phoneprov, which allows auto-provisioning of phones
based on configuration templates that use Asterisk dialplan function and
variable substitution. It should be possible to create phone profiles and
templates that work for the majority of phones provisioned over http. It
is currently only intended to provision a single user account per phone.
An example profile and set of templates for Polycom phones is provided.
NOTE: Polycom firmware is not included, but should be placed in
AST_DATA_DIR/phoneprov/configs to match up with the included templates.
* Added a new module, app_jack, which provides interfaces to JACK, the Jack
Audio Connection Kit (http://www.jackaudio.org/). Two interfaces are
provided; there is a JACK() application, and a JACK_HOOK() function. Both
interfaces create an input and output JACK port. The application makes
these ports the endpoint of the call. The audio coming from the channel
goes out the output port and whatever comes back in on the input port is
what gets sent to the channel. The JACK_HOOK() function turns on a JACK
audiohook on the channel. This lets you run the audio coming from a
channel through JACK, and whatever comes back in is what gets forwarded
on as the channel's audio. This is very useful for building custom
vocoders or doing recording or analysis of the channel's audio in another
application.
* Added a new module, res_config_curl, which permits using a HTTP POST url
to retrieve, create, update, and delete realtime information from a remote
web server. Note that this module requires func_curl.so to be loaded for
backend functionality.
* Added a new module, res_config_ldap, which permits the use of an LDAP
server for realtime data access.
* Added support for writing and running your dialplan in lua using the pbx_lua
Russell Bryant
committed
module. See configs/extensions.lua.sample for examples of how to do this.
Russell Bryant
committed
Russell Bryant
committed
-------------
* Ability to use libcap to set high ToS bits when non-root
on Linux. If configure is unable to find libcap then you
can use --with-cap to specify the path.
* Added maxfiles option to options section of asterisk.conf which allows you to specify
what Asterisk should set as the maximum number of open files when it loads.
* Added the jittertargetextra configuration option.
* Added support for setting the CoS for VLAN traffic (802.1p). See the sample
configuration files for the IP channel drivers. The new option is "cos".
Sean Bright
committed
This information is also documented on the Asterisk wiki at
https://wiki.asterisk.org/wiki/x/EYBG
Russell Bryant
committed
* When originating a call using AMI or pbx_spool that fails the reason for failure
will now be available in the failed extension using the REASON dialplan variable.
* Added support for reading the TOUCH_MONITOR_PREFIX channel variable.
It allows you to configure a prefix for auto-monitor recordings.
* A new extension pattern matching algorithm, based on a trie, is introduced
here, that could noticeably speed up mid-sized to large dialplans.
It is NOT used by default, as duplicating the behaviour of the old pattern
matcher is still under development. A config file option, in extensions.conf,
in the [general] section, called "extenpatternmatchingnew", is by default
set to false; setting that to true will force the use of the new algorithm.
Also, the cli commands "dialplan set extenpatternmatchingnew true/false" can
be used to switch the algorithms at run time.
* A new option when starting a remote asterisk (rasterisk, asterisk -r) for
specifying which socket to use to connect to the running Asterisk daemon
(-s)
Steve Murphy
committed
* Performance enhancements to the sched facility, which is used in
the channel drivers, etc. Added hashtabs and doubly-linked lists
to speed up deletion; start at the beginning or end of list to
speed up insertion.
* Added Doubly-linked lists after the fashion of linkedlists.h. They are in
dlinkedlists.h. Doubly-linked lists feature fast deletion times.
Added regression tests to the tests/ dir, also.
* Added a refcount trace feature to astobj2 for those trying to balance
object creation, deletion; work, play; space and time. See the
notes in astobj2.h. Also, see utils/refcounter as well, as a
quick way to find unbalanced refcounts in what could be a sea
of objects that were balanced.
Jason Parker
committed
* Added logging to 'make update' command. See update.log
* Added strictrtp option to rtp.conf. If enabled this will drop RTP packets that
do not come from the remote party.
Russell Bryant
committed
* Added the 'n' option to the SpeechBackground application to tell it to not
answer the channel if it has not already been answered.
* Added a compiler flag, CHANNEL_TRACE, which permits channel tracing to be
turned on, via the CHANNEL(trace) dialplan function. Could be useful for
dialplan debugging.
* iLBC source code no longer included (see UPGRADE.txt for details)
* If compiled with DETECT_DEADLOCKS enabled and if you have glibc, then if
deadlock is detected, a backtrace of the stack which led to the lock calls
will be output to the CLI.
* If compiled with DEBUG_THREADS enabled and if you have glibc, then issuing
the "core show locks" CLI command will give lock information output as well
as a backtrace of the stack which led to the lock calls.
* users.conf now sports an optional alternateexts property, which permits
allocation of additional extensions which will reach the specified user.
* A new option for the configure script, --enable-internal-poll, has been added
for use with systems which may have a buggy implementation of the poll system
call. If you notice odd behavior such as the CLI being unresponsive on remote
consoles, you may want to try using this option. This option is enabled by default
on Darwin systems since it is known that the Darwin poll() implementation has
odd issues.
Timer Changes
--------------------
* In addition to timing from DAHDI, there is a new timing module called
res_timing_timerfd. In order to use this, you must be running Linux with
a kernel version 2.6.25 or newer as well as glibc 2.8 or newer. The configure
script will be able to tell if you have the requirements. From menuselect, select
res_timing_timerfd from the Resource Modules menu.