AstRecipes » Compiling Asterisk 1.4 with TDM400 and H323
As a point of reference, we imagine you're going to build your new Asterisk on a machine preinstalled with TrixBox; this means your machine is very easy to reinstall from scratch if anything goes wrong. This also means that you can start playing with Asterisk 1.4 in a virtual machine, so you have no risk. The first thing you have to do is to create a working directory for Asterisk (say /src/asterisk14) and use it as a base directoryIt will also be necessary to erase the existing Asterisk system - see Removing Asterisk. Make sure neither Asterisk nor its required libs and drivers (eg Zaptel) are running before attempting the installations. You'll also need a bit more software:
* The C++ developement environment
* The Iksemel library, in order to test the Google Talk integration (we sure want that!)
* The Gnu TLS package, as needed by Iksemel
* Kernel development headers Prerequisites
Getting all this software is fairly easy to get installed, thanks to the very powerful yum installed that ships with CentOS:
yum install gcc-g++
yum install gnutls-devel
yum install kernel-devel
You will then download the Iksemel v1.2 libary (http://code.google.com/p/iksemel/
wget http://iksemel.googlecode.com/files/iksemel-1.2.tar.gz
tar zxvf iksemel-1.2.tar.gz
cd iksemel-1.2
./configure
make
make install
cd ..
To make sure that you version of GNU Make is > 3.79, just run
[root@aleph asterisk]# make -v
GNU Make 3.81
cp /usr/bin/make /usr/bin/make_OLD
wget http://ftp.gnu.org/pub/gnu/make/make-3.81.tar.gz
tar zxvf make-3.81.tar.gz
cd make-3.81
./configure
make
make install
cd ..
which make
make -v
We have to download and install the correct version of OpenH323. Even if there is version 1.19 available as well, it does not seem to compile correctly, so we will use version 1.18. We will install manually just the shared library we need, so compilation is very easy.
wget http://downloads.sourceforge.net/openh323/pwlib-v1_10_3-src-tar.gz
tar zxvf pwlib-v1_10_3-src-tar.gz
cd pwlib_v1_10_3/
./configure
make
export PWLIBDIR=/src/asterisk-1.4/pwlib_v1_10_3
cp $PWLIBDIR/lib/libpt_linux_x86_r.so.1.10.3 /usr/lib
cd ..
wget http://downloads.sourceforge.net/openh323/openh323-v1_18_0-src-tar.gz
tar zxvf openh323-v1_18_0-src-tar.gz
cd openh323_v1_18_0/
./configure
make opt
export OPENH323DIR=/src/asterisk-1.4/openh323_v1_18_0
cp $OPENH323DIR/lib/libh323_linux_x86_r.so.1.18.0 /usr/lib
cd ..
First we have to download the latest version of Asterisk and Zaptel, as follows.
wget ftp://ftp.digium.com/pub/zaptel/zaptel-1.4.4.tar.gz
wget ftp://ftp.digium.com/pub/libpri/libpri-1.4.1.tar.gz
wget ftp://ftp.digium.com/pub/asterisk/asterisk-1.4.8.tar.gz
tar zxvf zaptel-1.4.4.tar.gz
cd zaptel-1.4.4
./configure
make menuselect
make
make install
cd ..
tar zxvf libpri-1.4.1.tar.gz
make
make install
cd ..
tar zxvf asterisk-1.4.8.tar.gz
./configure
make menuselect
make
make
make install
make samples
cd ..
We have a TDM 400 with 1 FXS channel on port 1 and 1 FXO channel on port 4, so we create the following files: /etc/zaptel.conf
loadzone = it
defaultzone=it
fxoks=1
fxsks=4
/etc/asterisk/zapata.conf
[#CODE:]
[channels]
language=en
;
; FXS - telefono analogico
;
signalling=fxo_ks
context=interni_analogici
group=1
callwaiting=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
channel => 1
;
; FXO - linea
;
busydetect=yes
busycount=5
signalling=fxs_ks
context=rete_pubblica
group=2
channel => 4
modprobe zaptel
modprobe wctdm
Oct 15 07:58:58 beth-pbx kernel: Zapata Telephony Interface Registered on major 196
Oct 15 07:59:09 beth-pbx kernel: PCI: Found IRQ 9 for device 01:01.0
Oct 15 07:59:09 beth-pbx kernel: Freshmaker version: 73
Oct 15 07:59:09 beth-pbx kernel: Freshmaker passed register test
Oct 15 07:59:09 beth-pbx kernel: Module 0: Installed -- AUTO FXS/DPO
Oct 15 07:59:09 beth-pbx kernel: Module 1: Not installed
Oct 15 07:59:09 beth-pbx kernel: Module 2: Not installed
Oct 15 07:59:09 beth-pbx kernel: Module 3: Installed -- AUTO FXO (FCC mode)
Oct 15 07:59:09 beth-pbx kernel: Found a Wildcard TDM: Wildcard TDM400P REV I (2 modules)
Oct 15 07:59:09 beth-pbx kernel: Registered tone zone 0 (United States / North America)
To run Asterisk now, type:
ztcfg -v
asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvvc
In order to enable H.323, you simply edit /etc/asterisk/h323.conf as follows:
gatekeeper = DISCOVER
context=h323
To place an outbound call fron Asterisk, you just dial:
exten => 21,1,Dial(h323/21)
* Installing the Asterisk GUI for 1.4
* Checking library dependencies
* Removing Asterisk
Softlinks:
Home Page - Compiling Asterisk 1.2 with TDM400 and H323 - Compiling Asterisk 1.4 beta - Installing the Asterisk GUI - Removing Asterisk - asterisk - Checking library dependencies - QueueMetrics - Installing QueueMetrics - Compiling Asterisk 1.8 on CentOS 5.5 64-bit - Installing QueueMetrics from scratch - AddQueueMember and the queue_log file - Utenti/Lenz73 - Create an account - Compiling Asterisk with OH323 - Avoiding queue_log file rotation - Upgrading QueueMetrics licences - Installing Queuemetrics on Debian - Utenti/walmass - Using a HT-488 with Asterisk - Misc links - Configuring a queue - Managing agents that dynamically log-on - Compressing recorded calls to MP3 - Add a recipe - User stats - QueueMetrics logs - Licences - UPDATING - SandBox - Installing QueueMetrics on Fonality PBXtra - Manually updating QueueMetrics - Improving AstRecipes - Listening to recorded calls using XC-AST - Monitoring Zaptel Hardware - Utenti/timlitw - Recording all outgoing traffic for some extensions - Installing QueueMetrics using Yum - Installing the Linksys PAP2-NA port adapter - Connecting to FWD using IAX - Administering QueueMetrics using Tomcat - Installing Queuemetrics on PBX-in-a-Flash - Generic QueueMetrics startup script - Utenti/peter-dean - Installing XC-AST under Jetty - Optimizing QueueMetrics data access - Compiling Asterisk on EPIA with VIA C3 - Installing XC-AST - Rebuilding Fonality queue_log - Utenti/lostdave
Home Page - Compiling Asterisk 1.2 with TDM400 and H323 - Compiling Asterisk 1.4 beta - Installing the Asterisk GUI - Removing Asterisk - asterisk - Checking library dependencies - QueueMetrics - Installing QueueMetrics - Compiling Asterisk 1.8 on CentOS 5.5 64-bit - Installing QueueMetrics from scratch - AddQueueMember and the queue_log file - Utenti/Lenz73 - Create an account - Compiling Asterisk with OH323 - Avoiding queue_log file rotation - Upgrading QueueMetrics licences - Installing Queuemetrics on Debian - Utenti/walmass - Using a HT-488 with Asterisk - Misc links - Configuring a queue - Managing agents that dynamically log-on - Compressing recorded calls to MP3 - Add a recipe - User stats - QueueMetrics logs - Licences - UPDATING - SandBox - Installing QueueMetrics on Fonality PBXtra - Manually updating QueueMetrics - Improving AstRecipes - Listening to recorded calls using XC-AST - Monitoring Zaptel Hardware - Utenti/timlitw - Recording all outgoing traffic for some extensions - Installing QueueMetrics using Yum - Installing the Linksys PAP2-NA port adapter - Connecting to FWD using IAX - Administering QueueMetrics using Tomcat - Installing Queuemetrics on PBX-in-a-Flash - Generic QueueMetrics startup script - Utenti/peter-dean - Installing XC-AST under Jetty - Optimizing QueueMetrics data access - Compiling Asterisk on EPIA with VIA C3 - Installing XC-AST - Rebuilding Fonality queue_log - Utenti/lostdave



