Asterisk to ip_rapport

3 239 vues

Publié le

0 commentaire
2 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
3 239
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
242
Commentaires
0
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Asterisk to ip_rapport

  1. 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 AsteriskTuteur: M. Damien MaringerGroupe: Quentin Hourlier, Benoit Henryon, Romain Gegout, Luis Dominguez Lopez
  2. 2. Sommaire Sommaire1) Introduction...........................................................................................................................32) Cahier des charges................................................................................................................43) Quest ce que la ToIP............................................................................................................54) Installation dAsterisk sur Linux..........................................................................................95) Configuration minimale avec quelques comptes SIP........................................................126) 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 dAsterisk­stat.................................................................................................34 6.14 Présentation Trixbox et supervision des appels(FOP).........................................................347) 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....................................................................................................................................438) Conclusion...........................................................................................................................459) Bibliographie et Webographie............................................................................................46 9.1 Webographie :...........................................................................................................................46 9.2 Bibliographie :..........................................................................................................................4610) Annexes..............................................................................................................................47 10.1 Répartition des tâches............................................................................................................47 10.2 Paramétrage du Softphone Twinkle pour Asterisk..............................................................49Rapport Asterisk 2/49
  3. 3. Introduction1)  NTRODUCTION I   La téléphonie sur IP (ToIP) connaît un essor considérable depuis une dizaine dannées. Aussi bien pour les besoins de lentreprise que du particulier, cette technologie à bouleversé notre usage du   téléphone.   Les   nouvelles   fonctionnalités   apportées   ainsi   que   limpact   sur   le   coût   des communications fait que la ToIP simplante massivement, et par conséquent, crée des emplois et des entreprises spécialisées dans le domaine. Il peut être du ressort de ladministrateur 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 quils 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 dhorizon de cette technologie et des possibilités offertes par cet outil. Par ailleurs cela nous aura appris les notions de ToIP et dutilisation dAsterisk qui pourront être mise en avant lors de notre future recherche demploi.Rapport Asterisk 3/49
  4. 4. Cahier des charges2)   AHIER DES CHARGES C  Ci dessous le cahier des charges communiqué par M Damien Maringer. I) Quest­ce que la ToIP. II) Présentation et installation dAsterisk 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. 5. Quest ce que la ToIP3)   UEST 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 larrivée dans les foyers des offres triple­play des fournisseurs daccès internet. Ces offres proposent laccè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 quelle apporte (Début 2008, 46% des PME françaises avaient adopté une solution de ToIP, aujourdhui 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                                                                                                                                IPExplications: La bande voix (qui est un signal électrique analogique) est dabord é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 dune 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 nimporte 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. 6. Quest ce que la ToIPLes outils nécessaires à la mise en œuvre dun réseau de VoIP. En début de chaîne, lutilisateur doit disposer dun outil faisant office de téléphone. deux alternatives se présentent:–   Téléphone SIP:    Il sagit dun boîtier téléphonique physique avec un combiné et un clavier. Ce type de  téléphone   a   la   particularité   de   disposer   dune   prise   réseau   ainsi   que   dune   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 sagit dun logiciel faisant office de téléphone, installé sur le PC de lutilisateur, et qui se  chargera de transformer la voix capturée par la carte son en signal IP émis sur le réseau.  Loffre est assez vaste. Il y a les plus connu comme MSN Messenger, Skype, X­Lite... (qui  présentent linconvé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 TWINKLERapport Asterisk 6/49
  7. 7. Quest 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   sagit   du serveur VoIP. Ce serveur représente le cœur du système: Il connaît  les téléphones  de son réseau dutilisateur, il connaît le point daccès vers le réseau commuté, il propose des services tel que messagerie, renvoie dappels, 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. 8. Quest ce que la ToIPAvantages et inconvénients de la VoIPAvantages Inconvénients1 ­ Économiser sur la facture télécom 1) Fiabilité2 ­ Pérenniser linvestissement 2) Qualité de son 3 ­ Simplifier les infrastructures 3) Améliorer lutilisation4 ­ Faciliter ladministration et la mobilité 4) Localisation5 ­ Homogénéiser les services téléphoniques sur différents sites 5) Standards6 ­ Faciliter lintégration avec le système dinformation 6) Support administratif7 ­ Évoluer plus facilement8 ­ Regrouper les équipes et se passer dun prestataire Une   étude   (source:  www.frameip.com  )   nous   donne   les   motivations   de   100 responsables de systèmes informatiques dentreprise 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 dappels à traiter 46% Autres facteurs 50%Présentation du protocole SIP Le protocole SIP (Session Initiation Protocol) est un protocole ouvert standardisé par lIETF (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  lauthentification  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 sest imposé comme le protocole de choix en matière de VoIP en raison  de sa simplicité  et de sa gratuité. Il est dailleurs  implémenté  dans la majorité des matériels et logiciels fournis à ce jour par les constructeurs et éditeurs.Rapport Asterisk 8/49
  9. 9. Installation dAsterisk sur Linux4)  NSTALLATION DASTERISK 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 larchive asterisk­1.4.23.1.tar.gz ­2­ Décompresser larchive : $ 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 nest pas présent. La  solution est dinstaller ce paquet: $ apt-get install libncurses5-dev) ­4­ La commande (optionnelle) $ make menuselect permet dinstaller des modules  supplémentaires.Rapport Asterisk 9/49
  10. 10. Installation dAsterisk sur Linux 4) Lancer la commande $ make (le message suivant indique que la procédure sest bien déroulée). 5) Lancer la commande $ make install (le message suivant indique que linstallation sest 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  dorigine dasterisk).Rapport Asterisk 10/49
  11. 11. Installation dAsterisk sur LinuxDè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 dobtenir des informations sur lactivité du serveur, comme par  exemple la liste des clients connectés (commande sip show peers en loccurrence). Cette commande permet également de recharger les fichiers de configuration lorsque lon 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. 12. Les principaux fichiers de configuration5)   ONFIGURATION MINIMALE AVEC QUELQUES COMPTES SIP C   Ce quil 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/AsteriskDans un premier temps, les 2 fichiers qui vont nous intéresser sont sip.conf et extensions.confsip.confIl 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 lensemble 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. 13. Les principaux fichiers de configurationextensionsconfCe fichier est composé de plusieurs sections, nommées des contextes, dans lesquelles sont définis les comportements à adopter lors dappels 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 deffacer 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 quun appel vers le 101 aura une priorité 1 et sera concrétiser par un appel vers quentin.Lidentifiant dextension: 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) dinactivité. ­ i comme invalide si saisie dune extension inconnue.Filtre dextension = +/­ des regexp pour appliquer des règles a des groupes par exemple.Rapport Asterisk 13/49
  14. 14. Les principaux fichiers de configurationla prioritédéfini lordre dans lequel les règles sont appliquées.On peut mettre n pour numérotation automatique.lapplicationdéfinit laction a entreprendre pour appliquer le service sollicité par lutilisateur 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. 15. Les principaux fichiers de configuration Le paramétrage dAsterisk 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. 16. Fonctionnalités6)   ONCTIONNALITÉS F  6.1 Appel Lappel est très simple à mettre en œuvre, il suffit de créer au minimum deux comptes SIP et lextension dappel 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. 17. Fonctionnalités6.2 Mise en attente(avec musique) On paramètre la mise en attente avec musique grâce à lapplication MusicOnHold() quon spécifie dans le plan dappel: Modification du fichier extensions.conf ... exten => 101,1,Answer() exten =>101,2,MusicOnHold(ma_classe_de_musique) exten => 101,3,Dial(SIP/quentin,30) ... Cest   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 navons pas trouvé cette  fonction très utile,  il faut attendre la fin de la musique pour que lappel soit effectué.6.3 Musique de pré­décroché La musique de pré­décroché est la musique que lon entend avant de pouvoir parler à son interlocuteur. Nous navions 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 lapplication 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. 18. Fonctionnalités6.4 Transfert d’appel La manipulation consiste à ajouter les options appropriées dans les fonctions dappel 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 daccès, un système dannonce dutilisateurs, un compteur dutilisateurs, mode discours, mode écoute. La mise en place de conférence passe par le paramétrage de meetme.conf et la modification du plan dappel en conséquence, extensions.conf : Modification du fichier meetme.conf : ... conf => 900 conf => 901 conf => 902 ...Rapport Asterisk 18/49
  19. 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 davoir 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, ztdummyOn redémarre Asterisk :$ /etc/init.d/asterisk restartRapport Asterisk 19/49
  20. 20. Fonctionnalités6.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. Lutilisation se fait avec des clients compatibles vidéo: ekiga, Eye­Beam(version payante dXlite), ... Modification du fichier sip.conf : ... videosupport=yes allow=all ... Il faut au moins autoriser les codecs h263 et h263p, dans lexemple 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 na 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 dappel et le groupe dinterception aux comptes SIP : Modification du fichier sip.conf : ... [nom_du_compte] pickupgroup=1 callgroup=1 ...6.8 Renvoi d’appel Le renvoi dappel peut être paramétré dans le plan dappel. On peut également utiliser les fonctionnalités des softphones pour utiliser cette fonction.Rapport Asterisk 20/49
  21. 21. Fonctionnalités6.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 loptimisation 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. 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 lexécute : $ mysql --user=asterisk --password=asteriskcdr asterisk < user-mysql Il faut maintenant paramétrer Asterisk pour quil 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 dAsterisk : ... ; 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 restartRapport Asterisk 22/49
  23. 23. Fonctionnalités6.10 Messagerie unifiée10.1 Principe : Un utilisateur qui dispose dun numéro téléphonique, peut posséder une boîte vocale. Celui­ci peut lactiver en cas dabsence ou elle sactive au bout dun certain temps dindisponibilité. Si lappelant   contact   un   utilisateur   et   que   ce   dernier   ne   répond   pas,   alors   lappelant   entendra   un message dindisponibilité ou doccupation selon le cas. Puis lappelant pourra laisser un message sur le répondeur. De plus lappelé peut recevoir le message de lappelant sur sa messagerie électronique sous la forme dun 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 : Apacheun serveur SMTP : Postfixun serveur IMAP : Courier­imapun programme filtrant les courriers électronique : procmailune interface Web pour consulter les courriels : SquirrelmailLe hostname du serveur de mail est «serv2­debian»  et le nom de domaine est « serv2­debian.asrall.fr ».Voici lemplacement 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  localhost10.3 Installation et configuration des différentes applications nécessaires à  la messagerie Installation dApache :$ apt-get install apache2La configuration par défaut est suffisante, il ny a rien à rajouter.Rapport Asterisk 23/49
  24. 24. Fonctionnalités Installation et configuration de Postfix :Par défaut, le serveur SMTP installé sur une distribution Debian est Exim4. Lorsquon installe Postfix, celui­ci va supprimer Exim4.On installe Postfix par la commande :$ apt-get install postfixDurant linstallation 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 denlever la valeur du champ « mailbox_command » qui était : « procmail ­a "$EXTENSION"  ».MailDir permet dattribuer un répertoire MailDir situé dans chaque home de lutilisateur. 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.cfSi on modifie la configuration de Postfix, il faut redémarrer le service :$ /etc/init.d/postfix restartInstallation et configuration de courier­imap :$ apt-get install courier-imapDans le fichier /etc/default/courier vérifier quon a bien:MAILDIR="Maildir"Rapport Asterisk 24/49
  25. 25. FonctionnalitésInstaller Procmail puis lancer un script : $ apt-get install procmailVoici le script quon 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 lutilisateur  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.logPour exécuter le script : $ ./scriptMailDir    nom_utilisateurCe script crée un répertoire MailDir dans le home de lutilisateur. 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   lutilisateur   (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_utilisateurOn peut tester lenvoie dun 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 quauparavant, avec la configuration dExim4, 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. 26. Fonctionnalités10.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 sappliquent à toutes les boîtes vocales.– la section [zonemessages] qui permet de gérer les zones horaires mais quon 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 dune boîte vocale est :numéro de la boîte vocale => mot de passe, nom de lutilisateur, courriel, email pager, optionsUne des options qui est importante est « attach=yes » qui permet dattacher 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 à lappelant dappuyer 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. 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é à lappelé : 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 lun des différents format audio suivant : format=wav49|gsm|wav Le message laissé à lappelé sera envoyé au format wav sur sa boîte mail.On utilise loption « attach=yes  » pour que le message vocal soit joint au courriel de lappelé.On peut remarquer quon 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 Cest dans ce contexte [default], que lon 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 :– lapplication VoiceMail() qui permet de laisser un message vocal– lapplication 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. 28. FonctionnalitésVoici 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, lappelant entendra un  message dindisponibilité (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 lexploitation des boîtes mails sur le serveur, on installe le webmail Squirrelmail.$ apt-get install squirrelmailLien symbolique de lemplacement de squirrelmail vers lemplacement 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 linterface Web Squirrelmail dans un navigateur en saisissant : http://192.168.10.12/webmail/Rapport Asterisk 28/49
  29. 29. Fonctionnalités6.11 Menu vocal interactif(IVR) Cest 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 dune 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 dautres fonctions. Ainsi ici on redéfinit les appels vers les comptes SIP, vers le test echo. Lexemple ici abordé est très simple. Modification dans le fichier extensions.conf :; Menu vocal interactifexten => 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. 30. Fonctionnalités6.12 Gestion des files d’attente(Centre d’appels) Principe: un utilisateur peut utiliser nimporte quel téléphone mais il doit faire en sorte que le téléphone auquel il se connecte senregistre dans la file dattente (il a ainsi le statut dagent). 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 dattentes et les agents qui leurs sont associés.– extensions.conf : numéro dappel de la file dattente.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 dattente– 700 : numéro pour entrer dans la file dattente 702– 701 : numéro pour sortir de la file dattente 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 dattente (= statut dagent), mais les uns après les autres. Explication : les agents entrent dans la file dattente en composant le 700. Un utilisateur qui veut communiquer avec un agent doit composer le 702. Sil y a plusieurs agents présents dans la file dattente, et quun utilisateur tente de communiquer avec lun dentre eux, alors les téléphones des agents vont sonner un par un jusquà ce que lun dentre eux réponde.Si un agent souhaite quitter son poste, alors il compose le 701.Rapport Asterisk 30/49
  31. 31. Fonctionnalités Modification dans le fichier queue.conf : [general] persistentmembers = yes [hotline­iut] maxlen = 7 ;lorsque la file est vide dagent 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 dattente de lappelant (A revoir) reportholdtime = yes ;information à lappelant de sa place dans la file dattente toute les 15  secondes announce­frequency = 15 ;estimation du temps dattente à 7 secondes près announce­holdtime = yes announce­frequency = 7On peut voir que le contexte [hotline­iut] est le nom de la file dattente.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 lun des téléphones réponde.– Random :  fait sonner les téléphones de façon aléatoire.– ...Rapport Asterisk 31/49
  32. 32. FonctionnalitésGestion par agentsPrincipe :Un   agent   doit   être   capable   dentrer   et   de   sortir   dune   file   dattente   avec   un   mécanisme dauthentification depuis un téléphone quelconque.Comme   un   agent   ne   dispose   pas   dun   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 dagents : il existe lagent décroché et lagent en rappel. On naborde que le premier car on na pas réussi à mettre en place le second.Agent décroché : Une fois que lagent sest enregistré dans la file dattente, sa ligne est décrochée. Si quelquun appelle, un bip informe quun appel arrive. Il peut le prendre en appuyant sur la touche #. Durant nos tests, les communications se font directement. Nous navons pas la possibilité dappuyer 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. 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 dattente.Dans le cas où il ny a quun seul agent (numéro 503) dans la file dattente mais 2 utilisateurs appelant lagent:– Lagent 503 entre dans le système des files dattente en composant le 555 et doit rentrer son mot  de passe. Il a le statut dopérateur de files. Lorsquun appel arrive sur la file 515, un bip va alors  être émis sur la ligne de lagent 503. Ce dernier prend lappel automatiquement. Si lagent 503  est le seul dans la file dattente et quil y a un autre utilisateur qui appelle pendant quil est en  ligne, alors cet utilisateur est mis en attente et lagent sera connecté à ce nouvel utilisateur dès  que le premier utilisateur aura raccroché.Utilisation de la CLI pour gérer la file dattente:Pour connaître les agents présents dans la file dattente hotline­iut :CLI > queue show hotline-iutPour retirer un agent de la file dattente :CLI > queue remove member SIP/romain from hotline-iutRapport Asterisk 33/49
  34. 34. Fonctionnalités6.13 Mise en place dAsterisk­stat Loutil 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 larchive : $ 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 lapplication ­ fsroot: chemin qui contient lapplication ­ host: nom du serveur de base de données ­ port: port de la base de données, 3306 pour une base Mysql ­ user: nom dutilisateur pour laccès à la base de donnée ­ pass: mot de passe de lutilisateur ­ 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 CDRLaccès se fait maintenant sur notre poste via lurl 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   dapplications   déjà   configurées   pour   fonctionner   de   façon   presque automatique dès linstallation. Le serveur Asterisk fonctionne en arrière plan tandis quun serveur apache basé sur une base Mysql offre la possibilité de sy 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 dexploitation– 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 limage cd sur le site officiel (http://www.trixbox.org) puis graver limage sur un cd.Trixbox peut sinstaller soit sur une partition virtuelle (avec Vmware ou Virtualbox), soit sur une Rapport Asterisk 34/49
  35. 35. Fonctionnalitéspartition native en démarrant le serveur sur le lecteur cdrom. (Trixbox ne dispose pas doutil de partitionnement et utilisera la totalité du disque du PC). A lissue de linstallation, lIP 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 lIP donnée:Rapport Asterisk 35/49
  36. 36. FonctionnalitésAsterisk 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
  37. 37. FonctionnalitésVoici 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. 38. Fonctionnalités Flash Operating System(FOP) FOP permet davoir une vue sur lensemble 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 dattente...)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. 39. Présentation de distributions dédiées7)   RÉSENTATION DE DISTRIBUTIONS DÉDIÉES P   Il existe des distributions Linux clé­en­main incluant Asterisk pré­configuré ainsi que tout lenvironnement 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 quune installation sur mesure.7.1 Trixbox Trixbox est une distribution du système dexploitation Gnu/Linux basée sur CentOS, qui   nous   permet   dinstaller   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 cest un projet open­source.Rapport Asterisk 39/49
  40. 40. Présentation de distributions dédiées7.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 dElastix: 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. Dautres sont fournis par le projet mISDN ou dautres. Elastix est la première distribution qui offre un module open­source « call center » avec marquage prédictif. Il est possible dinstaller ce module depuis le chargeur de modules dans linterface dElastix. Le call center peut gérer des programmes dappels entrants et sortants. Ce module a les caractéristiques suivantes: ­ fonction blacklist ­ support des programmes dappels entrants et sortants  ­ association de formulaires pour programme ­  marquage prédictif  ­  rapports avancés Rapport Asterisk 40/49
  41. 41. Présentation de distributions dédiées7.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 dexploitation CentOS. Il contient une version entière de logiciel Asterisk et quelques outils dadministration web. Pour ladministration 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 dutilisateurs 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 dappeler en même temps tout les téléphones dun groupe .– File dattente: lappelant est mis en attente le temps que le correspondant soit libre. ­ Trunk  est un circuit qui définit une configuration de connexion dentré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. 42. Présentation de distributions dédiées7.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. 43. Présentation de distributions dédiées7.5 AstLinux Ast   Linux   est   une   distribution   développée   par   Kristian   Kielhofner.   Il   se   compose   dun système Linux, Asterisk (incluant BriStuff ,mISDn et Zaptel) et doutils 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 sinstaller 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. 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 quelle sinstalle 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 Asteriskcommunication /OpenSIP Distribution  Gentoo Ubuntu CentOS CentOS CentOS dorigine 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 xRapport Asterisk 44/49
  45. 45. Conclusion8)   ONCLUSION C   Cette expérience dans le monde de la VoIP et en particulier dAsterisk sest montrée très enrichissante pour chacun dentre nous. En effet, nous ne connaissions absolument pas ce domaine et navions 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   lampleur   quà   pris   la   VoIP   et   il   nous   semble   difficile   maintenant   dimaginer   quun informaticien ne soit pas un minimum aux faits de cette technologie (au point où nous nous sommes dit que cela pourrait faire lobjet 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 lavions imaginé, cette expérience sera valorisable par la suite car elle correspond à un véritable besoin sur le monde du travail. Il nen 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 dapprentissage et dadaptation  assez long. Pour cette raison, aucun de nous quatre na pu résister à la tentation dinstaller chez lui son propre serveur Asterisk pour continuer à mener ses propres expériences. Paradoxalement, la documentation en français nest pas très fournie sur   internet.   Plus   précisément,   les   cas   de   figure   sont   tellement   nombreux   quil   est   assez difficile de trouver des informations répondant exactement aux besoin que lon peut avoir. Pour cette raison entre autre, nous avons fait le choix de rendre ce rapport disponible à la communauté et lavons remis à ladministrateur du site génération­Linux qui le mettra en ligne prochainement. Pour conclure, Asterisk présente lavantage dêtre open­source. Cet avantage donne la possibilité de pouvoir le modifier à son grès pour ladapter finement à ses besoins. Un grand nombre dapplications elles aussi open­source sont développées autour dAsterisk. Il ne fait pas de doute que cet outil est suffisamment abouti pour être déployé dans des environnements denvergure. Il nen reste pas moins assez difficile à prendre en main car il nest 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. 46. Bibliographie et Webographie9)   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­2212120998Rapport Asterisk 46/49
  47. 47. Annexes10)ANNEXES    10.1 Répartition des tâches La   mise   en   place   dun   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 lavancé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   quil   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. 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 dattente conférences Gestion files dattente Mise en place IVR Transfert dappel Interception dappel 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 dappel 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 dun 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 dappel Gestion files dattente 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 dattente rapport / Bilan M.  conférences Mise en place FOP Installation Trixbox Finalisation rapport Asterisk Maringer
  49. 49. Annexes10.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 linstaller 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 à lentrée  micro et à la sortie audio) il faut aller dans longlet « 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é dutiliser Alsa et non OSS pour une meilleure qualité du son.Rapport Asterisk 49/49

×