Partie I : Définition d’un Serveur Vocal Interactif

             Installation d’asterisk
                  Mode paquet (tar.gz)
                  Mode commande



            Partie II : Mise en œuvre
             Création des comptes SIP
             Plan de numérotation
                  Les applications
                  Enregistrement des sons avec la fonction " Record()"
                  Dialplan




                Conclusion




Dimitri, Martial, Charwel                                                 1
I.      Définition Serveur Vocal Interactif (SVI ou IVR)

   Un serveur vocal interactif ou SVI est un système informatique qui prend en charge les appels
   entrants à l’aide de messages vocaux enregistrés ou de synthèse vocale.

   Le système est interactif, car l’appelant est appelé à interagir avec le serveur par la voix ou par
   l’utilisation des touches de son téléphone.

   Le serveur vocal interactif peut orienter l’utilisateur vers un opérateur humain ou traiter
   entièrement la demande (demande de solde bancaire par exemple).



   1. Installer Asterisk
   Nous allons marcher à travers l'installation d'Asterisk à partir du code source. Beaucoup de gens
   répugnent à cette méthode, affirmant qu'il est trop difficile et de longue haleine. Notre objectif ici
   est de démontrer que l'installation d'Asterisk à partir des sources n'est pas réellement si difficile à
   faire. Plus important encore, nous voulons vous offrir la meilleure plate-forme Asterisk sur lequel
   d'apprendre.



    Installez les dépendances logicielles:

# yum install gcc gcc-c++ libxml2-devel ncurses-devel



                    Mode paquet
    Téléchargement des paquets (tar.gz)

        http://www.asterisk.org/downloads

            Asterisk

        asterisk 1.x.xx.tar.gz

            Libpri

        libpri-1.x.xx.tar.gz

            DAHDI Linux / DAHDI Tools

        dahdi-linux-complete-2.6.0+2.6.0.tar.gz


Dimitri, Martial, Charwel                                                                                2
 Asterisk Add-Ons

       asterisk-addons-1.x.x.tar.gz



    Créer votre structure de répertoire:

mkdir -p ~/src/asterisk-complete/asterisk
cd ~/src/asterisk-complete/asterisk

Idem pour Libpri et Dahdi et asterisk add-ons
Outre l’installation à partir des paquets tar.gz, on peut aussi installer asterisk par commande.


                   Mode commandes
Sur une distribution de type RedHat

#yum install asterisk

Sur une distribution de type Debian

#apt-get install asterisk

Manuellement:

# cd ../libpri-1.4.x
# make; make install

#cd …/asterisk-1.4.x
#tar -xvzf <nom_du_paquet>
#./configure
#make menuselect
#make
#make install &&make samples




Dimitri, Martial, Charwel                                                                          3
Présentation de l’installation d’asterisk add-ons

# cd …/asterisk-addons-1.4.x
#. /configure
#make
#make install


   II. Mise en œuvre
                   Création des comptes
Pour notre, nous avons créé trois (3) comptes : (Dimitri, Charwel et Martial)

La création de comptes se fait dans le fichier /etc/asterisk/sip.conf




Dimitri, Martial, Charwel                                                       4
;############################ Contacts SIP du SVI ##################

[Charwel]
username=Charwel
secret=passer
type=friend
host=dynamic
context=CMD
allow=ulaw
echocancel=yes
callerid=<Charwel Kombo>1001


[Martial]
username=Martial
secret=passer
type=friend
host=dynamic
context=CMD
allow=ulaw
echocancel=yes
callerid=<Martial Loemba>1000


[Dimitri]
username=Dimitri
secret=passer
type=friend
host=dynamic
context=CMD
allow=ulaw
echocancel=yes
callerid=<Dimitri Lembokolo>1003




