- Created by malcolmd, last modified by Rusty Newton on Apr 12, 2015
Asterisk Dialplan Applications
In this section we'll discuss Asterisk dialplan applications. The concept of Asterisk applications shouldn't be confused with the more general idea of building an "application" with Asterisk, where one is talking about what Asterisk is doing in relation to the outside world.
For example in the general sense; an application of Asterisk could be a voicemail server or PBX. In contrast, an Asterisk dialplan application is a unit of functionality provided via an Asterisk module that can be called via dialplan or one of Asterisk's APIs. Dialplan applications do some work on the channel, such as answering a call or playing back a sound prompt. There are a wide variety of dialplan applications available for your use.
The term application in Asterisk documentation and on Asterisk discussion forums is usually referring to dialplan applications.
Many applications come with Asterisk by default. For a complete list of the dialplan applications available to your installation of Asterisk, type core show applications at the Asterisk CLI. Not all applications are compiled with Asterisk by default so if you have the source available then you may want to browse the applications listed in menuselect.
Since anyone can write an Asterisk application they can also be obtained from sources outside the Asterisk distribution. Pre-packaged community or commercial Asterisk distributions that have a special purpose may include a custom application or two.
General application syntax
Each extension priority in the dialplan calls an application. Most applications take one or more parameters, which provide additional information to the application or change its behavior. Parameters should be separated by commas.
You can find examples of Asterisk extensions and priorities in the Contexts, Extensions, and Priorities section. You'll notice that most extensions look similar to this example:
ApplicationName is where you put the name of an application you want to call.
ParamOne, two and three are the parameters passed to the application. Each is separated by a comma. Some applications don't require any parameters, but most do.
Using the pipe character or vertical bar character (|) to delimit parameters is deprecated syntax. Use commas instead!
Help for specific applications
The wiki section CLI Syntax and Help Commands details how to use the CLI-accessible documentation. This will allow you to access the syntax and usage info for each application including detail on all the options for each application.
Wikibot also publishes the same documentation on the wiki. You can find applications docs in the version specific top level sections; such as Asterisk 13 Dialplan Applications.
Commonly used applications
There are many Asterisk applications, but several are very commonly used and essential to almost every Asterisk system. The sub-pages in the section will provide some further detail and usage of these common Asterisk applications.
- Answer, Playback, and Hangup Applications
- Bridge Application
- Conferencing Applications
- Dial Application
- Directory Application
- Early Media and the Progress Application
- External IVR Interface
- Asterisk Queues
- The Read Application
- The Verbose and NoOp Applications
- Short Message Service (SMS)
- Shared Line Appearances (SLA)