Translate

2008-07-01

Installation d'un IPBX Asterisk

Objet

Le but de ce document est de décrire le processus d’installation et de déploiement d’un PBX Asterisk.

Description du logiciel

Asterisk est un logiciel Open Source qui remplit toutes les fonction d’un PABX traditionnel (gestion des extensions, boites vocales, mises en attente, transferts, écoute, soufflage, files d’attente, conférence…).

Asterisk est capable de fonctionner sur quasiment n’importe quel OS, cependant nous orienterons ce document sur son installation/fonctionnement sur une plateforme Linux.

Exemple de réseau téléphonique utilisant Asterisk :

Installation d’Asterisk

Introduction

Dans la configuration qui nous intéresse, Asterisk nécessite l’installation de plusieurs programmes :

Asterisk : le pbx en lui-même

Zaptel : le binaire qui permet l’interfaçage avec le matériel se connectant au réseau RTC (cartes digium , nous avons une expérience avec la carte E1 TE110P , la carte 2 E1 TE200P , la carte analogique TDM400P)

Libpri : la librairie permettant de gérer le PRI.

Asterisk-addons : ajouts a asterisk.

Spandsp : pour envoyer/recevoir des fax

Nous partons sur le principe que la machine sur laquelle va être installe Asterisk tourne sous Linux (Debian pour ma part :-))

Processus d’installation

Installer les paquets nécessaires a la compilation d’Asterisk, bison,bison-devel, , zlib1g zlib1g-dev libncurses5 libncurses-dev libssl0.9.6 libssl-dev libnewt-dev libnewt0.51.

Télécharger les archives de asterisk,zaptel,libpri,asterisk-addons sur le site de http://www.asterisk.org/downloads.%20Dans%20le%20répertoire%20/usr/src/

Décompresser les archives.

Aller dans le répertoire de zaptel , faire un ./configure , make et make install

Faire un modprobe zaptel et un modprobe wcte11xp (ou autre driver si pas TE110P).Executer ensuite ztcfg –vv pour configurer le hardware zaptel.

Aller dans le répertoire de libpri , faire un ./configure , make et make install

Il faut ici intercaler l’installation de spandsp (http://www.asteriskguru.com/tutorials/spandsp.html)pour les fax :

Télécharger spandsp (version 3) sur http://soft-switch.org/

télécharger app_txfax.c app_rxfax.c et asterisk.patch a http://soft-switch.org/

installer libtiff

compiler et installer spandsp ( ./configure, make et make install)

mettre app_txfax.c app_rxfax.c dans le répertoires apps/ des sources d’Asterisk

appliquer le patch asterisk.patch dans le répertoire des sources

exécuter ldconfig

(peut être optionnel, a résolu des heures de galère pour moi), commenter la ligne ast_frfree(inf); dans app_txfax.c app_rxfax.c

Aller dans le répertoire de asterisk , faire un ./configure , make et make install

Aller dans le répertoire de asterisk-addons , faire un ./configure , make et make install.

Si une des compilations ne se passe pas correctement, il faut s’assurer que tous les paquets nécessaires ont été installés, ainsi que les kernel-headers.

Installer les langues françaises, en les décompressant dans /var/lib/asterisk/sounds/fr. Vérifier que la musique d’attente est dans /var/lib/sounds/asterisk/moh-native (ou autre voir musiconhold.conf)


ANNEXE : Script d’installation

#!/usr/bin/sh

# Samuel Levy Janvier 2007 Script d'installation asterisk pour debian

#recuperation de la version du kernel

versionkernel=`cat /proc/version awk '{print $3}'`

versionasterisk="1.4.0"

versionzaptel="1.4.0"

versionlibpri="1.4.0"

versionaddons="1.4.0"

cd /usr/src/

#installation des headers du kernel necessaires a la compilation de zaptel

sh apt-get install kernel-headers-$versionkernel

#recuperation des paquets necessaires a l'installation d'Asterisk

apt-get install zlib1g zlib1g-dev libncurses5 libncurses-dev libssl0.9.6 libssl-dev libnewt-dev libnewt0.51

#recuperation des archives de zaptel,asterisk,libpri et asterisk-addons

wget http://ftp.digium.com/pub/asterisk/releases/asterisk-$versionasterisk.tar.gz && wget http://ftp.digium.com/pub/zaptel/releases/zaptel-$versionzaptel.tar.gz && wget http://ftp.digium.com/pub/libpri/releases/libpri-$versionlibpri && wget http://ftp.digium.com/pub/asterisk/releases/asterisk-addons-$versionaddons.tar.gz

#decompression des archives

tar -xvzf asterisk-addons-$versionaddons.tar.gz

tar -xvzf asterisk-$versionasterisk.tar.gz

tar -xvzf libpri-$versionlibpri.tar.gz

tar -xvzf zaptel-$versionzaptel.tar.gz

#installation de zaptel , libpri , asterisk , asterisk-addons

cd zaptel-$versionzaptel

make clean

./configure

make

make install

cd libpri-$versionlibpri

make clean

make

make install

cd asterisk-$versionasterisk

make clean

./configure

make

make install

make samples

cd asterisk-addons-$versionaddons

make clean

./configure

make

make install

echo "INSTALLATION D'ASTERISK TERMINEE !!!"


Troubleshooting

Asterisk,zaptel ou libpri ne compilent pas

Dans ce cas de figure il faut bien vérifier que toutes les dépendances nécessaires ont bien été installées.

Vérifier également que les kernel headers correspondants ont été installes sur la machine.

Bien respecter l’ordre d’installation, zaptel,libpri,asterisk.

Problèmes de son, coupures, friture

Même dans le cas d’une installation réussie, peuvent subsister des problèmes de qualité sur la ligne.

Dans la majeure partie des cas il s’agit de soucis d’IRQ , il convient de vérifier avec la commande lspci –vb si la carte ne partage pas son IRQ , si c’est le cas il faut s’arranger pour qu’elle soit seule (désactiver l’usb ,le son, changer de slot PCI par exemple).

Il existe des outils de diagnostics pour voir si l’interface fonctionne correctement ;

Zttool , qui permet de vérifier si des IRQ ne sont pas perdus (sources de soucis sur la ligne)

Zttest (cd /usr/scr/zaptel ; ./zttest) , a laisser tourner 5 minutes , un plus mauvais résultat inférieur a 99,98% peut être source de soucis.

Problèmes de reconnaissance DTMF

Mettre la valeur dtmfmode=rfc2833 dans le sip.conf.

Asterisk ne démarre pas

C’est souvent un souci de chargement de modules, désactiver dans le modules.conf le chargement des modules incrimines.


No comments: