Page Contents
Asterisk Configuration Guide
You’ve Asterisk installation tips and verified that it will start up. Now how do you go about configuring your PBX? The first thing you need to do is tell Asterisk what telephone connections (to handsets and exchanges, whether by physical wire or by IP) you have. These are called channels.
The next task is to configure the Dialplan. The dialplan routes every call in the system from its source through various applications to its final destination.
You’re up and running now. But what about some extra bells and whistles?
- Music on Hold
- Call Parking
- Billing
- Management interfaces
Templates
Templates can assist to avoid repeating the same section(s) again and again in your Asterisk configuration files.
Generating Configuration Files from Templates
The STS Template Engine can generate Asterisk configuration files from templates. It has its own macro language for conditional template expansion and is available in source code for embedding into your own applications. The library sources could also be used to build a standalone command line utility.
Alternative Methods of Configuration
- GUI or Web-based setup tools, see Asterisk GUI
- MySQL etc databases
Configuration Reference
Master configuration file:
- asterisk.conf: Tell Asterisk the directories where everything is, including the directory containing all the other configuration files. By default, Asterisk looks for the asterisk.conf file in the /etc/asterisk directory, but you can supply a command line parameter to use a different asterisk.conf file.
Configuration of Asterisk channels:
-
- adtranvofr.conf: Configure voice over frame relay (Adtran style) channels
-
- agents.conf: Configure agent channels
- h323.conf: Configure H323 channels
- iax.conf: Configure IAX channels
- mgcp.conf: Configure MGCP channels
- modem.conf: Configure Modem channels (for ISDN, not for modems!)
-
- phone.conf: Configure phone channels (Linux Telephony devices)
-
- sip.conf: Configure SIP channels
- sip_notify.conf: Configure SIP NOTIFY messages
- skinny.conf: Configure Skinny channels (Cisco SCCP)
-
- vpb.conf: Configure vpb channels (Voicetronix cards)
- zapata.conf: Configure Asterisk ZAP channels (Digium cards)
Configuration of Analog Display Services Interface:
-
- adsi.conf
-
- asterisk.adsi
Configuration of the Dialplan:
- extconfig.conf: Used by res_data to arrange external configuration (e.g. thru ODBC)
- extensions.ael: The Asterisk Extensions Language
- extensions.conf: The Dialplan
- parking.conf: Call Parking configuration. Note: This file has been renamed to features.conf as of Asterisk 1.0rc1 (17 july 2004)
Configuration of specific Dialplan Commands:
-
- alarmreceiver.conf: AlarmReceiver configuration
- chan_dahdi.conf: DAHDiLookup configuration
- dundi.conf: DUNDiLookup configuration
- enum.conf: EnumLookup configuration
-
- festival.conf: Festival configuration
- indications.conf: Playtones tone definitions
- meetme.conf: Asterisk cmd MeetMe conference configuration
- musiconhold.conf: MusicOnHold configuration
- queues.conf: Queue configuration
- voicemail.conf: VoiceMail configuration
Uncategorized configuration files:
- alarmreceiver.conf: Configuration file for the AlarmReceiver application
- alsa.conf
- cdr_odbc.conf
- cdr_pgsql.conf: Configuration of PostgreSQL CDR database for billing
- cel.conf
- cel_pgsql.conf
- codecs.conf
- dnsmgr.conf: Background DNS update manager (new in Asterisk v1.2)
- features.conf: Call Parking and other features
- http.conf: Built-in mini HTTP server
- logger.conf: Configuration of what to log and where to log it
- manager.conf: Configuration of the Asterisk manager API
- modules.conf: Configuration of Asterisk module loading
- odbc.conf: Configuration of unixODBC drivers for Asterisk
- oss.conf
- privacy.conf
- res_odbc.conf
- rpt.conf
- rtp.conf: Configuration of RTP ports for media
- say.conf: Internationalised numbers and dates (new in Asterisk v1.4)
- users.conf: Generate a “user” (phone, dioalplan, and just about everything)
Add on modules, not in standard source distribution
- capi.conf: Configuration of Asterisk CAPI Channels and devices.
- cdr_mysql.conf: Configuration of MySQL CDR database for billing
- enumagi.conf: Configuration file for enumlookup.agi
- ldap.conf: Configuration for LDAPget
- prepaid.conf: Configuration of Prepaid calling card system.
- sirrix.conf: Configuration of Sirrix ISDN channels
- zeroconf.conf: Configuration file defining services and parameters to advertise via Zeroconf
In most installations, these files are placed in /etc/
- /etc/zaptel.conf: Configuration of the kernel part of Zaptel
- voximal.conf: Configuration of the VoiceXML interpreter Asterisk Cmd Voximal
General hints about configuration files
- In all Asterisk configuration files, you may include other files by using the #include statement. This way, you may save your general SIP configuration in one file and have the SIP accounts in another file.
Version notes
- Since July 2004 backslash-quoting of special characters in config files, like \\ and \’ has become possible in all Asterisk configuration files.
See also
- Asterisk-AQL: AQL (Astconf Query Language) is a SQL-like statement, which can be used to write and read asterisk config files library for PHP in an easy way.