Installazione di Asterisk 1.6.x in Centos 5.2 Server

Versione adatta alla stampa

Nel precedente articolo abbiamo visto come installare Asterisk con la distribuzione Linux Ubuntu 8.04 Desktop. In questo articolo vedremo como installarlo in una distribuzione Centos 5.2 Server.

Cambia sostanzialmente il nome di alcune librerie e programmi necessari per l'installazione di Asterisk. Un'altra differenza c'è se l'installazione avviene in un server dedicato o in un server virtuale. In quest'ultimo la difficoltà risiede nell'installare i sorgenti del sistema di virtualizzazione per poter installare DAHDI. Alcuni ci cono riusciti, però non è il mio caso :)

Anzitutto dobbiamo installare i sorgenti del Kernel:

yum install kernel-devel kernel-headers

librerie vorbis

yum install libvorbis libvorbis-devel vorbis-tools speex-devel

curl

yum install curl curl-devel

Alcune utilità necessarie per la compilazione dei sorgenti

yum install gcc ncurses ncurses-devel make gcc-c++ libtermcap libtermcap-devel zlib zlib-devel libtool

Cliente e server MySQL

yum install mysql mysql-server mysql-devel

PHP e Apache

yum install php php-cli php-common httpd httpd-devel

un server per la posta in arrivo e in uscita

yum install sendmail sendmail-devel dovecot

El connettore ODBC

yum install unixODBC-devel unixODBC mysql-connector-odbc

e alcune librerie aggiuntive

yum install libtool-ltdl libtool-ltdl-devel libtiff libtiff-devel openssl-devel libtool gnutls gnutls-devel

Adesso passiamo alla compilazione di Lame (un decoder/encoder) per files MP3:

cd /usr/src

wget http://ufpr.dl.sourceforge.net/sourceforge/lame/lame-398-2.tar.gz

lo scompattiamo:

tar -xf lame-398-2.tar.gz

cd lame-398-2

e compiliamo i sorgenti

./configure --prefix=/usr

make

make install

Attualizziamo le librerie

ldconfig -v

cd /usr/src

Per poter cambiare la frequenza di campionamento di files MP3 abbiamo bisogno della libreria libmad:

wget http://ufpr.dl.sourceforge.net/sourceforge/mad/libmad-0.15.1b.tar.gz

tar -xf libmad-0.15.1b.tar.gz

cd libmad-0.15.1b

./configure

make

make install

Continuiamo con la compilazione di SOX (sund exchange) un programma molto utile per convertire formati audio e frequenze di campionamento.

wget http://ufpr.dl.sourceforge.net/sourceforge/sox/sox-14.1.0.tar.gz
tar -xf sox-14.1.0.tar.gz
cd sox-14.1.0
./configure
make
make install

Se vogliamo utilizzare il cliente/server jabber di Asterisk dobbiamo installare iksemel

cd /usr/src

wget http://iksemel.googlecode.com/files/iksemel-1.3.tar.gz

tar –xf iksemel-1.3.tar.gz

cd iksemel -1.3

./configure -–prefix=/usr

make

make check

Per il supporto fax abbiamo bisogno della libreria SpanDSP

wget http://www.soft-switch.org/downloads/spandsp/spandsp-0.0.5.tgz

tar -xf spandsp-0.0.5pre4.tgz
cd spandsp-0.0.5/
./configure --prefix=/usr
make
make install

Attualizziamo le librerie:

ldconfig -v

e iniziamo con l'installazione di DAHDI

cd /usr/src

wget http://downloads.asterisk.org/pub/telephony/dahdi-linux/dahdi-linux-current.tar.gz

tar -xf dahdi-linux-current.tar.gz
cd dahdi-linux-2.2.0/
make
make install

wget http://downloads.asterisk.org/pub/telephony/dahdi-tools/dahdi-tools-curr...

tar -xf dahdi-tools-current.tar.gz
cd dahdi-tools-2.2.0
./configure
make
make install
make config

 

Proviamo DADHI:

/etc/init.d/dahdi start

Loading DAHDI hardware modules:
  wct4xxp:                                                 [  OK  ]
  wcte12xp:                                                [  OK  ]
  wct1xxp:                                                 [  OK  ]
  wcte11xp:                                                [  OK  ]
  wctdm24xxp:                                              [  OK  ]
  wcfxo:                                                   [  OK  ]
  wctdm:                                                   [  OK  ]
  wcb4xxp:                                                 [  OK  ]
  wctc4xxp:                                                [  OK  ]
  xpp_usb:                                                 [  OK  ]

No hardware timing source found in /proc/dahdi, loading dahdi_dummy
Running dahdi_cfg:                                    [OK]

Perfetto. Adesso passiamo all'installazione di Asterisk

cd /usr/src

wget http://downloads.asterisk.com/pub/telephony/asterisk/asterisk-1.6-current.tar.gz

tar -xf asterisk-1.6-current.tar.gz
cd asterisk-1.6.0.9/
./configure
make menuselect

Ci assicuriamo che in "voicemail build options" sia selezionata la linea "ODBC_STORAGE"

Premiamo X per uscire e salvare le modifiche

make
make install
make samples
make config

Make config configura asterisk in modo da iniziarlo ogni volta che accediamo a Linux

Adesso possiamo installare gli addons di Asterisk:

cd /usr/src

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-addons-1.6-current.tar.gz

tar -xf asterisk-addons-1.6-current.tar.gz
cd asterisk-addons-1.6.0.1/
./configure
make
make install
make samples

Adesso configuriamo un database per registrare tutte le chiamate effettuate con Asterisk

mysqladmin create asteriskcdr -u root -p

Entriamo en MySQL

mysql -u root -p

mysql> use asteriskcdr
Database changed

e creiamo la tabella per il registro delle chiamate

mysql> CREATE TABLE cdr (
    calldate datetime NOT NULL default '0000-00-00 00:00:00',
    clid varchar(80) NOT NULL default '',
    src varchar(80) NOT NULL default '',
    dst varchar(80) NOT NULL default '',
    dcontext varchar(80) NOT NULL default '',
    channel varchar(80) NOT NULL default '',
    dstchannel varchar(80) NOT NULL default '',
    lastapp varchar(80) NOT NULL default '',
    lastdata varchar(80) NOT NULL default '',
    duration int(11) NOT NULL default '0',
    billsec int(11) NOT NULL default '0',
    disposition varchar(45) NOT NULL default '',
    amaflags int(11) NOT NULL default '0',
    accountcode varchar(20) NOT NULL default '',
    uniqueid varchar(32) NOT NULL default '',
    userfield varchar(255) NOT NULL default ''
    );

Diamo accesso al database all'utente root. Al posto di secret mettiamo la password che abbiamo settato al momento dell'installazione del pacchetto mysql-server

mysql> GRANT ALL PRIVILEGES ON asteriskcdr.* TO 'root'@'localhost' IDENTIFIED BY 'secret';
Query OK, 0 rows affected (0.08 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.05 sec)

mysql> quit
Bye

cd /etc/asterisk

Adesso dobbiamo indicare gli stessi dati nell'archivio di configrazione di mysql per asterisk

sudo nano cdr_mysql.conf

Modifichiamo le seguenti linee come segue:

[global]
hostname=localhost        
dbname=asteriskcdr 
table=cdr
password=secret
user=root          
port=3306
sock=/var/run/mysqld/mysqld.sock

Adesso possiamo far partire DADHI e Asterisk

/etc/init.d/dahdi start

/etc/init.d/asterisk start

entriamo en la console

asterisk -rvvvvvvvvvvvvvvvvvvv

e facciamo amicizia con i comandi:

CLI> help

per ottenere una lista completa dei comandi

CLI> help sip

Per vedere i comandi disponibili per le estensioni SIP

CLI> core show application dial

per vedere la sinossi dell'applicazione dial

CLI> quit

per uscire dalla console

Continueremo con la configurazione di Asterisk

Commenti

Grazie...

... ottima guida, seguita passo-passo su  una VPS e perfettamente funzionante!!!

 

Un saluto by Elia

Condividi contenuti