SlideShare uma empresa Scribd logo
1 de 49
Baixar para ler offline
Licence Professionnelle : 
             ‘Administration de systèmes, réseaux et applications à base de 
             logiciels libres’
             IUT Nancy Charlemagne ­ Département Informatique 
             2 ter, bd Charlemagne ­ CS 5227 ­ 54052 Nancy Cedex 
             Tél : 03 83 91 31 06 – Fax : 03 83 91 32 01 ­ 
             www.iuta.univ­nancy2.fr/lpinfo




                               ToiP Asterisk




Tuteur: M. Damien Maringer

Groupe: Quentin Hourlier, Benoit Henryon, Romain Gegout, Luis Dominguez Lopez
Sommaire


                                                            Sommaire
1) Introduction...........................................................................................................................3
2) Cahier des charges................................................................................................................4
3) Qu'est ce que la ToIP............................................................................................................5
4) Installation d'Asterisk sur Linux..........................................................................................9
5) Configuration minimale avec quelques comptes SIP........................................................12
6) Fonctionnalités....................................................................................................................16
   6.1 Appel.........................................................................................................................................16
   6.2 Mise en attente(avec musique).................................................................................................17
   6.3 Musique de pré­décroché.........................................................................................................17
   6.4 Transfert d’appel......................................................................................................................18
   6.5 Conférence................................................................................................................................18
   6.6 Mise en place de communication vidéo...................................................................................20
   6.7 Interception d’appel.................................................................................................................20
   6.8 Renvoi d’appel..........................................................................................................................20
   6.9 Log des appels en base MySQL...............................................................................................21
   6.10 Messagerie unifiée..................................................................................................................23
   6.11 Menu vocal interactif(IVR)....................................................................................................29
   6.12 Gestion des files d’attente(Centre d’appels).........................................................................30
   6.13 Mise en place d'Asterisk­stat.................................................................................................34
   6.14 Présentation Trixbox et supervision des appels(FOP).........................................................34
7) Présentation de distributions dédiées..................................................................................39
   7.1 Trixbox......................................................................................................................................39
   7.2 Elastix........................................................................................................................................40
   7.3 Asterisk@home ........................................................................................................................41
   7.4 VoiceBuntu................................................................................................................................42
   7.5 AstLinux....................................................................................................................................43
8) Conclusion...........................................................................................................................45
9) Bibliographie et Webographie............................................................................................46
   9.1 Webographie :...........................................................................................................................46
   9.2 Bibliographie :..........................................................................................................................46
10) Annexes..............................................................................................................................47
   10.1 Répartition des tâches............................................................................................................47
   10.2 Paramétrage du Softphone Twinkle pour Asterisk..............................................................49


Rapport Asterisk                                                                                                                                2/49
Introduction




1)  NTRODUCTION
   I           
         La téléphonie sur IP (ToIP) connaît un essor considérable depuis une dizaine d'années. Aussi 
bien pour les besoins de l'entreprise que du particulier, cette technologie à bouleversé notre usage 
du   téléphone.   Les   nouvelles   fonctionnalités   apportées   ainsi   que   l'impact   sur   le   coût   des 
communications fait que la ToIP s'implante massivement, et par conséquent, crée des emplois et des 
entreprises spécialisées dans le domaine. Il peut être du ressort de l'administrateur système et réseau 
de prendre en charge tout ou partie du système de ToIP de son entreprise. Des solutions open­
source de logiciels ToIP sont largement utilisées et ont acquis une notoriété telle qu'ils est très 
intéressant de les étudier.
         Ce projet tuteuré va permettre, à travers l'étude du logiciel open­source Asterisk, de faire un 
tour d'horizon de cette technologie et des possibilités offertes par cet outil. Par ailleurs cela nous 
aura appris les notions de ToIP et d'utilisation d'Asterisk qui pourront être mise en avant lors de 
notre future recherche d'emploi.




Rapport Asterisk                                                                                    3/49
Cahier des charges



2)   AHIER DES CHARGES
   C                  

Ci dessous le cahier des charges communiqué par M Damien Maringer.

   I) Qu'est­ce que la ToIP.
   II) Présentation et installation d'Asterisk sur Linux.
   III)  Configuration minimale avec quelques comptes SIP.
   IV)  Prise en main du Dial Plan.
   V) Fonctionnalités à tester
        o Appel 
        o Musique de pré­décroché 
        o Mise en attente (avec musique) 
        o Transfert d’appel 
        o Conférence à 3 
        o Interception d’appel 
        o Renvoi d’appel 
        o Log des appels en base MySQL (CDR) 
        o Messagerie unifiée (boîte vocale et envoi par mail du message en .WAV) 
        o Supervision des appels (FOP) 
        o Menu vocal interactif (IVR) 
        o Gestion des files d’attente (Centre d’appels) 




Rapport Asterisk                                                                      4/49
Qu'est ce que la ToIP



3)   U'EST CE QUE LA TOIP
   Q                      
         La téléphonie sur IP (ToIP) est un ensemble de technologies visant à utiliser un réseau 
sous protocole TCP/IP pour y faire circuler des conversations téléphoniques. Ces technologies 
connaissent un véritable essor depuis les premiers pas en 1996 et notamment depuis l'arrivée 
dans les foyers des offres triple­play des fournisseurs d'accès internet. Ces offres proposent 
l'accès   à  internet,  un flux vidéo  pour les  chaînes  de télévision  et  un flux VoIP  pour des 
communications   téléphoniques   à   des   tarifs   extrêmement   avantageux).   Les   entreprises 
basculent elles aussi massivement vers cette nouvelle technologie pour tous les avantages 
qu'elle apporte (Début 2008, 46% des PME françaises avaient adopté une solution de ToIP, 
aujourd'hui elles sont proches de 100% à avoir migré).

                                Schéma de principe pour transformer la voix en IP



                                     Conversion                                         Suppression
                                                                 compression                                 Ajout entêtes IP            Réseau
                                analogique->numérique                                     silence




      Voix                                                                                                                                IP



Explications: La bande voix (qui est un signal électrique analogique) est d'abord échantillonnée  
numériquement  par  un  convertisseur  puis  compressée  selon  une  certaine  norme  de  compression  
variable   selon   les   codecs   utilisés,   puis   ensuite   on   peut   éventuellement   supprimer   les   pauses   de  
silences observées lors d'une conversation, pour être ensuite habillée RTP,UDP et enfin en IP. Une  
fois   que   la   voix   est   transformée   en   paquets   IP,   ces   paquets   Ip   identifiés   et   numérotés   peuvent  
transiter sur n'importe quel réseau Ip (ADSL, Ethernet, Satellite,routeurs, switchs, PC, Wifi, etc...)


         Cette technologie permet de communiquer de façon très simple sur un réseau IP, mais 
elle permet également d'établir des ponts avec le réseau téléphonique historique (nommé RTC 
pour réseau téléphonique commuté). Il devient ainsi possible d'établir des communications 
entre des personnes téléphonant depuis des réseaux différents. Pour cela, il faut installer des 
cartes   chargées   de   transformer   les   trames   IP   en   signal   pouvant   transiter   sur   le   réseau 
classique. Ces cartes sont nommées carte PABX (Private Automatic Branch eXchange). 




Rapport Asterisk                                                                                                                         5/49
Qu'est ce que la ToIP



Les outils nécessaires à la mise en œuvre d'un réseau de VoIP.

       En début de chaîne, l'utilisateur doit disposer d'un outil faisant office de téléphone. 
deux alternatives se présentent:

–    
    Téléphone SIP:      
    Il s'agit d'un boîtier téléphonique physique avec un combiné et un clavier. Ce type de 
    téléphone   a   la   particularité   de   disposer   d'une   prise   réseau   ainsi   que   d'une   application 
    permettant de transformer la voix en IP. 

                                       Quelques exemples de téléphone IP:




                  Linksys SPA962 (+ de 200€)             Linksys SPA942 (+ de 100€)




–    
    Softphone SIP    .
    Il s'agit d'un logiciel faisant office de téléphone, installé sur le PC de l'utilisateur, et qui se 
    chargera de transformer la voix capturée par la carte son en signal IP émis sur le réseau. 
    L'offre est assez vaste. Il y a les plus connu comme MSN Messenger, Skype, X­Lite... (qui 
    présentent l'inconvénient d'être propriétaires et non open­source) et il y a les open­sources 
    (Ekiga, Twinkle ...)

                                         Quelques exemples de softphone:




      SKYPE                      X­LITE                          EKIGA                       TWINKLE




Rapport Asterisk                                                                                             6/49
Qu'est ce que la ToIP



        Outre   les   terminaux   téléphoniques   (Téléphone   ou   Softphone),   Une   application 
permettant   le   routage   des   appels   et   offrant   divers   services   est   indispensable.   Il   s'agit   du 
serveur VoIP. Ce serveur représente le cœur du système: Il connaît  les téléphones  de son 
réseau d'utilisateur, il connaît le point d'accès vers le réseau commuté, il propose des services 
tel que messagerie, renvoie d'appels, conférences à plusieurs etc... . Quelques serveurs SIP se 
démarquent sur le marché (CISCO SIP Proxy Server, Eyeball SIP Proxy Server, Asterisk...).




Rapport Asterisk                                                                                               7/49
Qu'est ce que la ToIP

Avantages et inconvénients de la VoIP


Avantages                                                                     Inconvénients
1 ­ Économiser sur la facture télécom                                         1) Fiabilité
2 ­ Pérenniser l'investissement                                               2) Qualité de son 
3 ­ Simplifier les infrastructures                                            3) Améliorer l'utilisation
4 ­ Faciliter l'administration et la mobilité                                 4) Localisation
5 ­ Homogénéiser les services téléphoniques sur différents sites              5) Standards
6 ­ Faciliter l'intégration avec le système d'information                     6) Support administratif
7 ­ Évoluer plus facilement
8 ­ Regrouper les équipes et se passer d'un prestataire


         Une   étude   (source:  www.frameip.com  )   nous   donne   les   motivations   de   100 
responsables de systèmes informatiques d'entreprise pour migrer vers une solution VoIP. En 
tête vient évidemment la réduction des coûts. Le flux internet étant généralement illimité dans 
les   abonnements,   celui­ci   peut   donc   être   utilisé   de   façon   illimitée   sans   surcoût   pour   les 
communications VoIP.


                   Motivations                                         Pourcentage
                   Réduction de coûts                                  75 %
                   Nécessité de standardiser l'équipement              66%
                   Hausse de la productivité des employés              65%
                   Autres bénéfices de productivité                    64%
                   Hausse du volume d'appels à traiter                 46%
                   Autres facteurs                                     50%


Présentation du protocole SIP
          Le protocole SIP (Session Initiation Protocol) est un protocole ouvert standardisé par 
l'IETF (décrit par le RFC 3261, 1996) qui a été conçu pour établir, modifier et terminer des 
sessions   multimédias.   Il  se  charge  de  l'authentification  et  de  la  localisation   des  multiples 
participants. Il se charge également de la négociation sur les types de médias utilisables par 
les différents participants en encapsulant des messages SDP (Session Description Protocol). 
SIP ne transporte pas les données échangées durant la session comme la voix ou la vidéo. SIP 
étant   indépendant   de   la   transmission   des   données,   tout   type   de   données   et   de  protocoles 
peuvent être utilisés pour cet échange (VoIP, visiophonie, messagerie instantanée ou même 
les jeux vidéos). Cependant le protocole RTP (Real­time Transport Protocol) assure le plus 
souvent les sessions audio et vidéo. SIP remplace progressivement H.323.
          Il   fonctionne   en   mode   client/serveur:   le   téléphone   (client)   envoie   des   requêtes   au 
serveur SIP (autocom) ou vers des autres clients SIP. Ces requêtes sont en fait des paquets de 
données qui contiennent des informations à destination du serveur SIP.
          Depuis 2004, SIP s'est imposé comme le protocole de choix en matière de VoIP en 
raison  de sa simplicité  et de sa gratuité. Il est d'ailleurs  implémenté  dans la majorité des 
matériels et logiciels fournis à ce jour par les constructeurs et éditeurs.



Rapport Asterisk                                                                                             8/49
Installation d'Asterisk sur Linux



4)  NSTALLATION D'ASTERISK SUR LINUX
   I                                

–   Installation par paquets.
    Sur une distribution Debian/Ubuntu, les paquets de la dernière version stable se trouvent sur les 
    dépôts officiels. La commande  $ apt-get install asterisk  suffit pour installer le 
    logiciel.

–   Installation par les sources.
    Les sources du logiciel se trouvent sur le site officiel de l'éditeur: http://www.asterisk.org/
    (A ce jour, la version la plus stable et documentée est la 1.4.x)

    ­1­ Télécharger l'archive asterisk­1.4.23.1.tar.gz
    ­2­ Décompresser l'archive : $ tar -zxvf asterisk-1.4.23.1.tar.gz
    ­3­ Exécuter la commande : $ ./configure 
    (A ce moment un problème peut se poser si le paquet libncurses5­dev n'est pas présent. La 
    solution est d'installer ce paquet: $ apt-get install libncurses5-dev)
    ­4­ La commande (optionnelle) $ make menuselect permet d'installer des modules 
    supplémentaires.




Rapport Asterisk                                                                               9/49
Installation d'Asterisk sur Linux



   4) Lancer la commande $ make
      (le message suivant indique que la procédure s'est bien déroulée).




   5) Lancer la commande $ make install
      (le message suivant indique que l'installation s'est bien déroulée).




   6) Pour finir, la commande $ make samples (optionnelle) permet de créer des fichiers de 
      configuration  de base. (elle  peut être utile  par la suite pour revenir  à une configuration 
      d'origine d'asterisk).




Rapport Asterisk                                                                          10/49
Installation d'Asterisk sur Linux



