Vous êtes sur la page 1sur 12

DOC Asterisk

Installation, configuration et utilisation

J´er´emy HAGE pour Nasdy Corp.

Version 1.0 26 juin 2009

1

Table des mati`eres

1 Introduction

3

2 Installation d’Ubuntu

 

3

3 Installation de zaptel

4

4 Installation d’Asterisk

5

5 Configuration

6

5.1 Fichier zapata.conf

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

6

5.2 Fichier sip.conf

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

7

5.3 Fichier extensions.conf

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

8

5.4 Fichier voicemail.conf

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

9

5.5 Le serveur de mail

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

10

5.6 Configuration des t´el´ephones

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

10

5.7 Synth`ese Vocale

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

11

6 Mode d’emploi

11

7 Maintenance

11

8 Conclusion

12

2

1 Introduction

Le but est de mettre en place un r´eseau VoIP dans l’entreprise et de le relier au RTC. Nous pr´esenterons donc ici les diff´erentes ´etapes d’installation, de configuration et de maintenance. Ci-dessous le sch´ema du r´eseau de l’entreprise Nasdy.

Ci-dessous le sch´ema du r´eseau de l’entreprise Nasdy. Figure 1 – R´eseau Nasdy 2 Installation d’Ubuntu

Figure 1 – R´eseau Nasdy

2 Installation d’Ubuntu

L’installation d’Ubuntu est une installation classique. La version utilis´ee est Ubuntu 7.10 Desktop (Gutsy Gibbon). La seule subtilit´e rencontr´ee se trouve au niveau de l’adresse des d´epˆots. En effet, le support technique des versions d’Ubuntu qui ont plus de 18 mois n’est plus assur´e et l’adresse des d´epˆots de ces distributions est modifi´ee par celle-ci :

3

http

://old-release.ubuntu.com

Ainsi, il faut ´editer le fichier /etc/apt/sources.list et remplacer l’adresse suivante http ://archive.ubuntu.com/ par l’adresse ci-dessus.

3 Installation de zaptel

Pour l’installer il faut d’abord installer le paquet zaptel `a l’aide de la com- mande suivante :

fuvix0001@fuvix0001

:~$

sudo

apt-get

install

zaptel

Seulement, ce paquet ne contient pas le module zaptel n´ecessaire `a la recon- naissance de la carte. Il faut donc installer le module zaptel `a partir des sources. On utilisera donc les commandes suivantes :

fuvix0001@fuvix0001

:~$

sudo

apt-get

install

module-assistant

Cette commande nous permet d’installer le paquet module-assistant qui nous permettra de r´ecup´erer les sources du module zaptel, de les compiler et de cr´eer un paquet .deb pour le noyau et de l’installer.

fuvix0001@fuvix0001

:~$

sudo

m-a

prepare

Pr´eparation de la compilation : R´ecup´eration des headers du kernel et v´erification de l’environnement de compilation.

fuvix0001@fuvix0001

:~$

sudo

m-a

get

zaptel-source

R´ecup´eration des sources de zaptel.

 

fuvix0001@fuvix0001

:~$

sudo

m-a

build

zaptel

Permet de construire le nouveau paquet .deb

fuvix0001@fuvix0001

:~$

sudo

m-a

install

zaptel

Installation de zaptel `a partir du paquet cr´e´e.

Maintenant que zaptel est correctement install´e, il faut le configurer. Pour cela, rien de plus simple, il existe un commande sp´ecialement faite pour ca.¸

fuvix0001@fuvix0001

:~$

sudo

genzaptelconf

Cette commande permet la g´en´eration automatique du fichier de configuration

4

zaptel.conf

. Enfin, on peut lancer le pilote de la carte TDM400P.

fuvix0001@fuvix0001

:~$

sudo

modprobe

wctdm

Puis pour v´erifier que la carte est bien reconnue, il faut taper la commande suivante :

fuvix0001@fuvix0001

:~$

ztcfg

-vv

Si l’installation de zaptel a bien fonctionn´ee, cette commande devrait afficher le message suivant :

Zaptel

Version

:

1.4.3

Echo

Canceller

:

MG2

Configuration

======================

Channel

map

:

Channel

04

:

FXS

Kewlstart

(Default)

(Slaves

:

04)

1

channels

configured

On voit bien, qu’un canal a ´et´e configur´e. C’est le canal num´ero 4 car la carte que j’ai utilis´e poss`ede un seul FXO qui se trouve sur le canal 4.

4 Installation d’Asterisk

Pour installer Asterisk, il suffit de taper la commande suivante :

fuvix0001@fuvix0001

:~$

sudo

apt-get

install

asterisk

Cependant, il est pr´ef´erable d’installer les paquets permettant d’avoir des messages vocaux en fran¸cais.

fuvix0001@fuvix0001

:~$

sudo

apt-get

install

asterisk-prompt-fr

Asterisk ´etant install´e, il s’agit maintenant de le configurer.

5

5

Configuration

5.1 Fichier zapata.conf

Asterisk utilise ce fichier pour d´eterminer les param`etres et la configuration du mat´eriel t´el´ephonique install´e dans le syst`eme. Il contrˆole les diverses fonc- tionnalit´es associ´ees au canal mat´eriel, comme la pr´esentation du num´ero, la mise en attente d’appels ou la suppression d’echo. Dans ce fichier, nous nous int´eresserons uniquement `a la section [channels] qui d´etermine la m´ethode de signalisation des canaux mat´eriel et ses options.

[channels] language=fr switchtype=national

rxwink=300

usecallerid=yes

hidecallerid=no

callwaiting=yes

usecallingpres=yes

callwaitingcallerid=yes

threewaycalling=yes

transfer=yes

canpark=yes

cancallforward=yes

callreturn=yes echocancel=yes echocancelwhenbridged=yes

rxgain=0.0

txgain=0.0

group=1

callgroup=1

pickupgroup=1

immediate=no

context=incoming;

Les

appels

entrant

extensions.conf

vont

dans

le

[incoming]

de

signalling=fxs_ks;Utiliser

la

signalisation

FXS

pour

un

canal

FXO

channel=>4;RTC

connecte

au

port

4

au

module

FXO

(Rouge)

 

Si quand on laisse un message, et qu’on appuie sur raccrocher pour le ter- miner, le messsage continu de s’enregistrer, v´erifier que les lignes suivantes ap- paraissent bien dans le fichier :

usecallingpres=yes

callreturn=yes

busydetect=yes

6

busycount=4

hanguponpolarityswitch=yes

5.2 Fichier sip.conf

Le fichier sip.conf contient les param`etres du canal et les options de chaque utilisateur. C’est v´eritablement ici que l’on d´eclare chaque utilisateur, qu’on leurs attribut des droits, une messagerie vocale, etc. La section [general] contient les param`etres du canal et les options par d´efaut de chaque utlisateurs. Les autres sections sont celles de chaque utilisateur.

[general] context=default

bindport=5060

bindaddr=0.0.0.0

srvlookup=yes

language=fr

dtmfmode

=

rfc2833

[100]

type=friend

 

username=100

secret=admin

host=dynamic

context=home

nat=yes

qualify=yes

 

[101]

type=friend

 

username=101

secret=admin host=dynamic context=home nat=yes qualify=yes

mailbox=101@default

[102]

type=friend

username=102

secret=admin

host=dynamic

context=home

nat=yes

qualify=yes

7

[103]

type=friend

username=103

secret=admin

host=dynamic

context=home

nat=yes

qualify=yes

5.3 Fichier extensions.conf

Ce fichier contient le plan de num´erotation. Le plan de num´erotation est le coeur d’un syst`eme Asterisk. Il d´efinit comment Asterisk g`ere les appels entrants et sortant. Ce fichier se compose g´en´eralement de 5 contextes :

[general]

static=yes

writeprotect=no

autofallthrough=yes

clearglobalvars=no

priorityjumping=no

[globals]

OUTBOUNDTRUNK

=

Zap/4

;

RTC

connect´e

au

port

4

[home]

include

exten=>103,1,Dial(SIP/103)

exten=>102,1,Dial(SIP/102)

exten=>101,1,Dial(SIP/101)

exten=>100,1,Dial(SIP/100)

exten=>500,1,VoiceMailMain()

=>

outbound-local

[incoming]

exten

=>

s,1,Answer()

exten

=>

s,2,background(accueil)

exten

=>

s,3,WaitExten()

exten

=>

1,1,Dial(SIP/101,10)

exten

=>

1,2,VoiceMail(101@default)

exten

=>

2,1,Dial(SIP/100,10)

exten

=>

2,2,VoiceMail(101@default)

exten

=>

3,1,Dial(SIP/100&SIP/101,10)

8

exten

=>

3,2,VoiceMail(101@default)

;Si

occupe

:

message

puis

raccroche

exten

=>

s,102,PlayBack(tt-allbusy)

exten

=>

s,103,Hangup()

 

exten

=>

i,1,PlayBack(pbx-invalid)

exten

=>

i,2,Goto(incoming,s,1)

exten

=>

t,1,PlayBack(vm-goodbye)

exten

=>

t,2,HangUp()

 

[outbound-local]

exten

=>

_0ZXXXXXXXX,1,Dial(${OUTBOUNDTRUNK}/${EXTEN})

exten

=>

_0ZXXXXXXXX,2,Congestion()

exten

=>

_0ZXXXXXXXX,102,Congestion()

Les contextes [incoming] , [home]et [outbound-local]peuvent tr`es bien se nommer diff´eremment, l’important est que :

– le contexte [incoming]concorde bien avec le fichier zapata.conf .

– le contexte [home] concorde avec sip.conf dans la d´eclaration des uti- lisateurs.

– le contexte [outbound-local] soit le mˆeme que celui inclu dans [home]

5.4 Fichier voicemail.conf

Ce fichier permet de configurer la messagerie vocale.

[general]

format=wav49|gsm|wav

serveremail=nasdy.msg@gmail.com attach=yes

skipms=3000

maxsilence=10

silencethreshold=128

maxlogins=3

emailsubject=[PBX]:

vocale

emailbody=Cher

Nouveau

message

${VM_MAILBOX}

${VM_NAME}:\n\n\tVous

${VM_MSGNUM}

dans

avez

un

nouveau

la

bo^ıte

message

d’une

dur´ee

de

${VM_DUR}

provenant

du

num´ero

${VM_CALLERID}.

Ce

message

a

´et´e

re¸cu

le

${VM_DATE}

et

est

le

num´ero

${VM_MSGNUM}

de

votre

bo^ıte

vocale.

Merci!\n\n\t\t\t\t--Asterisk\n

 

emaildateformat=%d/%h/%Y

`a

%Hh%M

mailcmd=/usr/sbin/sendmail

-t

sendvoicemail=yes

[zonemessages]

9

eastern=America/New_York|’vm-received’

Q

’digits/at’

IMp

central=America/Chicago|’vm-received’

Q

’digits/at’

IMp

central24=America/Chicago|’vm-received’

q

’digits/at’

H

N

’hours’

military=Zulu|’vm-received’

q

’digits/at’

H

N

’hours’

’phonetic/z_p’

european=Europe/Copenhagen|’vm-received’

a

d

b

’digits/at’

HM

[default]

101

=>

1234,Roland

Ratenan,contact@nasdy.com

5.5 Le serveur de mail

La mise en place de la messagerie vocale n´ecessite l’installation de ssmtp ,

mailx

et sendmail

.

fuvix0001@fuvix0001

:~$

sudo

apt-get

install

ssmtp

mailx

sendmail

Il faut ensuite configurer ssmtp `a l’aide du fichier /etc/ssmtp/ssmtp.conf

de

la

mani`ere

suivante

:

root=nasdy.msg@gmail.com

mailhub=smtp.gmail.com:587

UseSTARTTLS=YES AuthUser=nasdy.msg@gmail.com

AuthPass=nasdy.msg88

rewriteDomain=gmail.com FromLineOverride=YES

hostname=fuvix0001

Pour tester le serveur ind´ependamment d’asterisk, faire :

fuvix0001@fuvix0001

test

.

:~$

mail

adr@dest.com

-s

test

5.6 Configuration des t´el´ephones

La configuration par d´efaut des t´el´ephones est satisfaisante. Il faut n´eanmoins attribuer une adresse IP au t´el´ephone, un username, un mot de passe et l’adresse du serveur asterisk. Ces donn´ees doivent bien ´evidemment concorder avec les fichiers de configuration. Dans account, dans send DTMF, il faut cocher via RTP (RFC2883). Puis dans sip.conf , dans [general] il faut rajouter ou d´ecommenter la ligne dtmfmode=rfc2833 . Cela permet, lors de la consultation des messages vocaux, de reconnaˆıtre le mot de passe tap´e par l’utilisateur.

10

5.7 Synth`ese Vocale

Le message d’accueil a ´et´e cr´e´e `a l’aide du logiciel Dspeech sous Windows et de la voix Scansoft Virginie Dri40. Il faut enrigistrer le message au format .wav . Ensuite, sous linux, il faut le convertir en .gsm .

fuvix0001@fuvix0001

:~$

sox

fichier.wav

fichier.gsm

6 Mode d’emploi

En interne, si on tape le 100, ceci appelle le poste 100. Idem pour les postes 101 et 102. Quand on tape le 500 cela nous envoie vers la messagerie vocale. Le num´ero de la boˆıte vocale est 101 et le mot de passe est 1234. Depuis l’ext´erieur, si on tape 1, le poste 101 est contact´e. Si on tape 2, le poste 100 est contact´e. Enfin si on tape 3, les 3 postes sont contact´es jusqu’`a ce que l’un d’eux r´eponde. Les messages sont dirig´es vers l’adresse contact@nasdy.com via l’adresse e- mail nasdy.msg@gmail.com.

7 Maintenance

Attention : Pour ´eviter tout probl`eme, il vaut mieux laisser la CLI ouverte durant l’utilisation d’Asterisk.

Il se peut que le r´eseau t´el´ephonique ne fonctionne plus. Ceci se passe g´en´eralement au d´emarrage du serveur. Pour corriger le probl`eme, la mani- pulation suivante doit ˆetre faite :

En mode console, ouvrir la CLI d’Asterisk :

fuvix0001@fuvix0001

:~$

asterisk

-r

Puis, dans la CLI, taper :

fuvix0001*CLI>stop

now

Cela vous ramenera `a la console normale. De l`a, taper les commandes sui- vantes :

11

fuvix0001@fuvix0001

:~$

sudo

rmmod

wctdm

wcfxo

zaptel

fuvix0001@fuvix0001

:~$

sudo

modprobe

zaptel

fuvix0001@fuvix0001

:~$

sudo

modprobe

wctdm

fuvix0001@fuvix0001

:~$

ztcfg

fuvix0001@fuvix0001

:~$

zttool

La derni`ere commande permet de voir si tout s’est bien pass´e. Si la colonne alarms de la carte TDM400P est OK, tout s’est bien pass´e. Ensuite selection- ner cette carte et appuyer sur select. Dans la ligne Total/Conf/Act , on doit avoir quelque chose comme 4/ 1/ 1/ . Si on a 4/ 1/ 0/ alors d´ebrancher et rebrancher le cˆable connect´e `a la carte, le 0 devrait passer `a 1.

Enfin, il faut relancer Asterisk :

fuvix0001@fuvix0001

:~$

sudo

asterisk

-vvvvvvvvvvvvvvvvvvvvvvvvvc

8

Conclusion

Pour toute autre pr´ecision : hage.jeremy@gmail.com .

12