Dimitri, Martial, Charwel                                              5
 Plan de numérotation

                     Les applications

                     Answer: Répondre à un appel
                     Read: Lit une variable
                     Playback: Lire un fichier son
                     Background: Lire un fichier son en tâche de fond dans l'attente de la saisie une
                      touche
                     GotoIf: Se rendre à une priorité d’extension précise d’un contexte suivant la
                      condition posée
                     Record: Permet d'enregistrer un son en format wav ou gsm

                     Enregistrement des sons avec la fonction "Record()"

On enregistre les sons qui vont guider l'utilisateur lors d'une requête avec l'application Record de
asterisk dans le fichier extensions.conf




Dimitri, Martial, Charwel                                                                              6
 Dialplan

Editez le fichier extensions.conf pour créer le plan de numérotation.




;############################ SVI ou IVR ######################

[CMD]

;....... enregistrement .........................

;son de bienvenu

exten => 3000,1,Answer()

exten => 3000,2,Record(Bienvenu.gsm)

;son du choix de la personne à joinder

exten => 4000,1,Answer()

exten => 4000,2,Record(Choix.gsm)

;son au cas où rien n’est saisie

exten => 5000,1,Answer()

exten => 5000,2,Record(ErreurNum.gsm)




Dimitri, Martial, Charwel                                               7
;........... Instruction à effectuer .............

exten => 7000,1,Playback(Bienvenu)

exten => 7000,2,Read(Var,Choix,1) ; La fonction Read permet de lire les infos saisies par
l’appelant, dans notre cas on va lire le digit saisie jusqu’au 1 digit vu que la Var contiens 1
chiffre. Var est la variable et Choix le son enregistré.

exten => 7000,3,GotoIf($[${Var}=1]?1000,1:7000,4)

exten => 7000,4,GotoIf($[${Var}=2]?1003,1:7000,5)

exten => 7000,5,Background(ErreurNum)

exten => 7000,6,Goto(2)



exten => 1000,1,Dial(SIP/Martial,10,tr)

exten => 1000,2,Hangup()



exten => 1001,1,Dial(SIP/Charwel,10,tr)

exten => 1001,2,Hangup()



exten => 1003,1,Dial(SIP/Dimitri,10,tr)

exten => 1003,2,Hangup()




Dimitri, Martial, Charwel                                                                         8