Dès lors, asterisk peut être lancé de 2 manières:
– en mode serveur (usage normal, a l'écoute des requêtes des clients).

    Syntaxe: $ asterisk -vvvc    // chaque 'v' demande un degrés de verbosité, de verbose à 
    very   very   verbose.   'c'   nous   donnera   accès   à   une   invite   de   commande   (nommée   CLI   pour 
    commande line interface) qui permettra de dialoguer avec le serveur une fois celui­ci lancé.

–   en mode client (en accédant à une console permettant de dialoguer avec le serveur).
    Syntaxe: $ asterisk -r
    Cette console peut permettre d'obtenir des informations sur l'activité du serveur, comme par 
    exemple la liste des clients connectés (commande 'sip show peers' en l'occurrence).




    Cette commande permet également de recharger les fichiers de configuration lorsque l'on a fait 
    des modifications sur ceux­ci (en tapant 'reload' pour recharger tous les fichiers de configuration 
    ou en tapant 'reload nom_fichier' si on ne travaille que sur un fichier).




Rapport Asterisk                                                                                     11/49
Les principaux fichiers de configuration



5)   ONFIGURATION MINIMALE AVEC QUELQUES COMPTES SIP
   C                                                 
       Ce qu'il faut savoir pour commencer, 4 éléments essentiels composant un système basé sur 
Asterisk doivent être configurés:
– Les utilisateurs (nom, mot de passe, authentification...)
– Le matériel (le serveur, les cartes de communication...)
– Le plan de numérotation nommé dial­plan (les règles de routage des appels)
– Les services supplémentaires (serveur vocal, messagerie...)


Tous les fichiers de configuration pour paramétrer Asterisk se trouvent dans le répertoire 
/etc/Asterisk
Dans un premier temps, les 2 fichiers qui vont nous intéresser sont 'sip.conf' et 'extensions.conf'

sip.conf
Il contient les informations relatives aux téléphones sip.
Il est composé de plusieurs sections:
– une section [general] qui va définir les propriétés générales pour l'ensemble des clients SIP.
– une section par client SIP dans lesquelles seront définit finement les propriétés de chaque poste. 




                              Exemple de fichier sip.conf minimaliste:
                      [general]  //  paramétrage concernant tout les clients sip
                      context=line1 
                      ...
                      [quentin]  //  paramétrage pour le sip de Quentin
                      type = friend 
                      secret = topsecret
                      host = dynamic
                      context = default

                      [luis] 
                      type = friend 
                      context=line1 
                      secret = defunes 
                      host=192.168.1.106 




Rapport Asterisk                                                                           12/49
Les principaux fichiers de configuration

extensionsconf
Ce fichier est composé de plusieurs sections, nommées des 'contextes', dans lesquelles sont définis 
les comportements à adopter lors d'appels entre clients.
                     Exemple de fichier extensions.conf minimaliste
                        [general] 
                        static=yes 
                        writeprotect=no 
                        autofallthrough=yes 
                        clearglobalvars=no 
                        priorityjumping=no 

                        [globals] 
                        CONSOLE => Console/dsp 
                        IAXINFO => guest 
                        TRUNK => Zap/G2 
                        TRUNKMSD => 1 

                        [default]                         
                        exten => 101,1,Dial(SIP/quentin,30) 
                        exten => 102,1,Dial(SIP/ben,30) 
                        exten => 103,1,Dial(SIP/romain,30) 
                        exten => 104,1,Dial(SIP/luis,30) 
                        exten => 105,1,Dial(SIP/remi,30) 


        Dans le contexte nommé [general] sont définies les options généralement appliquées par le 
serveur Asterisk au plan de numérotation. Par exemple  'clearglobalvars=no'  indique au serveur 
d'effacer toutes les variables utilisées par celui ci lors de sa fermeture.
Dans le contexte nommé [globals] sont définies les variables globales utilisées par le serveur.
         Dans   le   contexte   [default]   nous   avons   défini   les   comportements   pour   chacun   de   nos 
comptes SIP selon cette forme: exten => identifiant, priorité, application.
exten => 101,1,Dial(SIP/quentin,30) signifie ainsi qu'un appel vers le 101 aura une priorité 1 et sera 
concrétiser par un appel vers quentin.
L'identifiant d'extension: généralement le numéro de la personne appelée.
Extension particulière:
 ­ 's' comme start indique que le flux sera redirigé vers la règle mentionnée.
 ­ 't' comme timeout exécute la règle après 10 sec (par défaut) d'inactivité.
 ­ 'i' comme invalide si saisie d'une extension inconnue.
Filtre d'extension = +/­ des regexp pour appliquer des règles a des groupes par exemple.



Rapport Asterisk                                                                                     13/49
Les principaux fichiers de configuration



la priorité
défini l'ordre dans lequel les règles sont appliquées.
On peut mettre 'n' pour numérotation automatique.

l'application
définit l'action a entreprendre pour appliquer le service sollicité par l'utilisateur appelant.




      Mise en pratique les informations déjà à notre disposition pour mettre en place un service de 
VoIP sur un réseau local grâce auquel il sera possible de passer des appels entre 3 clients SIP.

­Pré requis: Asterisk est installé sur le serveur. Un client SIP (cf §x...) est installé et configuré sur 
chaque poste de travail.




Rapport Asterisk                                                                                  14/49
Les principaux fichiers de configuration



        Le paramétrage d'Asterisk va consister à renseigner les fichiers 'sip.conf' (dans lequel on va 
annoncer les 3 clients) et le fichier 'extensions.conf' dans lequel on va établir les règles concernant 
ces 3 clients.
Sip.conf                                              Extensions.conf
[quentin]                                             exten => 101,1,Dial(SIP/quentin,30) 
type = friend  
host = dynamic                                        exten => 103,1,Dial(SIP/romain,30)
context = default 
secret = quentin                                      exten => 102,1,Dial(SIP/ben,30) 

[romain] 
type = friend 
host = dynamic 
context = default 
secret = romain 

[ben] 
type = friend 
host = dynamic 
context = default 
secret = ben 


On peut voir ici le lien qui se fait entre les 2 fichiers grâce au nom du client établi dans 'sip.conf'.




Rapport Asterisk                                                                               15/49
Fonctionnalités



6)   ONCTIONNALITÉS
   F               
6.1 Appel
        L'appel est très simple à mettre en œuvre, il suffit de créer au minimum deux comptes SIP et 
l'extension d'appel correspondante.
                                   Modification du fichier sip.conf :
                     ...
                     ; Le premier utilisateur
                     [quentin]
                     type = friend
                     host = dynamic
                     context = default
                     secret = quentin
                     ; Le deuxième utilisateur
                     [benoit]
                     type = friend
                     host = dynamic
                     context = default
                     secret = benoit
                     ...


                             Modification du fichier extensions.conf :
                     ...
                     exten => 101,1,Dial(SIP/quentin,30)
                     exten => 102,1,Dial(SIP/ben,30)
                     ...




Rapport Asterisk                                                                         16/49
Fonctionnalités


6.2 Mise en attente(avec musique)
        On paramètre la mise en attente avec musique grâce à l'application 'MusicOnHold()' qu'on 
spécifie dans le plan d'appel:
                               Modification du fichier extensions.conf
                      ...
                      exten => 101,1,Answer()
                      exten =>101,2,MusicOnHold(ma_classe_de_musique)
                      exten => 101,3,Dial(SIP/quentin,30)
                      ...


       C'est   le   fichier   'musiconhold.conf'   qui   permet   de   paramétrer   les   musiques   à   passer,   les 
formats de fichiers supportés...'
       Malgré la mise en place facile, nous n'avons pas trouvé cette  fonction très utile,  il faut 
attendre la fin de la musique pour que l'appel soit effectué.


6.3 Musique de pré­décroché
        La musique de pré­décroché est la musique que l'on entend avant de pouvoir parler à son 
interlocuteur. Nous n'avions pas réussi à le faire fonctionner mais nous mettons quand même le 
code qui devrait réaliser cette fonctionnalité.
                                Modification du fichier extensions.conf :
                   ...
                   exten => 101,1,Answer()
                   exten => 101,n,PlayBack(NomFichierSon)
                   exten => 
                   101,n,Dial(SIP/101,30,m(ma_classe_de_musique))
                   ...


        On utilise ici l'application Playback() pour lire la musique, par défaut Asterisk inclus des 
fichiers musicaux, on peut en rajouter dans le dossier par défaut.




Rapport Asterisk                                                                                        17/49
Fonctionnalités


6.4 Transfert d’appel
         La manipulation consiste à ajouter les options appropriées dans les fonctions d'appel dans le 
fichier   'extensions.conf'.   Les   options   t   et   T   autorisent   respectivement   l’appelé   et   l’appelant   à 
transférer l’appel. Pour tester le transfert, il faut alors établir une communication. Puis, durant la 
conversation, tapez # sur le poste. A ce moment, le serveur répond en prononçant « transfer ». On 
saisit alors le numéro de téléphone de destination.
                                  Modification du fichier extensions.conf :
                         ...
                         exten => 101,1,Dial(SIP/quentin,30,tT)
                         ...



6.5 Conférence
        Asterisk permet de mettre en place des conférence facilement, chaque utilisateur peut donc 
entrer dans un espace de communication dédié contenant plusieurs utilisateurs sans vraiment de 
limite autre que matériel et pratique. Une conférence à 60 utilisateurs ne doit pas être aisément 
compréhensible.
        Chaque conférence peut être gérée par un administrateur qui peut agir sur les participants, 
les rendre muets ou non, les expulser. On peut personnaliser les conférences en instaurant un mot de 
passe d'accès, un système d'annonce d'utilisateurs, un compteur d'utilisateurs, mode discours, mode 
écoute.
        La mise en place de conférence passe par le paramétrage de 'meetme.conf' et la modification 
du plan d'appel en conséquence, 'extensions.conf' :
                               Modification du fichier meetme.conf :
                         ...
                         conf => 900
                         conf => 901
                         conf => 902
                         ...




Rapport Asterisk                                                                                          18/49
Fonctionnalités

                              Modification du fichier extensions.conf :
                     ...
                     ; Conference dynamique 
                     exten => 900, 1, MeetMe(900,d) 
                     exten => 900, 2, Hangup() 



                     ; Conférence avec annonce entrant/sortant, compte 
                     exten => 901, 1, MeetMe(901,icp) 
                     exten => 901, 2, Hangup() 

                     ;Conférence utilisateur 
                     exten => 902, 1, MeetMe(900,dpm) 
                     exten => 902, 2, Hangup() 

                     ;Conférence orateur 
                     exten => 903, 1, MeetMe(900,dt) 
                     exten => 903, 2, Hangup()
                     ...




         Pour le fonctionnement des conférences il est indispensable d'avoir installé les pilotes 
Zaptel. En effet un module des pilotes est nécessaire au fonctionnement des conférences.
$ wget http://downloads.digium.com/pub/telephony/zaptel/zaptel...
$ ./install_prereq test
$ ./install_prereq install
$ ./configure
$ make
$ su make install
$ su make config
$ modprobe zaptel, ztdummy

On redémarre Asterisk :
$ /etc/init.d/asterisk restart




Rapport Asterisk                                                                            19/49
Fonctionnalités


6.6 Mise en place de communication vidéo
          Asterisk permet facilement de mettre en place des communications vidéo. Pour cela il faut 
que   le   protocole   SIP   soit   paramétré   avec   le   support   de   la   vidéo   et   les   codecs   pour   la   vidéo. 
L'utilisation se fait avec des clients compatibles vidéo: ekiga, Eye­Beam(version payante d'Xlite), ...

                                          Modification du fichier sip.conf :
                          ...
                          videosupport=yes
                          allow=all
                          ...
        Il faut au moins autoriser les codecs h263 et h263p, dans l'exemple ci­dessus tous les codecs 
sont activés.
        Pour un meilleur fonctionnement de la vidéo sur une grande infrastructure il faut optimiser 
les paramètres des clients, mettre en place un réseau de qualité avec de la QoS. Asterisk n'a pour but 
d'être une plate forme de conférence vidéo.

6.7 Interception d’appel
        L’interception d’appel intervient lorsqu’un téléphone sonne. Elle autorise la récupération de 
l’appel   destiné  au  poste  qui sonne à partir  d’un autre  poste. Pour cela,  il  faut que  l’intercepté 
appartienne au groupe d’appel qui correspond au groupe d’interception de l’interceptant.
        On ajoute donc le groupe d'appel et le groupe d'interception aux comptes SIP :
                                     Modification du fichier sip.conf :
                          ...
                          [nom_du_compte]
                          pickupgroup=1
                          callgroup=1
                          ...



6.8 Renvoi d’appel
       Le renvoi d'appel peut être paramétré dans le plan d'appel. On peut également utiliser les 
fonctionnalités des softphones pour utiliser cette fonction.




Rapport Asterisk                                                                                               20/49
Fonctionnalités


6.9 Log des appels en base MySQL
       Avec une utilisation importante et pour une gestion plus facile des appels, Asterisk permet 
de placer les enregistrements CDR(Call Detail Report) en base de données Mysql.
On crée la base asterisk et la table CDR, des index sont créés pour l'optimisation de la base :
                               Création du code SQL pour crée la base :
            CREATE DATABASE asterisk; 
            GRANT INSERT 
            ON asterisk.* 
            TO asterisk@localhost 
            IDENTIFIED BY 'mot­de­passe'; 
            USE asterisk; 

            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 '', 
            `userfield` varchar(255) NOT NULL default ''
            );
            ALTER TABLE `cdr` ADD `uniqueid` VARCHAR(32) NOT NULL 
            default '';
            ALTER TABLE `cdr` ADD INDEX ( `calldate` );
            ALTER TABLE `cdr` ADD INDEX ( `dst` );
            ALTER TABLE `cdr` ADD INDEX ( `accountcode` );




Rapport Asterisk                                                                         21/49
Fonctionnalités



       Il faut maintenant créé un utilisateur asterisk. On crée le fichier user­mysql et on y insère le 
code suivant, puis on le rend exécutable et on l'exécute : 
$ mysql --user=asterisk --password=asteriskcdr asterisk < user-
mysql
       Il faut maintenant paramétrer Asterisk pour qu'il utilise la base de donnée Mysql :
                            On crée le fichier /etc/asterisk/cdr_mysql.conf
             [global]
             hostname=localhost
             dbname=asterisk
             password=mysql
             user=root
             ;port=3306
             ;sock=/tmp/mysql.sock
             ;userfield=1


       On modifie 'module.conf' pour charger le module mysql au démarrage d'Asterisk :
             ...
             ; Enable these if you want to configure Asterisk in a database
             load => cdr_addon_mysql.so
             ...


On redémarre maintenant asterisk:
$ /etc/init.d/asterisk restart




Rapport Asterisk                                                                            22/49
Fonctionnalités


6.10 Messagerie unifiée

10.1 Principe :
        Un utilisateur qui dispose d'un numéro téléphonique, peut posséder une boîte vocale. Celui­
ci peut l'activer en cas d'absence ou elle s'active au bout d'un certain temps d'indisponibilité. Si 
l'appelant   contact   un   utilisateur   et   que   ce   dernier   ne   répond   pas,   alors   l'appelant   entendra   un 
message d'indisponibilité ou d'occupation selon le cas. Puis l'appelant pourra laisser un message sur 
le répondeur. De plus l'appelé peut recevoir le message de l'appelant sur sa messagerie électronique 
sous la forme d'un fichier son en pièce jointe au format souhaité (si on le configure ainsi).


10.2 Nécessités techniques :
Pour mettre ce système en œuvre, il faut installé et configuré :
un serveur Web : Apache
un serveur SMTP : Postfix
un serveur IMAP : Courier­imap
un programme filtrant les courriers électronique : procmail
une interface Web pour consulter les courriels : Squirrelmail

Le hostname du serveur de mail est «serv2­debian»  et le nom de domaine est « serv2­
debian.asrall.fr ».

Voici l'emplacement de ces données :

Dans le fichier '/etc/hostname' (nom de la machine):
serv2­debian 

Dans le fichier '/etc/hosts' (nom de domaine):
127.0.0.1       serv2­debian.asrall.fr       serv2­debian                        localhost


10.3 Installation et configuration des différentes applications nécessaires à 
     la messagerie

         Installation d'Apache :
$ apt-get install apache2
La configuration par défaut est suffisante, il n'y a rien à rajouter.




Rapport Asterisk                                                                                            23/49
Fonctionnalités

       Installation et configuration de Postfix :
Par défaut, le serveur SMTP installé sur une distribution Debian est Exim4. Lorsqu'on installe 
Postfix, celui­ci va supprimer Exim4.

On installe Postfix par la commande :
$ apt-get install postfix

Durant l'installation on nous demande de renseigner plusieurs champs dont :
       ­ le nom du serveur : serv2­debian 
l      ­ le domaine réseau : serv2­debian.asrall.fr  serv2­debian  localhost

                       Ajout et modification dans le fichier /etc/postfix/main.cf :
             ...
             home_mailbox = Maildir/
             myhostname = serv2­debian.asrall.fr 
             mydestination = serv2­debian.asrall.fr , localhost.asrall.fr , localhost
             mynetworks = 127.0.0.0/8  192.168.10.0/24
             ...


Remarque : 
Si on met « home_mailbox = Maildir/ », il est nécessaire d'enlever la valeur du champ 
« mailbox_command » qui était : « procmail ­a "$EXTENSION"  ».

MailDir permet d'attribuer un répertoire MailDir situé dans chaque home de l'utilisateur. Par défaut, 
sur une Debian, tous les courriels sont stockés dans /var/mail au format mbox.

Il faut vérifier que les données saisies soient correctement intégrées dans le fichier de configuration 
de Postfix : '/etc/postfix/main.cf'

Si on modifie la configuration de Postfix, il faut redémarrer le service :
$ /etc/init.d/postfix restart

Installation et configuration de courier­imap :
$ apt-get install courier-imap

Dans le fichier '/etc/default/courier' vérifier qu'on a bien:
MAILDIR="Maildir"




Rapport Asterisk                                                                            24/49
Fonctionnalités

Installer Procmail puis lancer un script : $ apt-get install procmail

Voici le script qu'on utilise pour créer les répertoires dans chaque home des utilisateurs :


        #!/bin/bash 
        # 
        # Script de création des boites aux lettres utilisateurs 
        # 

        # Création des répertoire "de base" (cur,new et tmp) 
        maildirmake /home/$1/Maildir 

        chown ­R $1 /home/$1/Maildir 

        # Copie du MDA procmail dans le compte de l'utilisateur 
        cp `whereis ­b procmail | awk '{print $2}'` /home/$1/.procmailrc 
        chmod 600 /home/$1/.procmailrc 
        chown $1 /home/$1/.procmailrc 
         
        sudo touch /var/log/procmailrc.log 
        sudo chmod 666 /var/log/procmailrc.log


Pour exécuter le script : $ ./scriptMailDir    nom_utilisateur

Ce script crée un répertoire MailDir dans le home de l'utilisateur. Dans ce répertoire, ce script cré 3 
répertoires (cur, new et tmp) où seront stockés les mail. Ce script copie le MDA procmail dans le 
compte   de   l'utilisateur   (fichier   caché   .procmailrc).   Ce   script   crée   aussi   un   fichier   de   log 
/var/log/procmailrc.log.

Pour créer un nouvel utilisateur, il faut saisir la commande :
$ adduser nom_utilisateur ou                        $ useradd nom_utilisateur

