Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Section
Column
width80%

Overview

Asterisk 13 is the next Long Term Support (LTS) release of Asterisk. As such, the focus of development for this release of Asterisk was on improving the usability and features developed in the previous Standard release, Asterisk 12. Beyond a general refinement of end user features, development focussed heavily on the Asterisk APIs - the Asterisk Manager Interface (AMI) and the Asterisk REST Interface (ARI) - and the PJSIP stack in Asterisk. Some highlights of the new features include:

  • Asterisk security events are now provided via  AMI, allowing end users to monitor their Asterisk system in real time for security related issues.
  • External control of Message Waiting Indicators (MWI) through both AMI and ARI.
  • Reception/transmission of out of call text messages using any supported channel driver/protocol stack through ARI.
  • Resource List Server support in the PJSIP stack, providing subscriptions to lists of resources and batched delivery of NOTIFY requests.
  • Inter-Asterisk distributed device state and mailbox state using the PJSIP stack.

And much more!

It is important to note that Asterisk 13 is built on the architecture developed during the previous Standard release, Asterisk 12. Users upgrading to Asterisk 13 should read about the new features documented in New in 12, as well as the notes on upgrading to Asterisk 12. In particular, users upgrading to Asterisk 13 from a release prior to Asterisk 12 should read the specifications on AMI, CDRs, and CEL, as these also apply to Asterisk 13:

Finally, all users upgrading to Asterisk 13 should read the notes on upgrading to Asterisk 13.

 

Tip
titleAsterisk 12 was different

Some of the new features listed below were released in point releases of Asterisk 12. Per the Software Configuration Management Policies laid out for Asterisk 12, new features were periodically merged and released in that branch of Asterisk. This was done to help users of Asterisk migrating to the new platform develop features in preparation for Asterisk 13.

While some of the features listed below were released under an Asterisk 12 release, they are all listed here as "new in 13", for two reasons:

  1. If you are upgrading from a previous LTS release (such as Asterisk 11), all of these features are new.
  2. If you are upgrading from some version of Asterisk 12, some of the previously released features may be new (as they may not have been in your version of Asterisk 12).

Applications

AgentRequest

  • The application will now return a new AGENT_STATUS value of NOT_CONNECTED if the agent fails to connect with an incoming caller after being alerted to the presence of the incoming caller. The most likely reason this would happen is the agent did not acknowledge the call in time.

ChanSpy

  • ChanSpy now accepts a channel uniqueid or a fully specified channel name as the chanprefix parameter if the 'u' option is specified.

ConfBridge

  • The ConfBridge dialplan application now sets a channel variable, CONFBRIGE_RESULT, upon exiting. This variable can be used to determine how a channel exited the conference. Valid values upon exiting are:

    ValueReason
    FAILED
    The channel encountered an error and could not enter the conference.
    HANGUP
    The channel exited the conference by hanging up.
    KICKED
    The channel was kicked from the conference.
    ENDMARKED
    The channel left the conference as a result of the last marked user leaving.
    DTMF
    The channel pressed a DTMF sequence to exit the conference.
  • Added conference user option 'announce_join_leave_review'. This option implies 'announce_join_leave' with the added effect that the user will be asked if they want to confirm or re-record the recording of their name when entering the conference.

DAHDIBarge

  • The module app_dahdibarge was deprecated and has been removed. Users of DAHDIBarge should use ChanSpy instead.

Directory

  • At exit, the Directory application now sets a channel variable DIRECTORY_RESULT to one of the following based on the reason for exiting:

    ValueReason
    OPERATOR
    user requested operator by pressing '0' for operator
    ASSISTANT
    user requested assistant by pressing '*' for assistant
    TIMEOUT
    user pressed nothing and Directory stopped waiting
    HANGUP
    user's channel hung up
    SELECTED
    user selected a user from the directory and is routed
    USEREXIT
     user pressed '#' from the selection prompt to exit
    FAILED
    directory failed in a way that wasn't accounted for. Dang.
Column
Panel

Table of Contents

 MusicOnHold

  • MusicOnHold streams (all modes other than "files") now support wide band audio.

MixMonitor

  • A new option, B(), has been added that will turn on a periodic beep while the call is being recorded.
  • New options to play a beep when starting a recording and stopping a recording have been added. The option 'p' will play a beep to the channel that starts the recording. The option 'P' will play a beep to the channel that stops the recording.

Monitor

  • A new option, B(), has been added that will turn on a periodic beep while the call is being recorded.

Page

  • Added options 'b' and 'B' to apply pre-dial handlers for outgoing calls and for the channel executing Page respectively.

PickupChan

  • PickupChan now accepts channel uniqueids of channels to pickup.

ReadFile

  • The module app_readfile was deprecated and has been removed. Users of ReadFile should use func_env's FILE function instead.

Record

  • The Record application now has an option 'o' which allows 0 to act as an exit key. This will set the the RECORD_STATUS variable to 'OPERATOR' instead of 'DTMF'.

Say

  • If the channel variable SAY_DTMF_INTERRUPT is present on a channel and set to 'true' (case insensitive), then any Say application (SayNumberSayDigits, SayAlpha, SayAlphaCase, SayUnixTime, and SayCounted) will anticipate DTMF. If DTMF is received, these applications will behave like the background application and jump to the received extension once a match is established or after a short period of inactivity.
  • The Say family of dialplan applications now support the Japanese language. The language parameter in say.conf now recognizes a setting of ja, which will enable Japanese language specific mechanisms for playing back numbers, dates, and other items.

SayCountPL

  • The module app_saycountpl was deprecated and has been removed. Users of app_saycountpl should use the Say family of applications.

SetMusicOnHold

  • The SetMusicOnHold dialplan application was deprecated and has been removed. Users of the application should use the CHANNEL function's musicclass setting instead.

VoiceMail

  • VoiceMail and VoiceMailMain now support the Japanese language. The language parameter in voicemail.conf now recognizes a setting of ja, which will enable prompts to be played back using a Japanese grammatical structure. Additional prompts are necessary for this functionality, including:
    • jb-arimasu: there is
    • jb-arimasen: there is not
    • jb-oshitekudasai: please press
    • jb-ni: article ni
    • jb-ga: article ga
    • jb-wa: article wa
    • jb-wo: article wo
  • VoiceMail mailboxes configured in voicemail.conf can now have multiple e-mail address specified for a single mailbox. Each e-mail address is separated by the | character.

WaitMusicOnHold

  • The WaitMusicOnHold dialplan application was deprecated and has been removed. Users of the application should use MusicOnHold with a duration parameter instead.
Column
Panel

Table of Contents

Build System

  • The location of the sample configuration files delivered with Asterisk have been moved from configs to configs/samples. This allows for other sample configuration sets to be defined in the future. The action of make samples is exactly the same as previous versions of Asterisk.
  • The menuselect tool has been pulled into the Asterisk repository. Generally, this change is transparent to those using tarballs of Asterisk; to those working directly with the Asterisk repository, there is no accessing of the menuselect or mxml external repositories.
  • The menuselect tool no longer uses a bundled mxml library. Instead, it now uses libxml2. As a result, libxml2 is now a required dependency for Asterisk.

...