System information

ability to listen to, forward, and mark voicemail messages with the same flexibility that
the Asterisk VoiceMail() dialplan application gives. Asterisk will be aware of the sta-
tuses of those messages when the users next log in via the phone system.
As the number of administrators integrating Asterisk with their IMAP servers has in-
creased, the number of bugs filed and fixed has first increased and then decreased, to
the point where IMAP integration can be considered stable enough for production use.
In this section we’ll discuss how to compile in IMAP voicemail support and connect
your voicemail system to your IMAP server.
Compiling IMAP VoiceMail Support into Asterisk
To get IMAP voicemail support into Asterisk, we need to compile the University of
Washington’s IMAP library. The UW IMAP toolkit will give us the functionality in
Asterisk to connect to our IMAP server. Before compiling the software, though, we
need to install some dependencies.
The dependencies for building the IMAP library include the tools required to build
Asterisk, but the way we’re building it also requires the development libraries for
OpenSSL and Pluggable Authentication Modules (PAM). We’ve included instructions
for both CentOS and Ubuntu.
CentOS dependencies
Installing both the OpenSSL and PAM development libraries on CentOS can be done
with the following command:
$ sudo yum install openssl-devel pam-devel
Remember to add .x86_64 to the name of each package if installing on
a 64-bit machine.
Ubuntu dependencies
Installing both the OpenSSL and PAM development libraries on Ubuntu can be done
with the following command:
$ sudo apt-get install libssl-dev libpam0g-dev
If you try to install libpam-dev on Ubuntu, it will warn you that libpam-
dev is a virtual package and that you should explicitly install one of the
packages in the list it presents you with (which in our case contained
only a single package). If libpam0g-dev is not the correct package on
your version of Ubuntu, try installing the virtual package. This should
give you a list of valid packages for the PAM development library.
412 | Chapter 18:External Services