Tuto Serveur Vocal Interactif (SVI ou IVR)

  • 1.
    Partie I :Définition d’un Serveur Vocal Interactif  Installation d’asterisk  Mode paquet (tar.gz)  Mode commande Partie II : Mise en œuvre  Création des comptes SIP  Plan de numérotation  Les applications  Enregistrement des sons avec la fonction " Record()"  Dialplan Conclusion Dimitri, Martial, Charwel 1
  • 2.
    I. Définition Serveur Vocal Interactif (SVI ou IVR) Un serveur vocal interactif ou SVI est un système informatique qui prend en charge les appels entrants à l’aide de messages vocaux enregistrés ou de synthèse vocale. Le système est interactif, car l’appelant est appelé à interagir avec le serveur par la voix ou par l’utilisation des touches de son téléphone. Le serveur vocal interactif peut orienter l’utilisateur vers un opérateur humain ou traiter entièrement la demande (demande de solde bancaire par exemple). 1. Installer Asterisk Nous allons marcher à travers l'installation d'Asterisk à partir du code source. Beaucoup de gens répugnent à cette méthode, affirmant qu'il est trop difficile et de longue haleine. Notre objectif ici est de démontrer que l'installation d'Asterisk à partir des sources n'est pas réellement si difficile à faire. Plus important encore, nous voulons vous offrir la meilleure plate-forme Asterisk sur lequel d'apprendre.  Installez les dépendances logicielles: # yum install gcc gcc-c++ libxml2-devel ncurses-devel  Mode paquet  Téléchargement des paquets (tar.gz) http://www.asterisk.org/downloads  Asterisk asterisk 1.x.xx.tar.gz  Libpri libpri-1.x.xx.tar.gz  DAHDI Linux / DAHDI Tools dahdi-linux-complete-2.6.0+2.6.0.tar.gz Dimitri, Martial, Charwel 2
  • 3.
     Asterisk Add-Ons asterisk-addons-1.x.x.tar.gz  Créer votre structure de répertoire: mkdir -p ~/src/asterisk-complete/asterisk cd ~/src/asterisk-complete/asterisk Idem pour Libpri et Dahdi et asterisk add-ons Outre l’installation à partir des paquets tar.gz, on peut aussi installer asterisk par commande.  Mode commandes Sur une distribution de type RedHat #yum install asterisk Sur une distribution de type Debian #apt-get install asterisk Manuellement: # cd ../libpri-1.4.x # make; make install #cd …/asterisk-1.4.x #tar -xvzf <nom_du_paquet> #./configure #make menuselect #make #make install &&make samples Dimitri, Martial, Charwel 3
  • 4.
    Présentation de l’installationd’asterisk add-ons # cd …/asterisk-addons-1.4.x #. /configure #make #make install II. Mise en œuvre  Création des comptes Pour notre, nous avons créé trois (3) comptes : (Dimitri, Charwel et Martial) La création de comptes se fait dans le fichier /etc/asterisk/sip.conf Dimitri, Martial, Charwel 4
  • 5.
    ;############################ Contacts SIPdu SVI ################## [Charwel] username=Charwel secret=passer type=friend host=dynamic context=CMD allow=ulaw echocancel=yes callerid=<Charwel Kombo>1001 [Martial] username=Martial secret=passer type=friend host=dynamic context=CMD allow=ulaw echocancel=yes callerid=<Martial Loemba>1000 [Dimitri] username=Dimitri secret=passer type=friend host=dynamic context=CMD allow=ulaw echocancel=yes callerid=<Dimitri Lembokolo>1003 Dimitri, Martial, Charwel 5
  • 6.
     Plan denumérotation  Les applications  Answer: Répondre à un appel  Read: Lit une variable  Playback: Lire un fichier son  Background: Lire un fichier son en tâche de fond dans l'attente de la saisie une touche  GotoIf: Se rendre à une priorité d’extension précise d’un contexte suivant la condition posée  Record: Permet d'enregistrer un son en format wav ou gsm  Enregistrement des sons avec la fonction "Record()" On enregistre les sons qui vont guider l'utilisateur lors d'une requête avec l'application Record de asterisk dans le fichier extensions.conf Dimitri, Martial, Charwel 6
  • 7.
     Dialplan Editez lefichier extensions.conf pour créer le plan de numérotation. ;############################ SVI ou IVR ###################### [CMD] ;....... enregistrement ......................... ;son de bienvenu exten => 3000,1,Answer() exten => 3000,2,Record(Bienvenu.gsm) ;son du choix de la personne à joinder exten => 4000,1,Answer() exten => 4000,2,Record(Choix.gsm) ;son au cas où rien n’est saisie exten => 5000,1,Answer() exten => 5000,2,Record(ErreurNum.gsm) Dimitri, Martial, Charwel 7
  • 8.
    ;........... Instruction àeffectuer ............. exten => 7000,1,Playback(Bienvenu) exten => 7000,2,Read(Var,Choix,1) ; La fonction Read permet de lire les infos saisies par l’appelant, dans notre cas on va lire le digit saisie jusqu’au 1 digit vu que la Var contiens 1 chiffre. Var est la variable et Choix le son enregistré. exten => 7000,3,GotoIf($[${Var}=1]?1000,1:7000,4) exten => 7000,4,GotoIf($[${Var}=2]?1003,1:7000,5) exten => 7000,5,Background(ErreurNum) exten => 7000,6,Goto(2) exten => 1000,1,Dial(SIP/Martial,10,tr) exten => 1000,2,Hangup() exten => 1001,1,Dial(SIP/Charwel,10,tr) exten => 1001,2,Hangup() exten => 1003,1,Dial(SIP/Dimitri,10,tr) exten => 1003,2,Hangup() Dimitri, Martial, Charwel 8