Home
Dossier Elève 2013 - Espace Numerique de Travail
Contents
1. nbTentative 4 1 4 Les principales classes de l application D apr s le diagramme de s quence on en d duit les classes suivantes SuiviFichier Appel numero integer nbTentative integer etat integer 1 genererUnAppeldQ GenererFichier D 1 mg 1 SuiviCampagne nbEtat vorte integer nbEtatReussi integer scenario 1 OThread tempsAttente integer nbAppel integer nbAppel integer etape EnvoyerSuiviQ 1 D n etape valeur integer ED In 11 Ce diagramme de classe repr sente les principales classes de l application celles ci sont susceptibles d tre modifi es au cours du projet La classe QThread e La classe QThread est une classe de elle fournit des threads ind pendants de la plateforme Un QThread repr sente un thread de contr le s par dans le programme il partage des donn es avec tous les autres threads dans le processus mais sex cute de mani re ind pendante comme un programme s par sur un syst me d exploitation multit ches Au lieu de d marrer dans main un QThread d bute son ex cution dans run La classe QFile laclasse QFile est une classe de QT qui fournit une interface pour la lecture et l criture de fichiers QFile est un dispositif d entr sortie pour lire et crire des fichiers texte et binaire et des ressources La classe Fichier e a
2. Ligne 1 Pour le nombres d tapes choisis par l utilisateur Ligne 3 On cr une nouvelle tape de type Etape Ligne 4 On ajoute l tape au layout vertical Ligne 5 On met l tape dans le vecteur La classe Etape L tape est cr e partir du constructeur Etape Etape QWidget widgetsc int numEtapes Une tape est mise dans un QgroupBox elle poss de un num ro de 1 10 A l int rieur du comboBox nous cr ons un nouveau comboBox dans lequel nous ins rons les valeur des DTMF de 0 9 plus et gr ce la fonction insertltems monGroupe new QGroupBox widgetsc QString nomEtape nomEtape sprintf Etapes d numEtapes monGroupe setTitle nomEtape ComboBoxDTMF new QcomboBox monGroupe ComboBoxDTMF clear ComboBoxDTMF insertItems 0 OQStringList lt lt QApplication translate Scenariol DTMF 0 O0 QApplication UnicodeUTF8 Ligne 1 Cr ation du nouveau QgroupBox Ligne 2 Cr ation de la variable nomEtape Ligne 3 4 On renomme le groupBox avec le num ro d tapes associ es Ligne 5 Cr ation du nouveau QcomboBox Ligne 6 Initialisation du comboBox Ligne 7 8 9 Insertion des diff rents DTMF dans le comboBox ici seulement le DTMFO est montr DTMF 3t DTMF DTMF 9 DTMF 8 DTMF 7 DTMF 6 DTMF 5 DTMF 4 DTMF 3 DTMF 2 DTMF 1 Dmr Nous avons aussi besoin d une QspinBox pour le temps de pause cette derni
3. 52 4 1 1 Diagramme d tat transition d un essai 54 4 1 2 Les donn es de SHIVI o eere oap CH rn EX UE VR UE RE Ree E X EEEEN RU FR ERR EET VEA 54 4 1 3 Diagramme de s quence pour un appel 55 4 1 4 Les principales classes de l application 55 4 2 tude pr liminaire G n rer un appel 58 4 2 1 Diagramme d tat transition d un appel 60 4 2 2 Solution trouv e pour la g n ration d appel partir du serveur Asterisk 62 4 2 3 Exemple de fichier asus odii rer Eod Rb uen ek REY VER p E HR e REA TrR E EM M RR R E 63 4 3 change de donnees ncondionsteben revo bids ed 66 4 3 1 tude des solutions possibles 66 4 4 Choix concernant le d veloppement 66 4 4 1 Choix li s aux d veloppements de l application 66 SEP S BW IS utilis nina S PT Ut 66 4 4 1 b Biblioth que utilisee roc ei ere Pro nn en ede EE PER ses 66 24 1c Choix ded EDI ss st ERE Ote ex couvent ee tub vui da balia Ex ES 67 4 4 1 d Syst me d exploitation 67 5 Conception pr liminaire Partie Dauvergne Florian E3 69 Sal OQ alite de service de RS dt tea erret pe eri vd C ar 69 5 2 Remise en contexte eee erro rr ER no RR EERMRRKREREERAMEMREEKRN ERES EM ERA ES 69 5 3 Qu est ce que la qualit de service 2 69 5A Parametres O0S rad aea co cm NE ti eee 69 5 5 Les logiciels d an
4. lire conditions de test d finir enregistrement campagne i sauvegarder a rer donn es essai crire donn es essai i enregistrer d Voici le diagramme de s quence auquel nous pouvons nous r f rer pour ce test nous allons donc demander un acc s la base de donn es r cup rer les donn es partir de UIHM puis rentrer les donn es dans la base de donn es Diagramme de classes 10 tabScenario MAX S CENARIO monEtape 1 Nous nous servirons de la classe Configuration Campagne et bdd pour ce test La classe Configuration contient l attribut nomCampagne de type Qstring que nous devons mettre dans la base de donn es mais aussi de la classe bdd afin de pouvoir se servir des requ tes SQL La classe Campagne contient les attributs tempsAppelCampagne et numAppel Tables de la base de donn es id campagne INT 2 nom campagne VARCHAR 16 2 temps appel INT gt numero appel VARCHAR 10 gt 9 id gestion scenario INT id campagne INT id scenario INT id scenario INT 2 num scenario INT 2 nb appels INT gt nb etapes INT id gestion etapes INT gt id_etapes INT gt id_scenario INT id etapes INT num etape INT 2 temps pause INT dtmf CHAR Ici seulement la table campagne servira en effet la chaine de caract res que contient l attribut nomCampagne sera entr e dans le champ nom campagne
5. Dans cette solution les appels de l oxe Alcatel faisait retentire la sonnerie mais ne permettait pas d echanger une conversation dans le sens inverse un message vocal nous indiquait le num ro tait invalide De plus nous tions dans l impossibilites de faire passer une communication entre les poste SPI et numeric de l oxe et le serveur Trixbox 6 4 2 Solution N 2 192 168 0 6 192 168 0 5 Numero 1000 1999 SERVEUR A diss Numero 2000 2999 Soft Phone Soft Phone SERVEUR B Serveur Soft Phone Soft Phone Soft Phone Soft Phone Xlite Windows Xlite Windows Xlite Windows Xlite Windows Vue que la solution pr c dente ne pr sentait des dificult de fonctionnement nous avons d rechercher une solution interm diaire pour pouvoir continuer avancer dans la suite du projet 6 4 2 a Configuration Mise en place du trunk Le trunck SIP doit tre cr comme un utilisateur et cette cr ation doit tre faite partir de l interface de gestion web Dans un premier temps il faut ajouter un utilisateur sur le serveur ce qui modifiera le fichier de configuration sip conf Voici les config pour les 2 serveurs trunck B vers A type friend secret toto context mma host dynamic insecure port invite trunck A vers B type friend secret toto context mma host dynamic insecure port invite Une fois le point de connexion cr sur le serveur A il faut que le serveu
6. 98 Appels 74 Appels 3 4 Les interfaces homme machine En cas de nouvelle campagne l utilisateur appuis sur le bouton Nouvelle campagne et entre premi rement le nom de la campagne Si l utilisateur choisi d acc der aux anciennes campagnes qui ont t enregistr es il le choisi alors sur UIHM il peut aussi les supprimer si il appuis sur le bouton supprimer une campagne Le syst me acc de alors a la base de donn es qui donne alors les campagnes si il y en a qui ont t enregistr es elles sont donc affich es dans l IHM l utilisateur peut maintenant en choisir une La campagne choisis est donc compos e de Nsc narios qui sont eux m me compos s de N tapes Une fois la campagne choisie l envoi des informations li a la campagne est lanc Suivant permet d acc der l IHM suivante Nouvelle campagne configuration D configuration MI 000 000 Creer une nouvelle campagne Creer une nouvelle campagne Nom Charger une ancienne campagne j Charger une ancienne campagne Supprimer une campagne Supprimer une campagne Annuler Annuler Suivant Charger ou supprimer une ancienne campagne configuration 2 configuration m 000 OOO Creer une nouvelle campagne Creer une nouvelle campagne Charger une ancienne campagne F 7 Charger une ancienne campagne Selectionner e Werl adus Supprimer
7. TEST n 2 Proc dure d assignation d crocher le combin composer le num ro du poste 1007 code personnel 0000 puis raccrocher le combin Le t l phone sonne nouveau d croch et raccroch Le t l phone est assign son num ro d appel les appels vers le num ro d fini seront normalement redirig s vers le poste Conforme TEST n 3 Situer la le connecteur qui relie le t l phone 4035T a la carte Digital interface D brancher le connecteur et le rebrancher sur un port Digital Interface Le t l phone doit fonctionner comme auparavant sur le port RJ45 pr c dent Non conforme Le t l phone demande le num ro mais sonne occup signe d un dysfonctionnement dans la proc dure 10 3 Plan de test structurel Changement de connecteur d un poste de type 4035 Modification du branchement d un poste de type 4035 Date du test 07 05 2013 Type du test Structurel Objectifs du test R aliser le changement de connecteur d un poste de type 4035 Conditions du test tat initial Environnement du test L OXE Alactel est sous tension et correctement initialis Le pc de contr le ayant pour ip fixe 192 168 0 50 est directement connect sur le hub concentrateur repr sent par la carte LANX8 2 Seconnecter via le logiciel putty au call server 192 168 0 10 23 User mtcl Password mtcl Le pc a acc s a
8. un de tous les mots de 16 bits de l en t te champ somme de contr le exclu Celle ci est en fait telle que lorsque l on fait la somme des champs de l en t te somme de contr le incluse on obtient un nombre avec tous les bits positionn s 1 Adresse IP source 32 bits Ce champ repr sente l adresse IP de la machine mettrice il permet au destinataire de r pondre Adresse IP destination 32 bits adresse IP du destinataire du message Nous savons que les paquets RTP et RTCP ceux dont nous avons besoin sont encapsul s dans UDP Regardons donc un paquet UDP En t te paquet UDP L en t te du segment UDP est donc tr s simple Port Source 16 bits Port Destination 16 bits Longueur 16 bits Somme de contr le 16 bits Donn es longueur variable Le User Datagram Protocol UDP en francais protocole de datagramme utilisateur est un des principaux protocoles de t l communication utilis s par Internet Le r le de ce protocole est de permettre la transmission de donn es de mani re tr s simple entre deux entit s chacune tant d finie par une adresse IP et un num ro de port Signification des diff rents champs Port Source il sagit du num ro de port correspondant l application mettrice du segment UDP Ce champ repr sente une adresse de r ponse pour le destinataire Ainsi ce champ est optionnel cela signifie que si l on ne pr cise pas le port source les 16 bits de ce champ seront mis z ro
9. Bon Moyen Mauvais o M D 150 ms 150 ms D 400 ms 400 ms D Gigue de phase G lt 4 4 lt G lt 7 7 lt G Perte de donn es P lt 1 1 lt P lt 3 3 X lt P cho E lt 1 1 X lt E lt 5 5 lt E Une qualit d appel moyenne n entrainera pas un arr t de la campagne d appels puisque l on consid re que les deux interlocuteurs sont en mesure de communiquer Cela sera donc titre d information sur la limite probable du nombre maximum d appels possibles avant que la qualit devienne trop mauvaise Une qualit de voix mauvaise entra nera quant elle l arr t de la campagne d appels puisque m me si les appels sont achemin s tant donn que l cho ou encore la perte de donn es sont trop importants la communication n est pas possible 5 5 Les logiciels d analyse de la QoS Afin d analyser la communication de notre pondeuse d appels j ai d abord cherch s il existait des fonctions dans Asterisk puisque nous utilisons trixbox N ayant rien trouv je me suis tourn vers des logiciels d analyse existant j ai ainsi s lectionn et compar ceux qui me semblait les plus int ressants Trois outils gratuits et open source fournissent une pr cieuse aide pour mesurer la qualit d un lien r seau Wireshark a C est l analyseur r seau le plus utilis IL fournit un grand nombre d informations sur la VolP comme la gigue Wireshark est l analyseur r seau le plus populaire du monde Cet outil extr mement puissant fourn
10. h tes entre lesquels se trouvant de part analyser nous voulons et d autre du r seau simuler un lien tester L une en r seau mode serveur l autre en mode client Installation simple Simple d utilisation sur n importe quel Avantages de par son interface syst me Linux ou Windows Beaucoup de documentation Peu de Tous les param tres Simulation documentation sur Sont pris en compte exclusivement son fonctionnement Simple d utilisation Inconv nients Peu de param tres et son utilisation pris en compte Il ne mesure pas l cho Prix Gratuit Gratuit Gratuit Pour r sumer Tous ces logiciels permettent d analyser les diff rents param tres d terminant la qualit de service d une campagne d appels Tous ne permettent pas d analyser tous les param tres et ne sont pas simples d utilisation Wireshark est le plus performant de nos 3 logiciels choisis puisqu il est le plus complet en terme de param tres analys s 5 6 La librairie Pcap N anmoins Wireshark serait trop lourd interfacer avec notre application Il n est donc pas utilisable telle qu elle c est pourquoi on s est int ress s son fonctionnement Wireshark utilise sa propre interface graphique et fonctionne sur la librairie Pcap afin d analyser la communication Je vais donc utiliser cette librairie que je vais int grer mon interface QT afin de coder mon application Je vais n anmoins utiliser W
11. temps pause sS m z X 9 InnoDB latini swedish ci 32 0 Kio 11 table s Somme 1 MyISAM latini swedish ci 305 0 Kio 0 o t Tout cocher Tout d cocher Pourlas lection i3 Version imprimable f Dictionnaire de donn es 1 Cr er une nouvelle table sur la base MMA Nom Nombre de champs 4 Licence publique g n rale fixe les conditions l gales de distribution des logiciels libres du projet GNU 2 4 tude d un Trunck SIP 2 4 1 Qu est ce qu un Trunk SIP SIP est un protocole VoIP Voice over Internet Protocol il est utilis par les fournisseurs de services de t l phonie Internet ITSP fournissent des services de communications unifi es pour les clients quip s d un autocommutateur SIP Dans une autre utilisation qui sera notre cas dans ce projet nous allons en avoir besoin pour faire le lien entre notre serveur Trixbox et L OXE Alcatel pour pouvoir faire transiter des appels SIP de l un vers l autre Adresse IP Dynamic eth1 j D 1 a 172 17 83 170 24 Router 2 A __ eth0 Internet LS 192 168 0 5 24 Switch gt Trunk SIP Adresse IP Static 172 17 83 254 24 Serveur Trixbox Adresse lp static 192 168 0 50 24 Adresse IP Dynamic 172 17 83 26 24 PC de Contr le Windows 7 Liaison Serie CS GD Carte LAX 8 Carte UAI16 1 2 5 Mise en place de la maquette MMA Partie technique Dans la panie Commune nous avons d crit l instal
12. Installation Partie commune Projet MMA Pondeuse d appels 8 190 e 2 Conception pr liminaire Partie Prieur tr D D Quentin E4 IXO OX n The Open Platform for Business Telephony 2 1 Situation dans le projet Dans le projet pondeuse d appels les t ches sont r parties entre 4 personnes E testeur dappel suivre les appels simultan es hdd generer une appel centre_dappel analyste NZ pondeuse d appel Chr tien Cl ment repr sent par l tudiant 2 en bleu est en charge de la g n ration simultan e des appels de la r cup ration des tats de ceux ci et du stockage de ces informations Plateau Mathias rep r par l tudiant 1 en jaune est responsable de la cr ation des Interfaces Homme Machine pour la g n ration des campagnes d appels ainsi que la sauvegarde de ces donn es Dauvergne Florian indiqu par l tudiant 3 en orange s est vu confier les t ches d analyses et de statistiques prendre un appel g n rer un sc nario d appel pondeuse dappel inclgde collaborateur Administrateul g rer les num ros d appel centre d appel Pour ma part je suis l tudiant 4 en ME sur le diagramme Je suis en charge de la partie centre d appels Je dois tre capable de prendre un appel et d en sauvegarder les donn es du sc nario jou par l appelant internet CS 192 168 0 10 GD 192 168 0 11 Zn 4
13. auquel cas le destinataire ne pourra pas r pondre cela n est pas forc ment n cessaire notamment pour des messages unidirectionnels Port Destination Ce champ contient le port correspondant l application de la machine destinataire laquelle on s adresse Longueur Ce champ pr cise la longueur totale du segment en t te comprise or l en t te a une longueur de 4 x 16 bits soient 8 x 8 bits donc le champ longueur est n cessairement sup rieur ou gal 8 octets Somme de contr le Il s agit d une somme de contr le r alis e de telle facon pouvoir contr ler l int grit du segment Plus concr tement voil ce que contient un paquet captur s par Wireshark fonctionnant avec pcap V User Datagram Protocol Src Port 58453 58453 Dst Port 32137 32137 Source port 58453 58453 Destination port 32137 32137 Length 38 b checksum Oxc8f6 validation disabled Il nous faut maintenant d terminer les paquets RTP et RTCP encapsul s dans UDP RTP et RTCP utilisent des ports diff rents RTP utilise un num ro de port pair et RTCP le num ro de port impair qui suit directement Les num ros de port utilis s par RTP et RTCP sont compris entre 1025 et 65535 Les ports RTP et RTCP par d faut sont respectivement 5004 et 5005 Afin de pouvoir filtrer les paquets RTP il nous faut donc d terminer quels ports sont utilis s sur la campagne On a donc chercher savoir quel paquet encapsul s dans UDP contenait cette
14. information Apr s analyse des paquets SIP SDP on s apercoit qu ils contiennent cette information Session Initiation Protocol SIP est un protocole standard ouvert de gestion de sessions souvent utilis dans les t l communications multim dia son image etc 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 dia utilisables par les diff rents participants en encapsulant des messages SDP Session description protocol SIP utilise le port 5060 port attribu par l organisme IANA Dans le cas de paquets SIP caract ristiques d un appel nous extrayons les donn es SDP et en d duisons les num ros de ports qui seront utilis s pour le trafic RTP RTCP Le logiciel sait alors quels paquets il doit intercepter pour avoir acc s aux donn es de la conversation V Message Body v Session Description Protocol Session Description Protocol Version v O P Owner Creator Session Id o root 78819033 78819033 IN IP4 192 168 0 5 Session Name s Asterisk PBX 1 6 0 26 FONCORE r78 P Connection Information c IN IP4 192 168 0 5 P Bandwidth Information b CT 384 P Time Description active time t 00 V Media Description name and address m audio 18932 RTP AVP 0 8 101 Media Type audio Media Port 18932 Media Protocol RTP AVP Media Format ITU T G 711 PEMU Media Format ITU T G 711 PCMA Media Format DynamicRTP Type 101 Comme le montre
15. l d charg s vers le serveur par des utilisateurs anonymes deviennent la propri t de l utilisateur sp cifi dans la directive chown username Ayant d sactiv les acc s anonymes cette option ne nous est pas utile Message d accueil du FTP ftpd_banner serveur FTP projet MMA Il s agit du message d accueil du serveur FTP Bloque les users local a leur propre dossier chroot local userzNO Cette option permet de bloquer les diff rents utilisateurs du FTP leur dossier personnel Les fichiers qui seront envoyer ou modifier sur le serveur seront dans le dossier etc asterisk il ne s agit donc pas du dossier personnel d un utilisateur Liste des utilisateurs autoris s se connecter via le FTP userlist file etc vsftpd user list Ce champ indique le fichier liste qui contient les diff rents noms de compte qui on l autorisation d utiliser le serveur FTP 6 2 1 a Ajout des utilisateurs au syst me Pour pouvoir acc der au FTP comme vue pr c demment les connexions anonymes tant refus es nous aurons besoin d un nom d utilisateur et d un mot de passe Voici la proc dure d ajout d un utilisateur admin au syst me ex cuter en super utilisateur en mode console 1 cmd adduser admin 2 cmd passwd admin Changing password for user admin New UNIX password Retype new UNIX password passwd All authentication tokens updated successfylly 6 2 1 b Ajout des acc s de c
16. la fois un user et un peer secret toto Mot de passe context mma Un context peut tre comparer une zone de travaille seuls les utilisateurs du m me context peuvent communiquer entre eux host dynamic nomDeDomaine AdresselP dynamic Cela signifie que n importe quel hote peut se connecter insecure port invite port invite Type de s curit port invite Ne n cessite pas de demande au pr alable pour l authentification le port de connections est ignor Invite ne n cessite pas d authentification des appels entrants mais le port n est pas ignorer port ignorer le num ro de port o la demande provenait Configuration ajouter dans le fichier sip conf etc asterisk sip conf OXEtoTrixbox type friend secret toto context mma host dynamic insecure port invite Pour v rifier la bonne configuration il faut afficher les points de connexions sur le serveur avec les commandes suivantes Serveur st rasterisk CLI sip show peers Name username Host Dyn Nat ACL Port Status OXEtoTrixbox D 5060 Unmoni L OXE Alcatel pourra partir de maintenant se connecter avec les identifiants OXEtoTrixbox et le password toto 2 Etape 2 Redirection des appels Le serveur doit pouvoir rediriger les appels vers l OXE Alcatel qui dispose d un plan de num rotation interne tel que tous les num ros de poste soit compris entre 2000 et 2999 Pour cela il faut modifier le fichier extentions conf afin de d
17. narios 7 4 2 Param trage d un sc nario Pour un sc nario nous r cup rons la valeur du spinBox pour conna tre le nombre d tapes saisis par l utilisateur associ es au sc nario Pour le sc nario 1 int Campagne recupererSpinl int nbEtapesSc1 nbEtapesSci ui gt spinBoxScenariol gt text tolnt return nbEtapesScl Ligne 1 D finition de la fonction Ligne 2 3 4 5 6 on r cup re le nombre tapes et on convertit en entier gr ce a la fonction tolnt on retourne le nombre d tapes Une fois que l utilisateur a appuy sur le bouton de sc nario 1 on cr un nouveau sc nario en cr ant une instance de la classe Scenario que l on place dans le tableau de sc nario Il n est possible de cr er autre sc nario que si le sc nario pr c dent est valid Voici le code correspondant pour le sc nario 1 void Campagne on pushButtonScenariol clicked int nbEtapessScl nbEtapesScl recupererSpinl Scenario scl new Scenario nbEtapesScl 1 tabScenario 0 2scl ui gt checkBoxScenario2 gt setEnabled true Ligne 3 4 On r cup re le nombre d tapes Ligne 5 On cr e un nouveau sc nario sc Ligne 6 On ajoute ce sc nario dans la premi re case du tableau Ligne 7 On rend cochable la checkboxscenario2 permettant d ajouter un second sc nario Le code est similaire pour les sc narios suivants Les donn es de la campagne tant maintenant d finies nous
18. re automatique les communications entre plusieurs postes et qui sert tablir celles avec l ext rieur IPBX Fonctionne sur le principe du PABX utilise en plus le protocole internet IP en interne sur le r seau local LAN ou le r seau tendu WAN de l entreprise Partie commune Projet MMA Pondeuse d appels 7 190 1 3 Mise en place de la maquette MMA Pour effectuer nos diff rents testent Monsieur L responsable communication au MMA est venue installer une maquette du centre d appel actuellement en place dans les diff rents centres et bureaux 1 3 1 Mat riels notre disposition Pour r aliser ceci l entreprise nous a pr t diff rents p riph riques Quatre t l phones num riques de marque Alcatel Lucent et de mod le UA 4035 Un t l phone num rique de marque Alcatel Lucent et de mod le 4039 Un t l phone IP de marque Alcatel Lucent IPTouch 4038 Un t l phone de type analogique Un PABX Alcatel Lucent Omni PCX Enterprise R8 0 Unecarte CS Unecarte GD 2 1 3 2 Pr sentation de la central d appels La centrale d appels pr t e par les MMA est compos e d un m dia gateway 9 positions qui peut accueillir 9 cartes diff rentes La carte GD gateway driver contr le toutes les autres cartes par exemple la CS Call Server Le syst me d exploitation pr sent sur la CS est bas sur Mandriva Linux Avec une sur couche propri taire Alcatel Lucent CF Annexe 1
19. sa communaut est donc videmment tr s importante Nous avions d j une connaissance de ce langage Ce langage r pond toute les contraintes qui nous sont donn es et il propose des solutions adapt es pour r aliser cette application de mani re convenable 4 4 1 b Biblioth que utilis e QT est un framework oriente objet et d veloppe en C Il offre des composants d interface graphique de gestion des fils d ex cution d acc s de donn es et bien d autres choses Nous avions d j utilis des biblioth ques QT au cours de notre formation ce qui facilitait l acc s et l apprentissage Le syst me de signaux et slots est donc d j connu QT permet une portabilit par simple recompilation du code source Il est galement utilis par un grand nombre de personnes sa communaut est donc active et importante La documentation tant importante et compl te elle nous permet de faire face la plupart des probl mes que nous pourrions rencontrer Notre choix s est donc dirig tr s rapidement vers QT 4 4 1 c Choix de l EDI Afin de d velopper l application QtCreator est utilis il est multiplateforme ce qui facilite le transfert en cas de changement de syst me d exploitation Nous aurions pu galement utiliser Qdevelop ou encore des EDI possibles comme Eclipse ou Visual Studio en y ajoutant un pluging QT QtCreator est vraiment simple d utilisation et est plus l ger qu un EDI comme Eclipse ou Visual La prise en main es
20. taill e Partie Plateau Mathias E1 centre_dappel testeur dappel analyste Nous nous situons ici comme testeur d appel et BD 7 1 Configuration Qt MySQL Pour rappel l IHM est programm e avec Qt elle doit pouvoir acc der aux informations de la base de donn es MySql locale ainsi que les modifier Afin de communiquer avec la base de donn es sous linux debian wheezy le paquet libqt4 sql mysql a du tre install via le gestionnaire de paquets Synaptic Sous QT il faut aussi rajouter dans le pro la ligne QT sql afin d assurer la bonne liaison entre la base de donn es et l application Fr Adresse IP Dynamic eth1 V 1 i 1 I s R 172 17 83 170 724 eth 192 168 0 5 24 Switch p 2 Adresse Static d 172 17 81 254 24 Serveur Trixbox Adresse Ip static Adresse IP Dynamic 192 1568 0 50 2z4 17Zz 17 81 26 24 7 2 Principe d acc s la base de donn es avec Qt4 Les principales fonctions de l interface Homme Machine de notre application sont de permettre l utilisateur de param trer une nouvelle campagne d en charger modifier une ancienne ou encore d en supprimer une Voici Les table de base de donn es que nous allons nous servir campagne B scenario v etaps v id campagne INT id scenario INT E id etapes INT nom campagne VARCHAR 16 n 1 num scenario INT i i num_etape INT temps_appel INT k Lu gestionScenario Y
21. QtCreator La base de donn es sera mettre en place aussi cela s effectuera sur le serveur Trixbox id gestion etapes INT id etapes INT id scenario INT id etapes INT num etape INT temps pause INT 2 dtmf CHAR Une partie qui va prendre du temps sera la phase de mise en commun car il faudra que tout notre travail s articule pour finaliser le projet Une fois ce travail achev il faudra r diger le manuel d utilisation 3 9 Diagramme de gantt ES Low pe I m m D We n O Wmdekhe Dr Dre ze u e wv wv e ovt vz uo vs vs vi vu uo T vo T vo T va v2 wa va vs s Lecture du sujet 07 an 2013 07 an 2013 Premier Rendez vous au MMA du jeu 104an 2013 10 an 2013 Etudes et r alisation de plusieur l4jan2013 28 Jan 2013 a Recherches sur la t l phonie IP 174an 2013 17 an 2013 Installation et configuration du 214an 2013 21 an 2013 Architechture Reseaux WJan2013 24 an 2013 Diagramme de s quence 24jan2013 24 an 2013 Table base de donn es 2Jan 2013 31 an 2013 V Diagramme de Classes 31jan2013 31 an 2013 Pr paration diaporama revue 1 O4Feb 2013 04 Feb 2013 Codage IHM 07 Feb 2013 21Mar 2013 WU R daction du dossier 17Jan 2013 20 un 2013 M m OP Manuel d utilisation 18Mar 2013 20 un 2013 go mes mnn 777 Base de donn e op rationnelle 11 Feb 2013 21 Feb 2013 H 3 10 Conclusion Cette premi re partie
22. Quand on parle de capturer le trafic cela veut dire enregistrer tout ce que remonte la carte r seau Etudier le comportement d un r seau en analysant 750 000 trames devient tr s compliqu s et fastidieux oin Pour ce faire suivant les fonctions PCAP nous filtrerons suivant certains protocoles par exemple SIP RTP et RTCP Nous capturerons les informations pr sentes dans les en t tes de ces paquets Nous devons dans l analyse de la communication calculer la gigue afin de nous assurer que celle ci n est pas trop lev e Cette op ration peut tre r alis s en analysant l en t te d un paquet RTP Ici l en t te d un paquet RTP a a ipaa ER Lee Timestamp Identifiant de la source de synchronisation SSRC Identifiants de la source de contribution CSRC Le champ timestamp 32 bits refl tent l instant o le premier octet du paquet RTP a t chantillonn Il permet le calcul de la gigue la destination 5 7 Affichage de la QoS Une fois les diff rents param tres de la qualit de service analys s et enregistr s l utilisateur pourra afficher celui qu il souhaite C est dire qu il aura le choix du param tre qu il souhaite voir Une fois qu il aura choisi celui ci il aura les donn es num riques de ce param tre par exemple le temps en millisecondes du d lai d acheminement Puis un graphique de la variation de ce d lai au cours du temps Affichage de la QoS Quels param tres souhaitez vo
23. SIP H323 MGCP Complexit Faible Simple lev e n cessite lev e pour la par sa nature ex un compilateur t l phonie Http moderne Protocoles TCP ou UDP TCP ou UDP TCP ou UDP transports Avantages Compatible avec Concu pour les plusieurs Beaucoup utilis op rateurs technologies voulant faire du RTC IP RTC Inconv nients S curit Difficult s avec Service les firewall suppl mentaire Manque de de t l phonie comptabilit inexistant Exemple de Yahoo MSN Livecom Les entreprises solutions utilisant Messenger le protocole Nous avons choisi le protocole SIP pour sa complexit moindre Simple par sa nature textuelle l exemple de Http ainsi que ses principaux avantages mais aussi par contrainte de mat riel nous ne poss dons pas la carte requise sur notre OMNI PCX pour utiliser le protocole H323 L architecture en couches de SIP telle que la pr sente le mod le OSI fait apparaitre une palette de nombreux protocoles Application SIP TCP IP Data link Physical RSVP est un protocole utilis pour r server les ressources r seaux sur IP avec une excellente qualit de service QoS R T P Real time Transport Protocol pour transporter des informations en temps r el avec une excellente qualit de services R T C P Real Time streaming Control Protocol pour assurer le contr le de flux des donn es multim dia S A P Session Announcement Protocol pour pr ciser si les sessions
24. T2 qui d terminent le comportement du client en fin de bail et ventuellement d autres param tres adresse IP de la passerelle par d faut adresses IP des serveurs DNS adresses IP des serveurs NBNS WINS Les serveurs DHCP doivent tre pourvus d une adresse IP statique DHCP DISCOVER port 67 DHCP DISCOVER port 67 DHCP OFFER port 68 DHCP OFFER port 68 Temps DHCP REQUEST DHCP REQUEST DHCP ACK 2 3 1 c Mise en place sur le serveur Pour ce faire nous devons acc der au fichier dhcpd conf qui est situ dans etc dhcpd conf avec la commande vi dhcpd conf subnet 192 168 0 0 netmask 255 255 255 0 option routers 192 168 0 5 option subnet mask 255 255 255 0 option nis domain asterisk local option domain name asterisk local option domain name servers 192 168 0 5 option time offset 18000 Eastern Standard Time option ntp servers 192 168 0 5 option tftp server name 192 168 0 5 range dynamic bootp 192 168 0 128 192 168 0 254 default lease time 43200 max lease time 86400 Pour configurer le serveur DHCP il faut d finir la plage d adresse IP dynamique Dans notre cas 192 168 0 128 192 168 0 254 Dans un second temps pour plus de facilit d administration du syst me une IP doit tre rattach e une adresse MAC comme ce ci host IPPhone hardware ethernet 00 80 9F 6C 20 3A fixed address 192 168 0 20 2 3 2 Administration web Cr ation de comptes SIP Pour fai
25. d placer les tapes sur l ihm monGroupe gt setGeometry deplacementx deplacementy 310 150 Ligne 1 2 3 D claration des constantes Ligne 4 5 D claration de la fonction deplacer Ligne 7 D placement du groupe if numEtapes lt 6 deplacer monGroupe DEPLACEMENT X numEtapes DEPLACEMENT Y else deplacer monGroupe DEPLACEMENT X1 numEtapes 6 DEPLACEMENT Y Ligne 1 2 3 4 On d place les 5 premieres tapes en Y Ligne 5 6 7 8 Si il y a plus que 5 tapes on les d placent sur l axe X connect ComboBoxDTMF SIGNAL currentIndexChanged OString this SLOT onCurrentlI ndexChanged OString connect QSpinBoxPause SIGNAL valueChanged int this SLOT onValueChanged int void Etape onCurrentIndexChanged QString dtmfChaine dtmf dtmfChaine at dtmfChaine length 1 void Etape onValueChanged int leTempsDePause tempsPause leTempsDePause Ligne 1 2 5 8 On r cup re la valeur du comboBox Ligne 2 4 9 12 On r cup re la valeur du SpinBox Lors de l affichage des anciennes campagnes les comboBoxCampagne et comboBoxSupprimer campagne sont remplis gr ce aux informations de la base de donn es configuration huc im m ue Su configuration BEIE Creer une nouvelle campagne Creer une nouvelle campagne Charger une ancienne campagne Char
26. de la campagne Scenario 1 H Nombre d appel s Rh B Valider Etapes 1 Choix DTMF 0 d Temps de pause secondes o Etapes 2 Choix DTMF 0 A Temps de pause secondes e Etapes 3 Choix DTMF 0 Temps de pause secondes ob 3 5 Les diff rents diagrammes Nous nous situons sur le cas d utilisation effectuer une campagne centre_dappel analyste Voici le diagramme de s quence du cas d utilisation effectuer une campagne d appels Lorsque l utilisateur entrer toutes les informations n cessaires dans l IHM nombre de sc narios diff rentes tapes la campagne peut tre envoy e r testeur dappel r1 IHM param trer la campagne H suivre les appels analyser la communication L utilisateur a la possibilit de sauvegarder une campagne ou de lire une ancienne campagne Elle est compos e des param tres des appels effectu s simultan ment et des conditions de fin de campagne ainsi que des conditions de test Parmi les conditions de tests nous trouvons le temps de l essai envisag les l ments de qualit de service qui seront d finis par l analyste et enfin les num ros d appels Les conditions de fin de campagne seront d finies par la pondeuse d appels Nous avons donc 2 acteurs qui sont testeur appel Le testeur est charg de r aliser des tests e Base de donn es La base de donn es contient toutes les informations n cessaires au bon fo
27. es ajout d un champ de Ok pence 2 fen tre d avertissement que le table de la base de donn es pone de PEPEE Tonm gst d j utilis pour une autre campagne TEST n 4 gt Le champ est reconnu Interaction avec la base de A donn es ajout d un champ p pan is DER MCN pr vient l utilisateur gr ce une similaire gr ce aux majuscules et fencire diavenissemiedf Ok minuscules celui qui se trouve boa MAR pn uU ouo d j dans la base exemple pem i ien d inet RD eue h d j utilis pour une autre l campagne Nous pouvons en conclure que test Test TEST n 5 gt Lors de l appui sur le Ajout d un champ vide pour le bomtot Appelen le Dropranme e d demande l utilisateur de Ok pper rentrer un num ro d appels valide dans la fen tre TEST n 6 gt L utilisateur peut D limitation du temps d appel aueren SH Ok temps d appel entre 1 et 1800s Niveau du test es Pondeuse cb N appels simultan es Nous nous situons lci Centre d appel tester Uniquement du c t de la pondeuse d appels Cas d utilisation enregistrer une campagne centre_dappel testeur_dappel 8 analyste Pour ce test nous nous situons dans le cas d utilisation enregistrer une campagne la base de donn es en est donc un acteur principal car les donn es seront stock es l int rieur Proc dure d enregistrement x r3 testeur dappel demande de sauvegarde dlessai
28. la cr ation jusqu la gestion et de stocker ces donn es dans une base MYSQL 6 3 1 a Installation La version de phpMyAdmin pr sente dans les d p ts ne sont pas jour nous avons du proc der une installation via un paquet rpm La proc dure est la suivante dans un terminal en mode super utilisateur wget http pkgs repoforge org phpmyadmin phpmyadmin 2 11 9 6 1 el5 rf noarch rpm rpm i phpmyadmin 2 11 9 6 1 el5 rf noarch rpm Une fois ceci fait phpMyAdmin est install mais n est pas forcement accessible il suffit pour cela d finir les autorisations sur son dossier chmod R 785 usr share phpmyadmin chmod 755 donne au propri taire tous les droits aux MEMOIRE et aux autres les droits de lecture et d acc s C est un droit utilis traditionnellement sur les r pertoires Voici un tableau qui reprend les diff rents droits Position Valeur Les droits Commentaire binaire octale 6 3 1 b Connexion la base MYSQL Pour que phpMyAdmin puisse acc der serveur MYSQL il faut lui en donn e les droits Proc dure Ouvrir en dition le fichier config inc php situer dans etc phpmyadmin vim etc phpmyadmin config inc php Original Scfe Servers Si auth type cookie Modifi e Scfe Servers Si auth type http La diff rence entre les deux est principalement dans la m thode d authenfication Dans la m thode originale elle se fait l aide d un stockage dans un cook
29. la requ te Ligne 6 Ex cution de la requ te Ligne 7 Association des champs aSuprimer et nomCampagneASuprimer Ligne 8 Fin de la query La suppression d une campagne entraine la suppression des sc narios qui entraine la suppression des tapes L ordre de la suppression est invers il faut d abord supprimer les tapes puis les sc narios puis les campagnes 7 5 Conclusion Par rapport aux diff rentes fonctionnalit s dont j avais la charge presque toutes sont fonctionnelles A savoir La cr ation d une campagne L enregistrement d une campagne dans la base de donn es La suppression d une campagne Lors de la r daction de ce dossier quelques parties du projet n ont pas encore t trait es notamment la partie qui permet de charger les tapes d une ancienne campagne partir de la base de donn es En effet le temps pr visionnel n a pas t respect plusieurs IHM de test ont t r alis s puis abandonn s pour enfin avoir un r sultat final valide par rapport au demandeur La mise en place des tapes g n r es dynamiquement via les donn es de la campagne a pris plus de temps que pr vu Plusieurs bases de donn es ont aussi t cr es puis abandonn es avant d arriver aux tables de la base de donn es actuelle Le travail de codage de longue haleine a donc t tr s int ressant et m a permis de me perfectionner dans le langage C La biblioth que QT m a simplifi le travail en
30. les entiers que contienent les attribut tempsAppelCampagne et numAppel seront entr s dans les champs temps appel et numero appel de la table campagne 12 Fiche de test Chr tien Cl ment Plan de test Utilisation du protocole FTP et g n ration de fichier Test fonctionnel g n rer un appel sur la trixbox Utilisation du protocole FTP et g n ration de fichier Date du test 18 04 13 Type du test Fonctionnel Objectifs du test 1 V rifier et valider le fonctionnement de la m thode d envoi du fichier qui se base sur le protocole FTP Classe ClientFTP M thode envoyerFichier QString chemin 2 Test de la g n ration de fichier Classe Appel M thode genererFichier Conditions du test tat initial Environnement du test L application est pr sente sur le pc client Windows ou Linux Le test du r sultat des m thodes se fera Le pc client est reli par un c ble Ethernet l aide de la classe QtestLib de QT sur le r seau de la trixbox L envoi du fichier pourra tre visible sur la les param tres du protocole FTP sont trixbox configurer dans le registre du syst me L application utilisera une interface d exploitation gr ce l application pr vue cet graphique pour lancer les m thodes de effet l application Proc dures du test Op rations R sultats attendus TEST n 1 V rifier que le r pertoire d ne gt Le fichier est pr se
31. multim dia ouvertes le sont en multicast S D P Session Description Protocol est un protocole de description des sessions multim dia APPLICATIONS MULTIMEDIA 3 3 Mon r le au sein du projet Le r le du testeur d appels est d effectuer une campagne d appels compos e de un ou plusieurs sc narios ces sc narios eux m mes compos s d tapes ces tapes tant les pauses et les diff rents DTMF note DTFM dual tone multi frequency de 0 9 ainsi que les caract res et et raccrocher Le DTMF est un syst me permettant la transmission de la num rotation dans un r seau commutation de circuit classique L appel est consid r lorsque le t l phone est d croch toutefois il n est pas consid r comme une tape L mm Pondeuse MOX N appels simultan es tudiant 1 Centre d appel tester centre_dappel testeur_dappel analyste Une campagne est unique et est compos e de un ou de plusieurs sc narios pour une campagne nous avons un num ro d appel Exemple 6000 et le temps de la campagne Un sc nario est constitu de plusieurs tapes qui sont des couples temps de pause DTMF et ce finit par raccrocher Sc nario3 Sc nario2 Sc nariol Appel Appel Pause 2s Pause 3s DTMF4 DTMF1 Pause 3s Pause 10s DTMF7 DIMF Pause 1s Pause 4s DTMF amp DTMF2 Pause 1s Pause 1s Raccrocher Raccrocher Pause 2s DTMF3 Pause 1s Raccrocher
32. nb appels INT Lu gestionEtape Y temps_pause INT numero appel VARCHAR 10 M id gestion scenario INT h nb_etapes INT id gestion etapes INT dtmf CHAR gt Ww 5id campagne INT E E X id etapes INT La id scenario INT VL oid scenario INT Il est donc n cessaire d acc der la base de donn es pour la consulter ou modifier du contenu des tables 7 2 1 La connexion la base de donn es Le framework Qt offre propose nativement des classes permettant l acc s et la manipulation du contenu des tables de base de donn es QSqlDriver est une classe abstraite permettant acc der une base de donn es SQL IL suffit de sp cifier le driver n cessaire Pour notre application nous utiliserons QMYSQL Etant sous LINUX il n est pas n cessaire de recompiler le SDK de QT car il int gre directement le drivers pour MYSQL alors qu il aurait fallut le faire si nous avions d velopp sous WINDOWS QSqlDriver ne peut tre utilis directement nous avons besoin de QsqlDatabase QSqlDatabase est la classe qui repr sente la connexion la base de donn es Cette classe fournit une interface pour acc der une base de donn es via une connexion Une instance de QsqlDatabase repr sentant la connexion permet d acc der la base de donn es via l un des pilotes de base de donn es pris en charge qui sont issus de QsqlDriver Voici un exemple de code permettant de se connecter la base de donn es D claration de la
33. nombre d appels d finis est effectu on sauvegarde toutes les donn es li es aux appels et on stop les threads S il ya saturation du centre d appel avant la fin pr vue de la campagne la totalit de l application est stopp e et on effectue la sauvegarde des informations ici chec de la campagne 4 1 2 Les donn es de suivi Apr s la fin de la campagne ou jusqu saturation du centre d appel les donn es de l essai doivent tre enregistr Voici les diff rentes donn es de suivi le nombre d appels simultan s effectuer pendant la campagne le num ro appel e la date de d but de l essai date et heure la date de fin de l essai date et heure le nombre d appels avort le nombre d appels r ussi le nombre de tentatives de chaque appel Avant de passer un appel on doit v rifier que la ligne est disponible on effectue plusieurs tentatives si la ligne n est pas disponible il nous faut donc savoir combien de tentatives a t il fallu avant que l appel ne soit mit 4 1 3 Diagramme de s quence pour un appel r Appel ri Fichier r2 Asterisk T tant que la campagne n est pas fini oo genererFichier Q fichierAppel G n ration d un appel tat
34. par Asterisk et par cons quent son ex cution Pour cela on doit utiliser la commande chown asterisk asterisk var spool asterisk outgoing nomDuFichier call Dans le cadre de l application ces commandes seront remplac es par des fonctions de la classe QFile classe qui permet de manipuler les fichiers la copie bool copy const QString amp newName le changement de permission bool setPermissions Permissions permissions En cas d erreur les erreurs li es aux appels pass s automatiquement sont stock es dans le fichier full dans le r pertoire var log asterisk Apr s l ex cution de l appel le fichier est supprim automatiquement du r pertoire Voici un exemple du contenu du fichier full comme on peut le voir le syst me n arrive pas ouvrir le fichier appel2 call et n arrive donc pas l ex cuter 13 46 29 13 46 29 13 46 30 13 46 30 13 46 31 13 46 31 13 46 32 13 46 32 13 46 33 13 46 33 Jan 3l Jan 3l Jan 3l Jan 3l Jan 31 Jan 3l Jan 3l Jan 3l Jan 3l Jan 3l LOU LJ RAE XV a VIVA LAS TT LET TN MAS Lie D HIS WARNINGI2687 WARNING 2687 WARNING 2687 WARNING 2687 WARNINGI2687 WARNING 2687 WARNING 2687 WARNING 2687 WARNINGI2687 WARNING 2687 Fs fs Fi k Fi HE Fi BH Fi fe Fi B Fi BH Fi EH Fi fe Fi fe LL ER bx spool DX Spoo DX Spoo DX Spoo bx spool DX Spoo DX Spoo DX Spoo bx spoo
35. re tt aa date 162 10 3 Plan de test SUUCBHT OL o ioisicmeco vena her roia EEEE veine 164 11 Fiche de test Plateau Mathias 166 12 Fiche de test Chr tien CLerTie nte sese eS ERE PETI sente Rite ee 173 12 121 Test RS Mo Re ERREUR REA KE e EXP E E EE a e Ba 178 121 2 TESEN PE T 179 13 Fiche de test Dauvergne Florian creer nnne 180 14 Manuel d utilisation OptionServeur ss 181 14 1 Principe de fonctionnement sise 181 14 2 Presentation ors op esc EN PerRPVEE ER Moo UR UE I UH Bd bU DUREE CO LAPURN E REDI 181 14 3 Modifications d une ou plusieurs donn es eene 181 15 Manuel d utilisation de l interface homme machine eeueeueus 182 15 1 Nouvelle campagne sis eere rhe terr nor eh au haa Re eher pa Ern regal hona 182 Partie commune Projet MMA Pondeuse d appels 4 190 Partie commune Projet MMA Pondeuse d appels 5 190 1 Analyse technique Dans le cadre de notre projet qui a pour but de r aliser une pondeuse d appels nous devons nous renseigner sur les principes de la t l phonie classique et sur IP 1 1 Le principe de la VOIP Voice Over IP La voix sur IP ou VoIP est une technique qui permet de communiquer par la voix ou via des flux multim dias audio et ou vid o sur des r seaux compatibles IP qu il s agisse de r seaux priv s ou d Internet filaire c
36. res Ligne 11 12 Traitement des erreurs Ligne 13 Fin de la query 7 4 3 Supprimer une campagne Si l utilisateur veut supprimer une campagne de la base de donn es il Le fera partir de UIHM de configuration apr s un appui sur le bouton Supprimer une campagne configuration JO X 00O Creer une nouvelle campagne Charger une ancienne campagne Supprimer une campagne gt Selectionner supprimer Annuler Voici le diagramme de s quence x Pour toute les donn es d une ancienne campagne r testeur dappel demande de lecture demand lecture d une ancienne campagne Prbposition des anciennes campagne k t Choix testeur demande d acces demande d informations f 1 H 1 1 1 1 i i 1 1 1 1 1 1 1 i 1 1 1 1 ui i 1 1 D H i p 1 H 1 1 1 D D i i 1 1 1 1 i i 1 1 1 1 i i i 1 H 1 1 1 1 i i 1 1 1 i 1 1 1 n 1 4 primer une information ENDISSE IRE void Configuration on pushButtonSupprimer clicked QSqlQuery query query prepare DELETE FROM campagne WHERE campagne nom campagne nomCampagneASupprimer query bindValue aSupprimer nomCampagneASupprimer query exec query finish fin de la requ te Ligne 1 D finition de la fonction Ligne 2 D but de la fonction Ligne 3 Cr ation de la query de type QsqlQuery Ligne 4 5 Compilation de
37. ristiques de l infrastructure Le d lai de propagation est la dur e de transmission en ligne des donn es num ris es Cette dur e est normalement tr s faible par rapport aux autres composantes du d lai de transit de l ordre de quelques millisecondes Le d lai de transport est la dur e pass e traverser les routeurs les commutateurs et les autres composants du r seau et de l infrastructure de t l phonie IP L ordre de grandeur est de plusieurs dizaines de millisecondes voir centaines de millisecondes Le d lai des buffers de gigue est le retard introduit la r ception en vue de lisser la variation de temps de transit et donc de r duire la gigue de phase L ordre de grandeur est de 50 ms Les l ments d infrastructure notamment les routeurs peuvent galement mettre en ceuvre des m moires tampons de gigue La gigue de phase La variation de temps de transit ou gigue de phase est la cons quence du fait que tous les paquets contenant des chantillons de voix ne vont pas traverser le r seau la m me vitesse Cela cr e une d formation de la voix ou un hachage La gigue de phase est ind pendante du d lai de transit Le d lai peut tre court et la gigue importante ou inversement La gigue est une cons quence de congestions passag res sur le r seau ce dernier ne pouvant plus transporter les donn es de mani re constante dans le temps La valeur de la gigue va de quelques ms quelques dizaines de mil
38. une file d attente qui fera suite sur un groupe de traitement Comment cr er une nouvelle file Dans ce but nous devons aller dans les r glages du PBX puis dans Queues Add Queue Dans cette premi re tape diff rents champs sont renseigner Add Queue Le num ro de la file Queue Number e Le nom de la file usura Un mot de passe pas Queue Password obligatoire CID Name Prefix Laliste des agents assign s au groupe de Wait Time Prefix No traitement Alert Info Une destination finale Static Agents au cas o le groupe de traitement serait indisponible Extension Quick Pick pick extension le Queue Options Agent Announcement Join Announcement Music on Hold Class Ringing Instead of MoH Max Wait Time Max Callers Join Empty Leave When Empty Ring Strategy Agent Timeout Retry Wrap Up Time Call Recording Event When Called Member Status Skip Busy Agents Queue Weight Autofill Agent Regex Filter Caal recording enregistrement de la conversation lt gt None None inherit Unlimited o Yes lt gt No lt ringall 15 seconds 5 seconds O seconds z o o gjo lt Skip Busy Agents vite les agents occup s Agent Announcement C est le message qui sera jou lorsque l agent prend la communication Jo
39. une nouvelle campagne Nom Charger une ancienne campagne Supprimer une campagne Annuler Suivant Pour toutes les parties de codes dans le dossier les commentaires ont t supprim pour une question de lisibilit ils sont n anmoins pr sents dans le v ritable code La creation d une ihm avec QT creator genere la classe avec un attribut ui permettant d acc der aux diff rent l ments plac via qtCreator Voici le code correspondant au choix de cr ation d une nouvelle campagne IL est similaire pour les autres v nements sauf qu il ne cache pas les m mes fonctionnalit s void Configuration on pushButtonCreerCampagne clicked ui gt lineEditNomCampagne gt show ui gt labelNomCampagne gt show ui pushButtonSuivantConf show ui gt comboBoxCampagne gt hide ui comboBoxSupprimerCampagne hide ui gt pushButtonSupprimer gt hide Ligne 1 D finition du slot Ligne 3 4 5 On affiche le lineEdit le label et le button Ligne 6 7 8 On cache les comboBox et le buttonSupprimer La m thode show permet d afficher sur l IHM tandis que la m thode hide permet de cacher sur l IHM Voici la d claration dans configuration h de ce slot private slots void on pushButtonCreerCampagne clicked qt g n re un fichier particulier il y a la connexion entre le signal click et le slot Le signal clicked est mis lorsque l utilisateur appui
40. 013 Type du test Fonctionnel Objectifs du test 1 R aliser l installation d un poste de type 4035 2 Cr ation et assignation d un usager 3 Modification d un branchement t l phonique Conditions du test tat initial Environnement du test L OXE Alactel est sous tension et correctement initialis Le pc de contr le ayant pour ip fixe 192 168 0 50 est directement connect sur le hub concentrateur repr sent par la carte LANX8 2 Se connecter via le logiciel putty au call server 192 168 0 10 23 User mtcl Password mtcl Le pc a acc s au menue de gestion via la commande mgr Le t l phone doit tre de type 4035T et doit tre connecter a un port num rique non configur Proc dures du test Op rations R sultats attendus R sultats obtenues TEST n 1 Se d placer dans le menu Usager gt gt Cr ation Renseigner les champs suivants No d annuaire 1007 Nom d annuaire TEST Pr nom REVUE Type de poste 4035T Code secret 0000 No poste associ 1007 poste ACD poste Pro ACD Tous les autres param tres doivent rester au r glages par d fauts Valider avec CTRL V puis une seconde fois CTRL V Le poste doit exister dans la liste Pour v rifier il suffit de se d placer dans consultation modification S lectionner toutes les Conforme instances et valider avec CTRL V Le poste doit tre pr senter dans la liste
41. 3 w 9 S I8 1 o Ii B 2 e S 2 E CL run terminate L 8 2 Diagramme de Classes scenarioAppel settings 0 1 fichier Pondeuse 0 1 ichierAppel 0 1 ichierScenario Voici les modifications qui ont t apport es au diagramme de classe initialement pr vu La classe Appel e Attributs numeroAppel Num ro appeler numero num ro de l appel tempsAttenteReponse temps d attente avant que l appel ne soit consid r comme avort tempsTentative temps d attente avant la prochaine tentative de l appel nbTentative nombre de tentatives idAppelant nom qui s affichera sur le t l phone Y Y ON ON trixbox instance de la classe ClientFTP qui fait transit les fichier call vers la TRIXBOX scenarioAppel iSc nario associ l appel v gt fichierAppel fichier contenant les param tre de l appel e M thodes genererFichierAppel g n re le fichier permettant l appel dans le r pertoire du projet temporaire EnvoyerFichier permets l envoi du fichier d appel ou de sc nario sur la trixbox via FTP gt run la classe appel h ritant de QThread pour lancer le thread on utilise cette m thode gt SuprFichierAppel supprime les fichiers d appel sur la trixbox correspondant aux appels qui n ont pas abouti gt genererUnAppel g n re un appel La classe Scenario e Attributs nom nom du sc nario
42. Cable Ethernet S PC de contr le mL E VS T PL Telephone num rique NON LI Alcatel 4039 INNIN Trixbox Faisceau IP trunk y Sa M 192 168 0 5 N Telephone num rique E NS Alcatel Advance Reflex X D 49 LS 192 168 0 20 Telephone IP phone Alcatel 4038 t IP Touch Alcate Telephone num rique Alcatel Advance Reflex Le centre d appels est compos de la CS et la GD des t l phones qui y sont connect s et d un pc de contr le reli par deux connections une carte Ethernet et un c ble s rie L change avec la pondeuse sera r alis par un faisceau IP 2 2 Le serveur Trixbox 2 2 1 Qu est ce que trixbox Trixbox connu auparavant sous le nom d Asterisk Home est un logiciel libre d autocommutateur t l phonique priv PBX ou IPBX bas sur le logiciel libre Asterisk En octobre 2006 le produit a t renomm Trixbox apr s que Digium l diteur du produit Ast risk eut demand que le mot asterisk ne soit pas utilis dans le nom du produit Le changement de nom tait d autant plus justifi que le produit avait cette poque beaucoup plus de fonctionnalit qu Ast risk Trixbox CE est le logiciel qui a t t l charg le plus souvent dans la liste des projets r alis s partir du logiciel libre Asterisk selon Sourceforge net Trixbox CE est 100 libre et sous licence GPLv2 Les membres fondateurs du projet Trixbox CE sont Kerry Garrison et Andrew Gillis I
43. DLAS EET Y E UEAA d 22 2 5 2 Premiere instalation rx ete FE eee asie RE RV read 23 2 50 43 Choix du PROTOCOLE iis oiov oo te ur eV ERR Es Pe MIA ERA Ew YE UEPAE 24 3 Conception pr liminaire Partie Plateau Mathias E1 26 32 Ibarehitec EHE osse aee tbv PPP Dh E rS HNDELEPEVAPLQUER ERES MI E 26 3 2 Architecture logicielle ti nee Rv Re zur re kan dar irae E etat etat EE ERR EAR 28 3 2 1 Choix de la base de donn es ssssseseeeesersessesesececesesssssesecereressss 28 3 2 2 Les couches logicielles esee cce beer terae rer Ero e eorr erra 28 3 2 3 Choix du protocole aoi vro ES Ear Erbe do Ebo UA PTUERRI PERVIA EIN EM EE 28 3 3 Mon r le au sein du projet si mener ea e re EEREER EU tenus 30 3 4 Les interfaces homme machine eeeceseeeeeeeeee eee n 33 3 5 Les diff rents diagrammes 4 eene hee ehe esee 36 3 5 1 Le diagramme de lasse sisi tote Verr Er PESE re DERE E Ur R VERE E REI 43 3 6 Les interactions cus orat eds eee aic ie ee rU elements RE EPEOP CHER ECEEPFEA EN idees 45 3 7 Les tables de la base de donn es 46 3 8 Iravalb fUEHE Sae tentait os Cone Os VEU beu V OPI LE LEUR EG Ud 47 Partie commune Projet MMA Pondeuse d appels 2 190 3 10 Conclusioni nat ETT 49 4 Conception pr liminaire Partie Chr tien Cl ment E2 sees 50 4 1 tude pr liminaire Suivre les Appels simultan s
44. Mathias PLATEAU Le sc nario se d roule de facon identique seule les tapes qui sont d finies dans UHM vont modifi s ce sc nario Voici l algorithme d un appel SI la ligne est disponible o prise de ligne o composition du num ro o etat en attente o d crocher o etat en cours o POUR indice allant de 0 jusqu nbEtapes etape indice o FIN POUR o raccrocher o etat r ussi FIN SI SI ligne est indisponible o etat avort o raccrocher FIN SI 4 2 1 Diagramme d tat transition d un appel d appel repetition de nbTentative Choice demande de prise de ligne ligne disponible Q demande de prise de ligne lighe occup e ligne prise pas de ligne prise de ligne changement tat en attente hangement tat appel omnosition du num ro decrocher Q J e405 Num ro decrocher compose 405 d crocher decrocherichangement d etat en cour En Cour epetition jusqu a n tape etape Fin de la conversation fin des etape du Sc nario racracherichangement etat reussi Fin de l appel Ce diagramme d tat permet de repr senter les changements d tat durant un appel g n r 4 2 2 Solution trouv e pour la g n ration d appel partir du serveur Asterisk Les appels doivent tre g n r s l aide d un serveur t l phonique trixbox command par un ordinateur client sur lequel il y aura l application
45. O Bo te vocale 33002 soft1 busy gt gt Fin d appel Un poste sp cifi Une boite vocale 2 3 6 Administration web Installation d un IVR 2 3 6 a Qu es qu un IVR Interactive voice response est une technologie qui permet un ordinateur d interagir avec les humains par l utilisation de la voix et des tonalit s DTMF partir du clavier d entr e 2 3 6 b Configuration La derni re tape consiste en la cr ation du menu interactif Il suffit de se rendre dans IVR Digital Receptionist Edit Menu Unnamed Save Delete Digital Receptionist Unnamed Change Name Nom du RVI Announcement None Timeout 10 Enable Directory M VM Return to IVR 3 Directory Context default Enable Direct Dial M Loop Before t dest O Timeout Message None Loop Before i dest O Invalid Message None Repeat Loops TE Increase Options Return to IVR D Save Decrease Options O IVR MenuPrincipal 2 O Queues fileSinistre lt 100 gt O Phonebook Directory Phonebook Directory Terminate Call Hangup O Extensions 333001 QuentinPC 2 Bo te vocale 33002 soft1 busy Pour la cr ation quelques informations sont n cessaires Nom du RVI Announcement texte d annonce Timeout Temps avant le message de timeout TimeOut message message en cas de non d tection Invalid Message M
46. Pour commencer une campagne d appels il faut tout d abord la cr e lancez alors l ex cutable du programme Vous arrivez sur une fen tre de configuration cliquez alors sur Cr er une nouvelle campagne configuration anal configuration 5 000 000 Creer une nouvelle campagne Creer une nouvelle campagne Nom Charger une ancienne campagne Charger une ancienne campagne Supprimer une campagne Supprimer une campagne Annuler Annuler Suivant Un champ vous permettant de saisir un nom de campagne appara t alors saisissez votre nom de campagne maximum 16 caract res sans espaces ni caract res sp ciaux Une fois le nom de campagne saisi cliquez alors sur le bouton Suivant Vous arrivez alors sur une fen tre pour param trer la campagne campagnel Entrez le num ro appeler Choix uniquement des chiffres 10 maximum Num ro appeler I Entrez votre temps d appel total EE NEUE par d faut le temps d appel est de Dur e appels 1 secondes 1 seconde 1800 secondes maximum Attention si vous entrez un temps d appels inf rieur la somme total des temps de pause de chaque Sc nario s Nombre d tapes tapes l appel finira avant la fin de l envoi des DTMF S lectionnez le nombre d tapes pour un sc nario 1 minimum 10 maximum Par d faut nous avons 1 tape pour le sc nario 1 qui envois un DTMFO 7 1 Conf
47. R KC ER 91 6 5 Grey rali ipo E 92 7 Conception d taill e Partie Plateau Mathias E1 93 7 1 Configuration Qt MySQL cede p eee eo rh oo pee nea b Ee VE ER NERRSRE EE E n VEFEER 93 Partie commune Projet MMA Pondeuse d appels 3 190 7 2 1 La connexion la base de donn es eene eene 94 7 2 2 L envoi d une requ te Sql pr par e cesses 95 7 2 3 Gestion des erreurs d envoi de la requ te 96 7 3 Fonctionnement de l Interface Homme Machine ccce 96 7 4 Nouvelle campagne la configuration nene 96 7 4 1 Param trage de la campagne eee eene rna 102 7 4 2 Param trage d un sc nario 44 esse esse 104 7 4 3 Supprimer une campagne 5 55 FART harnais 115 7 9 CONCLUSION i cutus tien an Era E RT QU EVER SU QUA Kus dde de ea haie area bed 118 8 Conception d taill e Partie Chr tien Cl ment E2 119 8 1 Diagramme de S quence pour la g n ration d un appel 120 8 2 Diagramme de Class s nsc avo a In EAE ORES EE Cod Fere E PERTE RR ER TRES T EU ERANT 122 8 3 G n rer un apbelcs ss avete ete ee eR eto NR ENS a eux ER De ELO der vein tus Na De EN VS 126 8 3 1 La g n ration de fichier d appel ee enne 127 8 3 2 La connexion la trixbox en FTP 130 8 3 3 Application dans le prog
48. RTCP gr ce au num ro de port 1 Le protocole RTP est un protocole temps r el non fiable qui permet de transporter des informations multim dia Le protocole RTP fournit e L identification du type des informations multim dia e La num rotation du s quencement e L horodatage des paquets RTP mis RTCP est le protocole de contr le associ au protocole RTP Les paquets RTCP sont mis p riodiquement et v hiculent des informations statistiques sur l tat de la transmission entre chaque participant Ces informations statistiques permettent de calculer des informations de QoS e Gigue temps d inter arriv e permet d estimer l cart entre l arriv e des paquets et leur moment de lecture e RTT dur e que met un paquet pour faire un aller retour sur le r seau e Taux de perte de paquet estimation du taux de paquet perdu En t te d un paquet RTCP Version Padding Reception Report Le champ cumulative number of packets lost 24 bits qui nous permet de savoir le nombre de paquets perdus Le champ interarrival jitter 32 bits Cest une estimation de l intervalle de temps d un packet de donn s RTP qui est mesur avec le timestamp et qui est sous forme d un entier C est en fait le temps relatif de transit entre deux paquets de donn s Pour effectuer l analyse de la communication nous disposons de deux classes La premi re une classe capture qui contient nos fonctions de capture et nos fonctions d
49. SCENARIO monEtape 3 1 Pr sentation du syst me signal slot Sur UIHM une liaison entre les diff rents l ments du formulaire permet de faciliter l utilisation pour l administrateur Ceci principalement gr ce au syst me signal slot de Qt mis en place notamment gr ce l outil qtCreator Un signal est un message envoy par un widget lorsquun v nement se produit Exemple un clic sur un bouton ou le changement d une valeur dans une QSpinBox Un slot est une fonction appel e lorsqu un v nement s est produit Il est appel par le signal Un slot est une m thode d une classe dans notre application il s agit de m thode des diff rentes classes qui poss dent une IHM Exemple le slot quit appartenant la classe Qwidget de base qui fermera la fen tre Qt offre la possibilit de coder le contenu de nouveau slot Cette association nous permettra donc d appeler des m thodes pour modifier l IHM lors d v nements pr cis afin de guider l utilisateur Sch ma de repr sentation du syst me Signal Slot Button Suivant Configuration Slot Signal Dans le sch ma lorsque le button1 est cliqu le slot de l objet de la classe Configuration nomm on pushButtonSuivantConf clicked est appel 3 6 Les interactions suivre les appels simultan es node generer une appel centre_dappel testeur_dappel i in chide i T analyste pondeuse d a
50. Solution trouv e Apr s des recherches une solution a t trouv e elle se nomme AutoCall Cette m thode consiste g n rer des appels automatiquement l aide de fichiers que l ont placent dans un r pertoire d Asterisk var D spool D asterisk outgoing tmp voicemail Dans un premier temps il faut configurer un sc nario appel context dans le fichier extensions conf situ dans le r pertoire etc asterisk sinon il prendra le sc nario par d faut c est dire que l appel sera mis et il lancera le fichier audio goodbye ulaw puis l appel sera terminer Ensuite il faut diter un fichier avec une extension call c est le fichier qui sera placer dans le r pertoire outgoing Ce fichier prend plusieurs param tres pour les tests pr liminaires nous avons utilis un fichier simple qui lit juste un fichier audio pour simuler une conversation Voici les param tres que peut prendre le fichier call Channel c est le num ro qui sera appel e WaitTimes cest le temps d attente pour un appel sans r ponse avant que l appel soit consid r comme avort RetryTimes c est le temps d attente entre chaque tentative MaxRetries c est le nombre de tentatives si la ligne n est pas disponible e Context c est le sc nario que l appel devra suivre Extension c est l ou l appel devra se connecter e Priority c est la priorit d un appel par rapport aux autres Alternativement on peut sp cif
51. aire r pertoire programme de demarrage Sept champs sont explicit s s par s par le caract re le nom du compte de l utilisateur le mot de passe de l utilisateur cod bien s r lentier qui identifie l utilisateur pour le syst me d exploitation UID User ID identifiant utilisateur l entier qui identifie le groupe de l utilisateur GID Group ID identifiant de groupe le commentaire dans lequel on peut retrouver des informations sur l utilisateur ou simplement son nom r el ler pertoire de connexion qui est celui dans lequel il se trouve apr s s tre connect au syst me la commande est celle ex cut e apr s connexion au syst me c est fr quemment un interpr teur de commandes Dans notre cas Utilisateur sans possibilit de se connecter asterisk x 100 101 var lib asterisk sbin nologin Pour autoriser un utilisateur de ce type se connecter comme un utilisateur standard il faut effectuer deux modifications Original asterisk x 100 101 var lib asterisk sbin nologin Modifi e asterisk x 100 101 var lib asterisk bin bash 7 Uncompte virtuel est un compte qui n existe pas r ellement la diff rence d un compte local il appartient en g n ralement un service 6 3 phpMyAdmin Dans le cadre de la cr ation et du suivi des campagnes d appels nous devons sauvegarder les diff rentes donn es Pour cela nous avons choisi d installer phpMyAdmin qui nous permettra de
52. allons aborder les sc narii Voici la classe Scenario Le constructeur de Scenario prend en param tre le nombre d tapes nbEtapes et le num ro de sc nario numScenario Le code qui permet de renommer le titre de l IHM et le nom de la fen tre est le suivant Scenario Scenario int nb Etapes int num Scenario nbEtapes nb Etapes numScenario num Scenario QWidget 0 ui new Ui Scenario QString nomScenario QString nomFen nomScenario sprintf Scenario d numScenario this gt setWindowTitle nomScenario nomFen sprintf Scenario d numScenario this gt setObjectName nomFen On d clare 2 variables de types Qstring puis on fait appel a la fonction sprint Puis setWindowsTitle et setObjectname pour assigner le titre et le nom de la fen tre Nous avons besoin de cr er diff rents layout pour disposer nos tapes qui seront cr es dynamiquement ce sont des attributs de la classe scenario hori3 new QHBoxLayout this verti2 new QVBoxLayout this verti3 new QVBoxLayout this Un horizontal et 2 vertical Redimensionnement de la fen tre Il faut redimensionner la fen tre afin d afficher correctement toutes les tapes si il y a plus que 6 tapes on d place les 5 suivantes sur l axe X int taillex tailley value if nbEtapes lt 6 taillex 400 value nbEtapes else taillex 800 value 5 tailley value 140 130 this gt res
53. alyse de la QoS eene eene enn 73 5 6 La librairie PCapziuieuosoe re bra sement RE RMERRERRET EE REM AN ERE 75 5 7 Affichage de la 008 x ne annee ni tune UNS na na de PS MUERE 76 6 Conception d taill e Partie Prieur Quentin E4 sees 78 6 1 Installation du serveur trixBOX iiiirie e ee tup rrt rna rrr Ern eren 79 6 2 Serveur gp Me G 80 6 2 1 Installation et configuration ss 80 6 2 1 a Ajout des utilisateurs au syst me 82 6 2 1 b Ajout des acc s de connexion au FTP 82 6 2 1 c Autoriser les acc s FTP un compte virtuel asterisk 83 623 PhpMyAdmin ins INT 84 6 3 1 a Installation oui iiu ee oo FERE e Ex IER ER E RR EREERE RENE ER ERE ERA te 84 6 3 1 b Connexion a la base MYSOL oe to cerea Dao de eto t ee Ve reo ELE Dua bna 85 6 4 Trunk SIP Mise en Dessins a EinEPRERE VPE EFE VaUn VER SIME AM ORT rAIPU SATA TERR ERES 86 6 4 1 S l tion N T E 86 6 4 1 a Configuration c t serveur Trixbox ssssssseesesessssseseceeeeessssssee 86 6 4 1 b Configuration c t OXE Alcatel csse 88 6 4 T c ConclisiDI i eae Sean uen aunt a VOR A ami vivier 89 6 4 2 Solution N Ze oto e uc E as atr aea ee e Ret E Ru ud eiu 90 6 4 2 a Configuration Mise en place du trunk 90 6 4 2 b Configuration redirection d appels ccce 91 6 4 2 c Conclusion sur la solution N T o oi EErki E Ee Ee eb E TEX REAERARE I UEFE
54. am Lyc e Polyvalent Touchard Washington S yv Dossier de projet pssasas A pa P pE Mut elles du Mans Assurances Mana Assurances CE e Prieur Quentin Plateau Mathias Chr tien Cl ment Dauvergne Florian Sommaire 1 Analyse TECHNIQUES ooo tec ba REDE SR CREAR Asset sn en dur 5 1 1 Le principe de la VOIP Voice Over IP 5 1 2 be transport dela VODOG sait misent bei bap TA Mrd E 5 1 2 1 Les diff rents protocoles i reo ann ER REX Que EEUU re CU Od UE dia 6 1 3 Mise en place de la maquette MMA cssssssseeeeeeeeeee en e e n 7 1 3 1 Mat riels notre disposition 7 1 3 2 Pr sentation de la central d appels nennen 7 2 Conception pr liminaire Partie Prieur Quentin E4 eene 8 2 1 Situation dans le projet eed n aae Da Qua ep Vae d ae cea a dr Cae dd ea VC a dude 8 2 2 Le serveur TriXbOX Leieieeseeees eese vr oaa heh pre striuri aed DU UY etes es 10 2 2 1 Qu est ce que trixbox i rennes ennemie e UE EUFSES E VEE RET 10 2 2 2 Pourquoi ce cholx sorsi essere xe send rese PrErEE V EENERREREREUEEFEERAEEE RES Ve 10 2 3 Les diff rents services du serveur Trixbox 11 2 3 1 Le service DHCDP z i ioeeisosa co s coe sinistres OU E e Ep ern Foe ren eet E hn 11 2 3 1 a Qu est ce quim DHCP 5i sees er Ee Er OE ER ERE EEEEURE EVEN E E ere rase 11 2 3 T D Sont fonctionnement cus eoo ets eo
55. apport au niveau de l autonomie Le fait de travaill en quipe a aussi t b n fique malgr le fait que je n ai pas travaill avec les personnes que je souhaitais le projet s est pass dans de bonnes conditions il y a du dialogue dans l quipe chaque personne du groupe sait ce qu il a faire et est motiv pour le faire Ce Projet m a permis de me conforter dans le choix de ma poursuite d tude dans le d veloppement et il m a permis d approfondir mes connaissances dans le d veloppement en C QT 9 Conception d taill e Partie Dauvergne Florian E3 generer une appel tudiant 3 DAUVERGNE 9 1 Configuration analyse Nous devons analyser la communication d une campagne d appels Pour cela nous devons capturer des paquets afin de r cup rer les param tres permettant l analyse de cette campagne 9 2 Pr Requis L application doit se trouver sur un hub situ entre l appelant et l appel car il va nous permettre de capturer tout le trafic et de filtrer seulement ce qui nous int ressent Adresse IP Dynamic eth1 Adresse IP Dynamic 172 17 83 170 eth0 Adresse IP Dynamic y Adresse Ip static 192 168 0 xxx o 192 168 0 5 Soft 1 192 168 0 20 b E 1 BEER IP Touch 4038 Internet Serveur Trixbox PC Ex cutif 5 Num eric 4035 2004 Adresse lp static 192 168 0 50 Adresse IP Dynamic 172 17 83 26 9 PC de Contr le Liaison S
56. ble ADSL optique ou non satellite WiFi GSM UMTS Cette technologie est notamment utilis e pour prendre en charge le service de t l phonie sur IP ToIP pour Telephony over Internet Protocol 1 2 Le transport de la voix Le transport de la voix sur IP est relativement complexe La premi re tape est la num risation du signal acoustique C est le codage Ensuite les informations sont d coup es en trames pouvant circuler sur un r seau informatique Divers protocoles peuvent alors tre utilis s pour acheminer les informations au x destinataire s Ainsi le protocole RTCP est utilis pour contr ler le transport des paquets RTP ETHERNET 15 2 KBPS IP 8KBPS UDP 3 2 KBPS AUDIO ENCODER Au total 31 2 KBPS Le transport de communication sur IP est tr s d pendant du d lai de latence d un r seau Ce d lai influe beaucoup sur la qualit psychoacoustique d une conversation Avec l av nement des r seaux 100 Mbit s et ADSL les temps de latence deviennent acceptables pour une utilisation quotidienne de la voix sur IP 1 RTCP Real time Transport Control Protocol repose sur des transmissions p riodiques de paquets 2 RTP Real Time Transport Protocol est un protocole de communication informatique permettant le transport de donn es soumises des contraintes de temps r el Partie commune Projet MMA Pondeuse d appels 6 190 1 2 1 Les diff rents protocoles MGCP Le protocole MGCP M
57. cap geterr handle exit EXIT FAILURE 78 printf n Filtre appliqu n 9 4 5 Filtrage SIP 7 void Capture filtre sip 82 v if port src 5060 port dest 5060 printf Packet numero s compteur printf Paquet de protocole SIP Ligne 81 m thode filtre sip de la classe capture elle va nous permettre de ne garder que les paquets sip Ligne 84 On cr e une boucle on l on ne va y entrer que si les paquets captur s sont des paquets avec le port 5060 soit des paquets SIP Ligne 86 87 L affichage nous permet pour le moment de v rifier le bon filtrage des paquets 9 4 6 Filtrage RTP amp RTCP 92 7 void Capture filtre RTPI 1 v Aflport src port rtp port dest port rtp 1 printf Paquet de protocole RTP v if pert src port rtp 1 port dest port rtp 1 printf Paquet de protocole RTCP Ligne 92 m thode filtre RTP elle va nous permettre de ne garder que les paquets RTP car ce sont eux que l on va d coder pour r cup rer les informations de Qualit de service Ligne 94 Boucle o l on ne passe que lorsque ce sont des paquets RTP soit des paquets avec le port RTP r cup r dans les paquets SIP Ligne 96 Affichage permettant de v rifier le bon filtrage de RTP Ligne 99 Boucle o l on ne passe que lorsque ce sont des paquets RTCP soit des paquets avec le port RTP r cup r dans les paquets SIP 1 Ligne 101 Affichage permetta
58. che depossbiit sdanay Xn Recherche swr lalbraiie PAAD 20 B RAD ME Codage desdif retesdasses C M0h IF ADU C t ri h AUD AIO T Corecton des bug di gratin jh DAS ENDS 140041 Aujourd hui Ce projet m a permis de m investir dans les technologies d actualit s tout en m adaptant au cahier des charges Tout au long de celui ci j ai donc pu apprendre toute la d marche mettre en place sur un projet concret de la lecture du cahier des charges l criture de notre d marche de d veloppement en passant par le d veloppement et donc la conception de l application demand e Il m a beaucoup apport au plan technique par la mise en pratique des connaissances acquises en BTS IRIS J ai appris d velopper mes connaissances l aide de recherches et d investissements sur ce projet Ill m a permis aussi de m int grer et apprendre travailler en groupe et de mieux comprendre la r alisation d un projet L ambiance de groupe fut toujours positive une aide mutuelles et un respect de chacun ont grandement aid la finalisation de ce projet demand par les MMA Pour ma part au moment de l criture l enregistrement dans un fichier des r sultats de QoS n est pas op rationnel j ai donc un retard sur mon planning pr visionnel et que je dois rattraper avant la fin du projet 10 Fiches de test Prieur Quentin 10 1 Plan de test Installati
59. classe Fichier h rite de QFile ceci est fait pour pouvoir profiter des m thodes et des attributs de QFile tout en rajoutant d autres m thodes ou attributs si besoin est La classe Appel e La classe appel h rite de QThread pour que chaque appel puisse tre ex cut s en m me temps Elle a pour but de g n rer les appels de la pondeuse e Le num ro est le num ro de t l phone qui doit tre appel IL est de type entier NbTentative est le nombre de tentatives pour un appel si la ligne est occup e au del l tat de l appel est consid r comme avort IL est de type entier tat est l tat d un appel il varie en fonction de l avancement de l appel ou comme il est dit plus au dessus en cas d chec Les valeurs de l tat peuvent tre r ussi avort en attente en cour Il est de type String Appel c est le constructeur de la classe Appel e genererFichier cette m thode va g n rer un fichier pour g n rer un appel ce principe sera expliqu un peu plus loin dans le dossier genererUnAppel cette m thode permet de g n rer un appel l aide du fichier cr er par la m thode genererFichier La classe SuiviCampagne Laclasse SuiviCampagne permet de stocker les informations de la campagne et des appels pass s durant cette campagne afin de pouvoir par la suite les stocker dans une base de donn es nbEtatAvorte est un attribut de la classe suivi
60. corder the file must be PCM Encoded 16 Bits at 8000Hz Browse Upload Step 2 Name Name this Recording Click SAVE when you are satisfied with your recording Save 3 PABX Private Automatic Branch eXchange Autocommutateur t l phonique priv Diff rents modes d enregistrements sont possibles soit par un fichier audio enregistr au format wav le mp3 n est pas conseill mais fonctionne parfaitement soit l enregistrement via un poste ou softPhone connect la Trixbox Pour cela il suffit de pr ciser l extension du poste qui effectuera l enregistrement En pr cisant le nom et en cliquant sur save le guide est sauvegard 2 3 4 Administration web Installation d une musique d attente Pour accueillir les appels sur le num ro principal ou pour faire patienter un appelant nous devons cr er des musiques d attentes Rendez vous donc dans la section music on hold Deux choix se pr sentent soit utiliser la cat gorie par d faut soit en cr er une nouvelle On Hold Music Category default Upload a wav or mp3 file Browse Upload Volume 100 Volume Adjustment Disable Random Play orig_Mad World Gary Jules Lyrics mp3 E Par la suite nous pourrons acc der celles ci via un menu d roulant dans les files d attente par exemple 2 3 5 Administration web Installation d une file d attente Dans un menu interactif il est possible de rediriger un choix vers
61. db private QSqlDatabase db db QSqlDatabase addDatabase OMYSQL db setHostName 172 17 83 170 db setPort 3306 db setDatabaseName MMAPondeuse db setUserName root db setPassword toto db open bool verif db open if verif qDebug Ouverture de la base de donn es avec succ s else qDebug Echec d ouverture de la base de donn es Ligne 1 On sp cifie que l on va acc der au serveur de BD avec le driver QMYSQL Ligne 2 On specifie que l adresse de la base de donn es est 172 17 83 170 Ligne 3 Port de connexion utilis Ligne 4 Nom de la base de donn es Ligne 5 Login de la base de donn es Ligne 6 Le mot de passe d acc s la base Ligne 7 Ouverture de la base de donn es Ligne 8 9 10 Le bool en verif permet de connaitre l tat de la connexion un message dans le debugger s affiche en fonction de cet tat 7 2 2 L envoi d une requ te Sql pr par e La fonction prepare pr dispose la requ te SQL l ex cution Elle permet de construire des requ tes contenant des l ments variables Une seconde fonction bindValue associe une valeur un nom correspondant dans la requ te SQL pr par e Ensuite la fonction exec ex cute la requ te Sql WindowTitle correspond au nom de la campagne de type Qstring tempsAppelCampagne et numAppel sont des entiers et correspondent au temps d appel de la campagne et au num ro d appel Voici un exem
62. de projet se d roule bien il y a une bonne ambiance de travail les choix conviennent l quipe Ce projet de t l phonie est nouveau pour nous il a donc fallu faire beaucoup de recherches afin de travailler convenablement Pour la suite un travail de codage de longue haleine Une d pendance de Quentin PRIEUR tudiant 4 car si le centre d appels n est pas mis en place les appels ne pourront pas tre pass s 4 Conception pr liminaire Partie Chr tien Cl ment E2 Contexte Les MMA groupe d assurances mutuelles souhaitent tester ses infrastructures t l phoniques administratives ou CCD Contact Center Distribution t l phonie de centre d appel afin de tester leur robustesse et leurs limites C est pourquoi l entreprise nous a confi la r alisation d une pondeuse d appels permettant de g n rer un certain nombre d appels Campagne d appels dans le but de r cup rer les informations li es cette campagne et les retranscrire sous forme de statistiques Pour aboutir ce projet nous l avons divis en quatre grandes parties tant l tudiant 2 les t ches principales que je dois ex cut es sont g n rer un appel e suivre les appels simultan s Voici la place des taches qui me concerne dans le cas d utilisation g n ral suivre les appels simultan es TIBUS generer une appel T centre dappel j i i lt lt nchde gt gt exteld x analyste lt lt ncude
63. deuse d appels a besoin d un poste sur lequel se trouvera l application pour envoyer les threads g r par l tudiant 3 la Trixbox Le PC de contr le sert la configuration du PABX ainsi que l utilisation du logiciel CCsupervision La Trixbox communique avec le l Alcatel OMNI PCX ENTERPRISE via un faisceau IP Trunk Les appels sont trait s par le centre d appels 3 5 1 Le diagramme de classe Principales classes Les num ros seront d finis comme des chaines de caract res string L IHM permettra aussi a l utilisateur de sauvegarder la campagne ou d en charger une ancienne nous pouvons donc d finir plusieurs m thodes sauvegarderCampagne Pour sauvegarder une campagne chargerAncienneCampagne Pour charger un ancienne campagne supprimerCampagne Pour supprimer une campagne qui a t enregistr e e envoyer Pour d marrer une nouvelle campagne La premi re classe n cessaire est la classe Configuration cette classe permettra de choisir le nom de la campagne C est donc la configuration de la campagne La deuxi me classe n cessaire est la classe Campagne cette classe regroupera tout les besoins d une campagne qui sont le num ro de l appel la dur e maximum d appel R f rences de fr quence e Les 2 packages sont le package Analyse g r par Florian DAUVERGNE tudiant 3 et le package Scenario g r par Cl ment CHRETIEN tudiant 2 1 10 tabS cenario MAX
64. e e Linux T l phone Linux t l phone binare GD GA 3 Chargement complet automatis Chemin d acc s au fichier Binaire GD GA Rechargement du binaire d une carte GD GA Nom du fichier Dans notre cas le type de chargement choisi est le mode Linux t l phone car il s agit d une nouvelle installation du syst me bas sur le noyau UNIX ainsi que de la couche propri taire du syst me de t l phonie Partie commune Projet MMA Pondeuse d appels 188 190 m Diff rents types de Call Server Alize CPU CS o Requ te bootp au d marrage o V24 facultative en chargement complet A4400 CPU 5 6 7 o Requ te bootp au d marrage o V24 obligatoire en chargement complet IP Appliance Serveur o Requ te PXE au d marrage 101 111 Restek ATLET o V24 facultative en chargement complet Adresse IP Adresse ethernet Blade Server Fute 3 Requ te PXE au d marrage Valider Modiher Retourner o Console KVM obligatoire pas de V24 disponible Puis dans un second temps il faut pr ciser le type de CS dont nous disposons dans notre cas d une Alize renseigner l interface r seau ainsi que son adresse IP m Configuration de l outil de chargement OmniPCX Enterprise P jo Param tres d installation Type de Call server Aize j lt 4 Choisir le type de CPU adapt Alize A4400 Appliance Version t l phonique Fe rage ied d i3ws 4 oisir la version
65. e filtrage Puis une deuxi me classe qui va nous permettre d afficher les statistiques de la communication IHM ee Capture Statistiques dev 10 char Attribute string handle pcap t D Attribute1 string num packets integer Attribute2 string net bpf u int32 i Statistiques mask bpf_u_int32 Statistiques Statistiques E enregistrement stat Capture d E RO i void capture paquets B EE ug reo e coal affichage delai acheminement void filtre udp void filtre rtp void filtre rtcp Diagramme de classe 9 4 2 Capture La capture se fait en parall le de la campagne Elle va nous permettre de r cup rer les informations n cessaires l analyse de la QoS d une campagne d appels La capture de paquets des paquets se fait l aide de la biblioth que pcap 9 4 3 Capture La capture se fait en parall le de la campagne Elle va nous permettre de r cup rer les informations n cessaires l analyse de la QoS d une campagne d appels La capture de paquets des paquets se fait l aide de la biblioth que pcap et de la fonction capture paquets void Capture capture paquets char errbuf PCAP ERRBUF SIZE erreur buffer print capture info printf P riph rique s n dev printf Nombre de paquets d n num packets printf Filter expression sWn filter exp ouvre
66. e validation disabled b Real Time Transport Protocol Paquet RTP v User Datagram Protocol Src Port 5063 5063 Dst Port 18933 1893 Source port 5063 5063 Destination port 18933 18933 Length 184 P checksum 0x0269 validation disabled P Real time Transport Control Protocol Sender Report P Real time Transport Control Protocol Source description RTCP frame length check OK 176 bytes Paquet RTCP Nous capturons les paquets UDP comme le montre cette capture de wireshark les champs de port source et destination nous fournissent les informations n cessaires l identification des paquets RTP et RTCP Nous avions r cup r dans les paquets SIP le port 18932 ce qui correspond ici Ce paquet est donc identifi comme un paquet RTP et l autre RTCP Comme nous avons vu plus haut le num ro de port r cup r est 18932 et 5062 pour les paquets RTP Comme on le voir ici les paquets sont bien identifi et les num ros de port correspondent On peut donc filtrer les paquets RTP avec ces informations En t te d un paquet RTP E t RTE Lee Timestamp Identifiant de la source de synchronisation SSRC Identifiants de la source de contribution CSRC Maintenant nous savons filtrer les paquets RTP et RTCP qui contiennent les informations n cessaires l analyse de la communication Nous connaissons les ports o transitent les paquets on peut donc r cup rer les paquets RTP gr ce au num ro de port et les
67. e ethernet Cable s rie n switch Alcatel OMNI PCX Faisceau IP Trunk ENTERPRISE Protocole utilis SIP CS 192 168 0 10 GD 192 168 4 nAppels Cable ethernet Trixbox Serveur et Base de donn es 192 168 0 5 92 172 0 170 Application Plage DHCP 128 254 12 1 1 Test n 1 le test num ro 1 n a pas donn les r sultats attendus l origine qui taient la cr ation du fichier permettant l appel 0 CAQtSDK QtCreator bin gtcreator_process_stub exe Qt Untested Windows version 6 2 detected Start testing of BidonTest onfig Using QTest library 4 8 1 Qt 4 8 1 ASS BidonTest initTestCaseC BidonTest testGenertionFichier constructeur parametre Fichier BidonTest testGenertionFichier Impossible d ouvrir le fichier BidonTest testGenertionFichier Compared values are not the same Actual retour Expected true 1 bidon tst_bidontest cpp 29 failure location BidonTest testEnvoiFichier constructeur parametre Fichier BidonTest testEnvoiFichier constructeur copie Fichier BidonTest testEnvoiFichier Fichier envoyer BidonTest testEnvoiFichier BidonTest cleanupTestGase 3 passed 1 failed skipped Finished testing of BidonTest seeeeeeee ppuyez sur lt ENTRGE gt pour fermer cette fen tre Comme nous pouvons voir sur l image situ e au dessus un des tests n a pas t r ussi et si on regarde le test de la g n ration d
68. e gestion de base de donn es MySQL r alis e en PHP et distribu e sous licence GNU GPL Cette interface pratique permet d ex cuter tr s facilement de nombreuses requ tes comme la cr ation de tables de donn es des insertions des mises jour Ce syst me est tr s pratique pour sauvegarder une base de donn es sous forme de fichier sql et ainsi transf rer facilement ses donn es De plus celui ci accepte la formulation de requ tes SQL directement en langage SQL PhpMyAdmin gg Serveur localhost fi Base de donn es MMA ABERE BS Structure SQL Rechercher Requ te amp yExporter a Importer amp Op rations Privil ges Supprimer Base de donn es Table Action Enregistrements Type Interclassement Taille Perte MMA 11 M analyse SEL Ex 9 MyISAM latin1_swedish_ci 1 0 Kio appels z E amp Es mw x InnoDB latini swedish ci 16 9 Kio E MMA 11 campagne e s m x 1 InnoDB latini swedish ci 16 0 Kio eccl condition fin campagne S x X 9 InnoDB latini swedish ci 16 0 Kio Ej campagne etapes mx nnoDB latini swedish ci 42 9 Kio Core gestion MES ACC Ste AN 2 InnoDB latini swedish ci 48 0 Kio Terres dimf 7 ordre dtmf 53 Gigs mX 9 nnoDB latini swedish ci 32 0 Kio eco scenario SE mX 9 nnoDB latint_swedish_ci 4 09 Kio s peines m sequenceAppel z B z xX 9 InnoDB latini swedish ci 16 9 Kie iis dux tableDeRecuperation MAI X 9 InnoDB latini swedish ci 16 0 xio
69. e sur le bouton nouvelle campagne Si le nom de campagne existe deja l utilisateur doit re saisir un nom de campagne Dans le cas ou l utilisateur cr e une nouvelle campagne un InputMask est mis en place dans la QlineEditCampagne de type nnnnnnnnnnnnnnnn minimum 1 caract res maximum 16 Ce type de filtre va interdire l utilisateur de taper des noms de campagne trop long ou avec des caract res sp ciaux puisque le caract re n autorise uniquement des chiffres et des lettres Si l utilisateur ne rentre pas de nom de campagne un message d erreurs apparait en revanche si le champ a t renseign on passe l IHM suivante Nom de campagne invalide o Saisir un nom de campagne OK Voici le code correspondant l appui sur le bouton suivant void Configuration on pushButtonSuivantConf clicked nomCampagne ui gt lineEditNomCampagne gt text if nomCampagne OMessageBox critical 0 tr Nom de campagne invalide tr Saisir un nom de campagne else camp gt setWindowTitle nomCampagne camp gt show this gt hide Ligne 1 D finition de la fonction Ligne 3 R cup ration de la cha ne de caract res venant de la lineEdit de la saisi du nom de campagne Ligne 5 6 7 8 V rification si la chaine est NULL Affichage d un message d erreurs Ligne 10 Si l utilisateur a bien rentr une chaine de caract res Ligne 11 Le titre de la fen tre de la campagne es
70. edia Gateway Control Protocol sert l change de message de signalisation entre un contr leur de passerelles de m dias et des passerelles r parties dans un r seau IP Pour l tablissement et la lib ration des connexions MGCP se sert de signaux et d v nements La standardisation de MGCP a t stopp e pour faire place MEGACO H 248 MEdia GAteway COntrol protocol protocole labor en collaboration entre U IETF et PUIT RFC 2705 Ce nouveau standard n tant pas d riv de MGCP la migration vers MEGACO H 248 semble tr s difficile H323 La norme H 323 d velopp e par l IUT T est utilis e pour l interactivit en temps r el change audio vid o donn contr le et signalisation C est la norme la plus utilis e concernant la VolP Elle h rite de la norme H320 utilis e pour la voix sur RNIS Comme toute norme elle est constitu e d un ensemble de protocoles r alisant les diff rentes fonctions n cessaires la communication SIP Contrairement la norme H323 SIP Session Initiation Protocol est un protocole unique de type requ te r ponse tr s proche des protocoles HTTP et SMTP IL commence prendre le pas sur la norme H323 SIP est normalis par l IETF RFC 3261 IL permet de cr er et g rer des sessions entre participants pour changer des donn es ind pendamment de leur nature et du protocole de transport PABX Commutateur t l phonique qui l int rieur d une entreprise g re de mani
71. een Configuration des interfaces r seau 6 2 Serveur FTP Pour pouvoir ex cuter les scripts qui nous permettront de lancer les diff rents appels nous devons installer un serveur FTP sur le quelle nous enverrons les fichiers call distance Dans un second temps il servira aussi modifier le fichier extension conf qui gere les diff rents sc narios d appels 6 2 1 Installation et configuration Pour installer le service FTP sur notre serveur de base CENTOS nous avons besoin du paquet vsftpd L installation passe par la commande su yum install vsftpd En ce qui concerne la configuration elle se fait dans le fichier etc vsftpd vsftpd conf Ce que nous avons d modifier Connexion anonyme anonymous enable NO Pour des raisons de s curit nous avons pr f r interdire les connexions anonymes via le FTP Autorisation des utilisateurs locaux local enablezYES Dans un premier temps nous pensions acc der au FTP avec un compte local comme le compte admin cr dans la partie Ajout d utilisateur syst me il tait donc n cessaire d autoriser ces connexions Autorisation des critures sur le serveur via FTP write enable YES Le FTP nous servira principalement cr er et modifier des fichiers nous avons donc besoin des droits d critures Permet de prc sis le propri taire l upload chown uploads NO Lorsque cette option est activ e tous les fichiers t
72. erie Num eric 4035 2002 Num eric 4039 2001 Cart UAI16 1 L gende des liaisons Architecture r seau Pojet MMA Pondeuse d appels gt Liaison en Ethernet rd Liaison en Serie Q Q o gt Liaison t l phonique en RJ 11 h Poste Analogique Y os pay a X 1000 erg Wa 9 3 Lancement analyse Le lancement de l analyse se fera partir de l IHM de Mathias Plateau Lors de la configuration d une campagne d appel l utilisateur pourra choisir ou non d analyser celle ci campagnel D x Choix Dur e appels FR E secondes Sc nario s Nombre d tapes Sc nario 1 a B Configuration Sc nario M Sc nario 3 Sc nario 4 Sc nario 5 Analyser Annuler Appeler L utilisateur aura cocher cette cache lorsqu il la cochera l analyse d butera en m me temps que la campagne d appels 9 4 Analyse de la qualit de service 9 4 1 Fonctionnement et mise en uvre Le transfert de paquet est le moyen de transmission d un message sur un r seau Le message n est jamais envoy en un seul bloc toutes les informations transporter sont d coup es en paquets pour tre achemin s d un bout l autre du r seau Le paquet de base consiste en un en t te avec les adresses des syst mes metteur et r cepteur ainsi qu un corps ou champ de donn es avec les donn es transf rer Lorsque le paquet parcourt la pile de protocoles TCP IP les prot
73. ers transfert suppression de fichiers renommage liste des fichiers Une connexion de donn es initialis e par le client ou le serveur pour transf rer les donn es requises contenu des fichiers liste de fichiers Et il peut s utiliser de deux facons diff rentes En mode passif Maitre commandes port port 1024 65635 2 Client FTP Serveur FTP donn es port port 1024 65635 20 En mode passif le serveur FTP d termine lui m me le port de connexion utiliser pour permettre le transfert des donn es data connexion et le communique au client En mode actif Ma tre commandes port port 1024 65635 2 Client FTP Serveur FTP donn es port port 1024 65635 20 En mode actif c est le client FTP qui d termine le port de connexion utiliser pour permettre le transfert des donn es Ainsi pour que l change des donn es puisse se faire le serveur FTP initialisera la connexion de son port de donn es port 20 vers le port sp cifi par le client 2 3 8 PhpMyAdmin Dans le cadre de la cr ation et du suivi des campagnes d appels nous devons sauvegarder les diff rentes donn es Pour cela nous avons choisi d installer phpMyAdmin qui nous permettra de la cr ation jusqu la gestion et de stocker ces donn e dans une base MYSQL 2 3 8 a Qu est ce que phpMyAdmin phpMyAdmin est une application Web de gestion pour les syst mes d
74. essage en cas de touche invalide Repeat loop nombre de r p titions de Announcement Dans la seconde partie nous pouvons d finir Les choix qui seront actifs dans le menu comme choisir un deuxi me menu une file d attente un poste 2 3 7 Le protocole FTP Pour pouvoir ex cuter les scripts qui nous permettront de lancer les diff rents appels nous devons installer un serveur FTP sur le quelle nous enverrons les fichiers call distance Dans un second temps il servira aussi modifier le fichier extension conf qui gere les diff rents sc narios d appels 2 3 7 a Qu est ce qu un FTP File Transfer Protocol protocole de transfert de fichiers ou FTP est un protocole de communication destin l change informatique de fichiers sur un r seau TCP IP Il permet depuis un ordinateur de copier des fichiers vers un autre ordinateur du r seau ou encore de supprimer ou de modifier des fichiers sur cet ordinateur Ce m canisme de copie est souvent utilis pour alimenter un site web h berg chez un tiers Sa variante est prot g e par les protocoles SSL ou TLS SSL tant le pr d cesseur de TLS s appelle FTPS Il appartient la couche application du modele OSI utilise une connexion TCP 2 3 7 b Son Fonctionnement Le protocole utilise deux types de connexions TCP Une connexion de contr le initialis e par le client vers le serveur port 21 en g n ral pour transmettre les commandes de fichi
75. etText settings gt value nom utilisateur toString ui gt lineEditHote gt setText settings value hote toString ui gt lineEditMDP gt setText settings value mdp toString MainWindow MainWindow t delete ui void MainWindow on pushButtonHote clicked settings gt setValue hote ui lineEditHote text 24 ui lineEditHote clear H void MainWindow on pushButtonUsers clicked settings gt setValue nom utilisateur ui gt lineEditUsers gt text ui lineEditUsers clear J void MainWindow on pushButton clicked settings gt setValue mdp ui gt lineEditMDP gt text ui lineEditMDP clear Ligne 9 on instancie un objet QSettings qui cr er un champ dans le registre 1 argument nom de l quipe 2e argument non du programme Cette ligne permet dans un premier cas si les entr es n existent pas ce la les cr ent et s il existe cela r cup re les donn es d j pr sentent Lignes 10 12 ces lignes permettent de mettre les valeurs qui sont pr sentent actuellement dans le registre dans les zones de texte correspondantes Lignes 21 37 ces slots permettent de changer les valeurs dans le registre l aide de la fonction setValue Apr s l enregistrement on efface la LineEdit avec la fonction clear 8 3 3 Application dans le programme principal de la pondeuse d appels Voici la m thode de la classe ClientFTP qu
76. exist bool en qui permet de savoir si le sc nario est d j pr sent dans le fichier extensions conf qui est modifi en local dans le r pertoire du projet pou l instant numero numero du sc nario fichierScenario fichier extensions conf qui contient les sc narios d appel ftpScenario ftp qui fait transiter le fichier extensions conf entre la TRIXBOX et le PC client M thodes genererFichierScenario modifie le fichier extensions conf pr sent en local gt definirScenarioAppel r cup re le fichier extensions conf afin de le modifier l aide de la m thode genererFichierSc nario Slots gt m commandFinished int id bool erreur slot ex cut a chaque fin du commande le la classe QFTP gt m currentCommand int id affiche la commande en cours gt m commandStarted int state s ex cute a chaque d but de commande gt m stateChanged int state affiche l tat de la connexion FTP La Classe ClientFTP e Attributs settings instance de la classe QSettings qui permet de sauvegarder des donn es de connexions au FTP sur le pc fichierPondeuse instance de la classe Fichier elle sert a faire transit les fichiers entre la TRIXBOX et le pc client e M thode connexionFTP permets l ouverture de la session FTP EnvoyerFichier permet l envoi du fichier sur la trixbox var spool asterisk outgoing recupererFichierExtension t l charge le fichier exten
77. fectuer l appel Si la ligne est occup e le fichier reste dans le r pertoire 8 4 Conclusion La partie du projet que j avais en charge consistait g n rer des appels en simultan sur un serveur d appels pr t pour cette occasion par les MMA Chaque appel devait suivre un sc nario bien d fini par l utilisateur Au moment de la r daction de ce dossier la majeure partie des fonctionnalit s qui m incombaient sont op rationnelles La g n ration d un appel avec une liste d action DTMF fonctionne La g n ration d appel simultan fonctionne appel sur plusieurs postes En revanche des parties du projet n ont pas encore t trait es notamment r cup ration des appels qui n ont pas abouti La mise en commun de la partie qui g n re l appel et l IHM qui configure une campagne n est pas encore faites Par cons quent je n ai pas r ussi effectuer une campagne compl te Le test de la surcharge du serveur n est donc pas encore effectif Ce retard s explique par la difficult que nous avons eue au niveau de la compr hension et de la mise en place des appels automatiques Le transfert des fichiers entre la trixbox et le pc de l utilisateur gr ce au protocole FTP a t tr s long mettre en place compr hension et appropriation de la biblioth que QT associ e et a donc retard la suite du projet Dans l ensemble ce projet a t b n fique le fait d avoir une t che bien d finie m a beaucoup
78. finir correctement le contexte li aux extensions et au trunck Configuration ajouter dans le fichier extensions conf mma exten gt _2XXX 1 Dial SIP TrixboxtoOXE S EXTEN _2XXX X peut varier de 0 9 donc num ro de 2000 2999 1 Il s agit de la priorit Dial Il s agit de l action effectuer donc composer dans cotre cas SIP Protocole utiliser TrixboxtoOXE Point de connexion S EXTEN Expression remplac e par le num ro compos 6 4 1 b Configuration c t OXE Alcatel Il faut dans un premier temps se connecter via SSH sur l OXE 192 168 0 10 avec les identifiants user mtcl passwd mtcl Puis ex cuter la commande mgr Cr ation d une passerelle SPI Se d placer dans SIP Passerelles SIP Consultation Modification IL faut d finir l adresse de la passerelle SPI dans notre cas ca sera l adresse le la CS 192 168 0 10 et valider par ctrl V Ajout d une adresse IP de confiance Se d placer dans SIP Adresse IP de confiance Cr ation Il faut d finir l adresse de confiance dans notre cas l adresse IP locale de notre serveur Trixbox 192 168 0 5 et valider par ctrl V Prieur Quentin Projet MMA Pondeuse d appels 89 190 Configuration de la passerelle externe IL faut d finir plusieurs param tres le nom de la passerelle le domaine contacter le num ro du port le nom d ulisateur sortant et son mot de passe 6 4 1 c Conclusion
79. g chemin La m thode prend en param tre un QString qui est le chemin du r pertoire ou le fichier sera envoy Les deux chemins possibles sont mis dans des constantes Voici la m thode bool ClientFTP envoyerFichier QString chemin place un fichier sur le serveur en FTP t bool retourFichierCall retourFichierCall false if fichierPondeuse gt open QIODevice ReadOnly t this connexionFTP this gt put fichierPondeuse chemin fichierPondeuse gt fileName retourFichierCall true if retourFichierCall false qDebug Fichier non envoyer endl else qDebug Fichier envoyer endl this gt close return retourFichierCall Fonctionnement de la m thode on commence par tester l ouverture du fichier en mode lecture ligne 160 165 On effectue une connexion en FTP sur le serveur l aide de la m thode connexionFTP ligne 162 e ensuite on transfert le fichier sur le serveur l aide de la m thode put amp File QString ligne 163 fin de la connexion lI96 ligne 175 Suite au t l chargement du fichier d appel call la trixbox g n re l appel au destinataire voulu et avec le sc nario d fini dans le fichier extensions conf Si le fichier call poss de les bons param tres l appel est effectu et le fichier est automatiquement supprim par le syst me asterisk Si l appel ne poss de pas les param tres requis le fichier est supprim sans ef
80. ger une ancienne campagne A Selectionner supprimer une campagne supprimer une campagne Selectionner S Supprimer Annuler Suivant Nous ferons donc appel au cas d utilisation lire une campagne s centre dappel 8 o analyste pondeuse d appel R r testeur dappel A r3 BD demande lecture d une ancienne campagne r demande d informations Envoi des informations i RE ee ci a EA Pour toute les donn es d une ancienne campagne Affichage dans l IHM i Voici le code permettant de remplir les comboBox gr ce au nom de campagnes enregistr es dans la base de donn es void Configuration remplirCombo QSqlQuery query query prepare SELECT nom campagne FROM campagne query exec while query next ui comboBoxCampagne addItem query value 0 toString ui comboBoxSupprimerCampagne addItem query value 0 toString if query lastError isValid QmessageBox warning this Erreur query lastError text query finish fin de la requete Ligne 1 D finition de la fonction Ligne 2 D but de la fonction Ligne 3 Cr ation de la query de type QsqlQuery Ligne 4 Compilation de la requ te Ligne 5 Ex cution de la requ te Ligne 6 10 On s lectionne toutes les campagnes de la base de donn es puis on les ajoutes dans les comboBox la fonction toString permet de convertir en chaine de caract
81. gt gt 3 afficher r sultats pondeuse d appel Liste des t ches Prise de connaissance du sujet Cr ation d un planning pr visionnel documentation sur la t l phonie d crire les tapes cl s d un appel e Choix codage EDI e trouver solution pour g n rer un appel l aide de la trixbox e trouver solution pour g n rer des appels simultan s mis en place de la pondeuse d appels e d finition d un premier diagramme de classe Visite de l entreprise et mise au point avec les interlocuteurs Pr paration la revue 1 et cr ation du dossier Codage de l application d administration du site Test unitaire 4 1 tude pr liminaire Suivre les Appels simultan s Lorsque l utilisateur souhaitera effectuer une campagne d appel l aide de l application il devra tre connect la trixbox sur le r seau local ou sur celui de la trixbox La pondeuse d appels devra alors g n rer simultan ment le nombre d appels d finis dans l application pendant le temps imparti ou jusqu a saturation du centre d appels Ces appels devront avoir une r ponse dans un temps compatible avec les valeurs du centre d appels mais aussi une qualit d coute acceptable la fin de cette campagne le nombre d appels simultan effectu devra tre enregistr 4 internet Pc de contr le g de router Cable ethernet Cable s rie switch Alcatel OMNI PCX Faisceau IP Tr
82. i permet la connexion au serveur FTP de la trixbox void ClientFTP connexionFTP this gt connectToHost settings gt value hote toString this gt login settings gt value nom utilisateur toString settings gt value mdp toString Les lignes settings value correspondent aux champs dans le registre qui contiennent les informations Ce sont des m thodes qui font partie de la classe Qsettings qui permettent de r cup rer les valeurs pr sentes dans la base du registre 8 3 4 La g n ration d un sc nario Le sc nario d un appel correspond la suite d actions qui seront effectu es pendant l appel et qui sont d fini dans l IHM de Mr Mathias Plateau e d crocher pause de 3 secondes e envoi du DTMF pause de 1 seconde e envoi du DTMF 3 et 4 pauses de 5 secondes lecture du fichier goodbye ulaw raccrocher L appel se fera via un fichier call pr sent sur la TRIXBOX Pour rappel voici la structure de ce fichier Channel c est le num ro qui sera appel e WaitTimes c est le temps d attente pour un appel sans r ponse avant que l appel soit consid r comme avort RetryTimes c est le temps d attente entre chaque tentative e MaxRetries c est le nombre de tentatives si la ligne n est pas disponible e Context nom du sc nario qui sera d fini dans le fichier extensions conf e Extension c est l ou l appel devra se connecter e CallerlD le nom qui s aff
83. iaisons Architecture r seau gt Liaison en Ethernet Projet MMA Pondeuse d appels Num eric 4035 2005 Liaison Serie nam Liaison t l phonique en RJ 11 Q Q Q Plage adresse dynamic 192 168 0 128 192 168 0 254 Fees pay 6 rare are Poste Analogique 1000 fr 3 2 Architecture logicielle Pour l tude pr liminaire nous avons eu besoin de multiples logiciels qui ont t install s sur les postes de travail e R alisations des diagrammes Modelio 2 2 D veloppement des IHM et codage QtCreator version Linux et Windows 7 3 2 1 Choix de la base de donn es Le PABX Alcatel Lucent Omni PCX Enterprise R8 0 poss de en effet un syst me de gestion de base de donn es de type MAO qui utilise le protocole SQL Or si un jour le groupe MMA d cide de changer son mat riel nous avons opt pour une autre solution en nous orientant vers une base de donn es MYSQL qui sera incorpor e notre syst me Trixbox nous y acc derons via des requ tes SQL Version de la trixbox 2 8 0 4 3 2 2 Les couches logicielles Couches logicielles CentOS Asterisk Trixbox version 2 8 0 4 Le serveur est install sur un syst me CentOS syst me de distribution linux sur lequel est install Asterisk Asterisk est un autocommutateur t l phonie priv e PABX il utilise 2 syst mes de licences l une libre et l autre propri taire pour syst mes GNU Linux Il permet entre autres la messagerie voca
84. ichera sur le t l phone du destinataire Comme chaque appel est diff rent c est la ligne context qui va changer Chaque context correspond un sc nario et tous les contexts sont mis dans le fichier extensions conf du r pertoire etc asterisk Pour g n rer un sc nario il faut d abord t l charger le fichier extensions conf qui se situe sur la trixbox pour le placer sur le pc client afin de pouvoir le modifier en local Le fichier extensions conf est structur de la mani re suivante general globals nom d un sc nario exten gt X Y Z general ce sont les option du fichier globals vous pouvez sp cifier vos propres variables qui peut tre utilis plus tard dans les extensions Ce qui n est ni general ni globals est consid r comme un sc nario X extensions num ro pour lequel le sc nario s applique s signifie toute les extensions Y priorit de l action Z fonction qui sera effectu 8 3 5 recupererFichierExtension Le t l chargement du fichier extensions conf qui se trouve dans le r pertoire etc asterisk se fait via le m thode XXX de la classe YYY Voici le code de la m thode void ClientFTP recupererFichierExtension t l charge le fichier extensions conf de la trixbox 190 this connexionFTP this cd etc asterisk this get extensions conf fichierPondeuse qDebug ichier telecharge this clo
85. ie Dans la seconde m thode elle se fait via le protocole http et n est donc pas sauvegarder 6 4 Trunk SIP Mise en place Dans notre cas nous allons en avoir besoin pour faire le lien entre notre serveur Trixbox et L OXE Alcatel pour pouvoir faire transiter des appels SIP de l un vers l autre nous aurons en aurons donc besoin pour cette utilisation 6 4 1 Solution N 1 Apr s avoir recu le mat riel pr t par les MMA la solution tait de mettre en place un Trunk SIP entre un serveur Trixbox et l OXE Alacatel 6 4 1 a Configuration c t serveur Trixbox Etape 1 Cr ation du point de connexion 172 17 83 170 maint b Sites Web b Torrent 5 Trucs amp Astuces D B amp vou site WEB EJ F8 3 Le trunck SIP doit tre cr t D comme un utilisateur et cette rix 97 cr ation doit tre faite partir De DD de l interface de gestion web System Status Packages PBX System Settings Help PITT PBX Settings Dans un premier temps il 2erv s Je Asterisk NEN Config File Editor faut ajouter un utilisateur sur web server INN Fux States le serveur ce qui modifiera le ss fichier de configuration COR SOC Bulk Extensions f SSH server FREE PER sip conf mysa A OXEtoTrixbox Nom du trunk type friend user peer Type Peer Une entit SIP pour Asterisk qui envoie des appels User Une entit SIP qui emmet des appels travers Asterisk Friend Une entit qui est
86. ier une seule fonction et lui passer un param tre e Application ici on place le nom de la fonction comme dans le test on peut placer Playback Data ici on place le param tre de la fonction juste au dessus par exemple Hello world qui est un son pr sent par d faut sur Asterisk Ensuite on place les informations de l appelant e CallerlD cest le nom de l appelant qui sera affich sur le t l phone du destinataire 4 2 3 Exemple de fichier Fichier Edition Format Affichage 7 Channel IEEBy B388559192 168 0 5 Application Playback Data hello world Voici le fichier utilis pendant le test ce fichier va appeler l aide du protocole BIB le num ro de t l phone 83005 et va jouer en arri re plan gr ce l application Playback le fichier audio hello world ulaw format issue de la compression d un fichier audio avec le codec ulaw tr s gourmand en bande passante mais avec une compression de donn assez faible pour garder le son intact Apr s avoir g n rer le fichier il faut le placer dans le r pertoire l aide de la commande mv nomDuFichier call var spool asterisk outgoing ou cp nomDuFichier call var spool asterisk outgoing suite a ceci asterisk g n re automatiquement l appel correspondant au fichier pr c demment g n rer Pour que l appel se lance automatiquement le fichier doit avoir l user Asterisk et non root car cela emp che au fichier d tre ouvert automatiquement
87. iguration Cliquez ensuite sur le bouton du sc nario pour le param trer Pour l exemple l utilisateur a choisi O Anal puniti scd 3 tapes Annuler Appeler Scenario 1 H Nombre d appel s 1 Valider l ne vous reste plus qu param trer le nombre d appel s pour le sc nario choisi les diff rentes tapes en indiquant les Etapes 1 DTMF et le temps de pause en chaque envoi de DTMF Choix DTMF O c Temps de pause secondes lo Etapes 2 Choix DTMF O c Temps de pause secondes lo Etapes 3 Choix DTMF 0 c Temps de pause secondes o campagnel E o e Si vous voulez param trer un autre Choix sc nario refaite la m me Kurdrca EEA manipulation pour le sc nario 2 3 EE 4 et 5 Dur e appels E iz secondes Sc nario s Nombre d tapes v 1 Configuration M Sc nario 2 la r Configuration 1 Analyser Annuler Appeler Une fois la configuration termin e cliquez sur le bouton Appeler vos appels seront pass s 15 2 Charger une ancienne campagne configuration Q Q Q Au lancement de l application il vous suffit de cliquer sur charger une ancienne campagne de la s lectionner et de cliquer sur suivant vous basculerez alors sur la fen tre de la campagne avec les param tres enregistr s pr c demment Creer une nouvelle campagne Charger une ancienne campagne Selectionner le S
88. il est de type entier il permet de compter le nombre d appels qui n ont pas pu tre pass s car la ligne n tait pas disponible nbEtatReussi est un attribut de la classe suivi il est de type entier il permet de compter le nombre d appels qui ont t correctement pass s c est dire que toutes les tapes li es l appel se sont d roul es correctement nbAppel est un attribut de la classe suivi de type entier il compte le nombre d appels simultan s passer durant la campagne qu il soit ou non r ussi tat r ussi ou avorte La classe Scenario la classe Sc nario permet de savoir quels sc narios doivent suivent les appels durant la campagne envoi de DTMFs Pause tempsAttente c est un attribut de la classe Scenario de type entier qui donne le temps d attente entre deux tapes du sc nario nom C est un attribut de la classe Scenario de type chaine de caract res c est le nom du sc nario e nbAppel c est un attribut de la classe Scenario de type entier qui donne le nombre d appels qui doivent tre li s ce sc nario e La classe Scenario est compos e d tapes une structure qui contient le nom de l tape sa valeur ainsi que le temps de pause accord apr s cette tape 4 2 tude pr liminaire G n rer un appel Apr s la cr ation des threads il faudra l int rieur de chaque thread g n rer un appel suivant le sc nario d fini dans l IHM concu par l tudiant 1
89. il s agit du nombre de mots de 32 bits constituant l en t te nota la valeur minimale est 5 Ce champ est cod sur 4 bits Type de service 8 bits il indique la facon selon laquelle le datagramme doit tre trait Longueur totale 16 bits il indique la taille totale du datagramme en octets La taille de ce champ tant de 2 octets la taille totale du datagramme ne peut d passer 65536 octets Utilis conjointement avec la taille de l en t te ce champ permet de d terminer o sont situ es les donn es Identification drapeaux flags et d placement de fragment sont des champs qui permettent la fragmentation des datagrammes ils sont expliqu s plus bas Dur e de vie 8 bits ce champ indique le nombre maximal de routeurs travers lesquels le datagramme peut passer Ainsi ce champ est d cr ment chaque passage dans un routeur lorsque celui ci atteint la valeur critique de 0 le routeur d truit le datagramme Cela vite l encombrement du r seau par les datagrammes perdus Protocole 8 bits ce champ en notation d cimale permet de savoir de quel protocole est issu le datagramme ICMP 1 IGMP 2 ATCP 6 UDP 17 Somme de contr le de l en t te ou en anglais header checksum 16 bits ce champ contient une valeur cod e sur 16 bits qui permet de contr ler l int grit de l en t te afin de d terminer si celui ci n a pas t alt r pendant la transmission La somme de contr le est le compl ment
90. ilateur t l phonie Http moderne Protocoles TCP ou UDP TCP ou UDP TCP ou UDP transports Avantages Compatible avec Con u pour les plusieurs Beaucoup utilis op rateurs technologies voulant faire du RTC IP RTC Inconv nients S curit Difficult s avec Service les firewall suppl mentaire Manque de de t l phonie comptabilit inexistant Exemple de Yahoo MSN Livecom Les entreprises solutions utilisant Messenger le protocole Nous avons choisi le protocole SIP pour sa complexit moindre Simple par sa nature textuelle l exemple de HTTP ainsi que ses principaux avantages mais aussi par contrainte de mat riel nous ne poss dons pas la carte requise sur notre OMNI PCX pour utiliser le protocole H323 Nous ne disposions pas de la carte requise sur le PABX pour utiliser le protocole H323 L architecture en couches de SIP telle que la pr sente le mod le OSI fait apparaitre une palette de nombreux protocoles Application SIP TCP IP Data link Physical e RSVP est un protocole utilis pour r server les ressources r seau sur IP avec une excellente qualit de service QoS e R T P Real time Transport Protocol pour transporter des informations en temps r el avec une excellente qualit de services e R T C P Real Time streaming Control Protocol pour assurer le contr le de flux des donn es multim dia S A P Session Announcement Protocol pour pr ciser si les sessions multim dias ouverte
91. int Announcement Il s agit du message qui est entendu par l appelant lorsqu il entre dans la file d attente Music on Hold Class Ici est renseign le groupe de musique qui sera jou e pendant l attente Max Wait Time Temps d attente maximum Max Callers Nombre maximum dans la file d attente Ring strategy Mode de sonnerie dans notre cas sur tous les postes Agent timeout Dur e avant non r ponse Retry Temporisation avant essai suivant WrapUp Time Temps de repos entre deux appels Caller Position Announcements Frequency 0 seconds Announce Position No 2 Announce Hold Time No Periodic Announcements None IVR Break Out Menu Repeat Frequency 0 seconds Fail Over Destination O IVR MenuPrincipal O Queues fileSinistre 100 O Phonebook Directory Phonebook Directory Cette section est d di e aux annonces durant l attente on peut y r gler la fr quence d annonce en seconde et choisir le type d annonce la position le temps d attente Cette deuxi me cat gorie est consacr e l annonce pour revenir au menu pr c dent Cette derni re partie d termine le choix a faire en cas de time out dans la file d attente Soit l appel sera redirig vers e le RVI Une autre file d attente O Terminate Call Hangup O Extensions 33001 QuentinPC
92. ireshark comme point de comparaison dans le but de v rifier le bon fonctionnement de mon application et de ses r sultats obtenus Pr sentation g n rale de PCAP PCAP est une interface de programmation permettant de capturer un trafic r seau Elle est impl ment e sous les syst mes GNU Linux FreeBsd NETBSD OpenBSD et MAC OS X par la biblioth que Libpcap WinPcap est le portage sous Windows de Libpcap Les outils de supervision r seau peuvent utiliser Pcap et ou WinPcap afin de capturer les paquets transitant sur le r seau Les versions r centes permettent galement de transmettre des paquets sur la couche liaison Libpcap et WinPcap permettent aussi de sauvegarder les paquets captur s dans un fichier et la lecture de fichiers provenant de captures pr c dentes Des applications peuvent tre d velopp es utilisant Libpcap ou WinPcap pour pouvoir capturer du trafic r seau le lire l enregistrer et l analyser Libpcap et WinPcap fournissent l outil de filtrage et de capture de paquets qu utilisent de nombreux logiciels libres ou commerciaux d analyse de trafic allant des analyseurs de protocoles moniteurs r seau aux syst mes de d tection d intrusion g n rateurs de trafic et testeurs de r seau PCAP permet de faire des captures de trafic en appliquant des filtres la capture On retrouve des filtres par adresse IP source destination les 2 par adresses Ethernet par protocole de n importe quelle couche etc
93. it La valeur de la QspinBox spinBoxTempsAppel est r cup r e gr ce au slot puis stock e dans l attribut tempsAppelCampagne de la classe campagne voici le code correspondant void Campagne on spinBoxAppel valueChanged int argl tempsAppelCampagne argl Ligne 1 D finition de la fonction arg1 poss de donc la valeur du spinBox Ligne 2 3 4 tempsAppelCampagne prend la valeur de arg1 Passons maintenant la gestion des sc narios Pour une campagne nous avons besoin d au minimum un sc nario cependant il a fallu coder l interface de mani re obliger l utilisateur param trer d abord le sc nario 1 puis le 2 en cas de plusieurs sc narios afin que l utilisateur ne param tre pas le sc nario 2 avant le sc nario 1 campagnel Choix Num ro appeler Dur e appels 1 secondes Sc nario s Nombre d tapes 7 1 Configuration SS u z M Sc nario 2 1 Configuration C Analyser Annuler Appeler La checkbox du sc nario sera toujours checked sans possibilit de modifier la valeur cependant pour les 4 autres sc narios les checkBox spinBox et pushButton ne sont pas disponibles ou visibles Hide pour cacher l l ment setEnabled false pour rendre l l ment indisponible ui pushButtonScenario2 hide ui gt spinBoxScenario2 gt hide ui gt checkBoxScenario2 gt setEnabled false Nous avons ainsi un code similaire pour les autres sc
94. it des informations sur des protocoles r seau et applicatives partir de donn es captur es sur r seau Comme un grand nombre deprogrammes Wireshark utilise la librairie r seau Pcap pour capturer les paquets La force de Wireshark vient de e sa facilit d installation e sa simplicit d utilisation de son interface graphique son tr s grand nombre de fonctionnalit s Wireshark fut appel Ethereal jusqu en 2006 o le d veloppeur principal d cida de changer son nom en raison de probl mes de copyright avec le nom de Ethereal qui tait enregistr par la soci t qu il d cida de quitter en 2006 WANem WANem Un outil localis entre deux h tes comme un t l phone et un PBX pour simuler une qualit de lien r seau sp cifique Des param tres comme la latence la bande passante la perte de paquet et la gigue sont disponibles Comme WANem est au milieu le routage doit tre configur sur les deux machines de test pour forcer le trafic entre eux passer travers WANem Un grand nombre de param tres comme la taille de la bande passante la perte de paquet la gigue la latence peuvent tre configur s avec une interface web efficace WANem doit tre situ entre deux h tes entre lesquels nous voulons simuler un lien r seau Les param tres de routage qui ont besoin d tre sur les clients ou sur la machine WANem restent extr mement faciles Il n est pas n cessaire d tre un expert r seau et Linux
95. ize taillex tailley Ligne 1 Taille x et y de la fen tre value est le coefficient multiplicateur en fonction du nombre d tape Ligne 2 3 4 5 6 Si il y a moins de 6 tapes l axe X de l IHM mesure 400px Ligne 7 8 9 10 11 Sinon on double la taille de l IHM sur l axe X Ligne 12 tailley augmente en fonction du nombre d tapes Ligne 13 Redimentionnement de la fen tre Voici ce que cela donne avec 7 tapes Scenario 1 BH X FRERES Etapes 6 Nombre d appel s 1 Valider Choix DTMF 0 3 Temps de pause secondes b B Etapes 1 Etapes 7 Choix DTMF 0 J Choix DTMF 0 2 Temps de pause secondes o Temps de pause secondes ob B Etapes 2 Choix DTMF 0 oj k Temps de pause secondes ob B Etapes 3 Choix DTMF 0 oj Temps de pause secondes ob B Etapes 4 Choix DTMF 0 d Temps de pause secondes ob HB Etapes 5 Choix DTMF 0 3 On instancie autant d objet de type Etape que d tapes d finies dans le sc nario Voici la classe Etape monEtape la classe Scenario Etape monEtape L tape cr e est plac e dans le layout vertical on les place ensuite dans le vecteur Etapes d clar dans scenario h QVector Etape monVecteurEtape Gr ce a la fonction push back qui place l tape a la fin du vecteur puis on affiche fen tre for int i 1 i lt nbEtapes i monEtape new Etape this i verti2 addWidget monEtape monVecteurEtape push back monEtape
96. l DX spool trixbox2 localdomain asterisk l r r r r r r r v r C2 c2 A C3 A C 5 D ED ET Fai Fai Fai Fal Fai Unable t led t Unable t led t Unable t Led t Unable t led t Unable t led t 0 open var s 0 scan servic 0 open var s 0 scan servic 0 open var s 0 scan servi 0 open var s 0 scan servi 0 open var s 0 scan servic ce var spoo ce var spoo pool asteris e var spoo pool asteris e var spoo pool asteris pool asteris pool astaris e var spoo k outgoing ap l asterisk ou k outgoing ap l asterisk ou k outgoing ap l asterisk ou k outgoing ap l asterisk ou k outgoing ap l asterisk outg e J e 9 e J e 9 g GU rr O cb O reo C35 cr c3 On peut voir que le fichier appeU2 call n a pas pu tre ouvert et qu il n a pas t ex cut 12 call No s oing appel c 12 call oing appel2 c 12 call oing appel2 c 12 call oing appel c 12 call oing appel2 T r 3 r call f f ji uch file or ch file or ile or ile or ile or x A 1 rl4 1 L 1 A iL x irecto irecto irecto recto recto ry deleting ry deleting ry deleting ry deleting T ting ry dele 4 3 change de donn es 4 3 1 tude des solutions possibles Un change de do
97. l en mode debug Proc dures du test Op rations R sultats attendus R sultats obtenus TEST n 1 Interaction avec la base de donn es ajout d un champ quelconque Cas n 1 la base de donn es ne contient aucun nom de campagne temps d appel et num ro d appels dans les champs nom campagne temps appel et numero appel de la table campagne L utilisateur v rifie que la base de donn es ne contient aucun nom de campagne temps d appel et num ro d appels dans les champs nom campagne temps appel Ok et numero appel de la table campagne Cas n 2 Champ Nom de campagne rempli sur la fen tre configuration Appui sur le bouton Suivant Champ num ro d appels et temps d appel remplis sur la fen tre Campagne Appui sur le bouton Appeler Lenom de campagne est alors enregistr dans la table campagne dans le champ nom campagne Le num ro d appel et le temps d appel sont Ok enregistrer dans les champs temps appel et numero appel de la table campagne de la base de donn es MYSQL TEST n 2 Ajout d un champ vide pour le gt Lors de l appui sur le bouton suivant le programme nom de campagne demande l utilisateur de Ok rentrer un nom de campagne valide dans la fen tre TEST n 3 gt Lors de l appui sur le Interaction avec la base de honton suivan le programme a i pr vient l utilisateur gr ce une donn
98. l encadr c est dans le paquet SIP SDP que l on d termine sur quel port transit le paquet RTP ici 18932 Le paquet RTCP sera donc port 18933 N anmoins on ne sait pas filtrer directement les paquets SIP mais on sait qu ils utilisent le port 5060 on va donc filtrer partir des paquets UDP les paquets sur le port 5060 V User Datagram Protocol Src Port sip 5060 Dst Port sip 5060 Source port sip 5060 Destination port sip 5060 Length 465 P Checksum 0x275e validation disabled Comme le montre cette capture on d termine le paquet SIP partir d un paquet UDP et du port 5060 R capitulatif Nous devons filtrer les paquets RTP et RTCP Or nous ne sommes pas en mesure d appliquer ce filtre d entr e Pour cela on doit filtrer les paquets SIP et r cup rer le num ro de port RTP Nous ne pouvons pas appliquer un filtre SIP d entr e on filtre donc les paquets UDP avec le port 5060 Nous obtenons des paquets SIP que nous d cryptons pour obtenir le num ro de port RTP Maintenant que l on connait le num ro de port r cup r dans les paquets SIP on va une nouvelle fois appliquer un filtre UDP les paquets RTP et RTCP tant encapsul s dans UDP on filtre afin de n avoir que les paquets dont nous avons besoin pour identifier les paquets RTP V User Datagram Protocol Sre Port na localise 5062 Det Port 18932 18932 Source port na Local1se 5062 Destination port 18932 18932 Length 180 P Checksum Ox35e
99. l existe galement une version PRO de trixbox d clin sous plusieurs versions Standard Edition SE Enterprise Edition EE Call Center Edition CCE Le CD Trixbox inclut le noyau CentOS pour le syst me d exploitation Asterisk pour la partie IPBX et interface web et Flash Operator Panel FOP pour la partie graphique de l interface web Une fois le produit install l administration de Trixbox est enti rement r alis e depuis une interface web Seul un acc s SSH peut tre parfois utile lors de l ajout de nouveaux modules fonctionnels 2 2 2 Pourquoi ce choix Pour g n rer des appels automatiques et simultan s nous avons besoin d un serveur pour mettre ces diff rents appels Le serveur Trixbox joue le r le d IPBX et ce choix tait impos dans le cahier des charges du projet 2 3 Les diff rents services du serveur Trixbox 2 3 1 Le service DHCP Avant la r ception du mat riel des MMA le fonctionnement du projet tait bas sur deux Trixbox Pour pouvoir utiliser des softs phones install s sur des ordinateurs des Ipphones ou d autres p riph riques IP avec la Trixbox il faut configurer un serveur DHCP 2 3 1 a Qu est ce qu un DHCP Dynamic Host Configuration Protocol DHCP est un protocole r seau dont le r le est d assurer la configuration automatique des param tres IP d une station notamment en lui affectant automatiquement une adresse IP et un masque de sous r seau DHCP peut aussi config
100. lation du centre d appels pr t e par les MMA Nous allons maintenant nous int resser au c t technique de cette mise en place 5 Internet telephony service provider 2 5 1 Visuelle de la maquette Les diff rents composants qui forment la maquette sont 2Cartes UAI 16 1 o Carte pour 16 quipements num riques ex poste t l phonique 1 Carte MIX 4 4 8 elle comporte o 4 acc s de type TO o 4ports num riques o 8 ports analogiques e 1 Carte LANX8 2 o Ils agit d un switch int gr e 1 carte MG PRA T2 o Comporte 2 acc s de types T2 1 Carte GD o D tiens toute intelligence se place en position O du rack 1 Carte CS o Appel aussi Call Server o Elle est connect e la GD est administr e via telnet et supervis e via CCSupervision 2 5 2 Premi re installation La premi re tape consiste ex cuter la commande netadmin via une connexion telnet sur l adresse IP de la CS 192 168 0 10 Elle est utilis e pour configurer l adresse IP ainsi que les diff rents param tres r seau La seconde tape a pour but de cr er une base de donn es vierge pour y sauvegarder toute la configuration de la CS il faut passer par le compte swinst partir de cet instant le service de t l phonie est fonctionnel Il faut maintenant configurer la GD Geteway Driver Au premier d marrage il faut lui renseigner dans sa configuration via le port console son adresse IP le masque sous r seau uti
101. le les files d attente les agents d appels les musiques d attente les mises en garde d appels et la distribution des appels Il est possible galement d ajouter l utilisation des conf rences par le biais de l installation de modules suppl mentaires et la recompilation des binaires Asterisk impl mente les protocoles H323 SIP La trixbox est l interface graphique d Asterisk 3 2 3 Choix du protocole Nous avons eu besoin de choisir parmi plusieurs protocoles afin d assurer la liaison entre la trixbox et l Alcatel OMNI PCX ENTERPRISE nous avons donc fais le choix de ce protocole avec l tudiant 1 Voici une tude des diff rents protocoles que nous avons s lectionn pour les comparer Session Initiation Protocol SIP est un protocole standard ouvert de gestion de sessions souvent utilis dans les t l communications multim dias son image etc Il est depuis 2007 le plus courant pour la t l phonie par internet la VoIP H 323 regroupe un ensemble de protocoles de communication de la voix de l image et de donn es sur IP Cest un protocole d fini comme Syst mes de communication multim dia en mode paquet Media Gateway Control Protocol MGCP est un protocole permettant de contr ler les passerelles multim dias Media Gaeway qui assurent la conversion de la voix et de la vid o entre les r seaux IP et le r seau t l phonique commut RTC Choix du protocole Comparatifs des protocoles principaux
102. le flux de donn es num riques que va g n rer la transformation d un chantillon temporel de voix analogique Les codecs sont r pertori s par leur nom UITU L chantillonnage consiste relever intervalle r gulier la valeur du signal qui repr sente le son Plus cette valeur est lev e plus la qualit est bonne et la consommation de bande passante importante Les codecs les plus utilis s et leurs vitesses d chantillonnage sont les suivants Codage sans perte G 711 64 kb s utilisation importante de bande passante Codage avec pertes division par deux de la G 726 32 kb s bande passante par rapport G 711 Faible consommation de la G 729 8 kb s bande passante codage avec pertes mais utilisation possible pour la t l phonie Tr s faible utilisation de bande passante codage avec pertes La musique et G 723 1 MPMLQ 6 3 kb s les codes DTMF ne peuvent pas tre transport s de mani re fiable par ce codec Tr s faible utilisation de bande passante codage avec pertes La musique et G 723 1 ACELP 5 3 kb s les codes DTMF ne peuvent pas tre transport s de mani re fiable par ce codec Le choix du codec est un compromis entre la qualit de service souhait e et la capacit de l infrastructure IP d livrer une bande passante et des param tres de QoS qui vont impacter cette qualit Le param tre le plus d terminant auquel on s int resse pour commencer es
103. liant l aspect graphique et codage Bien que que mon avenir ne soit pas totalement arr t je me sens aujourd hui plus orient vers les r seaux plut t que vers la programmation d veloppement Cependant m me si ce projet repr sentait une partie importante de programmation je ne l ai en aucun cas trouv ennuyeux Les contraintes pos es par l entreprise m ont aid tout au long du projet a ne pas sortir du sujet Malgr des carts ressentis sur l avanc e du travail la dynamique de groupe a permis de faire avancer le projet sur les diff rentes parties Pour ma part ce projet reste une tr s bonne exp rience 8 Conception d taill e Partie Chr tien Cl ment E2 suivre les appels smultan es caddie generer une appel centre dappel I lesteur dappel node f extehd analyste pondeuse d appel Dans le cadre bleu se situent les cas d utilisations qui concernent ma partie et que je dois r aliser Voici un sch ma pr sentant le transit des diff rents fichiers de l application entre le PC Client et la TRIXBOX PC PT PC Client Server PT Server TRIXBOX emu transit des fichiers call emm transit du fichier extensions conf 8 1 Diagramme de S quence pour la g n ration d un appel e 2 2 e 3 9 S s B E 8 g a 2 3 mi o 5 d LL ELE 2 LLL amp ILI LT III i E JE r1 i 2 a VI 2 amp Ed a I2
104. lis et l adresse IP de la CS Via le script mgr sur la CS nous allons cr er l alv ole qui est de type 9 cartes autrement appel es media geteway 9 positions Dans les param tres Ethernet il faut ins rer l adresse physique de la GD dans la CS Il ne reste plus qu d clarer les autres cartes via le m me script mer sur la CS 2 5 3 Choix du protocole Nous avons eu besoin de choisir parmi plusieurs protocoles afin d assurer la liaison entre la trixbox et l Alcatel OMNI PCX ENTERPRISE Voici une tude des diff rents protocoles que nous avons s lectionn s pour les comparer Session Initiation Protocol SIP est un protocole standard ouvert de gestion de sessions souvent utilis dans les t l communications multim dias son image etc IL est depuis 2007 le plus courant pour la t l phonie par internet la VoIP H 323 regroupe un ensemble de protocoles de communication de la voix de l image et de donn es sur IP C est un protocole d fini comme Syst mes de communication multim dia en mode paquet Media Gateway Control Protocol MGCP est un protocole permettant de contr ler les passerelles multim dias Media Gaeway qui assurent la conversion de la voix et de la vid o entre les r seaux IP et le r seau t l phonique commut RTC Choix du protocole Comparatifs des protocoles principaux SIP H323 MGCP Complexit Faible Simple lev e n cessite lev e pour la par sa nature ex un comp
105. lisecondes La perte de donn es La transmission de la voix par paquets s appuie sur le protocole RTP real time transport protocole Ce dernier permet de transmettre sur IP les paquets de voix en reconstituant les informations m me si la couche de transport change l ordre des paquets IL utilise pour cela des num ros de s quence et s appuie sur UDP Les contraintes temps r el de d lai de transit voqu plus haut rendent inutile la retransmission des paquets perdus m me retransmis un datagramme RTP arriverait bien trop tard pour tre d une quelconque utilit dans le processus de reconstitution de la voix En voix sur IP on ne retransmet donc pas les donn es perdues Ces pertes de donn es VoIP sont dues aux congestions sur le r seau entrainant des rejets de paquets tout au long du r seau ou une gigue excessive qui va provoquer des rejets de paquet dans les buffers de gigue du r cepteur ceux ci ne pouvant pas accueillir tous les paquets arriv s en retard Une perte de donn es r guli re mais faible est moins g nante en voix sur IP que des pics de perte de paquets espac s mais lev s En effet l coute humaine s habituera une qualit moyenne mais constante et en revanche supportera peu de soudaines d gradations de la QoS Le taux de perte en VoIP est typiquement de quelques pour cent ou dixi mes de pour cent Recommandations g n rales pour assurer la qualit de la voix sur IP
106. n EERA S ERE IPEPRR tete tel PETS CP RED 11 2 3 1 c Mise en place sur le serveur cccceseeeeeeeeee e eene nennen 12 2 3 2 Administration web Cr ation de comptes SIP 13 2 3 3 Administration web Enregistrement d un guide 13 2 3 4 Administration web Installation d une musique d attente 14 2 3 5 Administration web Installation d une file d attente sse 15 2 3 6 Administration web Installation d un IVR eese 18 2 3 5 Ques quun IVR asiste exo e E REA Er EE EKtURFEEN Er UrESUI E EESRRERRE 18 2 3 0 D ConfiguratioM La in xe LUE DR PUR E CE bebat er ts d a SAM 18 2 3 7 Le protocole FTP i e sus eor pee erra e hau oed Ee Rn Earn vga opea Eo kd eda daa uh 19 2 3 ar Qu est ce quun FEP resorcie ey UE XE ONE E EE Ub n Eel CR ue E ETE VS 19 2 3 7 b Son Fonctionnement 4 5 1 eii eu ee paee eere ena Ra Ra RR RR ERR ERR E ERE EE EE Ea 19 223 8 PHDMVAGImIDS an ied voc datis Rod Salon de ORC Rd uet cei De dece detta cade de lee ed 20 2 3 8 a Qu est ce que phpMyAdmin cesses nennen 20 2 4 tude d un FUCK SIP ES Re ERN OE cn oer RU 21 2 4 1 Qu est ce qu un Trunk SIP 2 1 eed ee o ye aere eR V E VERE ae EE CERTO 21 2 5 Mise en place de la maquette MMA Partie technique Luuueeeee 21 2 5 1 Visuelle de la maquette 2 isseuperxas ha eve on PE EAR RR RERTR CHE ER TE
107. nctionnement du syst me Les classes e IHM cette classe repr sente les IHM ce package va permettre la communication entre le syst me et le testeur e Bdd cette classe va permettre l acc s aux informations de la base de donn es aussi bien pour stocker que lire les donn es Voici le diagramme de s quence du cas d utilisation enregistrer une campagne centre_dappel 2o analyste agne p 8 sauvegarder enregistrer rer donn es ess d finir enregistrement cam crire donn es essai e tn a a a e c 2 a c o w essai ppel demande de sauvegarde d pour toutes les donn es d un ssais r3 testeur da demande de sauvegarde Voici le diagramme de s quence du cas d utilisation lire une campagne centre_dappel 8 o analyste X r testeur dappel demande de lecture demande des anciehnes campagne did lecture d une ancienne campagne Lecture des anciennes campagne g envoi des informations Choix testeur demande d acces demande d informations Envoi des informations Pour toute les donn es d une ancienne campagne Recuperer une information 1 T 1 1 1 n T Erivoi de l information Affichage dans l IHM La pondeuse d appels g n re des appels vers le centre d appel qui va traiter ces appels Nous allons maintenant nous placer du c t de la pondeuse d appels La pon
108. nn es s effectue entre la personne qui va g n rer la campagne et celle qui va l analyser afin de pouvoir stopper la campagne si la qualit de service QoS n est pas convenable Ces deux cas seront r alis s sur la m me machine mais avec deux applications diff rentes Nous avions pens utiliser les tubes nomm s Cette id e a t abandonn e parce qu elle ne convenait pas aux attentes convenues car le but tant de s changer un v nement qui d clenchera l arr t de la campagne et les tubes n offrent pas cette possibilit Nous nous sommes donc tourn s vers les signaux Un signal est un v nement g n r par le syst me en r ponse certaines conditions et dont l envoi un processus peut d clencher une r action C est pour ceci que la g n ration des appels se d roulera en parall le de l analyse de la campagne L application qui analyse la qualit de service devra envoyer un signal l application qui g n re les appels ce signal sera trait par un slot priver qui devra stopper la campagne Un slot cest la fonction qui est appel e lorsqu un v nement s est produit On dit que le signal appelle le slot Concr tement un slot est une m thode d une classe 4 4 Choix concernant le d veloppement 4 4 1 Choix li s aux d veloppements de l application 4 4 1 a Langage utilis Le C nous parait le langage le mieux adapte a nos besoins Il est orient objet C est le 3 langage le plus utilise au monde
109. nt dans le r pertoire du projet contient aucun fichier le fichier contient Lancement du test avec o Channel SIP 10 QtestLib o WaitTimes 5 o RetryTimes 2 o MaxRetries 5 o Context test o Extension s o CallerID clement gt le test est termin avec succ s TEST n 2 V rifier que le r pertoire de gt La m thode n a pas renvoy false destination du FTP gt Le fichier est pr sent sur le serveur var spool asterisk outgoing ne gt l appel se d clenche contient pas d j le fichier Commande Is l a lancement du test de l envoi avec QT creator i centre dappel Les cas d utilisation qui me concernent sont ceux qui sont entour s sur l image ci dessus Le Cas d utilisation qui sera test e lors de ce test est g n rer un appel Diagramme de Classe scenarioAppel rscCenario Les classes qui seront test es sont les classes encadr es en bleu Voici la partie de la g n ration d appel qui sera test Elle concerne la g n ration du fichier d appel et l envoi de ce fichier sur la trixbox l aide du protocole FTP run definirScenarioAppel fr 4 get l close genererFichierScenario envoyerFichier l genererFichierAppel envoyetfichier terminate n o p i 1 es SE Architecture r seau du projet p a 4 g internet Pc de contr le LJ t E router B Cabl
110. nt de v rifier le bon filtrage de RTCP 9 5 Affichage de statistiques L affichage des statistiques se fera sur une IHM une fois la campagne d appels termin une IHM apparaitra afin de signaler l utilisateur la fin de la campagne mais aussi pour qu il puisse voir et sauvegarder les param tres de la QoS L utilisateur choisira dans une liste d roulante quel param tre il souhaite afficher Il verra ensuite la valeur moyenne de se param tre sur l ensemble de la communication ainsi que son volution au cours de celle ci Affichage de la GoS H x Quels param tres souhaitez vous afficher c Valider Statistiques Pourcentage du param tres Affichage graphique 9 6 Enregistrement des statistiques L enregistrement des statistiques se fera dans un fichier XML que QT pourra rouvrir afin de le relire Deux approches s offrent nous pour g n rer des fichiers XML partir d applications Qt e g n rer un arbre DOM et appeler save sur celui ci e g n rer le code XML manuellement Le choix entres ces approches est souvent ind pendant du fait que nous utilisions SAX ou DOM pour la lecture des documents XML 9 7 Conclusion Pondeuse d appels Ham de tache Dr fh Pise en man di projet li 3h Recherche sur monrile danaye 7 Ecrire du dossier de projet di Ecrur du diaporama Revue ure Ah Recher
111. ocoles de chaque couche ajoutent ou suppriment des champs de l en t te de base Lorsqu un protocole sur le syst me metteur ajoute des donn es l en t te du paquet le processus s appelle encapsulation de donn es Voici un petit sch ma explicatif d encapsulation des paquets Reve ere e Re Encapsulation des paquets Ainsi afin d analyser la communication nous allons devoir capturer et d coder les paquets transitant sur le r seau On utilisera pour cela la librairie pcap tant d j utilis par l analyseur r seau wireshark elle r pondra donc nos besoins Il nous faudra donc d terminer quels paquets contiennent les informations de gigue perte de paquets d cho et de d lai d acheminement D apr s le sch ma d encapsulation on s est d abord int ress aux paquets IP puis nous sommes remont s jusqu en de la pile Commencons par le paquet IP 32 Bits Version Longueur d en t te Type de service Longueur totale Identification Drapeau D calage fragment Dur e de vie Protocole Somme de contr le d en t te Adresse IP source Adresse IP destination Don es Signification des diff rents champs Version 4 bits il s agit de la version du protocole IP que l on utilise actuellement on utilise la version 4 IPv4 afin de v rifier la validit du datagramme Elle est cod e sur 4 bits Longueur d en t te ou HL pour Internet Header Length 4 bits
112. on Affichage Favoris Intel 10 Interactive JavaSoft di JEDI VCL Kivuto Solutions Im Licenses Logitech Macromedia gt li Martin Prikryl Microsoft Mine MOHWSplash gt Mozilla li MozillaPlugins Mumble Nero Netscape Nokia NVIDIA Corporatior ODBC Oracle Parsec Productions b i Piriform s J Policies 4 pondeuse E DC Media Gener Nom ab par d faut b hote b mdp ab nom utilisateur Type REG_SZ REG_SZ REG_SZ REG_SZ Donn es valeur non d finie 172 17 83 170 toto asterisk Voici l IHM qui permet d enregistrer et de modifier les options qui permettent de stocker les informations n cessaires la connexion au serveur FTP Lorsque l utilisateur d marre l application cette fen tre s ouvre Les champs H te nom d utilisateur et mot de passe sont d j remplis avec les param tres actuellement pr sent sur le PC Si l utilisateur souhaite changer l un des champs il doit crire les nouvelles donn es dans la zone de texte correspondant puis appuyer sur bouton changer en face de la ligne qui a t modifi e Voici le code qui permet de modifier les param tres de connexion au serveur Trixbox MainWindow MainWindow QWidget parent QMainWindow parent ui new Ui MainWindow ui gt setupUi this settings new QSettings pondeuse trixbox ui gt lineEditUsers gt s
113. on d un flux pour crire dans le fichier flux setCodec UTF 8 codec utilis flux lt lt Channel SIP lt lt numero lt lt endl lt lt ecriture dans le fichier iaitTimes lt lt tempsAttenteReponse lt lt endl lt lt RetryTimes lt lt tempsTentative lt lt endl lt lt MaxRetries lt lt nbTentatives lt lt endl lt lt Context lt lt nomScenario lt lt endl lt lt Extension s lt lt endl lt lt CallerID lt lt idAppelant lt lt endl fichierAppel gt close fermeture du fichier retour true return retour Fonctionnement de la m thode 8 3 2 La connexion la trixbox en FTP test de l ouverture du fichier en criture si le test choue la m thode renvoie faux ligne 61 64 cr ation du flux pour crire dans le fichier ligne 69 criture des diff rents param tres l aide des attributs de la classe Appel ligne 71 77 Fermeture du fichier ligne 79 Afin de pouvoir faire transiter les fichiers entre le PC client et la TRIXBOX l application a besoin d utiliser le serveur FTP File Transfert Protocole pr sent sur la TRIXBOX Pour se connecter au serveur on doit connaitre l adresse IP de ce dernier le nom d utilisateur et le mot de passe qui correspond Pour faciliter la connexion et la s curiser une petite application a t cr e pour enregistrer ces donn es directement dans la base de registre du syst me d exploitation pour WINDOWS Fichier Editi
114. on d un poste sur l OXE Alcatel Test Fonctionnel Mise en place d un poste de type num rique Date du test 07 05 2013 Type du test Fonctionnel Objectifs du test 1 R aliser l installation d un poste de type 4035 Cr ation et assignation d un usager Modification d un branchement t l phonique d 3 Conditions du test tat initial Environnement du test L OXE Alactel correctement initialis Le pc de contr le ayant pour ip fixe 192 168 0 50 est directement connect sur le hub concentrateur repr sent par la carte LANX8 2 est sous tension et Se connecter via le logiciel putty au call server 192 168 0 10 23 User mtcl Password mtcl Le pc a acc s au menue de gestion via la commande mgr Le t l phone doit tre de type 4035T et doit tre connecter a un port num rique non configur Proc dures du test Op rations R sultats attendus TEST n 1 Se d placer dans le menu Usager gt gt Cr ation Renseigner les champs suivants No d annuaire 1007 Nom d annuaire TEST Pr nom REVUE Type de poste 4035T Code secret 0000 No poste associ 1008 poste ACD poste Pro ACD Tous les autres param tres doivent rester au r glages par d fauts Valider avec CTRL V puis une seconde fois CTRL V Le poste doit exister dans la liste Pour v rifier il suffit de se d placer dans consultation modification S lec
115. onnexion au FTP De base tous les utilisateur sauf ftpuser n ont pas d acc s au service FTP Il faut les ajouter au fichier liste qui se trouve tre vsftpd user list 1 Acc der a la liste des utilisateurs cmd gt vi or vim etc vsftpd user list 2 Ajouter les utilisateurs qui doivent avoir un acc s ici admin Exemple vsftpd userlist If userlist denyzNO only allow users in this file If userlist denyzYES default never allow users in this file and do not even prompt for a password Note that the default vsftpd pam config also checks etc vsftpd ftpusers for users that are denied ftpuser 3 Enregistrer et fermer le fichier 6 Proc dure de suppression d utilisateur en annexe 6 2 1 c Autoriser les acc s FTP un compte virtuel asterisk Pour des raisons de droit d acc s aux fichiers seul l utilisateur virtuel asterisk peut modifier les fichiers dont nous avons besoin pour g n rer des appels Nous avons donc choisi d autoriser l acc s au serveur FTP via le compte asterisk Les fichiers envoy s sont donc au m me niveau d autorisations puisqu ils seront ex cut s par le m me compte Pour ce faire nous avons du nous rendre dans le fichier passwd situer dans etc Avec la commande su vipw Le fichier etc passwd est compos de 7 champs qui sont s par s par Voici la signification de chacun des champs nom du compte mot de passe numero utilisateur numero de eroupe comment
116. ple pour ins r le nom de la campagne le temps de l appel ainsi que le num ro d appel dans la base de donn es QSqlQuery query query prepare insert into campagne nom campagne temps appel numero appel values nomCampagne tempsAppelCampagne numAppel query bindValue nomCampagne windowTitle query bindValue tempsAppelCampagne tempsAppelCampagne query bindValue numAppel numAppel query exec Ligne 1 D claration de la requ te Ligne 2 3 Pr paration l envoi de la requ te la valeur mettre jour est celle pr c d e de Ligne 4 5 6 Association des champs et des valeurs dans la requ te Ligne 7 Envoi de la requ te 7 2 3 Gestion des erreurs d envoi de la requ te La fonction query lastError permet de v rifier si la derni re requ te g n r une erreur ainsi si elle a retourn une valeur positive un message d erreur apparait sur un QMessageBox l indiquant l utilisateur Nous placerons donc ces lignes de codes apr s chaque requ te SQL if query lastError isValid OMessageBox warning this Erreur query lastError text 7 3 Fonctionnement de l Interface Homme Machine Une interface Homme Machine IHM a donc t cr e l aide de QtCreator Celle ci doit permettre l utilisateur de configurer une nouvelle campagne d en lancer une ancienne ou bien d en supprimer 7 4 Nouvelle campagne la configuration L
117. pour utiliser WANem En effet le lancement les configurations r seau et les tests sont particuli rement faciles et tr s rapides pet Z Pert Iperf est premi rement utilis pour mesurer la bande passante disponible entre deux h tes sur lesquels tourne Iperf Il est galement possible de mesurer la gigue et la perte de paquet Iperf est un outil pour mesurer la bande passante et la qualit d un lien r seau Ce dernier est d limit par deux machines sur lesquelles est install Iperf Iperf utilise les diff rentes propri t s de TCP et d UDP pour fournir des statistiques sur des liens r seau Iperf peut tre install tr s facilement sur n importe quel syst me UNIX Linux ou Microsoft Windows Un h te doit tre configur en tant que client et l autre en tant que serveur Tableau comparatif Plusieurs crit res entraient en compte dans le choix du logiciel il devait tre gratuit relativement simple d utilisation ou bien Besoins document et prendre en compte nos param tres analys s qui sont le d lai d acheminement la perte de donn es la gigue de phase et l cho Logiciels WANem Iperf Wireshark Param tres PANCE pA Smi Latence gigue et cho latence gigue perte de paquets et analys s perte de paquets et pertes de paquets gigue Fonctionnement WANem doit tre Iperf doit tre lanc Lanc en parall le du situ entre deux sur deux machines r seau que l on veut
118. ppel Je vais tre en relation avec 2 acteurs La base de donn es et le testeur d appels Je vais tre aussi en relation avec Cl ment CHRETIEN tudiant 2 pour lui fournir les param tres dont ils a besoin pour g n rer les N appels Florian DAUVERGNE tudiant 3 lui va devoir r cup rer les informations des param tres de la campagne et analyser les appels 3 7 Les tables de la base de donn es Les tables ont t choisies en fonction des besoins du projet ainsi que par d duction en fonctions des diff rents diagrammes et des IHM Les tables suivantes sont mes tables je vais les renseigner et les consulter campagne elle stocke les informations li es aux diff rentes campagnes gestionScenario elle fait le lien entre la table campagne et sc nario une campagne pour un ou plusieurs sc narios sc nario elle stocke les informations li es aux diff rents sc narios gestionEtape elle fait le lien entre la table scenario et tapes un sc nario pour une ou plusieurs tapes tapes stocke les informations li es aux diff rentes tapes id scenario INT id campagne INT num scenario INT nb appels INT nb_etapes INT 9 nom campagne VARCHAR 16 temps_appel INT numero_appel VARCHAR 10 b id gestion scenario INT id campagne INT id scenario INT 3 8 Travail futur Le plus gros travail pour ma part va tre le codage des IHM qui sera r alis sous
119. r B s enregistre Dans le fichier sip conf du serveur B il faut ajouter la ligne suivante inversement pour le serveur A Serveur A register gt trunck A vers B toto 192 168 0 6 Serveur B register gt trunck B vers A toto 192 168 0 5 Pour v rifier la bonne configuration il faut afficher l tat de la communication avec les commandes suivantes ServeurB rasterisk CLI sip show registry Host Username Refresh State 192 168 0 5 5060 trunck B vers A 105 Registered 6 4 2 b Configuration redirection d appels Proc dure de redirection des appels Quand le serveur B s est bien enregistr le serveur A pourra rediriger les appels compris entre 2000 et 2999 vers le serveur B Pour cela il faut modifier le fichier extentions conf afin de d finir correctement le contexte li aux extensions et au trunck mma exten gt 2XXX 1 Dial SIP trunck A vers B SfEXTEN Pour que le serveur B puisse rediriger les appels de 1000 1999 vers le serveur A il faut il ajouter les deux lignes suivant dans son fichier extensions conf mma exten gt 1XXX 1 Dial SIP trunck B vers A SfEXTEN 6 4 2 c Conclusion sur la solution N 1 La solution mise en place fonctionne mais dans un seul sens B vers A Elle n est que tr s peut fiable les appels passe sans soucis particulier de temps autre 6 5 Conclusion La t l phonie sur IP est devenue incontournable pour les quipementiers les op rateurs les en
120. ramme principal de la pondeuse d appels 133 8 3 4 La g n ration d un sc nario 133 8 3 5 recupererFichierExtension sssssssssssssss 134 8 3 6 genererFichierScenario eceeeeeeeeeeeeeeeeee eee nnno 135 8 4 CONCLUSION occ ee EO EDU NIRE POMA Ebo nei E E Mode APPLE CPP PL DI MUR 139 9 Conception d taill e Partie Dauvergne Florian E3 140 9 1 Configuration analyse iier E be haer aa E EU NY RAE Fa o rA E REPRE EE E 140 9 ZPeReOuisic eic vaadtoe An od aud ecd bts uber tuae i done 141 9 3 Lancement analyse same dieser etats Eas Lua ee dan ERR 142 9 4 Analyse de la qualit de service 143 9 4 1 Fonctionnement et mise en uvre esse 143 9 42 CADRE eee oT 151 LE Hed ET E 152 94 d Filtrage UDPS sn need ERE CERE RR ah A CREE DEA Ure inte ae panda 153 9 4 5 Filtrage Mee 154 9 4 6 Eltrage RTP amp RTCP ae Reti eg oU OE EO Pas ua TERRAE VELBERT A ER FERENT 155 9 5 Affichage de statistiques ss 156 9 6 Enregistrement des statistiques ss 157 9 7 Conclusioni ire deret eo oid dura peo pu v ub cios ERR E PRESE else be A kb eee UTR E 158 10 Fiches de test Prieur QUelblmss oo v EORR E DER EVE exe b Eau rADUER ONE Ee EEP UO x VERA 159 10 1 Plan d acci 159 10 2 Preces verbale testi re na debet
121. re communiquer 2 softs Phone entre eux diff rents protocoles sont possibles Le SIP est le plus simple mettre en place et permet un co t r duit au maximum Ajout SIP Extension La cr ation d un compte SIP consiste d clarer un n Extension nouvel usager Cela lui permet de se connecter avec un soft Phone sur le Extension Utilisateur Num ro du correpondant Nom Affich CID Nom du correspondant 3I VEME Num ro alias du CID Alias SIP Options P riph rique Pour ce cela nous devons d clarer son num ro qui T m correspond son extension Ce p riph rique utilise la technologie sip son CID qui est le nom secret code secret du correpondant affich lors de l appel et son code secret dtmfmode rfc2833 2 3 3 Administration web Enregistrement d un guide Dans un premier temps il faut enregistrer les diff rents guides vocaux Le guide a diff rents r les Le premier est d accueillir par un message audio l appelant sur la plate forme t l phonique Son second est de diriger le client dans les diff rents choix disponibles dans les menus Nous devons pour cela aller dans les r glages du PBX PABX puis dans le syst me d enregistrement Add Recording Step 1 Record or upload If you wish to make and verify recordings from your phone please enter your extension number here Go Alternatively upload a recording in any supported asterisk format Note that if you re using wav eg recorded with Microsoft Re
122. re est limit e de 0 59 secondes QSpinBoxPause new QspinBox monGroupe QSpinBoxPause gt setMaximun 59 QSpinBoxPause gt setMinimunm 0 Voici le code permettant de positionner les diff rents l ments dans les layout le sch ma et le code correspondant La fonction setFocus redonne le focus l utilisateur lui permettant d avoir acc s aux diff rentes tapes Etapes 1 hori new QHBoxLayout hori2 new QHBoxLayout verti new QVBoxLayout monGroupe Ligne 1 3 3 Cr ation des layout hori addWidget new QLabel Choix hori addWidget ComboBoxDTMF hori2 gt addWidget new QLabel Temps de pause secondes t t t hori2 gt addWidget QSpinBoxPause verti addLayout hori verti addLayout hori2 Ligne 1 2 On met les l ments dans le layout Hori Ligne 3 4 On met les l ments dans le layout Hori2 Ligne 5 6 On met les horizontal dans le layout vertical Verti QSpinBoxPause setFocus ComboBoxDTMF setFocus Ligne 1 2 On redonne le focus Le focus sert a redonner la possibilit d interagir avec les composant grace au curseur de la souris La fonction deplacer permet de d placer les tapes afin qu elles ne se superposent pas sur l IHM define DEP ACEMENT Y 125 define DEP ACEMENT X 50 define DEP ACEMENT X1 450 void Etape deplacer QGroupBox monGroupe int deplacementx int deplacementy M thode permetant de
123. s le sont en multicast S D P Session Description Protocol est un protocole de description des sessions multim dia 3 Conception pr liminaire Partie Plateau Mathias E1 3 1 L architecture Je vais me trouver pendant la dur e du projet du c t de la pondeuse d appels Les N appels simultan s seront envoy s via faisceaux SIP voir choix du protocole Le centre d appels sera g r par Quentin PRIEUR tudiant 4 La trixbox et la machine contenant l application communiquerons via un cable ethernet La trixbox et l Alcatel OMNI PCX communiquent via faisceau SIP trunk un lien TRUNK est un lien qui permet de faire transiter plusieurs VLAN sur un seul lien physique Ci dessous voici un plan de l architecture r seau de notre syst me c Adresse IP Dynamic eth1 Adresse IP Dynamic Je mnt P 172 17 83 170 24 eiii Adresse IP Dynamic Adresse Ip static Internet Soft Phone 1 192 168 0 20 24 X Lite Windows 192 168 0 5 24 yum PAU OB EIN PC Ex cutif IPTouch 4038 t Phone 2 X Lite Windows Adresse IP Static 172 17 83 254 24 Serveur Trixbox F 7 Soft Phone3 Num eric 4035 2004 X Lite Windows Adresse Ip static 192 168 0 50 24 Adresse IP Dynamic 172 17 83 26 24 PC de Contr le Windows 7 Liaison Serie Num eric 4035 2002 CS GD Num eric 4039 2001 Carte UAI16 1 4 1 1 d Legende des l
124. s par les lignes op rateurs afin de savoir si leur capacit est bien celle pr vue N anmoins il convient d analyser la qualit de ces appels car bien que ceux ci soient achemin s d un interlocuteur l autre il se peut que la communication ne soit pas ais e en cas de tr s mauvaise qualit impossible cela peut tre d au temps d acheminement ou l cho pr sent lors d un appel Cette analyse d termine donc la qualit de service 5 3 Qu est ce que la qualit de service La qualit de service QDS ou Quality of service QoS est la capacit v hiculer dans de bonnes conditions un type de trafic donn en mati re de disponibilit d bit d lais de transmission gigue taux de perte de paquet sur un r seau La qualit de service d signe la capacit d un service r pondre par ses caract ristiques aux diff rents besoins de ses utilisateurs ou consommateurs La qualit de service est un concept de gestion qui a pour but d optimiser les ressources d un r seau et de garantir de bonnes performances aux applications La qualit de service permet d offrir aux utilisateurs des d bits et des temps de r ponse diff renci s par applications ou activit s suivant les protocoles mis en oeuvre au niveau de la structure Selon le type du service envisag ici la t l phonie la qualit pourra r sider dans la qualit de codage compression de la voix le d lai d lai d acheminement de l appel la gigue fluct
125. se Fonctionnement de la m thode ligne 190 connexion au serveur ftp de la trixbox Ligne 192 Changement de r pertoire pour se placer dans le r pertoire du fichier extensions conf etc asterisk Ligne 193 R cup ration du fichier extensions conf et mise jour de l attribut fichierPondeuse Ligne 195 fermeture de la connexion FTP Suite la r cup ration du fichier extensions conf nous allons le modifier dans le but d inscrire un context dans le fichier qui correspondra au sc nario que l appel devra effectuer 8 3 6 genererFichierScenario Cette m thode fait partie de la classe Scenario elle a pour but de modifier le fichier extensions conf Elle modifie ce fichier afin de cr er un sc nario qui correspond ce que souhaite l utilisateur void Scenario genererFichierScenario QVector lt etape gt iterator i tableauEtapes begin 1f fichierScenario gt open QIODevice Append QIODevice Text qDebug lt lt impossible d ouvrir le fichier endl return else qDebug generation fichier scenario QTextStream flux fichierScenario 197 lux se lcodec vTF 8 flux nom endl lt lt exten gt 1 n Answer endl do qDebug ecriture flux lt lt exten gt s n SendDTMF i valeur endl exten gt s n wait i tempsPause endl itt while i tableauEtapes end flu
126. sions conf de la trixbox sur le pc client 8 3 G n rer un appel Apr s avoir configur la campagne l aide de l interface cr e par l tudiant 1 Plateau Mathias l utilisateur appui sur le bouton valider afin de d marrer la campagne et le cas d utilisation g n rer est appel est appeler plusieurs reprises pour g n rer le nombre d appels voulu campagnel Choix Num ro appeler Dur e appels 1 secondes Sc nario s Nombre d tapes 7 dJ E Configuration Analyser Annuler Appeler Le diagramme de s quence ci dessous permet de monter comment est g n r un appel sur la trixbox i si exist u run i recupererFichiExtension TEES ERO IS DN ES EE IRURE DRE E definirScenarioAppel connexionFTP genererFichierScenario envoyerFichier Mee iM mein scenarioAppel genererFichierAppel i envoyerfichier terminate ia Hm T 1 H principe de fonctionnement lorsque le thread est lanc on commence par d finir le sc nario de l appel s il n existe pas Suite la g n ration du sc nario on g n re le fichier d appel pour l envoyer par la suite sur la trixbox pour g n rer l appel 8 3 1 La g n ration de fichier d appel Pour g n rer un appel on utilise la fonction d auto call de la trixbox qui gr ce un fichier rempli avec les bons param tres g n re l appel voulu Le fichier qui doit tre g n r est un fichier texte brut devant de
127. t envoie du fichier ex cution de l appel le t l phone sonn fin du test le fichier a t supprimer apr s son ex cution 13 Fiche de test Dauvergne Florian Plan de test Test des m thodes capture paquets et filtre udp de la classe Capture Test des fonctions de capture et de filtre Date du test 18 04 13 Type du test Test fonctionnel Objectifs du test 1 Tester capture paquets 2 Tester le filtrage des paquets Conditions du test tat Initial Environnement du test L application est pr sente sur le pc de test fonctionnant sous linux debian Le pc de test est reli par un c ble Ethernet sur la carte LANX8 2 jouant le r le de hub Les commandes de capture seront lanc es via le terminal du pc de test Capture un nombre de paquets pr d finis auparavant Capture sur l interface choisie Filtre les paquets suivant le protocole UDP de paquets V rification avec wireshark Proc dures du test Op rations R sultats attendus TEST n 1 Lancer une capture d une dizaine de paquets sur eth0 gt Les paquets transit s doivent tre captur s que nous soyons branch s sur l oxe directement ou que nous soyons branch s sur le hub reli l oxe gt Aucun paquet ne doit tre captur s si nous ne sommes pas Lancement du test avec e reli QtestLib TEST n 2 Filtrer les paquets suivant le gt Seul les paque
128. t l phonique compl te installer Lis 4 Version Patch statique Patch dynamique ays ir x 4 S lectionner le Pays Type d installation Standard S lectionner Standard Type de r seau Cable direct 4 S lectionner le type de connexion Interface r seau 1056 40 Compaq Netelli j 4 Modifier ventuellement la carte r seau utiliser Adresse IP hossa 4 Modifier ventuellement l adresse IP affect e l e CS Adresse ethemet g inutile lt Indiquer l adresse MAC de la CPU mode R seau mm client Valider Modifier Retourner 4 Valider la configuration pour d marrer les serveurs Partie commune Projet MMA Pondeuse d appels 189 190 17 Annexe 2 Proc dure de suppression d un utilisateur 1 Passer en mode super utilisateur cmd gt su 2 cmd gt userdel nom de l utilisateur e V rification de la suppression 1 Liste des user cmd more etc passwd 2 Pour rechercher un user dans la liste cmd gt fgrep nom de Ll utilisateur etc passwd 3 Si aucun r sultat ne ressort l utilisateur nom de Ll utilisateur rechercher n est pas plus pr sent Partie commune Projet MMA Pondeuse d appels 190 190
129. t imm diate ayant d j utilis QT 4 4 1 d Syst me d exploitation Le cahier des charges n met aucune contrainte vis a vis du syst me d exploitation donc l application devra aussi bien fonctionn sous Windows comme sous Linux Voici mes pr visions pour a suite du projet elles sont susceptible de changer en fonction de l avancement du projet et des probl mes rencontrer Pondeuse d appels lecture du cahier descharges description d un appel renseignement sur la t l phonie diagramme de classe mise en place de la pondeuse d ap r daction du dossier pour la revu pr cis les diagrammes codage desthreads choix et presentation d un test codage des dif rente classe int gration correction des modules 07 an 2013 l4 an 2013 17 an 2013 21 an 2013 21 an 2013 21 an 2013 11 Feb 2013 18 Feb 2013 18 Mar 2013 01 Apr 2013 15 Apr 2013 22 Apr 2013 09Jan 2013 21 Jan 2013 24 an 2013 28 an 2013 21 an2013 07 Feb 2013 18 Feb 2013 18 Mar 2013 1 Apr 2013 22 Apr 2013 22 Apr 2013 06 May 2013 Janv o Fur uw vi v6 vr 06 v8 vio vit L an L an vid un i6 ut t8 i9 20 2 v2 v3 vat va 7 CU M Wl 5 Conception pr liminaire Partie Da vergne Florian E3 5 1 Qualit de service 5 2 Remise en contexte Pour rappel un nombre pr d fini d appels va tre g n r que ce soit pour tester le centre d appels ou encore tester le nombre d appels recu
130. t la bande passante que l on met en regard du nombre de communications simultan es couler C est une des raisons pour laquelle le choix du codec impacte la clart de la voix ind pendamment des autres caract ristiques de l infrastructure Plus la fr quence d chantillonnage est grande meilleure sera la num risation Sauf tre contraint par un besoin imp ratif de gain de bande passante on choisira le codec G 711 qui assure la num risation la plus rapide de la voix ainsi que la plus grande clart pour le r cepteur D lai d acheminement Le d lai de transit est un des param tres influencant fortement la QoS d un service de voix sur IP C est le temps que va mettre en moyenne un paquet IP contenant un chantillon de voix pour traverser l infrastructure entre deux interlocuteurs Ce temps de transit comporte quatre composantes e Le d lai d chantillonnage e Le d lai de propagation e Le d lai de transport e Le d lai des m moires tampons de gigue Le d lai d chantillonnage est la dur e de num risation de la voix l mission puis de conversion en signal voix la r ception Ce temps d pend du type de codec choisi et varie de quelques millisecondes avec le codec G 711 chantillonnage 64 kb s plus de 50 ms en G 723 chantillonnage 6 3 ou 5 3 kb s C est une des raisons pour laquelle le choix du codec impacte le score MOS d appr ciation de la clart de la voix ind pendamment des autres caract
131. t renomm e en fonction de la chaine rentr e par l utilisateur Ligne 12 Affichage de la fen tre campagne Ligne 13 La fen tre de configuration est masqu e 7 4 1 Param trage de la campagne Nous arrivons alors sur une autre IHM la campagne Cette IHM va permettre l utilisateur de choisir le num ro appeler le temps de l appel le nombre de sc narios souhait ainsi que le nombre d tapes par sc nario campagnel camp 1 Choix Num ro appeler Dur e appels n secondes Sc nario s Nombre d tapes 7 n Configuration Analyser Annuler Appeler La valeur de la QlineEdit lineNumAppel permet l utilisateur d entrer le num ro vers lequel les appels seront effectu s Elle dispose d un InputMask de type 9999999999 qui oblige la saisie uniquement de 10 chiffres maximum puis stock e dans l attribut numAppel de la classe Campagne En cas de champ vide un message d erreur apparait La valeur est r cup r e lors de l appel la m thode Campagne on pushButtonAppeler clicked lorsque l utilisateur appuie sur le bouton appeler Voici le code correspondant numAppel ui gt lineEditNumAppel gt text if numAppel QMessageBox critical 0 tr Numero d appels invalide tr Saisir un numero d appels Ligne 1 R cup ration de la valeur du num ro d appel dans numAppel Ligne 2 3 4 5 6 Si le champ est vide alors un message d erreurs appara
132. tionner toutes les instances et valider avec CTRL V Le poste doit tre pr senter dans la liste TEST n 2 Proc dure d assignation d crocher le combin composer le num ro du poste 1007 code personnel 0000 puis raccrocher le combin Le t l phone est assign son num ro d appel les appels vers le num ro d fini seront normalement redirig s vers le poste Le t l phone sonne nouveau d croch et raccroch TEST n 3 Situer la le connecteur qui relie le t l phone Le t l phone doit fonctionner comme auparavant 4035T a la carte Digital interface sur le port RJ45 pr c dent D brancher le connecteur et le rebrancher sur un port Digital Interface Situation dans le cas d utilisation prendre un appel g n rer un sc nario d appel lt lt inclyde gt gt Administrateu g rer les num ros d appel centre d appel CS 192 168 0 10 GD 192 168 0 11 gt Telephone num rique A a Alcatel 4039 MASS Lay b EN NU om ss Telephone num rique 7 Ew Alcatel Advance Reflex 4035 Server PT bow Pondeuse LT 192 168 0 20 Telephone M IP phone Alcatel 4038 Analogique Alcatel IP Touch Telephone num rique Alcatel Advance Reflex 4035 10 2 Proc s verbal de test Installation d un poste sur l OXE Alcatel Test Fonctionnel Mise en place d un poste de type num rique Date du test 18 04 2
133. treprises et le grand public Si les enjeux conomiques justifient largement cette convoitise il ne faut cependant pas n gliger les contraintes techniques surmonter Par exemple les soucis de compatibilit entre les syst mes Alcatel et Linux Durant le pr sent projet il nous avait t confi la mission pour l entreprise MMA Mutuelles du Mans Assurances d tudier et de mettre en place une pondeuse d appels Le serveur qui permettras d emm tre les appels les sc narios et de sauvegarder toutes les donn es ont t r aliser et op rationnel Le lien Trunk SIP est encore tudier et mettre en place Le travail de groupe ma permis de d velopper un sens du partage nous avions une bonne ambiance pour conduire un bon projet Bien que quelques suprprise comme les grand soucis de compatibilit et le grand nombre de changement de direction dans le projet il a t fortement enrichissant pour moi dans plusieurs domaines La d couverte de la relation avec une personne tierce ext rieure au lyc e de l entreprise MMA m a permis de prendre connaissance des changes possible avec le monde professionnel La d couverte approfondie du r seau et de la t l phonie a t pour moi une grande aide pour le choix de mon avenir professionnel Pour l avenir le m tier d administrateur r seau serait une voie int ressante apr s une licence professionnelle pour approfondir mes connaissances 7 Conception d
134. ts concernant notre filtre doivent tre protocole d fini dans notre captur s Par exemple lors de la configuration d un filtre DNS application seul des paquets UDP doivent tre captur s 14 Manuel d utilisation OptionServeur 14 1 Principe de fonctionnement Cette application a pour but de sauvegarder les donn es n cessaires la connexion au serveur FTP Elle donne aussi la possibilit de les modifier 14 2 Pr sentation Voici comment se pr sente l application Hote 172 17 83 170 elle comporte 3 champs l adresse IP de l H te lenom d utilisateur le mot de passe correspondant Au lancement de l application pour la premi re fois les champs seront vides car aucune donn e n est pr sente il faudra donc remplir les champs avant la premi re utilisation de la pondeuse 14 3 Modifications d une ou plusieurs donn es Pour la modification de donn es il faut lanc l application Option Serveur son ouverture les champs seront remplis avec les donn es pr sentes actuellement sur le PC Pour les modifier on dite la ou les zones de texte modifier et apr s modification appuy e sur le bouton Changer des lignes concern es Apr s tout changement la ligne modifi e est effac e pour valider la modification 15 Manuel d utilisation de l interface homme machine 15 1 Nouvelle campagne Pr requis Lancement de l ex cutable r solution recommand e 1600x900
135. u fichier on peut voir que l on passe dans le constructeur param tr de la classe Fichier Ensuite on peut voir un message qui nous dit que le programme n a pas pu ouvrir le fichier Impossible d ouvrir le fichier et si on se reporte la m thode qui est test e on peut voir ceci bool retour if fichierAppel open QIODevice ReadOnly QIODevice Text louverture du fichier qDebug lt lt Impossible d ouvrir le fichier retour alse else QTextStream flux fichierAppel cr ation d un flux pour crire dans le fichie flux setCodec UTF 8 codec utilis flux lt lt Channel SIP lt lt numero lt lt endl lt lt lecriture dans le fichier WaitTimes lt lt tempsAttenteReponse lt lt endl lt lt RetryTimes lt lt tempsTentative lt lt endl lt lt MaxRetries lt lt nbTentatives lt lt endl lt lt Context test lt lt endl lt lt Extension s lt lt endl lt lt On peut voir que le message Impossible d ouvrir le fichier se d clenche que si le fichier ne peut pas tre ouvert en lecture or la m thode crit dans le fichier Donc ce test m a permis de voir une erreur dans ce code 12 1 2 Test n 2 Le test num ro montre l envoie du fichier sur la trixbox ainsi que son ex cution qui est la g n ration de l appel Le test num ro 2 s est pass comme il tait pr vu v rification du r pertoire de destination gt r pertoire vide lancement de la m thode g
136. u menu de gestion via la commande mgr Proc dures du test Op rations Capture d cran Op ration 1 Via la menu mgr se d placer dans Usagers puis dans Consultation Modification S lectionner Toutes les instances avec la touche Entrer puis valider avec CTRL V Op ration 2 S lectionner le poste 1007 en appuyant sur Entrer Trois param tres sont modifier Adresse alv ole 255 Adresse Carte interface 255 Adresse quipement 255 Valider les modifications avec CTRL V Refaire la proc dure d assignation d crocher le combin composer le num ro du poste 1007 code personnel 0000 puis raccrocher le combin Le t l phone sonne nouveau d croch et raccroch 11 Fiche de test Plateau Mathias Mise a jour de la base de donn es via l IHM Date du test 18 04 2013 Type du test Fonctionnel Objectifs du test V rifier l ajout d un nom de campagne d un num ro d appel et d un temps d appel dans la base de donn es gr ce la m thode on pushButtonAppeler clicked de la classe Campagne Conditions du test tat Initial Environnement du test 172 17 83 170 L utilisateur a lanc l x cutable MmaIHM Le serveur base de donn es MYSQL situ sur la trixbox est en marche adresse ip Tables utilis es pour le test campagne Qt Creator MYSQL phpMyAdmin Projet compi
137. uation du signal U Echo ou encore le taux de pertes de paquets pertes sans influences pour la voix ou perte quasi nulle 5 4 Param tres QoS Les aspects d terminants pour la qualit de la voix sur un r seau sont le traitement de la voix la clart le d lai de bout en bout et l cho Ils d pendent des diff rents composants de la chaine de transmission de leur param trage de Uarchitecture g n rale de la chaine et dans le cas de la VoIP des flux concurrents Ces aspects sont les suivants e Traitement de la voix lors de l mission du signal la voix est trait e c est dire cod e et ventuellement compress e avant d tre transmise e La Gigue elle repr sente la fluctuation du signal num rique dans le temps ou en phase La gigue est la variation de la latence et ne d pend pas donc pas de la latence Vous pouvez avoir de hautes latences et une gigue tr s basse e Le d lai d acheminement de bout en bout est le temps de propagation de la voix travers le r seau de l metteur vers le r cepteur e L cho est le son mis par l metteur qui lui revient e La perte de paquets elle correspond la non d livrance d un paquet de donn es Qualit de codage de la voix Les diff rents chantillonnages Le param tre d chantillonnage ou codec pour compression d compression est structurant en Voie Le codec d termine quelle vitesse la voix est chantillonn e et dimensionne par la m me
138. un p riph rique de capture handle pcap open live dev SNAP LEN 1 1000 errbuf V if handle NULL 1 fprintf stderr Impossible d ouvrir le p riph rique s s n dev errbuf exit EXIT FAILURE Assurez vous que nous capturons sur un p riph rique Ethernet V if pcap datalink handle DLT ENIOMB fprintf stderr 5s n est pas un r seau ethernet n dev exit EXIT FAILURE 50 H D finition de la fontion de rappel pcap loop handle num packets Capture got packet NULL prantf nCapture complete n Lligne 26 m thode capture paquets de la classe capture Ligne 32 33 34 Affichage du p riph rique ou l on capture du filtre et du nombre de paquets Ligne 37 pcap open live capture sur une interface disponible ou pr alablement d fini ici dev est l interface Ligne 53 pcap loop appelle notre fonction de rappel got packet pass en argument pour qu elle l utilise sans qu elle ne la connaisse auparavant 9 4 4 Filtrage UDP lt void Capture filtre udp char filter exp udp expression filtre compile l expression du filtre If pcap compile handle amp fp filter exp 0 net 1 i fprintf stderr Impossible de compiler le filtre s s n filter exp pcap geterr handle exit EXIT FAILURE application du filtre v if pcap setfilter handle amp fp 1 fprintf stderr Impossible d installer le filtre s s n filter exp p
139. une campagne Supprimer une campagne T Selectionner e Supprimer Annuler Suivant J J Annuler L utilisateur choisit d abord le num ro appeler puis la dur e de la session d appels Par d faut 1sec maximum 1800sec L utilisateur choisis le nombre de sc narios souhait s puis pourra les configurer 1 est coch au d part il peut en choisir 5 maximum Pour chacun des sc narios un nombre d tapes doit tre indiqu Par d faut il y a un appel avec une tape l int rieur un DTMFO et un temps de pause de Osec en cas d appuis sur le bouton appeler sans param trage du sc nario ce sera donc le DTMFO envoy une fois durant l appel Coch la QCheckbox analyser enverra sur l IHM de l tudiant 3 Florian DAUVERGNE apr s un clique sur le bouton Appeler Un message d erreur apparait lors d un clique sur le bouton appeler si l utilisateur n a pas rempli les param tres campagnel Lun ms Choix Dur e appels l secondes Sc nario s Nombre d tapes 7 1 2 Configuration C Analyser Annuler Appeler Nous allons maintenant voir le param trage pour un exemple de sc narios Ici le sc nario 1 Le nombre d tapes sera g n r automatiquement en fonction du nombre d tapes choisi Un temps de pause est requis entre chaque tape il peut tre gal O celui ci est exprim en secondes Le bouton Valider valide les param tres choisis et renvoie l IHM
140. unk ENTERPRISE Protocole utilis SIP CS 192 168 0 10 GD 192 168 4 nAppels Cable ethernet Trixbox Serveur et Base de donn es 192 168 0 5 92 172 0 170 Application Plage DHCP 128 254 L application est d compos e entre les tudiants et respecte le mod le MVC Model View Controller Mon travail est celui du contr leur je synchronise les donn es entre le mod le et la vue je m occupe de toute la partie codage de l application de la pondeuse 4 1 1 Diagramme d tat transition d un essai L application doit g n rer simultan ment un ensemble d appels Pour ce faire l utilisation de threads est indispensable d une part pour que les appels se d roulent de fa on simultan e mais d autre part pour la r cup ration des informations li es un appel Les threads permettront de diff rencier chaque appel de facon unique Les threads seront cod s sous QT creator en c gr ce la classe QThread Nous avons choisi QT creator pour sa facilit d utilisation le fait qu on a d j travaill s avec QT creator ce logiciel fonctionne sur la plupart des syst mes d exploitation lancer les threadds essajfermin sauvegarde de l essai ation du centre d appel suivi des donn es Ce diagramme d tat transition montre le d roulement d un essai Apr s que l utilisateur est d marr l application le programme lance les threads et dans chaque thread on g n re un appel si le
141. upprimer une campagne Annuler Suivant 15 3 Supprimer une campagne configuration O X QQQ Au lancement de l application il vous suffit de cliquer sur Supprimer une campagne de la s lectionner et de cliquer sur Supprimer la campagne sera alors supprim e de la base de donn es Creer une nouvelle campagne Charger une ancienne campagne Supprimer une campagne Selectionner O Supprimer Annuler Glossaire Thread Les threads permettent l ex cution de plusieurs processus de mani re simultan Partie commune Projet MMA Pondeuse d appels 187 190 16 Annexe 1 Installation IL fallut charger tout le syst me sur la C S Call Server pour cella une application propri taire Alcatel Lucent est mis disposition des MMA Pour y proc der il est n cessaire de d terminer une IP fixe la carte r seau qui permettra de faire la liaison entre le pc et la CS Un second c ble s rie DB9 nous sert visualiser en d tail les actions faites en cours de traitement via telnet ou HyperTerminal a Diff rents types de chargement T l phone ou Patch Aix Contr les Configuration Outils E Type d installation Installation d une version T l phone ou Paich x compl te ou d un patch T l phone ou Patch Linux sur partition inactive e Linux sur partition inactive J Installation de Linux sur la deuxi me partie du disqu
142. urer l adresse de la passerelle par d faut ou des serveurs de noms DNS 2 3 1 b Son fonctionnement L ordinateur quip de carte r seau mais d pourvu d adresse IP envoie par diffusion un datagramme DHCP DISCOVER qui s adresse au port 67 de n importe quel serveur l coute sur ce port Celui ci comporte entre autres l adresse physique MAC du client Tout serveur DHCP l ayant recu s il est en mesure de proposer une adresse sur le r seau auquel appartient le client envoie une offre DHCP DHCP OFFER l attention du client sur son port 68 identifi par son adresse physique Cette offre comporte l adresse IP du serveur ainsi que l adresse IP et le masque de sous r seau qu il propose au client Il se peut que plusieurs offres soient adress es au client Le client retient une des offres recues la premi re qui lui parvient et diffuse sur le r seau un datagramme de requ te DHCP DHCP REQUEST Ce datagramme comporte l adresse IP du serveur et celle qui vient d tre propos e au client Elle a pour effet de demander au serveur choisi l assignation de cette adresse l envoi ventuel des valeurs des param tres et d informer les autres serveurs qui ont fait une offre qu elle n a pas t retenue Le serveur DHCP labore un datagramme d accus de r ception DHCP ACK pour acknowledgement qui assigne au client l adresse IP et son masque de sous r seau la dur e du bail de cette adresse dont d coulent deux valeurs T1 et
143. us afficher Cs Cu Statistiques Pourcentage du param tres o Affichage graphique 6 Conception d taill e Partie Prieur Quentin EA T prendre un appel g n rer un sc nario d appel pondeuse dappel collaborateur Administrateur g rer les num ros d appel Je suis l tudiant 4 en MEME sur le diagramme Je suis en charge de la partie centre d appels 6 1 Installation du serveur trixbox IL a fallu installer l os qui va servir h berger notre pondeuse d appels Celui ci tait donn il s agit de Trixbox C est un OS bas sur une distribution Linux Cent OS avec une surcouche nomm e Asterisk qui est d di e la t l phonie Voici en d tail son installation Wat type of keghoard do yon have Pick a root password You must type it latini tulce to ensure you know what It is and x RM didn t make a mistake in typing Remember 1 that the root password is a critical part P stia Verden iced of system securityt fmer ica Montserrat Password ray Fen corio m E Choix de la langue du Choix de la localisation du Choix du mot de passe root clavier serveur Devernet Configuration Select Action Device Edit DNS configuration Use DHCP Static IP Netmask Default gateway IP Save amp u it Tabo 4Rlt Tab between elements i Space selects i lt F12 next screen lt Tab gt lt hlt Tab gt between elements lt Space selects lt F2 gt next scr
144. utilisateur peut avoir besoin de cr er plusieurs campagnes diff rentes afin de tester le centre d appel Cette premi re fonctionnalit va le permettre Classes utilis es 1 10 tabScenario MAX S CENARIO monEtape Tables utilis es 1 id campagne INT nom campagne VARCHAR T6 temps appel INT numer appel VARCHAR 10 1 id gestion scenario INT id campagne INT K od scenario INT H ELI ICT 1 id scenario INT num scenario INT nb appels INT nb tapes INT 1 id gestion etapes INT id etapes INT oid scenario INT nn 1 temps pause INT 1 id_gtapes INT mum etape INT dimi CHAR Tout d abord l utilisateur arrive sur l IHM de configuration de campagne configuration MN O06 Creer une nouvelle campagne Charger une ancienne campagne Supprimer une campagne Annuler A l apparition de l IHM nous la voyons compos e de 3 boutons de type QpushButton offrant un choix l utilisateur Nouvelle campagne charger une ancienne campagne ou encore supprimer une ancienne campagne ainsi que d un QPushbutton annulation Afin d viter les mauvaises manipulation les diff rents choix sont exclusifs Par exemple lors de l appui sur le bouton Nouvelle campagne un QlineEdit apparait pour laisser l utilisateur la possibilit d entrer un nom de campagne et masque toutes les autres fonctionnalit s configuration o o06 Creer
145. vant se conformer au formalisme suivant Channel c est le num ro qui sera appel e WaitTimes c est le temps d attente pour un appel sans r ponse avant que l appel soit consid r comme avort e RetryTimes c est le temps d attente entre chaque tentative MaxRetries c est le nombre de tentatives si la ligne n est pas disponible e Context nom du sc nario qui sera d fini dans le fichier extensions conf e Extension c est l ou l appel devra se connecter e CallerlD le nom qui s affichera sur le t l phone du destinataire Voici un exemple de fichier call Edition Format Channel SIP 4002 WaitTimes 5 RetryTimes 2 MaxRetnries 5 Context test Extension s CalleriD clement Fichier Affichage F Pour g n rer le fichier de cet appel on utilise la Classe Fichier qui h rite de la classe QFile Le fichier est g n r dans la classe Appel qui poss de un attribut de type Fichier ce qui permet chaque appel de g n rer son fichier correspondant Voici la m thode de la classe Appel qui g n re le fichier bool Appel genererFichierAppel Ig n re le fichier correspondant l appel bool retour QString nomScenario nomScenario scenarioAppel getNon if fichierAppel open QIODevice WriteOnly QIODevice Text ouverture du fichier si il n est pas ouvert qDebug Impossible d ouvrir le fichier retour false else QTextStream flux fichierAppel cr ati
146. x exten gt s n Hangup endl endl fichierScenario close Fonctionnement de la m thode genererFichierScenario e test de l ouverture de fichier en mode ajout afin de ne pas supprimer les autres donn es du fichier ouverture d un flux d criture e choix du codec UTF 8 criture d un context la ligne exten s n Answer sert d crocher L utilisateur a plusieurs choix o envoyer un DTMF Dual tone multi frequency signaling exten s n SendDTMF valeur du ou des DTMFs faire une pause exten gt s n Wait temps de pause en seconde raccrocher exten s n Hangup Le s signifie que l action s effectue sur n importe quelle num rotation le n indique que c est la prochaine tape effectu On peut placer un chiffre la place du n qui permettra de donner une priorit l action associ e Apr s avoir g n r le fichier d appel fichier call modifier le fichier extensions conf il faut uploader ces deux fichiers dans les r pertoires appropri s etc asterisk pour le fichier extensions conf et var spool asterisk outgoing pour le fichier d appel call l upload doit se faire dans un ordre pr cis le fichier sc nario doit tre uploader avant le fichier d appel car dans le cas contraire l appel ne pourra pas ex cut le sc nario s il n existe pas Afin d uploader ces deux fichiers on utilisera la m thode envoyerFichier QStrin
Download Pdf Manuals
Related Search
Related Contents
Texte intégral PDF (177 ko) Ladegerät - Accu i7100 NSC200 User Manual - Newport Corporation エコアップ・メニューブック - KKJ Copyright © All rights reserved.
Failed to retrieve file