On peut tester l'envoie d'un courriel avec une commande telnet.
Puis on peut relire ce mail en utilisant un éditeur de texte en ouvrant le courriel se situant dans le 
répertoire : '/home/nom_utilisateur/Maildir/new/nom_du_courriel'.

Alors qu'auparavant, avec la configuration d'Exim4, le format utilisé était « mbox ». Pour lire ce 
même courriel, on devait utiliser la commande mailq ou encore en éditant le fichier 
'/var/mail/nom_utilisateur'.

Rapport Asterisk                                                                                       25/49
Fonctionnalités




10.4 Configuration de la boîte vocale dans Asterisk :
On met en place la boîte vocale en modifiant le fichier '/etc/asterisk/voicemail.conf'.

Ce fichier est divisé en 3 sections :
– la section [general] qui contient les paramètres qui s'appliquent à toutes les boîtes vocales.
– la section [zonemessages] qui permet de gérer les zones horaires mais qu'on utilisera pas
– la section qui est dédiés aux boîtes vocales en elles­mêmes, et parmi celles­ci on utilisera la 
   section [default].

La syntaxe d'une boîte vocale est :
numéro de la boîte vocale => mot de passe, nom de l'utilisateur, courriel, email pager, options
Une des options qui est importante est « attach=yes » qui permet d'attacher le message vocal au 
courriel.
                        Ajout et modification dans le fichier voicemail.conf :
         [general] 
         ;;;; Voir contexte [default] à la fin ;;;;;;;; 
         format=wav49|gsm|wav 
         attach=yes 
         serveremail=voicemail@serv2­debian.asrall.fr 
         fromstring=Messagerie Vocale IUT 
         maxmessage=180 
         minmessage=3 

         ; How many milliseconds to skip forward/back when rew/ff in message playback 
         skipms=3000 
         ; How many seconds of silence before we end the recording 
         maxsilence=5 
         ;permettre à l'émetteur de ré entendre ou de réenregistrer son message 
         ;avant de le sauvegarder 
         review=yes 
         ; permet à l'appelant d'appuyer sur la touche 0 pour annuler le message 
         enregistré
         operator=yes 
         ; Silence threshold (what we consider silence: the lower, the more sensitive) 
         silencethreshold=128 
         ; Max number of failed login attempts 
         maxlogins=3 


Rapport Asterisk                                                                             26/49
Fonctionnalités

         sendvoicemail=yes       ; Context to Send voicemail from [option 5 from the 
         advanced menu] 

         ; Voici le contenu du courriel qui sera généré et envoyé à l'appelé :

         emailbody=Utilisateur ${VM_NAME},nnVous avez un nouveau message sur 
         votre boite vocale ${VM_MAILBOX}:nntDe:t$
         {VM_CALLERID}ntDuree:t${VM_DUR} secondesntDate:t$
         {VM_DATE}nnNumero ${VM_MSGNUM}) dans la boite 
         mail.nnComposez le 888 pour accéder a votre boite aux lettres.n 




Ici on utilise l'un des différents format audio suivant : 
format=wav49|gsm|wav 
Le message laissé à l'appelé sera envoyé au format wav sur sa boîte mail.

On utilise l'option « attach=yes  » pour que le message vocal soit joint au courriel de l'appelé.

On peut remarquer qu'on a spécifié le nom du serveur de mail utilisé : 
serveremail=voicemail@serv2­debian.asrall.fr

[default] 
; Messagerie Vocale de chaque utilisateur 
101 => 101, quentin, quentin@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no 
102 => 102, ben, benoit@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no 
103 => 103, romain, romain@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no 
104 => 104, luis, luis@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no 

C'est dans ce contexte [default], que l'on spécifie les adresses mail des différents utilisateurs.

Gestion de la messagerie dans le plan de numérotation (fichier 'extensions.conf') :

Il existe 2 applications spécifiques à la messagerie vocale :
– l'application VoiceMail() qui permet de laisser un message vocal
– l'application VoiceMailMain() qui permet de consulter sa propre boîte vocale en appelant le 
    numéro 888 qui a été défini dans le dial plan, puis de saisir son propre numéro de téléphone et 
    enfin saisir son mot de passe.



Rapport Asterisk                                                                             27/49
Fonctionnalités

Voici un exemple du contenu du dial plan (fichier 'extensions.conf') :
                         Modification dans le fichier extensions.conf :
               ; Messagerie unifiée 

               exten => 103,1,Dial(SIP/romain,15,rtT) 
               ; Si romain est indisponible pendant 15 secondes, l'appelant entendra un 
               message d'indisponibilité (u = unavailable).
               exten => 103,2,Voicemail(u103@default)
               ; romain peut appeler le 888 pour accéder à son répondeur et écouter ses 
               messages vocaux.
               exten => 888,1,VoiceMailMain()



10.5 Installation de Squirrelmail : 
       Pour faciliter l'exploitation des boîtes mails sur le serveur, on installe le webmail 
Squirrelmail.
$ apt-get install squirrelmail
Lien symbolique de l'emplacement de squirrelmail vers l'emplacement du serveur Web en le 
renommant en webmail:
ln -s /usr/share/squirrelmail                            /home/quentin/Site-web/webmail
        On peut enfin consulter si on a bien reçu un courriel contenant un message ainsi que le 
fichier son contenant le message de la boîte vocale qui est joint au mail.
Pour réaliser ceci on peut se connecter à travers l'interface Web Squirrelmail dans un navigateur en 
saisissant : http://192.168.10.12/webmail/




Rapport Asterisk                                                                                28/49
Fonctionnalités

6.11 Menu vocal interactif(IVR)
       C'est une fonctionnalité forte du serveur de téléphonie Asterisk est l’IVR (Interactive Voice 
Response). En français, cela peut se traduire par « menu vocal interactif ». 
       On peut réaliser des sous menus disposant chacun d'une numérotation, ainsi dans le menu 
suivant, on y accède en entrant le 4000. Étant donné que nous sommes dans un autre contexte on 
peut utiliser des numéro du contexte par défaut pour y attribuer d'autres fonctions. Ainsi ici on 
redéfinit les appels vers les comptes SIP, vers le test echo. L'exemple ici abordé est très simple.
                              Modification dans le fichier extensions.conf :
; Menu vocal interactif
exten => 4000,1,Goto(ivr,s,1)
; menu vocal interactif
[ivr]
exten => s,1,answer()
;exten => s,1,background(enter­ext­of­person) 
exten => s,n,playback(1)
exten => #,1,Playback(demo­thanks)
exten => #,2,Hangup()

exten => 1,1,Dial(SIP/quentin,30,rtT)
exten => 2,1,Dial(SIP/ben,30,rtT)
exten => 3,1,Dial(SIP/romain,30,rtT)
exten => 4,1,Dial(SIP/luis,30,rtT)
exten => 5,1,Dial(SIP/remi,30,tT)
exten => 6,1,Dial(SIP/daneel,30,tT)

exten => i,1,Playback(invalid)
exten => 600,1,Playback(demo­echotest)
exten => 600,2,Echo()
exten => 600,3,Playback(demo­echodone)
exten => 600,4,Goto(s,1)

exten => t,1,Goto(#,1)




Rapport Asterisk                                                                        29/49
Fonctionnalités




6.12 Gestion des files d’attente(Centre d’appels)
       Principe: un utilisateur peut utiliser n'importe quel téléphone mais il doit faire en sorte que le 
téléphone auquel il se connecte s'enregistre dans la file d'attente (il a ainsi le statut d'agent). Les 
appels entrants sont alors routés vers ce téléphone.

Pour réaliser ceci, les fichiers suivants doivent être modifiés :
– 'agents.conf' : défini les agents.
– 'queues.conf' : défini les files d'attentes et les agents qui leurs sont associés.
– 'extensions.conf' : numéro d'appel de la file d'attente.
Voici un exemple :
                              Modification dans le fichier extensions.conf :
                   ...
                   exten => 700,1,AddQueueMember(hotline­iut)
                   exten => 701,1,RemoveQueueMember(hotline­iut)
                   exten => 702,1,Goto(queue­hotline,s,1)
                   ...


Signification des numéros :
– 702 : numéro de la file d'attente
– 700 : numéro pour entrer dans la file d'attente 702
– 701 : numéro pour sortir de la file d'attente 702


        Dans cet exemple, on utilise la stratégie round robin qui permet de faire sonner tous les 
postes correspondant aux utilisateurs enregistrés dans la file d'attente (= statut d'agent), mais les uns 
après les autres.

        Explication : les agents entrent dans la file d'attente en composant le 700. Un utilisateur qui 
veut communiquer avec un agent doit composer le 702. S'il y a plusieurs agents présents dans la file 
d'attente, et qu'un utilisateur tente de communiquer avec l'un d'entre eux, alors les téléphones des 
agents vont sonner un par un jusqu'à ce que l'un d'entre eux réponde.

Si un agent souhaite quitter son poste, alors il compose le 701.




Rapport Asterisk                                                                             30/49
Fonctionnalités



                              Modification dans le fichier queue.conf :
            [general]
            persistentmembers = yes
            [hotline­iut]
            maxlen = 7
            ;lorsque la file est vide d'agent faire :
            joinempty = yes
            leavewhenempty = no
            ;stratégie de sonnerie
            strategy = roundrobin
            ;durée de la sonnerie
            timeout = 10
            retry = 15
            ;délai accordé avant un nouvel appel
            wrapuptime = 30
            musiconhold = default
            ;indique le délai d'attente de l'appelant (A revoir)
            reportholdtime = yes
            ;information à l'appelant de sa place dans la file d'attente toute les 15 
            secondes
            announce­frequency = 15
            ;estimation du temps d'attente à 7 secondes près
            announce­holdtime = yes
            announce­frequency = 7



On peut voir que le contexte [hotline­iut] est le nom de la file d'attente.
On peut aussi remarquer la présence de la stratégie roundrobin qui fait sonner les téléphones de 
façon tournante:
            strategy = roundrobin 


Il existe 5 autres stratégies et entre autre :
– Ringall : fait sonner tous les téléphones disponibles jusqu'à ce que l'un des téléphones réponde.
– Random :  fait sonner les téléphones de façon aléatoire.
– ...




Rapport Asterisk                                                                            31/49
Fonctionnalités

Gestion par agents

Principe :
Un   agent   doit   être   capable   d'entrer   et   de   sortir   d'une   file   d'attente   avec   un   mécanisme 
d'authentification depuis un téléphone quelconque.

Comme   un   agent   ne   dispose   pas   d'un   téléphone   personnel,   il   faut   définir   un   autre   type   de 
numérotation : celle déjà mise en place (101 à 104) et une pour les agents (de 501 à 504).

La syntaxe à respecter est la suivante :

              agent => numéro_agent, mot_de_passe_agent, nom_agent


                                  Modification dans le fichier agents.conf :
              [agents] 

              agent => 501, 501, quentin 
              agent => 502, 502, ben 
              agent => 503, 503, romain 
              agent => 504, 504, luis 


Les deux types d'agents : il existe l'agent décroché et l'agent en rappel. On n'aborde que le premier 
car on n'a pas réussi à mettre en place le second.

Agent décroché :
       Une fois que l'agent s'est enregistré dans la file d'attente, sa ligne est décrochée. Si quelqu'un 
appelle, un bip informe qu'un appel arrive. Il peut le prendre en appuyant sur la touche #. Durant 
nos tests, les communications se font directement. Nous n'avons pas la possibilité d'appuyer sur la 
touche # (peut­être est­ce dû à notre softphone ou à une option non ajoutée).

                                  Modification dans le fichier queue.conf :
...
[queue­agent­decroche] 
member => Agent/501 
member => Agent/503
...




Rapport Asterisk                                                                                        32/49
Fonctionnalités



                              Modification dans le fichier agents.conf :
...
exten => 555, 1, AgentLogin(501)
exten => 556, 1, AgentLogin(503)
exten => 515, 1, Queue(queue­agent­decroche)
...


La fonction AgentLogin() permet de faire rentrer un opérateur sur le système des files d'attente.

Dans le cas où il n'y a qu'un seul agent (numéro 503) dans la file d'attente mais 2 utilisateurs 
appelant l'agent:
– L'agent 503 entre dans le système des files d'attente en composant le 555 et doit rentrer son mot 
   de passe. Il a le statut d'opérateur de files. Lorsqu'un appel arrive sur la file 515, un bip va alors 
   être émis sur la ligne de l'agent 503. Ce dernier prend l'appel automatiquement. Si l'agent 503 
   est le seul dans la file d'attente et qu'il y a un autre utilisateur qui appelle pendant qu'il est en 
   ligne, alors cet utilisateur est mis en attente et l'agent sera connecté à ce nouvel utilisateur dès 
   que le premier utilisateur aura raccroché.

Utilisation de la CLI pour gérer la file d'attente:
Pour connaître les agents présents dans la file d'attente hotline­iut :
CLI > queue show hotline-iut
Pour retirer un agent de la file d'attente :
CLI > queue remove member SIP/romain from hotline-iut




Rapport Asterisk                                                                             33/49
Fonctionnalités


6.13 Mise en place d'Asterisk­stat
        L'outil asterisk­stat permet de fournir, via une interface web différents rapports et graphiques 
concernant le trafic des appels du serveur Asterisk. Il se base sur les enregistrements CDR, de base 
dans le fichier 'master.csv', ou dans une base de donnée, mysql dans notre cas.
–   Téléchargements de l'archive : $ wget http://www.areski.net/asterisk-stat-
    v2/asterisk-stat-v2_0_1.tar.gz
–   Copie du fichier dans le répertoire souhaité : $ tar -zxvf asterisk-stat-
    v2_0_1.tar.gz
– Modification du fichier 'defines.php' :
    ­ webroot: url de l'application
    ­ fsroot: chemin qui contient l'application
    ­ host: nom du serveur de base de données
    ­ port: port de la base de données, 3306 pour une base Mysql
    ­ user: nom d'utilisateur pour l'accès à la base de donnée
    ­ pass: mot de passe de l'utilisateur
    ­ dbname: nom de la base de données
    ­ db_type: type de la base de données, mysql ou postgres
    ­ db_tablename: nom de la table contenant les CDR
L'accès se fait maintenant sur notre poste via l'url http://localhost/asterisk­stat.


6.14 Présentation Trixbox et supervision des appels(FOP)
         Trixbox est une distribution Linux CentOS orientée téléphonie sur IP. Elle contient Asterisk 
mais   également   un   package   d'applications   déjà   configurées   pour   fonctionner   de   façon   presque 
automatique dès l'installation. Le serveur Asterisk fonctionne en arrière plan tandis qu'un serveur 
apache basé sur une base Mysql offre la possibilité de s'y connecter à distance pour accéder à la 
totalité des fonctionnalités via une interface web.
Parmi les applications disponibles en standard on trouve:
– Linux CentOS: Système d'exploitation
– MySQL: serveur de base de données
– Apache: Serveur Internet
– PHP: Langage de script orienté serveur
– Asterisk: PBX voix­sur­IP
– FreePBX: Interface graphique pour Asterisk
– Flash Operating System (FOP): Interface de supervision en flash
– (...)


       Installation de Trixbox:
Télécharger l'image cd sur le site officiel (http://www.trixbox.org) puis graver l'image sur un cd.
Trixbox peut s'installer soit sur une partition virtuelle (avec Vmware ou Virtualbox), soit sur une 


Rapport Asterisk                                                                                    34/49
Fonctionnalités

partition native en démarrant le serveur sur le lecteur cdrom. (Trixbox ne dispose pas d'outil de 
partitionnement et utilisera la totalité du disque du PC).
        A l'issue de l'installation, l'IP du serveur est affichée à l'écran, Trixbox est fonctionnel, le 
serveur Apache est lancé ainsi que tous les services web.




On peut dès lors se connecter à distance sur un navigateur internet en utilisant l'IP donnée:




Rapport Asterisk                                                                            35/49
Fonctionnalités



Asterisk se paramètre par le menu 'PBX/PBX Settings'. En particulier, on peut paramétrer les 
téléphones SIP en cliquant sur 'extensions'.




Rapport Asterisk                                                                        36/49
Fonctionnalités

Voici quelques captures d'écran de certaines des fonctionnalités offertes par Trixbox:

         Log des appels. (Exports possibles vers pdf ou csv. Différents filtrages possibles):




Rapport Asterisk                                                                          37/49
Fonctionnalités



                                   Flash Operating System(FOP)




        FOP permet d'avoir une vue sur l'ensemble des communications en temps réel.
Il  permet   surtout  d'être  administré  par une personne (une standardiste  par exemple)  qui pourra 
rediriger les appels vers des personnes ou des services (conférence, files d'attente...)
Ces applications trouvent leur utilité dans un call­center par exemple. Les clients se voient mis en 
attente dans une file affectée à un opérateur.




Rapport Asterisk                                                                          38/49
Présentation de distributions dédiées



7)   RÉSENTATION DE DISTRIBUTIONS DÉDIÉES
   P                                     
        Il existe des distributions Linux clé­en­main incluant Asterisk pré­configuré ainsi que tout 
l'environnement utile a une utilisation conviviale. Leur avantage est d'être abordable même pour un 
novice en informatique, leur inconvénients est d'être gourmandes en ressources et d'être moins 
fiables qu'une installation sur mesure.


7.1 Trixbox
                 Trixbox est une distribution du système d'exploitation Gnu/Linux basée sur CentOS, 
qui   nous   permet   d'installer   un   serveur   PBX.   Le   paquet   trixbox   inclut   en   standard   plusieurs 
applications,   autrefois  propriétaires  et chères  telles  que : envoi de messages vocaux par email, 
conférences , menus de vocaux interactifs etc...
        Trixbox est développé principalement par Fonality, mais c'est un projet open­source.




Rapport Asterisk                                                                                      39/49
Présentation de distributions dédiées


7.2 Elastix
         Elastix est une distribution de Serveur de Communications Distribuées créée en Équateur 
qui    inclut: VoIP PBX, Fax, Messagerie instantanée, Email, Collaboration.


Inteface web d'Elastix:




         Elastix se base sur 4 programmes importants: Asterisk, Hylafax, Openfire et Postfix. Ceux­
ci offrent les fonctions de PBX, Fax, Messagerie instantanée et Email. Il supporte bien la plupart 
des marques de cartes PABX : OpenVox, Digium, Sangoma, Rhino Equipment, Xorcom, Yeastar. 
La majorité de ces pilotes sont fournis pour le projet Zaptel ou des versions modifiées de ce dernier. 
D'autres sont fournis par le projet mISDN ou d'autres.
         Elastix est la première distribution qui offre un module open­source « call center » avec 
marquage prédictif. Il est possible d'installer ce module depuis le chargeur de modules dans 
l'interface d'Elastix. Le call center peut gérer des programmes d'appels entrants et sortants. Ce 
module a les caractéristiques suivantes:

       ­ fonction blacklist
       ­ support des programmes d'appels entrants et sortants 
       ­ association de formulaires pour programme
       ­  marquage prédictif 
       ­  rapports avancés 



Rapport Asterisk                                                                          40/49
Présentation de distributions dédiées

7.3 Asterisk@home 
       Asterisk@home est un logiciel libre open­source. Il permet de mettre en place des centraux 
téléphoniques PBX. Asterisk@home est installé depuis une image iso du système d'exploitation 
CentOS. Il contient une version entière de logiciel Asterisk et quelques outils d'administration web.




        Pour l'administration sur le serveur via une interface web. Le login et le mot de passe par 
défaut sont « admin » et « admin ».
On peut ajouter des comptes d'utilisateurs en utilisant le module AMP et en éditant les fichiers de 
configuration 'sip.conf' et 'extensions.conf'.

Asterisk@Home possède des extensions avec lesquelles on peut réaliser diverses fonctions:
– Ring group: permet d'appeler en même temps tout les téléphones d'un groupe .
– File d'attente: l'appelant est mis en attente le temps que le correspondant soit libre.
       ­ Trunk  est un circuit qui définit une configuration de connexion d'entrée ou de sortie.
       ­ OutBound rules: définit les routes ou les chemins que prendra un appel sortant .
       ­ DiD ou direct in dial : paramétrage du dial plan
– IVR.
– Mise à jour automatique
– Conférences
– FOP
– voicemail
(...)




Rapport Asterisk                                                                          41/49
Présentation de distributions dédiées

7.4 VoiceBuntu

       VoiceBuntu est une distribution Linux développée par l'équipe Voiceone, qui peut 
fonctionner grâce à une clé USB.




Rapport Asterisk                                                                       42/49
Présentation de distributions dédiées


7.5 AstLinux
      Ast   Linux   est   une   distribution   développée   par   Kristian   Kielhofner.   Il   se   compose   d'un 
système Linux, Asterisk (incluant BriStuff ,mISDn et Zaptel) et d'outils additionnels. Actuellement, 
AstLinux   a   un   support   pour   des   bases   de   données   BDB   ,   SQLite   ,MySQL   et   un   contrôleur 
unixODBC. Le système complet occupe approximativement 40Mb et peut s'installer en partie sur 
clé USB (les fichiers statiques tels que fichiers de conf, messages pré­enregistrés...)




       Le système met en place UnionFS, un système de fichiers qui réplique en temps réel les 
changements réalisés dans la CF sur , par exemple, le KeyDisk. On peut aussi y ajouter les systèmes 
unis de disques externes.

Rapport Asterisk                                                                                     43/49
Présentation de distributions dédiées



       Actuellement, AstLinux possède deux versions « stables » avec Asterisk 1.4 et Zaptel 1.4: 
AstLinux  0.4.8 et astlinux­trunk (svn) à partir du commit  1500. La révolution  de AstLinux  est 
donnée parce qu'elle s'installe principalement dans des dispositifs personnalisés comme hardware 
Soekris et PC Engines Wrap/ALIX.



                                 Tableau récapitulatif de ces distributions :

                    AstLinux             VoiceBuntu      Asterisknow            Trixbox         Elastix

 Interface web       FreePBX              VoiceOne       Asterisk­GUI         FreePBX          FreePBX

  Logiciel de  Asterisk/Freeswitch
                                          Asterisk          Asterisk            Asterisk        Asterisk
communication       /OpenSIP

  Distribution 
                     Gentoo                Ubuntu           CentOS              CentOS          CentOS
   d'origine

   Langues 
                    1(Anglais)           1(Anglais)            9                   6              22
  supportées

     NAT                x                     ­                x                   ­               ­

   Live­CD              ­                    x                 ­                   ­               ­

  Mail server         smtp                 postfix         sendmail             postfix         postfix

    mISDN               x                    x                 x                   ­               x

    Zaptel               x                   x                 x                   x               x

      Fax               ­                    x                 x                   x               x

     FOP                ­                    x                 x                   x               x




Rapport Asterisk                                                                                44/49
Conclusion



8)   ONCLUSION
   C          
         Cette expérience dans le monde de la VoIP et en particulier d'Asterisk s'est montrée 
très enrichissante pour chacun d'entre nous. En effet, nous ne connaissions absolument pas ce 
domaine et n'avions pas la moindre idée des technologies mises en œuvre.
         Nous avons pris conscience aux cours de nos recherches dans les livres et sur internet 
de   l'ampleur   qu'à   pris   la   VoIP   et   il   nous   semble   difficile   maintenant   d'imaginer   qu'un 
informaticien ne soit pas un minimum aux faits de cette technologie (au point où nous nous 
sommes dit que cela pourrait faire l'objet de quelques heures de cours dans le cadre de la 
licence). Nous nous sommes vus confortés dans le choix que nous avions fait concernant le 
sujet du projet tuteuré. Comme nous l'avions imaginé, cette expérience sera valorisable par la 
suite car elle correspond à un véritable besoin sur le monde du travail.
         Il n'en reste pas moins que les possibilités offertes par la VoIP et en particulier par 
Asterisk   et  ses  modules  sont extrêmement  vastes  et  que leur  maîtrise  demande  un temps 
d'apprentissage et d'adaptation  assez long. Pour cette raison, aucun de nous quatre n'a pu 
résister à la tentation d'installer chez lui son propre serveur Asterisk pour continuer à mener 
ses propres expériences. Paradoxalement, la documentation en français n'est pas très fournie 
sur   internet.   Plus   précisément,   les   cas   de   figure   sont   tellement   nombreux   qu'il   est   assez 
difficile de trouver des informations répondant exactement aux besoin que l'on peut avoir. 
Pour cette raison entre autre, nous avons fait le choix de rendre ce rapport disponible à la 
communauté et l'avons remis à l'administrateur du site 'génération­Linux' qui le mettra en 
ligne prochainement.
         Pour conclure, Asterisk présente l'avantage d'être open­source. Cet avantage donne la 
possibilité de pouvoir le modifier à son grès pour l'adapter finement à ses besoins. Un grand 
nombre d'applications elles aussi open­source sont développées autour d'Asterisk. Il ne fait 
pas de doute que cet outil est suffisamment abouti pour être déployé dans des environnements 
d'envergure. Il n'en reste pas moins assez difficile à prendre en main car il n'est pas très 
intuitif   ni   très   convivial.   Les   modules   de   paramétrage   via   interface   web   (freePBX   par 
exemple) peuvent être un plus pour découvrir les capacités de cet outil.




Rapport Asterisk                                                                                            45/49
Bibliographie et Webographie



9)   IBLIOGRAPHIE ET WEBOGRAPHIE
   B                            

9.1 Webographie :

   •    
       http://www.voip­info.org/
                                

   •    
       http://www.asterisk­france.net/
                                      

   •    
       http://www.unixgarden.com/
                                 

   •    
       http://www.frameip.com/voip/
                                   

   •    
       http://www.asteriskguru.com/
                                   

   •    
       http://www.openmaniak.com/fr/trixbox.php 



9.2 Bibliographie :

   •   VoIP et ToIP Asterisk, Sébastien DÉON, Eni Editions, ISBN 978­2­7460­4044­1
   •   Téléphonie sur IP, Laurent Ouakil et Guy Pujolle, Eyrolles, ISBN 978­2212120998




Rapport Asterisk                                                                   46/49
Annexes



10)ANNEXES
          
10.1 Répartition des tâches
         La   mise   en   place   d'un   outil   de   gestion   de   projet   (dotproject)   nous   a   permis   de 
centraliser et organiser notre travail. Le tuteur avait un accès au site afin de suivre l'évolution 
du projet. Cela demande un petit effort administratif mais au final cela nous a vraiment aidé 
(pour  suivre l'avancée  du travail, partager des documents, avoir un point de rencontre en 
dehors de l'établissement...). Et puis cela nous a permis de nous familiariser avec un tel outil.
         Au   final   nous   avons   pu   extraire   un   diagramme   de   Gantt.   Bien   qu'il   ne   soit   pas 
exhaustif à 100%, il permet de se rendre compte au premier coup d'œil de l'évolution du 
travail.
         Chacun de nous à manipuler un peu toutes les fonctionnalités que nous avons vu et 
certains se sont orientés naturellement vers les manipulations qui les intéressaient davantage.




Rapport Asterisk                                                                                            47/49
Installation et 
          Réunion de lancement et  Découverte théorique                                                                                                            Mise en place                                                                                                             Mise en place 
Quentin    définition des objectifs  VoIP et Asterisk
                                                           configuration de base    Appel entre clients SIP     Tests Softphones           Son d'attente
                                                                                                                                                                   conférences
                                                                                                                                                                                         Gestion files d'attente    Mise en place IVR        Transfert d'appel     Interception d'appel
                                                                                                                                                                                                                                                                                            CDR/Asterisk stat
                                                                                                                                                                                                                                                                                                                   Finalisation rapport
                                                                 Asterisk

                                                               Installation et 
          Réunion de lancement et  Découverte théorique 
 Luis      définition des objectifs  VoIP et Asterisk
                                                           configuration de base    Appel entre clients SIP     Tests Softphones         Transfert d'appel      Installation Trixbox étude distribution dédiée messagerie trixbox             annexe Twinkle       Finalisation rapport
                                                                 Asterisk

                                                               Installation et 
          Réunion de lancement et  Découverte théorique                                                                                 Création d'un son et    Prise en main du dial                                                          Mise en place 
Romain     définition des objectifs  VoIP et Asterisk
                                                           configuration de base    Appel entre clients SIP     Tests Softphones
                                                                                                                                          mise en attente               plan
                                                                                                                                                                                           Transfert d'appel       Gestion files d'attente
                                                                                                                                                                                                                                             messagerie unifiée
                                                                                                                                                                                                                                                                  Finalisation du rapport
                                                                 Asterisk

                                                                                        Installation et                                                                                    Rédaction 1er jet 
          Réunion de lancement et     Mise en place        Découverte théorique                                                                                                                                        Mise en place 
Benoit     définition des objectifs    dotproject            VoIP et Asterisk
                                                                                    configuration de base     Appel entre clients SIP    Tests Softphones          Son d'attente           rapport / Bilan M. 
                                                                                                                                                                                                                       conférences
                                                                                                                                                                                                                                             Mise en place FOP     Installation Trixbox     Finalisation rapport
                                                                                          Asterisk                                                                                             Maringer
Annexes




10.2 Paramétrage du Softphone Twinkle pour Asterisk
        Twinkle est un logiciel libre uniquement disponible sous Linux. Son installation est 
très simple car il fait partie des paquets disponibles sur les dépôts officiels.

Pour l'installer sur une distribution basée sur Debian: $ apt-get install twinkle

       Après installation, se rendre dans le menu: Edition / Profil utilisateur puis saisir les 
informations telles que paramétrées dans Asterisk.




Dans un deuxième temps les informations sur le serveur SIP à contacter :




        Pour configurer les paramètres  audio (correspondant à l'entrée  micro et à la sortie 
audio) il faut aller dans l'onglet « RTP Audio » pour choisir les réglages des pilotes du son 
(dans certaines configurations, il faut que les autres logiciels qui utilisent la carte son soient 
fermés.). Pour les réglages audio il est conseillé d'utiliser Alsa et non OSS pour une meilleure 
qualité du son.



Rapport Asterisk                                                                            49/49

Mais conteúdo relacionado

Mais procurados

Mise en oeuvre de la VoIP sous Trixbox - Installation et configurations
Mise en oeuvre de la VoIP sous Trixbox - Installation et configurationsMise en oeuvre de la VoIP sous Trixbox - Installation et configurations
Mise en oeuvre de la VoIP sous Trixbox - Installation et configurationsStephen Salama
 
Tuto Serveur Vocal Interactif (SVI ou IVR)
Tuto Serveur Vocal Interactif  (SVI ou IVR)Tuto Serveur Vocal Interactif  (SVI ou IVR)
Tuto Serveur Vocal Interactif (SVI ou IVR)Dimitri LEMBOKOLO
 
Mise en place d'une solution VOIP sécurisée
Mise en place d'une solution VOIP sécuriséeMise en place d'une solution VOIP sécurisée
Mise en place d'une solution VOIP sécuriséeOlivierMawourkagosse
 
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...Stephen Salama
 
Memoire karamoko mss
Memoire karamoko mssMemoire karamoko mss
Memoire karamoko mssJoseph Diallo
 
Architecture voip (1)
Architecture voip (1)Architecture voip (1)
Architecture voip (1)kenane toufik
 
memoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou Diop
memoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou Diopmemoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou Diop
memoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou DiopMAGAYE GAYE
 
mémoire de projet de fin d'études
mémoire de projet de fin d'études mémoire de projet de fin d'études
mémoire de projet de fin d'études MortadhaBouallagui
 
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...Alaaeddine Tlich
 
Implémentation de la QoS au sein d'un IP/MPLS - Rapport
Implémentation de la QoS au sein d'un IP/MPLS - RapportImplémentation de la QoS au sein d'un IP/MPLS - Rapport
Implémentation de la QoS au sein d'un IP/MPLS - RapportRihab Chebbah
 
Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.
Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.
Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.betsmee
 
éTude et mise_en_place_d'une_solution_voip_sécurisée
éTude et mise_en_place_d'une_solution_voip_sécuriséeéTude et mise_en_place_d'une_solution_voip_sécurisée
éTude et mise_en_place_d'une_solution_voip_sécuriséeSaad Jouhari
 

Mais procurados (20)

Mise en oeuvre de la VoIP sous Trixbox - Installation et configurations
Mise en oeuvre de la VoIP sous Trixbox - Installation et configurationsMise en oeuvre de la VoIP sous Trixbox - Installation et configurations
Mise en oeuvre de la VoIP sous Trixbox - Installation et configurations
 
GNS3, VoIP, ToIP
GNS3, VoIP, ToIPGNS3, VoIP, ToIP
GNS3, VoIP, ToIP
 
Tuto Serveur Vocal Interactif (SVI ou IVR)
Tuto Serveur Vocal Interactif  (SVI ou IVR)Tuto Serveur Vocal Interactif  (SVI ou IVR)
Tuto Serveur Vocal Interactif (SVI ou IVR)
 
Rapport PFE VoIP
Rapport PFE VoIPRapport PFE VoIP
Rapport PFE VoIP
 
Mise en place d'une solution VOIP sécurisée
Mise en place d'une solution VOIP sécuriséeMise en place d'une solution VOIP sécurisée
Mise en place d'une solution VOIP sécurisée
 
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
 
Memoire karamoko mss
Memoire karamoko mssMemoire karamoko mss
Memoire karamoko mss
 
Présentation VOIP
Présentation  VOIPPrésentation  VOIP
Présentation VOIP
 
Architecture voip (1)
Architecture voip (1)Architecture voip (1)
Architecture voip (1)
 
Etude de la VoIP
Etude de la VoIPEtude de la VoIP
Etude de la VoIP
 
VoIP
VoIPVoIP
VoIP
 
memoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou Diop
memoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou Diopmemoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou Diop
memoire Magaye Gaye_ESMT Fevrier 2012 Dr Ouya_Dr Boudal Ing Ousseynou Diop
 
mémoire de projet de fin d'études
mémoire de projet de fin d'études mémoire de projet de fin d'études
mémoire de projet de fin d'études
 
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
 
Implémentation de la QoS au sein d'un IP/MPLS - Rapport
Implémentation de la QoS au sein d'un IP/MPLS - RapportImplémentation de la QoS au sein d'un IP/MPLS - Rapport
Implémentation de la QoS au sein d'un IP/MPLS - Rapport
 
Rapport de fin d'etude
Rapport  de fin d'etudeRapport  de fin d'etude
Rapport de fin d'etude
 
Memoire_cedric
Memoire_cedricMemoire_cedric
Memoire_cedric
 
Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.
Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.
Un slideshow de présentation d'Asterisk présenté en entreprise en 2008.
 
éTude et mise_en_place_d'une_solution_voip_sécurisée
éTude et mise_en_place_d'une_solution_voip_sécuriséeéTude et mise_en_place_d'une_solution_voip_sécurisée
éTude et mise_en_place_d'une_solution_voip_sécurisée
 
Radio Mobile
Radio MobileRadio Mobile
Radio Mobile
 

Semelhante a Asterisk to ip_rapport

Projet haute disponibilité asterisk pdf
Projet haute disponibilité asterisk pdfProjet haute disponibilité asterisk pdf
Projet haute disponibilité asterisk pdfAbderahim Amine Ali
 
To securite voip_v5.0
To securite voip_v5.0To securite voip_v5.0
To securite voip_v5.0souhasouha
 
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinalPSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinalBelkacem KAID
 
Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...
Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...
Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...Fédération Française des Télécoms
 
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...stepmike
 
VoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfVoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfAlKir1
 
Architecture hétérogène au service de l'IoT industriel ?
Architecture hétérogène au service de l'IoT industriel ?Architecture hétérogène au service de l'IoT industriel ?
Architecture hétérogène au service de l'IoT industriel ?Pierre-jean Texier
 
Asterisk report
Asterisk reportAsterisk report
Asterisk reporttatbirt
 
Le protocole Sip, une technologie d’avance
Le protocole Sip, une technologie d’avanceLe protocole Sip, une technologie d’avance
Le protocole Sip, une technologie d’avancefoxshare
 
Voix et téléphonie sur IP- Convergence voix et données
Voix et téléphonie sur IP- Convergence voix et données Voix et téléphonie sur IP- Convergence voix et données
Voix et téléphonie sur IP- Convergence voix et données Aymen Bouzid
 
Pres Connect 9 9 9(2)
Pres Connect 9 9 9(2)Pres Connect 9 9 9(2)
Pres Connect 9 9 9(2)Sif Boukhari
 

Semelhante a Asterisk to ip_rapport (20)

Toip slide
Toip slideToip slide
Toip slide
 
Projet haute disponibilité asterisk pdf
Projet haute disponibilité asterisk pdfProjet haute disponibilité asterisk pdf
Projet haute disponibilité asterisk pdf
 
To securite voip_v5.0
To securite voip_v5.0To securite voip_v5.0
To securite voip_v5.0
 
TELEPHONIE IP
TELEPHONIE IPTELEPHONIE IP
TELEPHONIE IP
 
voip
voipvoip
voip
 
Telephonie ip
Telephonie ipTelephonie ip
Telephonie ip
 
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinalPSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
PSECRES2017-Projet11-KHATOUN_RIDA-Secu_VoIP-RapFinal
 
Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...
Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...
Livre blanc 2017 - Recommandations FFTelecoms - Transition du RTC vers le tou...
 
Présentation pfa IMS
Présentation pfa IMSPrésentation pfa IMS
Présentation pfa IMS
 
technotic
technotictechnotic
technotic
 
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
 
538d77d91d428
538d77d91d428538d77d91d428
538d77d91d428
 
ToIP
ToIPToIP
ToIP
 
VoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfVoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdf
 
Architecture hétérogène au service de l'IoT industriel ?
Architecture hétérogène au service de l'IoT industriel ?Architecture hétérogène au service de l'IoT industriel ?
Architecture hétérogène au service de l'IoT industriel ?
 
Asterisk report
Asterisk reportAsterisk report
Asterisk report
 
Le protocole Sip, une technologie d’avance
Le protocole Sip, une technologie d’avanceLe protocole Sip, une technologie d’avance
Le protocole Sip, une technologie d’avance
 
Voix et téléphonie sur IP- Convergence voix et données
Voix et téléphonie sur IP- Convergence voix et données Voix et téléphonie sur IP- Convergence voix et données
Voix et téléphonie sur IP- Convergence voix et données
 
Pres Connect 9 9 9(2)
Pres Connect 9 9 9(2)Pres Connect 9 9 9(2)
Pres Connect 9 9 9(2)
 
Asterisk
AsteriskAsterisk
Asterisk
 

Mais de Gilles Samba

Architecture reseau mobile
Architecture reseau mobileArchitecture reseau mobile
Architecture reseau mobileGilles Samba
 
Etude des modeles_ns2
Etude des modeles_ns2Etude des modeles_ns2
Etude des modeles_ns2Gilles Samba
 
Dsr aodv performance
Dsr aodv performanceDsr aodv performance
Dsr aodv performanceGilles Samba
 
Mpls foudhaili oussama
Mpls foudhaili oussamaMpls foudhaili oussama
Mpls foudhaili oussamaGilles Samba
 
4 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 20124 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 2012Gilles Samba
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3Gilles Samba
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3Gilles Samba
 
Cour simulation ns2
Cour simulation ns2Cour simulation ns2
Cour simulation ns2Gilles Samba
 
2 architecture reseau-mobile
2 architecture reseau-mobile2 architecture reseau-mobile
2 architecture reseau-mobileGilles Samba
 

Mais de Gilles Samba (18)

Asterisk trixbox
Asterisk trixboxAsterisk trixbox
Asterisk trixbox
 
Architecture reseau mobile
Architecture reseau mobileArchitecture reseau mobile
Architecture reseau mobile
 
Apport de la_lte
Apport de la_lteApport de la_lte
Apport de la_lte
 
Acces umts efort
Acces umts efortAcces umts efort
Acces umts efort
 
Cours ipv6pdf
Cours ipv6pdfCours ipv6pdf
Cours ipv6pdf
 
Evaluation aodv
Evaluation aodvEvaluation aodv
Evaluation aodv
 
Etude des modeles_ns2
Etude des modeles_ns2Etude des modeles_ns2
Etude des modeles_ns2
 
Dsr aodv performance
Dsr aodv performanceDsr aodv performance
Dsr aodv performance
 
Mpls foudhaili oussama
Mpls foudhaili oussamaMpls foudhaili oussama
Mpls foudhaili oussama
 
4 g evolution
4 g evolution4 g evolution
4 g evolution
 
4 g
4 g4 g
4 g
 
4 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 20124 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 2012
 
4 g lte
4 g lte4 g lte
4 g lte
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3
 
Umts et wan
Umts et wanUmts et wan
Umts et wan
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3
 
Cour simulation ns2
Cour simulation ns2Cour simulation ns2
Cour simulation ns2
 
2 architecture reseau-mobile
2 architecture reseau-mobile2 architecture reseau-mobile
2 architecture reseau-mobile
 

Asterisk to ip_rapport

  • 1. Licence Professionnelle :  ‘Administration de systèmes, réseaux et applications à base de  logiciels libres’ IUT Nancy Charlemagne ­ Département Informatique  2 ter, bd Charlemagne ­ CS 5227 ­ 54052 Nancy Cedex  Tél : 03 83 91 31 06 – Fax : 03 83 91 32 01 ­  www.iuta.univ­nancy2.fr/lpinfo ToiP Asterisk Tuteur: M. Damien Maringer Groupe: Quentin Hourlier, Benoit Henryon, Romain Gegout, Luis Dominguez Lopez
  • 2. Sommaire Sommaire 1) Introduction...........................................................................................................................3 2) Cahier des charges................................................................................................................4 3) Qu'est ce que la ToIP............................................................................................................5 4) Installation d'Asterisk sur Linux..........................................................................................9 5) Configuration minimale avec quelques comptes SIP........................................................12 6) Fonctionnalités....................................................................................................................16 6.1 Appel.........................................................................................................................................16 6.2 Mise en attente(avec musique).................................................................................................17 6.3 Musique de pré­décroché.........................................................................................................17 6.4 Transfert d’appel......................................................................................................................18 6.5 Conférence................................................................................................................................18 6.6 Mise en place de communication vidéo...................................................................................20 6.7 Interception d’appel.................................................................................................................20 6.8 Renvoi d’appel..........................................................................................................................20 6.9 Log des appels en base MySQL...............................................................................................21 6.10 Messagerie unifiée..................................................................................................................23 6.11 Menu vocal interactif(IVR)....................................................................................................29 6.12 Gestion des files d’attente(Centre d’appels).........................................................................30 6.13 Mise en place d'Asterisk­stat.................................................................................................34 6.14 Présentation Trixbox et supervision des appels(FOP).........................................................34 7) Présentation de distributions dédiées..................................................................................39 7.1 Trixbox......................................................................................................................................39 7.2 Elastix........................................................................................................................................40 7.3 Asterisk@home ........................................................................................................................41 7.4 VoiceBuntu................................................................................................................................42 7.5 AstLinux....................................................................................................................................43 8) Conclusion...........................................................................................................................45 9) Bibliographie et Webographie............................................................................................46 9.1 Webographie :...........................................................................................................................46 9.2 Bibliographie :..........................................................................................................................46 10) Annexes..............................................................................................................................47 10.1 Répartition des tâches............................................................................................................47 10.2 Paramétrage du Softphone Twinkle pour Asterisk..............................................................49 Rapport Asterisk 2/49
  • 3. Introduction 1)  NTRODUCTION I   La téléphonie sur IP (ToIP) connaît un essor considérable depuis une dizaine d'années. Aussi  bien pour les besoins de l'entreprise que du particulier, cette technologie à bouleversé notre usage  du   téléphone.   Les   nouvelles   fonctionnalités   apportées   ainsi   que   l'impact   sur   le   coût   des  communications fait que la ToIP s'implante massivement, et par conséquent, crée des emplois et des  entreprises spécialisées dans le domaine. Il peut être du ressort de l'administrateur système et réseau  de prendre en charge tout ou partie du système de ToIP de son entreprise. Des solutions open­ source de logiciels ToIP sont largement utilisées et ont acquis une notoriété telle qu'ils est très  intéressant de les étudier. Ce projet tuteuré va permettre, à travers l'étude du logiciel open­source Asterisk, de faire un  tour d'horizon de cette technologie et des possibilités offertes par cet outil. Par ailleurs cela nous  aura appris les notions de ToIP et d'utilisation d'Asterisk qui pourront être mise en avant lors de  notre future recherche d'emploi. Rapport Asterisk 3/49
  • 4. Cahier des charges 2)   AHIER DES CHARGES C   Ci dessous le cahier des charges communiqué par M Damien Maringer. I) Qu'est­ce que la ToIP. II) Présentation et installation d'Asterisk sur Linux. III)  Configuration minimale avec quelques comptes SIP. IV)  Prise en main du Dial Plan. V) Fonctionnalités à tester o Appel  o Musique de pré­décroché  o Mise en attente (avec musique)  o Transfert d’appel  o Conférence à 3  o Interception d’appel  o Renvoi d’appel  o Log des appels en base MySQL (CDR)  o Messagerie unifiée (boîte vocale et envoi par mail du message en .WAV)  o Supervision des appels (FOP)  o Menu vocal interactif (IVR)  o Gestion des files d’attente (Centre d’appels)  Rapport Asterisk 4/49
  • 5. Qu'est ce que la ToIP 3)   U'EST CE QUE LA TOIP Q   La téléphonie sur IP (ToIP) est un ensemble de technologies visant à utiliser un réseau  sous protocole TCP/IP pour y faire circuler des conversations téléphoniques. Ces technologies  connaissent un véritable essor depuis les premiers pas en 1996 et notamment depuis l'arrivée  dans les foyers des offres triple­play des fournisseurs d'accès internet. Ces offres proposent  l'accès   à  internet,  un flux vidéo  pour les  chaînes  de télévision  et  un flux VoIP  pour des  communications   téléphoniques   à   des   tarifs   extrêmement   avantageux).   Les   entreprises  basculent elles aussi massivement vers cette nouvelle technologie pour tous les avantages  qu'elle apporte (Début 2008, 46% des PME françaises avaient adopté une solution de ToIP,  aujourd'hui elles sont proches de 100% à avoir migré). Schéma de principe pour transformer la voix en IP Conversion Suppression compression Ajout entêtes IP Réseau analogique->numérique silence       Voix                                                                                                                                IP Explications: La bande voix (qui est un signal électrique analogique) est d'abord échantillonnée   numériquement  par  un  convertisseur  puis  compressée  selon  une  certaine  norme  de  compression   variable   selon   les   codecs   utilisés,   puis   ensuite   on   peut   éventuellement   supprimer   les   pauses   de   silences observées lors d'une conversation, pour être ensuite habillée RTP,UDP et enfin en IP. Une   fois   que   la   voix   est   transformée   en   paquets   IP,   ces   paquets   Ip   identifiés   et   numérotés   peuvent   transiter sur n'importe quel réseau Ip (ADSL, Ethernet, Satellite,routeurs, switchs, PC, Wifi, etc...) Cette technologie permet de communiquer de façon très simple sur un réseau IP, mais  elle permet également d'établir des ponts avec le réseau téléphonique historique (nommé RTC  pour réseau téléphonique commuté). Il devient ainsi possible d'établir des communications  entre des personnes téléphonant depuis des réseaux différents. Pour cela, il faut installer des  cartes   chargées   de   transformer   les   trames   IP   en   signal   pouvant   transiter   sur   le   réseau  classique. Ces cartes sont nommées carte PABX (Private Automatic Branch eXchange).  Rapport Asterisk 5/49
  • 6. Qu'est ce que la ToIP Les outils nécessaires à la mise en œuvre d'un réseau de VoIP. En début de chaîne, l'utilisateur doit disposer d'un outil faisant office de téléphone.  deux alternatives se présentent: –   Téléphone SIP:    Il s'agit d'un boîtier téléphonique physique avec un combiné et un clavier. Ce type de  téléphone   a   la   particularité   de   disposer   d'une   prise   réseau   ainsi   que   d'une   application  permettant de transformer la voix en IP.  Quelques exemples de téléphone IP: Linksys SPA962 (+ de 200€) Linksys SPA942 (+ de 100€) –   Softphone SIP  . Il s'agit d'un logiciel faisant office de téléphone, installé sur le PC de l'utilisateur, et qui se  chargera de transformer la voix capturée par la carte son en signal IP émis sur le réseau.  L'offre est assez vaste. Il y a les plus connu comme MSN Messenger, Skype, X­Lite... (qui  présentent l'inconvénient d'être propriétaires et non open­source) et il y a les open­sources  (Ekiga, Twinkle ...) Quelques exemples de softphone: SKYPE X­LITE EKIGA TWINKLE Rapport Asterisk 6/49
  • 7. Qu'est ce que la ToIP Outre   les   terminaux   téléphoniques   (Téléphone   ou   Softphone),   Une   application  permettant   le   routage   des   appels   et   offrant   divers   services   est   indispensable.   Il   s'agit   du  serveur VoIP. Ce serveur représente le cœur du système: Il connaît  les téléphones  de son  réseau d'utilisateur, il connaît le point d'accès vers le réseau commuté, il propose des services  tel que messagerie, renvoie d'appels, conférences à plusieurs etc... . Quelques serveurs SIP se  démarquent sur le marché (CISCO SIP Proxy Server, Eyeball SIP Proxy Server, Asterisk...). Rapport Asterisk 7/49
  • 8. Qu'est ce que la ToIP Avantages et inconvénients de la VoIP Avantages Inconvénients 1 ­ Économiser sur la facture télécom 1) Fiabilité 2 ­ Pérenniser l'investissement 2) Qualité de son  3 ­ Simplifier les infrastructures 3) Améliorer l'utilisation 4 ­ Faciliter l'administration et la mobilité 4) Localisation 5 ­ Homogénéiser les services téléphoniques sur différents sites 5) Standards 6 ­ Faciliter l'intégration avec le système d'information 6) Support administratif 7 ­ Évoluer plus facilement 8 ­ Regrouper les équipes et se passer d'un prestataire Une   étude   (source:  www.frameip.com  )   nous   donne   les   motivations   de   100  responsables de systèmes informatiques d'entreprise pour migrer vers une solution VoIP. En  tête vient évidemment la réduction des coûts. Le flux internet étant généralement illimité dans  les   abonnements,   celui­ci   peut   donc   être   utilisé   de   façon   illimitée   sans   surcoût   pour   les  communications VoIP. Motivations Pourcentage Réduction de coûts 75 % Nécessité de standardiser l'équipement 66% Hausse de la productivité des employés 65% Autres bénéfices de productivité 64% Hausse du volume d'appels à traiter 46% Autres facteurs 50% Présentation du protocole SIP Le protocole SIP (Session Initiation Protocol) est un protocole ouvert standardisé par  l'IETF (décrit par le RFC 3261, 1996) qui a été conçu pour établir, modifier et terminer des  sessions   multimédias.   Il  se  charge  de  l'authentification  et  de  la  localisation   des  multiples  participants. Il se charge également de la négociation sur les types de médias utilisables par  les différents participants en encapsulant des messages SDP (Session Description Protocol).  SIP ne transporte pas les données échangées durant la session comme la voix ou la vidéo. SIP  étant   indépendant   de   la   transmission   des   données,   tout   type   de   données   et   de  protocoles  peuvent être utilisés pour cet échange (VoIP, visiophonie, messagerie instantanée ou même  les jeux vidéos). Cependant le protocole RTP (Real­time Transport Protocol) assure le plus  souvent les sessions audio et vidéo. SIP remplace progressivement H.323. Il   fonctionne   en   mode   client/serveur:   le   téléphone   (client)   envoie   des   requêtes   au  serveur SIP (autocom) ou vers des autres clients SIP. Ces requêtes sont en fait des paquets de  données qui contiennent des informations à destination du serveur SIP. Depuis 2004, SIP s'est imposé comme le protocole de choix en matière de VoIP en  raison  de sa simplicité  et de sa gratuité. Il est d'ailleurs  implémenté  dans la majorité des  matériels et logiciels fournis à ce jour par les constructeurs et éditeurs. Rapport Asterisk 8/49
  • 9. Installation d'Asterisk sur Linux 4)  NSTALLATION D'ASTERISK SUR LINUX I   – Installation par paquets. Sur une distribution Debian/Ubuntu, les paquets de la dernière version stable se trouvent sur les  dépôts officiels. La commande  $ apt-get install asterisk  suffit pour installer le  logiciel. – Installation par les sources. Les sources du logiciel se trouvent sur le site officiel de l'éditeur: http://www.asterisk.org/ (A ce jour, la version la plus stable et documentée est la 1.4.x) ­1­ Télécharger l'archive asterisk­1.4.23.1.tar.gz ­2­ Décompresser l'archive : $ tar -zxvf asterisk-1.4.23.1.tar.gz ­3­ Exécuter la commande : $ ./configure  (A ce moment un problème peut se poser si le paquet libncurses5­dev n'est pas présent. La  solution est d'installer ce paquet: $ apt-get install libncurses5-dev) ­4­ La commande (optionnelle) $ make menuselect permet d'installer des modules  supplémentaires. Rapport Asterisk 9/49
  • 10. Installation d'Asterisk sur Linux 4) Lancer la commande $ make (le message suivant indique que la procédure s'est bien déroulée). 5) Lancer la commande $ make install (le message suivant indique que l'installation s'est bien déroulée). 6) Pour finir, la commande $ make samples (optionnelle) permet de créer des fichiers de  configuration  de base. (elle  peut être utile  par la suite pour revenir  à une configuration  d'origine d'asterisk). Rapport Asterisk 10/49
  • 11. Installation d'Asterisk sur Linux Dès lors, asterisk peut être lancé de 2 manières: – en mode serveur (usage normal, a l'écoute des requêtes des clients). Syntaxe: $ asterisk -vvvc    // chaque 'v' demande un degrés de verbosité, de verbose à  very   very   verbose.   'c'   nous   donnera   accès   à   une   invite   de   commande   (nommée   CLI   pour  commande line interface) qui permettra de dialoguer avec le serveur une fois celui­ci lancé. – en mode client (en accédant à une console permettant de dialoguer avec le serveur). Syntaxe: $ asterisk -r Cette console peut permettre d'obtenir des informations sur l'activité du serveur, comme par  exemple la liste des clients connectés (commande 'sip show peers' en l'occurrence). Cette commande permet également de recharger les fichiers de configuration lorsque l'on a fait  des modifications sur ceux­ci (en tapant 'reload' pour recharger tous les fichiers de configuration  ou en tapant 'reload nom_fichier' si on ne travaille que sur un fichier). Rapport Asterisk 11/49
  • 12. Les principaux fichiers de configuration 5)   ONFIGURATION MINIMALE AVEC QUELQUES COMPTES SIP C   Ce qu'il faut savoir pour commencer, 4 éléments essentiels composant un système basé sur  Asterisk doivent être configurés: – Les utilisateurs (nom, mot de passe, authentification...) – Le matériel (le serveur, les cartes de communication...) – Le plan de numérotation nommé dial­plan (les règles de routage des appels) – Les services supplémentaires (serveur vocal, messagerie...) Tous les fichiers de configuration pour paramétrer Asterisk se trouvent dans le répertoire  /etc/Asterisk Dans un premier temps, les 2 fichiers qui vont nous intéresser sont 'sip.conf' et 'extensions.conf' sip.conf Il contient les informations relatives aux téléphones sip. Il est composé de plusieurs sections: – une section [general] qui va définir les propriétés générales pour l'ensemble des clients SIP. – une section par client SIP dans lesquelles seront définit finement les propriétés de chaque poste.  Exemple de fichier sip.conf minimaliste: [general]  //  paramétrage concernant tout les clients sip context=line1  ... [quentin]  //  paramétrage pour le sip de Quentin type = friend  secret = topsecret host = dynamic context = default [luis]  type = friend  context=line1  secret = defunes  host=192.168.1.106  Rapport Asterisk 12/49
  • 13. Les principaux fichiers de configuration extensionsconf Ce fichier est composé de plusieurs sections, nommées des 'contextes', dans lesquelles sont définis  les comportements à adopter lors d'appels entre clients.   Exemple de fichier extensions.conf minimaliste [general]  static=yes  writeprotect=no  autofallthrough=yes  clearglobalvars=no  priorityjumping=no  [globals]  CONSOLE => Console/dsp  IAXINFO => guest  TRUNK => Zap/G2  TRUNKMSD => 1  [default]                          exten => 101,1,Dial(SIP/quentin,30)  exten => 102,1,Dial(SIP/ben,30)  exten => 103,1,Dial(SIP/romain,30)  exten => 104,1,Dial(SIP/luis,30)  exten => 105,1,Dial(SIP/remi,30)  Dans le contexte nommé [general] sont définies les options généralement appliquées par le  serveur Asterisk au plan de numérotation. Par exemple  'clearglobalvars=no'  indique au serveur  d'effacer toutes les variables utilisées par celui ci lors de sa fermeture. Dans le contexte nommé [globals] sont définies les variables globales utilisées par le serveur. Dans   le   contexte   [default]   nous   avons   défini   les   comportements   pour   chacun   de   nos  comptes SIP selon cette forme: exten => identifiant, priorité, application. exten => 101,1,Dial(SIP/quentin,30) signifie ainsi qu'un appel vers le 101 aura une priorité 1 et sera  concrétiser par un appel vers quentin. L'identifiant d'extension: généralement le numéro de la personne appelée. Extension particulière:  ­ 's' comme start indique que le flux sera redirigé vers la règle mentionnée.  ­ 't' comme timeout exécute la règle après 10 sec (par défaut) d'inactivité.  ­ 'i' comme invalide si saisie d'une extension inconnue. Filtre d'extension = +/­ des regexp pour appliquer des règles a des groupes par exemple. Rapport Asterisk 13/49
  • 14. Les principaux fichiers de configuration la priorité défini l'ordre dans lequel les règles sont appliquées. On peut mettre 'n' pour numérotation automatique. l'application définit l'action a entreprendre pour appliquer le service sollicité par l'utilisateur appelant. Mise en pratique les informations déjà à notre disposition pour mettre en place un service de  VoIP sur un réseau local grâce auquel il sera possible de passer des appels entre 3 clients SIP. ­Pré requis: Asterisk est installé sur le serveur. Un client SIP (cf §x...) est installé et configuré sur  chaque poste de travail. Rapport Asterisk 14/49
  • 15. Les principaux fichiers de configuration Le paramétrage d'Asterisk va consister à renseigner les fichiers 'sip.conf' (dans lequel on va  annoncer les 3 clients) et le fichier 'extensions.conf' dans lequel on va établir les règles concernant  ces 3 clients. Sip.conf Extensions.conf [quentin]  exten => 101,1,Dial(SIP/quentin,30)  type = friend   host = dynamic  exten => 103,1,Dial(SIP/romain,30) context = default  secret = quentin  exten => 102,1,Dial(SIP/ben,30)  [romain]  type = friend  host = dynamic  context = default  secret = romain  [ben]  type = friend  host = dynamic  context = default  secret = ben  On peut voir ici le lien qui se fait entre les 2 fichiers grâce au nom du client établi dans 'sip.conf'. Rapport Asterisk 15/49
  • 16. Fonctionnalités 6)   ONCTIONNALITÉS F   6.1 Appel L'appel est très simple à mettre en œuvre, il suffit de créer au minimum deux comptes SIP et  l'extension d'appel correspondante. Modification du fichier sip.conf : ... ; Le premier utilisateur [quentin] type = friend host = dynamic context = default secret = quentin ; Le deuxième utilisateur [benoit] type = friend host = dynamic context = default secret = benoit ... Modification du fichier extensions.conf : ... exten => 101,1,Dial(SIP/quentin,30) exten => 102,1,Dial(SIP/ben,30) ... Rapport Asterisk 16/49
  • 17. Fonctionnalités 6.2 Mise en attente(avec musique) On paramètre la mise en attente avec musique grâce à l'application 'MusicOnHold()' qu'on  spécifie dans le plan d'appel: Modification du fichier extensions.conf ... exten => 101,1,Answer() exten =>101,2,MusicOnHold(ma_classe_de_musique) exten => 101,3,Dial(SIP/quentin,30) ... C'est   le   fichier   'musiconhold.conf'   qui   permet   de   paramétrer   les   musiques   à   passer,   les  formats de fichiers supportés...' Malgré la mise en place facile, nous n'avons pas trouvé cette  fonction très utile,  il faut  attendre la fin de la musique pour que l'appel soit effectué. 6.3 Musique de pré­décroché La musique de pré­décroché est la musique que l'on entend avant de pouvoir parler à son  interlocuteur. Nous n'avions pas réussi à le faire fonctionner mais nous mettons quand même le  code qui devrait réaliser cette fonctionnalité. Modification du fichier extensions.conf : ... exten => 101,1,Answer() exten => 101,n,PlayBack(NomFichierSon) exten =>  101,n,Dial(SIP/101,30,m(ma_classe_de_musique)) ... On utilise ici l'application Playback() pour lire la musique, par défaut Asterisk inclus des  fichiers musicaux, on peut en rajouter dans le dossier par défaut. Rapport Asterisk 17/49
  • 18. Fonctionnalités 6.4 Transfert d’appel La manipulation consiste à ajouter les options appropriées dans les fonctions d'appel dans le  fichier   'extensions.conf'.   Les   options   t   et   T   autorisent   respectivement   l’appelé   et   l’appelant   à  transférer l’appel. Pour tester le transfert, il faut alors établir une communication. Puis, durant la  conversation, tapez # sur le poste. A ce moment, le serveur répond en prononçant « transfer ». On  saisit alors le numéro de téléphone de destination. Modification du fichier extensions.conf : ... exten => 101,1,Dial(SIP/quentin,30,tT) ... 6.5 Conférence Asterisk permet de mettre en place des conférence facilement, chaque utilisateur peut donc  entrer dans un espace de communication dédié contenant plusieurs utilisateurs sans vraiment de  limite autre que matériel et pratique. Une conférence à 60 utilisateurs ne doit pas être aisément  compréhensible. Chaque conférence peut être gérée par un administrateur qui peut agir sur les participants,  les rendre muets ou non, les expulser. On peut personnaliser les conférences en instaurant un mot de  passe d'accès, un système d'annonce d'utilisateurs, un compteur d'utilisateurs, mode discours, mode  écoute. La mise en place de conférence passe par le paramétrage de 'meetme.conf' et la modification  du plan d'appel en conséquence, 'extensions.conf' : Modification du fichier meetme.conf : ... conf => 900 conf => 901 conf => 902 ... Rapport Asterisk 18/49
  • 19. Fonctionnalités Modification du fichier extensions.conf : ... ; Conference dynamique  exten => 900, 1, MeetMe(900,d)  exten => 900, 2, Hangup()  ; Conférence avec annonce entrant/sortant, compte  exten => 901, 1, MeetMe(901,icp)  exten => 901, 2, Hangup()  ;Conférence utilisateur  exten => 902, 1, MeetMe(900,dpm)  exten => 902, 2, Hangup()  ;Conférence orateur  exten => 903, 1, MeetMe(900,dt)  exten => 903, 2, Hangup() ...  Pour le fonctionnement des conférences il est indispensable d'avoir installé les pilotes  Zaptel. En effet un module des pilotes est nécessaire au fonctionnement des conférences. $ wget http://downloads.digium.com/pub/telephony/zaptel/zaptel... $ ./install_prereq test $ ./install_prereq install $ ./configure $ make $ su make install $ su make config $ modprobe zaptel, ztdummy On redémarre Asterisk : $ /etc/init.d/asterisk restart Rapport Asterisk 19/49
  • 20. Fonctionnalités 6.6 Mise en place de communication vidéo Asterisk permet facilement de mettre en place des communications vidéo. Pour cela il faut  que   le   protocole   SIP   soit   paramétré   avec   le   support   de   la   vidéo   et   les   codecs   pour   la   vidéo.  L'utilisation se fait avec des clients compatibles vidéo: ekiga, Eye­Beam(version payante d'Xlite), ... Modification du fichier sip.conf : ... videosupport=yes allow=all ... Il faut au moins autoriser les codecs h263 et h263p, dans l'exemple ci­dessus tous les codecs  sont activés. Pour un meilleur fonctionnement de la vidéo sur une grande infrastructure il faut optimiser  les paramètres des clients, mettre en place un réseau de qualité avec de la QoS. Asterisk n'a pour but  d'être une plate forme de conférence vidéo. 6.7 Interception d’appel L’interception d’appel intervient lorsqu’un téléphone sonne. Elle autorise la récupération de  l’appel   destiné  au  poste  qui sonne à partir  d’un autre  poste. Pour cela,  il  faut que  l’intercepté  appartienne au groupe d’appel qui correspond au groupe d’interception de l’interceptant. On ajoute donc le groupe d'appel et le groupe d'interception aux comptes SIP : Modification du fichier sip.conf : ... [nom_du_compte] pickupgroup=1 callgroup=1 ... 6.8 Renvoi d’appel Le renvoi d'appel peut être paramétré dans le plan d'appel. On peut également utiliser les  fonctionnalités des softphones pour utiliser cette fonction. Rapport Asterisk 20/49
  • 21. Fonctionnalités 6.9 Log des appels en base MySQL Avec une utilisation importante et pour une gestion plus facile des appels, Asterisk permet  de placer les enregistrements CDR(Call Detail Report) en base de données Mysql. On crée la base asterisk et la table CDR, des index sont créés pour l'optimisation de la base : Création du code SQL pour crée la base : CREATE DATABASE asterisk;  GRANT INSERT  ON asterisk.*  TO asterisk@localhost  IDENTIFIED BY 'mot­de­passe';  USE asterisk;  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 '',  `userfield` varchar(255) NOT NULL default '' ); ALTER TABLE `cdr` ADD `uniqueid` VARCHAR(32) NOT NULL  default ''; ALTER TABLE `cdr` ADD INDEX ( `calldate` ); ALTER TABLE `cdr` ADD INDEX ( `dst` ); ALTER TABLE `cdr` ADD INDEX ( `accountcode` ); Rapport Asterisk 21/49
  • 22. Fonctionnalités Il faut maintenant créé un utilisateur asterisk. On crée le fichier user­mysql et on y insère le  code suivant, puis on le rend exécutable et on l'exécute :  $ mysql --user=asterisk --password=asteriskcdr asterisk < user- mysql Il faut maintenant paramétrer Asterisk pour qu'il utilise la base de donnée Mysql : On crée le fichier /etc/asterisk/cdr_mysql.conf [global] hostname=localhost dbname=asterisk password=mysql user=root ;port=3306 ;sock=/tmp/mysql.sock ;userfield=1 On modifie 'module.conf' pour charger le module mysql au démarrage d'Asterisk : ... ; Enable these if you want to configure Asterisk in a database load => cdr_addon_mysql.so ... On redémarre maintenant asterisk: $ /etc/init.d/asterisk restart Rapport Asterisk 22/49
  • 23. Fonctionnalités 6.10 Messagerie unifiée 10.1 Principe : Un utilisateur qui dispose d'un numéro téléphonique, peut posséder une boîte vocale. Celui­ ci peut l'activer en cas d'absence ou elle s'active au bout d'un certain temps d'indisponibilité. Si  l'appelant   contact   un   utilisateur   et   que   ce   dernier   ne   répond   pas,   alors   l'appelant   entendra   un  message d'indisponibilité ou d'occupation selon le cas. Puis l'appelant pourra laisser un message sur  le répondeur. De plus l'appelé peut recevoir le message de l'appelant sur sa messagerie électronique  sous la forme d'un fichier son en pièce jointe au format souhaité (si on le configure ainsi). 10.2 Nécessités techniques : Pour mettre ce système en œuvre, il faut installé et configuré : un serveur Web : Apache un serveur SMTP : Postfix un serveur IMAP : Courier­imap un programme filtrant les courriers électronique : procmail une interface Web pour consulter les courriels : Squirrelmail Le hostname du serveur de mail est «serv2­debian»  et le nom de domaine est « serv2­ debian.asrall.fr ». Voici l'emplacement de ces données : Dans le fichier '/etc/hostname' (nom de la machine): serv2­debian  Dans le fichier '/etc/hosts' (nom de domaine): 127.0.0.1  serv2­debian.asrall.fr  serv2­debian  localhost 10.3 Installation et configuration des différentes applications nécessaires à  la messagerie Installation d'Apache : $ apt-get install apache2 La configuration par défaut est suffisante, il n'y a rien à rajouter. Rapport Asterisk 23/49
  • 24. Fonctionnalités Installation et configuration de Postfix : Par défaut, le serveur SMTP installé sur une distribution Debian est Exim4. Lorsqu'on installe  Postfix, celui­ci va supprimer Exim4. On installe Postfix par la commande : $ apt-get install postfix Durant l'installation on nous demande de renseigner plusieurs champs dont : ­ le nom du serveur : serv2­debian  l ­ le domaine réseau : serv2­debian.asrall.fr  serv2­debian  localhost Ajout et modification dans le fichier /etc/postfix/main.cf : ... home_mailbox = Maildir/ myhostname = serv2­debian.asrall.fr  mydestination = serv2­debian.asrall.fr , localhost.asrall.fr , localhost mynetworks = 127.0.0.0/8  192.168.10.0/24 ... Remarque :  Si on met « home_mailbox = Maildir/ », il est nécessaire d'enlever la valeur du champ  « mailbox_command » qui était : « procmail ­a "$EXTENSION"  ». MailDir permet d'attribuer un répertoire MailDir situé dans chaque home de l'utilisateur. Par défaut,  sur une Debian, tous les courriels sont stockés dans /var/mail au format mbox. Il faut vérifier que les données saisies soient correctement intégrées dans le fichier de configuration  de Postfix : '/etc/postfix/main.cf' Si on modifie la configuration de Postfix, il faut redémarrer le service : $ /etc/init.d/postfix restart Installation et configuration de courier­imap : $ apt-get install courier-imap Dans le fichier '/etc/default/courier' vérifier qu'on a bien: MAILDIR="Maildir" Rapport Asterisk 24/49
  • 25. Fonctionnalités Installer Procmail puis lancer un script : $ apt-get install procmail Voici le script qu'on utilise pour créer les répertoires dans chaque home des utilisateurs : #!/bin/bash  #  # Script de création des boites aux lettres utilisateurs  #  # Création des répertoire "de base" (cur,new et tmp)  maildirmake /home/$1/Maildir  chown ­R $1 /home/$1/Maildir  # Copie du MDA procmail dans le compte de l'utilisateur  cp `whereis ­b procmail | awk '{print $2}'` /home/$1/.procmailrc  chmod 600 /home/$1/.procmailrc  chown $1 /home/$1/.procmailrc    sudo touch /var/log/procmailrc.log  sudo chmod 666 /var/log/procmailrc.log Pour exécuter le script : $ ./scriptMailDir    nom_utilisateur Ce script crée un répertoire MailDir dans le home de l'utilisateur. Dans ce répertoire, ce script cré 3  répertoires (cur, new et tmp) où seront stockés les mail. Ce script copie le MDA procmail dans le  compte   de   l'utilisateur   (fichier   caché   .procmailrc).   Ce   script   crée   aussi   un   fichier   de   log  /var/log/procmailrc.log. Pour créer un nouvel utilisateur, il faut saisir la commande : $ adduser nom_utilisateur ou $ useradd nom_utilisateur On peut tester l'envoie d'un courriel avec une commande telnet. Puis on peut relire ce mail en utilisant un éditeur de texte en ouvrant le courriel se situant dans le  répertoire : '/home/nom_utilisateur/Maildir/new/nom_du_courriel'. Alors qu'auparavant, avec la configuration d'Exim4, le format utilisé était « mbox ». Pour lire ce  même courriel, on devait utiliser la commande mailq ou encore en éditant le fichier  '/var/mail/nom_utilisateur'. Rapport Asterisk 25/49
  • 26. Fonctionnalités 10.4 Configuration de la boîte vocale dans Asterisk : On met en place la boîte vocale en modifiant le fichier '/etc/asterisk/voicemail.conf'. Ce fichier est divisé en 3 sections : – la section [general] qui contient les paramètres qui s'appliquent à toutes les boîtes vocales. – la section [zonemessages] qui permet de gérer les zones horaires mais qu'on utilisera pas – la section qui est dédiés aux boîtes vocales en elles­mêmes, et parmi celles­ci on utilisera la  section [default]. La syntaxe d'une boîte vocale est : numéro de la boîte vocale => mot de passe, nom de l'utilisateur, courriel, email pager, options Une des options qui est importante est « attach=yes » qui permet d'attacher le message vocal au  courriel. Ajout et modification dans le fichier voicemail.conf : [general]  ;;;; Voir contexte [default] à la fin ;;;;;;;;  format=wav49|gsm|wav  attach=yes  serveremail=voicemail@serv2­debian.asrall.fr  fromstring=Messagerie Vocale IUT  maxmessage=180  minmessage=3  ; How many milliseconds to skip forward/back when rew/ff in message playback  skipms=3000  ; How many seconds of silence before we end the recording  maxsilence=5  ;permettre à l'émetteur de ré entendre ou de réenregistrer son message  ;avant de le sauvegarder  review=yes  ; permet à l'appelant d'appuyer sur la touche 0 pour annuler le message  enregistré operator=yes  ; Silence threshold (what we consider silence: the lower, the more sensitive)  silencethreshold=128  ; Max number of failed login attempts  maxlogins=3  Rapport Asterisk 26/49
  • 27. Fonctionnalités sendvoicemail=yes       ; Context to Send voicemail from [option 5 from the  advanced menu]  ; Voici le contenu du courriel qui sera généré et envoyé à l'appelé : emailbody=Utilisateur ${VM_NAME},nnVous avez un nouveau message sur  votre boite vocale ${VM_MAILBOX}:nntDe:t$ {VM_CALLERID}ntDuree:t${VM_DUR} secondesntDate:t$ {VM_DATE}nnNumero ${VM_MSGNUM}) dans la boite  mail.nnComposez le 888 pour accéder a votre boite aux lettres.n  Ici on utilise l'un des différents format audio suivant :  format=wav49|gsm|wav  Le message laissé à l'appelé sera envoyé au format wav sur sa boîte mail. On utilise l'option « attach=yes  » pour que le message vocal soit joint au courriel de l'appelé. On peut remarquer qu'on a spécifié le nom du serveur de mail utilisé :  serveremail=voicemail@serv2­debian.asrall.fr [default]  ; Messagerie Vocale de chaque utilisateur  101 => 101, quentin, quentin@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no  102 => 102, ben, benoit@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no  103 => 103, romain, romain@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no  104 => 104, luis, luis@serv2­debian.asrall.fr,,attach=yes|saycid=no|envelope=no|delete=no  C'est dans ce contexte [default], que l'on spécifie les adresses mail des différents utilisateurs. Gestion de la messagerie dans le plan de numérotation (fichier 'extensions.conf') : Il existe 2 applications spécifiques à la messagerie vocale : – l'application VoiceMail() qui permet de laisser un message vocal – l'application VoiceMailMain() qui permet de consulter sa propre boîte vocale en appelant le  numéro 888 qui a été défini dans le dial plan, puis de saisir son propre numéro de téléphone et  enfin saisir son mot de passe. Rapport Asterisk 27/49
  • 28. Fonctionnalités Voici un exemple du contenu du dial plan (fichier 'extensions.conf') : Modification dans le fichier extensions.conf : ; Messagerie unifiée  exten => 103,1,Dial(SIP/romain,15,rtT)  ; Si romain est indisponible pendant 15 secondes, l'appelant entendra un  message d'indisponibilité (u = unavailable). exten => 103,2,Voicemail(u103@default) ; romain peut appeler le 888 pour accéder à son répondeur et écouter ses  messages vocaux. exten => 888,1,VoiceMailMain() 10.5 Installation de Squirrelmail :  Pour faciliter l'exploitation des boîtes mails sur le serveur, on installe le webmail  Squirrelmail. $ apt-get install squirrelmail Lien symbolique de l'emplacement de squirrelmail vers l'emplacement du serveur Web en le  renommant en webmail: ln -s /usr/share/squirrelmail /home/quentin/Site-web/webmail On peut enfin consulter si on a bien reçu un courriel contenant un message ainsi que le  fichier son contenant le message de la boîte vocale qui est joint au mail. Pour réaliser ceci on peut se connecter à travers l'interface Web Squirrelmail dans un navigateur en  saisissant : http://192.168.10.12/webmail/ Rapport Asterisk 28/49
  • 29. Fonctionnalités 6.11 Menu vocal interactif(IVR) C'est une fonctionnalité forte du serveur de téléphonie Asterisk est l’IVR (Interactive Voice  Response). En français, cela peut se traduire par « menu vocal interactif ».  On peut réaliser des sous menus disposant chacun d'une numérotation, ainsi dans le menu  suivant, on y accède en entrant le 4000. Étant donné que nous sommes dans un autre contexte on  peut utiliser des numéro du contexte par défaut pour y attribuer d'autres fonctions. Ainsi ici on  redéfinit les appels vers les comptes SIP, vers le test echo. L'exemple ici abordé est très simple. Modification dans le fichier extensions.conf : ; Menu vocal interactif exten => 4000,1,Goto(ivr,s,1) ; menu vocal interactif [ivr] exten => s,1,answer() ;exten => s,1,background(enter­ext­of­person)  exten => s,n,playback(1) exten => #,1,Playback(demo­thanks) exten => #,2,Hangup() exten => 1,1,Dial(SIP/quentin,30,rtT) exten => 2,1,Dial(SIP/ben,30,rtT) exten => 3,1,Dial(SIP/romain,30,rtT) exten => 4,1,Dial(SIP/luis,30,rtT) exten => 5,1,Dial(SIP/remi,30,tT) exten => 6,1,Dial(SIP/daneel,30,tT) exten => i,1,Playback(invalid) exten => 600,1,Playback(demo­echotest) exten => 600,2,Echo() exten => 600,3,Playback(demo­echodone) exten => 600,4,Goto(s,1) exten => t,1,Goto(#,1) Rapport Asterisk 29/49
  • 30. Fonctionnalités 6.12 Gestion des files d’attente(Centre d’appels) Principe: un utilisateur peut utiliser n'importe quel téléphone mais il doit faire en sorte que le  téléphone auquel il se connecte s'enregistre dans la file d'attente (il a ainsi le statut d'agent). Les  appels entrants sont alors routés vers ce téléphone. Pour réaliser ceci, les fichiers suivants doivent être modifiés : – 'agents.conf' : défini les agents. – 'queues.conf' : défini les files d'attentes et les agents qui leurs sont associés. – 'extensions.conf' : numéro d'appel de la file d'attente. Voici un exemple : Modification dans le fichier extensions.conf : ... exten => 700,1,AddQueueMember(hotline­iut) exten => 701,1,RemoveQueueMember(hotline­iut) exten => 702,1,Goto(queue­hotline,s,1) ... Signification des numéros : – 702 : numéro de la file d'attente – 700 : numéro pour entrer dans la file d'attente 702 – 701 : numéro pour sortir de la file d'attente 702 Dans cet exemple, on utilise la stratégie round robin qui permet de faire sonner tous les  postes correspondant aux utilisateurs enregistrés dans la file d'attente (= statut d'agent), mais les uns  après les autres. Explication : les agents entrent dans la file d'attente en composant le 700. Un utilisateur qui  veut communiquer avec un agent doit composer le 702. S'il y a plusieurs agents présents dans la file  d'attente, et qu'un utilisateur tente de communiquer avec l'un d'entre eux, alors les téléphones des  agents vont sonner un par un jusqu'à ce que l'un d'entre eux réponde. Si un agent souhaite quitter son poste, alors il compose le 701. Rapport Asterisk 30/49
  • 31. Fonctionnalités Modification dans le fichier queue.conf : [general] persistentmembers = yes [hotline­iut] maxlen = 7 ;lorsque la file est vide d'agent faire : joinempty = yes leavewhenempty = no ;stratégie de sonnerie strategy = roundrobin ;durée de la sonnerie timeout = 10 retry = 15 ;délai accordé avant un nouvel appel wrapuptime = 30 musiconhold = default ;indique le délai d'attente de l'appelant (A revoir) reportholdtime = yes ;information à l'appelant de sa place dans la file d'attente toute les 15  secondes announce­frequency = 15 ;estimation du temps d'attente à 7 secondes près announce­holdtime = yes announce­frequency = 7 On peut voir que le contexte [hotline­iut] est le nom de la file d'attente. On peut aussi remarquer la présence de la stratégie roundrobin qui fait sonner les téléphones de  façon tournante: strategy = roundrobin  Il existe 5 autres stratégies et entre autre : – Ringall : fait sonner tous les téléphones disponibles jusqu'à ce que l'un des téléphones réponde. – Random :  fait sonner les téléphones de façon aléatoire. – ... Rapport Asterisk 31/49
  • 32. Fonctionnalités Gestion par agents Principe : Un   agent   doit   être   capable   d'entrer   et   de   sortir   d'une   file   d'attente   avec   un   mécanisme  d'authentification depuis un téléphone quelconque. Comme   un   agent   ne   dispose   pas   d'un   téléphone   personnel,   il   faut   définir   un   autre   type   de  numérotation : celle déjà mise en place (101 à 104) et une pour les agents (de 501 à 504). La syntaxe à respecter est la suivante : agent => numéro_agent, mot_de_passe_agent, nom_agent Modification dans le fichier agents.conf : [agents]  agent => 501, 501, quentin  agent => 502, 502, ben  agent => 503, 503, romain  agent => 504, 504, luis  Les deux types d'agents : il existe l'agent décroché et l'agent en rappel. On n'aborde que le premier  car on n'a pas réussi à mettre en place le second. Agent décroché : Une fois que l'agent s'est enregistré dans la file d'attente, sa ligne est décrochée. Si quelqu'un  appelle, un bip informe qu'un appel arrive. Il peut le prendre en appuyant sur la touche #. Durant  nos tests, les communications se font directement. Nous n'avons pas la possibilité d'appuyer sur la  touche # (peut­être est­ce dû à notre softphone ou à une option non ajoutée). Modification dans le fichier queue.conf : ... [queue­agent­decroche]  member => Agent/501  member => Agent/503 ... Rapport Asterisk 32/49
  • 33. Fonctionnalités Modification dans le fichier agents.conf : ... exten => 555, 1, AgentLogin(501) exten => 556, 1, AgentLogin(503) exten => 515, 1, Queue(queue­agent­decroche) ... La fonction AgentLogin() permet de faire rentrer un opérateur sur le système des files d'attente. Dans le cas où il n'y a qu'un seul agent (numéro 503) dans la file d'attente mais 2 utilisateurs  appelant l'agent: – L'agent 503 entre dans le système des files d'attente en composant le 555 et doit rentrer son mot  de passe. Il a le statut d'opérateur de files. Lorsqu'un appel arrive sur la file 515, un bip va alors  être émis sur la ligne de l'agent 503. Ce dernier prend l'appel automatiquement. Si l'agent 503  est le seul dans la file d'attente et qu'il y a un autre utilisateur qui appelle pendant qu'il est en  ligne, alors cet utilisateur est mis en attente et l'agent sera connecté à ce nouvel utilisateur dès  que le premier utilisateur aura raccroché. Utilisation de la CLI pour gérer la file d'attente: Pour connaître les agents présents dans la file d'attente hotline­iut : CLI > queue show hotline-iut Pour retirer un agent de la file d'attente : CLI > queue remove member SIP/romain from hotline-iut Rapport Asterisk 33/49
  • 34. Fonctionnalités 6.13 Mise en place d'Asterisk­stat L'outil asterisk­stat permet de fournir, via une interface web différents rapports et graphiques  concernant le trafic des appels du serveur Asterisk. Il se base sur les enregistrements CDR, de base  dans le fichier 'master.csv', ou dans une base de donnée, mysql dans notre cas. – Téléchargements de l'archive : $ wget http://www.areski.net/asterisk-stat- v2/asterisk-stat-v2_0_1.tar.gz – Copie du fichier dans le répertoire souhaité : $ tar -zxvf asterisk-stat- v2_0_1.tar.gz – Modification du fichier 'defines.php' : ­ webroot: url de l'application ­ fsroot: chemin qui contient l'application ­ host: nom du serveur de base de données ­ port: port de la base de données, 3306 pour une base Mysql ­ user: nom d'utilisateur pour l'accès à la base de donnée ­ pass: mot de passe de l'utilisateur ­ dbname: nom de la base de données ­ db_type: type de la base de données, mysql ou postgres ­ db_tablename: nom de la table contenant les CDR L'accès se fait maintenant sur notre poste via l'url http://localhost/asterisk­stat. 6.14 Présentation Trixbox et supervision des appels(FOP) Trixbox est une distribution Linux CentOS orientée téléphonie sur IP. Elle contient Asterisk  mais   également   un   package   d'applications   déjà   configurées   pour   fonctionner   de   façon   presque  automatique dès l'installation. Le serveur Asterisk fonctionne en arrière plan tandis qu'un serveur  apache basé sur une base Mysql offre la possibilité de s'y connecter à distance pour accéder à la  totalité des fonctionnalités via une interface web. Parmi les applications disponibles en standard on trouve: – Linux CentOS: Système d'exploitation – MySQL: serveur de base de données – Apache: Serveur Internet – PHP: Langage de script orienté serveur – Asterisk: PBX voix­sur­IP – FreePBX: Interface graphique pour Asterisk – Flash Operating System (FOP): Interface de supervision en flash – (...) Installation de Trixbox: Télécharger l'image cd sur le site officiel (http://www.trixbox.org) puis graver l'image sur un cd. Trixbox peut s'installer soit sur une partition virtuelle (avec Vmware ou Virtualbox), soit sur une  Rapport Asterisk 34/49
  • 35. Fonctionnalités partition native en démarrant le serveur sur le lecteur cdrom. (Trixbox ne dispose pas d'outil de  partitionnement et utilisera la totalité du disque du PC). A l'issue de l'installation, l'IP du serveur est affichée à l'écran, Trixbox est fonctionnel, le  serveur Apache est lancé ainsi que tous les services web. On peut dès lors se connecter à distance sur un navigateur internet en utilisant l'IP donnée: Rapport Asterisk 35/49
  • 37. Fonctionnalités Voici quelques captures d'écran de certaines des fonctionnalités offertes par Trixbox: Log des appels. (Exports possibles vers pdf ou csv. Différents filtrages possibles): Rapport Asterisk 37/49
  • 38. Fonctionnalités Flash Operating System(FOP) FOP permet d'avoir une vue sur l'ensemble des communications en temps réel. Il  permet   surtout  d'être  administré  par une personne (une standardiste  par exemple)  qui pourra  rediriger les appels vers des personnes ou des services (conférence, files d'attente...) Ces applications trouvent leur utilité dans un call­center par exemple. Les clients se voient mis en  attente dans une file affectée à un opérateur. Rapport Asterisk 38/49
  • 39. Présentation de distributions dédiées 7)   RÉSENTATION DE DISTRIBUTIONS DÉDIÉES P   Il existe des distributions Linux clé­en­main incluant Asterisk pré­configuré ainsi que tout  l'environnement utile a une utilisation conviviale. Leur avantage est d'être abordable même pour un  novice en informatique, leur inconvénients est d'être gourmandes en ressources et d'être moins  fiables qu'une installation sur mesure. 7.1 Trixbox Trixbox est une distribution du système d'exploitation Gnu/Linux basée sur CentOS,  qui   nous   permet   d'installer   un   serveur   PBX.   Le   paquet   trixbox   inclut   en   standard   plusieurs  applications,   autrefois  propriétaires  et chères  telles  que : envoi de messages vocaux par email,  conférences , menus de vocaux interactifs etc... Trixbox est développé principalement par Fonality, mais c'est un projet open­source. Rapport Asterisk 39/49
  • 40. Présentation de distributions dédiées 7.2 Elastix Elastix est une distribution de Serveur de Communications Distribuées créée en Équateur  qui    inclut: VoIP PBX, Fax, Messagerie instantanée, Email, Collaboration. Inteface web d'Elastix: Elastix se base sur 4 programmes importants: Asterisk, Hylafax, Openfire et Postfix. Ceux­ ci offrent les fonctions de PBX, Fax, Messagerie instantanée et Email. Il supporte bien la plupart  des marques de cartes PABX : OpenVox, Digium, Sangoma, Rhino Equipment, Xorcom, Yeastar.  La majorité de ces pilotes sont fournis pour le projet Zaptel ou des versions modifiées de ce dernier.  D'autres sont fournis par le projet mISDN ou d'autres. Elastix est la première distribution qui offre un module open­source « call center » avec  marquage prédictif. Il est possible d'installer ce module depuis le chargeur de modules dans  l'interface d'Elastix. Le call center peut gérer des programmes d'appels entrants et sortants. Ce  module a les caractéristiques suivantes: ­ fonction blacklist ­ support des programmes d'appels entrants et sortants  ­ association de formulaires pour programme ­  marquage prédictif  ­  rapports avancés  Rapport Asterisk 40/49
  • 41. Présentation de distributions dédiées 7.3 Asterisk@home  Asterisk@home est un logiciel libre open­source. Il permet de mettre en place des centraux  téléphoniques PBX. Asterisk@home est installé depuis une image iso du système d'exploitation  CentOS. Il contient une version entière de logiciel Asterisk et quelques outils d'administration web. Pour l'administration sur le serveur via une interface web. Le login et le mot de passe par  défaut sont « admin » et « admin ». On peut ajouter des comptes d'utilisateurs en utilisant le module AMP et en éditant les fichiers de  configuration 'sip.conf' et 'extensions.conf'. Asterisk@Home possède des extensions avec lesquelles on peut réaliser diverses fonctions: – Ring group: permet d'appeler en même temps tout les téléphones d'un groupe . – File d'attente: l'appelant est mis en attente le temps que le correspondant soit libre. ­ Trunk  est un circuit qui définit une configuration de connexion d'entrée ou de sortie. ­ OutBound rules: définit les routes ou les chemins que prendra un appel sortant . ­ DiD ou direct in dial : paramétrage du dial plan – IVR. – Mise à jour automatique – Conférences – FOP – voicemail (...) Rapport Asterisk 41/49
  • 42. Présentation de distributions dédiées 7.4 VoiceBuntu VoiceBuntu est une distribution Linux développée par l'équipe Voiceone, qui peut  fonctionner grâce à une clé USB. Rapport Asterisk 42/49
  • 43. Présentation de distributions dédiées 7.5 AstLinux Ast   Linux   est   une   distribution   développée   par   Kristian   Kielhofner.   Il   se   compose   d'un  système Linux, Asterisk (incluant BriStuff ,mISDn et Zaptel) et d'outils additionnels. Actuellement,  AstLinux   a   un   support   pour   des   bases   de   données   BDB   ,   SQLite   ,MySQL   et   un   contrôleur  unixODBC. Le système complet occupe approximativement 40Mb et peut s'installer en partie sur  clé USB (les fichiers statiques tels que fichiers de conf, messages pré­enregistrés...) Le système met en place UnionFS, un système de fichiers qui réplique en temps réel les  changements réalisés dans la CF sur , par exemple, le KeyDisk. On peut aussi y ajouter les systèmes  unis de disques externes. Rapport Asterisk 43/49
  • 44. Présentation de distributions dédiées Actuellement, AstLinux possède deux versions « stables » avec Asterisk 1.4 et Zaptel 1.4:  AstLinux  0.4.8 et astlinux­trunk (svn) à partir du commit  1500. La révolution  de AstLinux  est  donnée parce qu'elle s'installe principalement dans des dispositifs personnalisés comme hardware  Soekris et PC Engines Wrap/ALIX. Tableau récapitulatif de ces distributions : AstLinux VoiceBuntu Asterisknow Trixbox Elastix Interface web FreePBX VoiceOne Asterisk­GUI FreePBX FreePBX Logiciel de  Asterisk/Freeswitch Asterisk Asterisk Asterisk Asterisk communication /OpenSIP Distribution  Gentoo Ubuntu CentOS CentOS CentOS d'origine Langues  1(Anglais) 1(Anglais) 9 6 22 supportées NAT x ­ x ­ ­ Live­CD ­ x ­ ­ ­ Mail server smtp  postfix sendmail postfix postfix mISDN x x x ­ x Zaptel  x x x x x Fax ­ x x x x FOP ­ x x x x Rapport Asterisk 44/49
  • 45. Conclusion 8)   ONCLUSION C   Cette expérience dans le monde de la VoIP et en particulier d'Asterisk s'est montrée  très enrichissante pour chacun d'entre nous. En effet, nous ne connaissions absolument pas ce  domaine et n'avions pas la moindre idée des technologies mises en œuvre. Nous avons pris conscience aux cours de nos recherches dans les livres et sur internet  de   l'ampleur   qu'à   pris   la   VoIP   et   il   nous   semble   difficile   maintenant   d'imaginer   qu'un  informaticien ne soit pas un minimum aux faits de cette technologie (au point où nous nous  sommes dit que cela pourrait faire l'objet de quelques heures de cours dans le cadre de la  licence). Nous nous sommes vus confortés dans le choix que nous avions fait concernant le  sujet du projet tuteuré. Comme nous l'avions imaginé, cette expérience sera valorisable par la  suite car elle correspond à un véritable besoin sur le monde du travail. Il n'en reste pas moins que les possibilités offertes par la VoIP et en particulier par  Asterisk   et  ses  modules  sont extrêmement  vastes  et  que leur  maîtrise  demande  un temps  d'apprentissage et d'adaptation  assez long. Pour cette raison, aucun de nous quatre n'a pu  résister à la tentation d'installer chez lui son propre serveur Asterisk pour continuer à mener  ses propres expériences. Paradoxalement, la documentation en français n'est pas très fournie  sur   internet.   Plus   précisément,   les   cas   de   figure   sont   tellement   nombreux   qu'il   est   assez  difficile de trouver des informations répondant exactement aux besoin que l'on peut avoir.  Pour cette raison entre autre, nous avons fait le choix de rendre ce rapport disponible à la  communauté et l'avons remis à l'administrateur du site 'génération­Linux' qui le mettra en  ligne prochainement. Pour conclure, Asterisk présente l'avantage d'être open­source. Cet avantage donne la  possibilité de pouvoir le modifier à son grès pour l'adapter finement à ses besoins. Un grand  nombre d'applications elles aussi open­source sont développées autour d'Asterisk. Il ne fait  pas de doute que cet outil est suffisamment abouti pour être déployé dans des environnements  d'envergure. Il n'en reste pas moins assez difficile à prendre en main car il n'est pas très  intuitif   ni   très   convivial.   Les   modules   de   paramétrage   via   interface   web   (freePBX   par  exemple) peuvent être un plus pour découvrir les capacités de cet outil. Rapport Asterisk 45/49
  • 46. Bibliographie et Webographie 9)   IBLIOGRAPHIE ET WEBOGRAPHIE B   9.1 Webographie : •   http://www.voip­info.org/   •   http://www.asterisk­france.net/   •   http://www.unixgarden.com/   •   http://www.frameip.com/voip/   •   http://www.asteriskguru.com/   •   http://www.openmaniak.com/fr/trixbox.php  9.2 Bibliographie : • VoIP et ToIP Asterisk, Sébastien DÉON, Eni Editions, ISBN 978­2­7460­4044­1 • Téléphonie sur IP, Laurent Ouakil et Guy Pujolle, Eyrolles, ISBN 978­2212120998 Rapport Asterisk 46/49
  • 47. Annexes 10)ANNEXES     10.1 Répartition des tâches La   mise   en   place   d'un   outil   de   gestion   de   projet   (dotproject)   nous   a   permis   de  centraliser et organiser notre travail. Le tuteur avait un accès au site afin de suivre l'évolution  du projet. Cela demande un petit effort administratif mais au final cela nous a vraiment aidé  (pour  suivre l'avancée  du travail, partager des documents, avoir un point de rencontre en  dehors de l'établissement...). Et puis cela nous a permis de nous familiariser avec un tel outil. Au   final   nous   avons   pu   extraire   un   diagramme   de   Gantt.   Bien   qu'il   ne   soit   pas  exhaustif à 100%, il permet de se rendre compte au premier coup d'œil de l'évolution du  travail. Chacun de nous à manipuler un peu toutes les fonctionnalités que nous avons vu et  certains se sont orientés naturellement vers les manipulations qui les intéressaient davantage. Rapport Asterisk 47/49
  • 48. Installation et  Réunion de lancement et  Découverte théorique  Mise en place  Mise en place  Quentin définition des objectifs VoIP et Asterisk configuration de base  Appel entre clients SIP Tests Softphones Son d'attente conférences Gestion files d'attente Mise en place IVR Transfert d'appel Interception d'appel CDR/Asterisk stat Finalisation rapport Asterisk Installation et  Réunion de lancement et  Découverte théorique  Luis définition des objectifs VoIP et Asterisk configuration de base  Appel entre clients SIP Tests Softphones Transfert d'appel Installation Trixbox étude distribution dédiée messagerie trixbox annexe Twinkle Finalisation rapport Asterisk Installation et  Réunion de lancement et  Découverte théorique  Création d'un son et  Prise en main du dial  Mise en place  Romain définition des objectifs VoIP et Asterisk configuration de base  Appel entre clients SIP Tests Softphones mise en attente plan Transfert d'appel Gestion files d'attente messagerie unifiée Finalisation du rapport Asterisk Installation et  Rédaction 1er jet  Réunion de lancement et  Mise en place  Découverte théorique  Mise en place  Benoit définition des objectifs dotproject VoIP et Asterisk configuration de base  Appel entre clients SIP Tests Softphones Son d'attente rapport / Bilan M.  conférences Mise en place FOP Installation Trixbox Finalisation rapport Asterisk Maringer
  • 49. Annexes 10.2 Paramétrage du Softphone Twinkle pour Asterisk Twinkle est un logiciel libre uniquement disponible sous Linux. Son installation est  très simple car il fait partie des paquets disponibles sur les dépôts officiels. Pour l'installer sur une distribution basée sur Debian: $ apt-get install twinkle Après installation, se rendre dans le menu: Edition / Profil utilisateur puis saisir les  informations telles que paramétrées dans Asterisk. Dans un deuxième temps les informations sur le serveur SIP à contacter : Pour configurer les paramètres  audio (correspondant à l'entrée  micro et à la sortie  audio) il faut aller dans l'onglet « RTP Audio » pour choisir les réglages des pilotes du son  (dans certaines configurations, il faut que les autres logiciels qui utilisent la carte son soient  fermés.). Pour les réglages audio il est conseillé d'utiliser Alsa et non OSS pour une meilleure  qualité du son. Rapport Asterisk 49/49