Page 490 - Asterisk™: The Future of Telephony
P. 490
modules.conf
The modules.conf file controls which modules are loaded or not loaded at Asterisk
startup. This is done through the use of the load => or noload => constructs.
This file is a key component to building a secure Asterisk installation:
best practice suggests that only required modules be loaded.
The modules.conf file always starts with the [modules] header. The autoload statement
tells Asterisk whether to automatically load all modules contained within the modules
directory or to load only those modules specifically defined by load => statements. We
recommend you manually load only those modules you need, but many people find it
easier to let Asterisk attempt to autoload whatever it finds in /usr/lib/asterisk/modules.
*
You can then exclude certain modules with noload => statements.
Here’s a sample modules.conf file:
[modules]
autoload=no ; set this to yes and Asterisk will load any
; modules it finds in /usr/lib/asterisk/modules
load => res_adsi.so
load => pbx_config.so ; Requires: N/A
load => chan_iax2.so ; Requires: res_crypto.so, res_features.so
load => chan_sip.so ; Requires: res_features.so
load => codec_alaw.so ; Requires: N/A
load => codec_gsm.so ; Requires: N/A
load => codec_ulaw.so ; Requires: N/A
load => format_gsm.so ; Requires: N/A
load => app_dial.so ; Requires: res_features.so, res_musiconhold.so
Since we assume Asterisk is built on Linux, all the module names we use end in a .so
extension. However, this may not be the case if you have built Asterisk on a different
operating system.
As of this writing, there are eight module types: resources, applications,
Call Detail Record database connectors, channels, codecs, formats, PBX modules, and
standalone functions. Let’s take a look at each of them.
adsi.conf
The Analog Display Services Interface (ADSI) was designed to allow telephone com-
panies to deliver enhanced services across analog telephone circuits. In Asterisk, you
* With the advent of the new menuselect system, this best practice may no longer be necessary if you are
building only the modules you need in the first place
462 | Appendix D: Configuration Files