Nothing Special   »   [go: up one dir, main page]

0% ont trouvé ce document utile (0 vote)
1K vues114 pages

Cours ToIP-VoIP-2023 ISM PDF

Transféré par

Fatimata SOW
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
1K vues114 pages

Cours ToIP-VoIP-2023 ISM PDF

Transféré par

Fatimata SOW
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 114

ToIP/VoIP

A la fin de ce module, l’apprenant doit être capable, de


comprendre les concepts liés à la téléphonie sur IP, de
déployer, d’administrer et de maintenir en fonctionnement un
système de téléphonie pour les PME

Dr K. GUEYE
ToIP/VoIP

Concepts généraux de la téléphonie sur IP


Environnements matériels et logiciels de TOIP
Les services Téléphoniques
Etude détaillée et mise en œuvre de la plateforme asterisk
ToIP en environnement CISCO
Mise en place d’un serveur de ToIP avec Kamailio

Dr K. GUEYE
ToIP/VoIP
Concepts de base de la téléphonie sur IP
 La téléphonie sur IP (ToIP) à l'origine était située à la frontière de l'informatique et des
télécommunications. Aujourd'hui, cette technologie est entrain de s'imposer dans le
secteur des TIC en particulier dans les entreprises

 Avant, la transmission de la voix est exclusivement réservée au réseau téléphonique


classique ou RTC (Réseau Téléphonique Commuté).

 L'avancée technologique a changé la donne. La transmission de la voix via les réseaux


IP constitue une grande évolution. Cette technologie consiste à faire transiter de la voix
sur un réseau d’où le concept de Téléphonie sur IP ou (Telephony Over IP) en Anglais.

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Problématiques liées à la téléphonie sur IP
La problématique de la ToIP est liée:
 au transport de la voix dans les environnements IP.
A l'origine la téléphonie était destinée au réseau télécoms.
L'idée de départ:
 utiliser les techniques de commutation pour arriver à une fin.
En fait, la téléphonie se faisait dans un réseau à commutation de circuit, ce qui veut dire:
 créer un circuit entre les deux interlocuteurs et
 que ce circuit est maintenu jusqu'à la fin de la communication.
NB: même s’il existe un temps mort entre les interlocuteurs, ce circuit n’est pas utiliser à d’autres fins

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Problématiques liées à la téléphonie sur IP
Le RTC (Réseau technique Commuté) est un réseau à commutation de circuit qui permet
de créer un canal entre les deux interlocuteurs destinés seulement à la communication.
Les opérateurs ont préféré ce réseau à cause:
 des contraintes de la parole téléphonique,
 mais la Voix sur IP (VoIP) est devenue une application classique grâce:
 aux techniques de numérisations et
 de la capacité des terminaux.
Cependant, on se demandait
 peut-on faire de la téléphonie dans un réseau IP?
 si oui, quelles sont les contraintes à prendre en compte?
Dr. Kéba GUEYE
ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les contraintes de la ToIP
 La téléphonie sur IP possède les mêmes contraintes de communication
temps réel que la téléphonie classique.
 Les contraintes de la ToIP sont des éléments à prendre en compte pour
s'assurer qu'il est possible de faire de la téléphonie dans un environnement
IP tout en assurant un minimum de qualité de la parole.
Nous distinguons:
 Les contraintes physiques
 Les contraintes temporelles

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les contraintes de la ToIP
 Les contraintes physiques
Les contraintes physiques désignent
 l'environnement dans lequel l'utilisateur est en production (émission d'appel).
 c’est-à-dire un signal qui revient dans l’oreille de l’émetteur (Echo)
La norme exige pour une bonne communication que l’echo ne soit pas gênant à
l’oreille c’est-à-dire le temps de transit de la communication ne dépasse pas
28ms soit 56ms aller-retour.

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les contraintes de la ToIP
 Les contraintes temporelles
 La principale difficulté pour réaliser de la téléphonie par paquet provient de la
contrainte temporelle très forte due à l’interaction entre individus.

 Le temps de latence, c’est-à-dire le temps qui s’écoule entre l’entrée d’un paquet
dans le réseau et son temps de sortie du réseau doit être inférieur à 300 ms si l’on
veut garder une interaction humaine acceptable.

 Si l’on souhaite une bonne qualité de la conversation, il ne faut pas que la latence
soit supérieure à 150 ms.
Dr. Kéba GUEYE
ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les contraintes de la ToIP
 Les contraintes temporelles
 La principale difficulté pour réaliser de la téléphonie par paquet provient de la
contrainte temporelle très forte due à l’interaction entre individus.

 Le temps de latence, c’est-à-dire le temps qui s’écoule entre l’entrée d’un paquet
dans le réseau et son temps de sortie du réseau doit être inférieur à 300 ms si l’on
veut garder une interaction humaine acceptable.

 Si l’on souhaite une bonne qualité de la conversation, il ne faut pas que la latence
soit supérieure à 150 ms.
Dr. Kéba GUEYE
ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les contraintes de la ToIP
 Les contraintes temporelles
 L’idée est de dire que si nous voulons respecter cette contrainte temporelle il ne
faudrait pas que le canal établit entre les deux correspondants ne soit pas utilisé par
d’autres fins. C’est pourquoi pour les opérateurs, un bon réseau est celui à
commutation de circuit.
 Pour déployer la téléphonie dans un réseau IP, il faut s’interroger sur la nature de
ce réseau IP.
 De grandes discussions opposaient les informaticiens et les télécommunicants.

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les contraintes de la ToIP
 Les contraintes temporelles
 Du côté des informaticiens, un bon réseau est un réseau à commutation de paquet
dans lequel on ne s’occupe pas de l’ordre de la transmission des paquets, vu que
tous les paquets sont traités de la même façon au niveau des nœuds du réseau, donc
il n’y a pas de privilèges, c’est pourquoi on dit que c’est un réseau à
‘’BestEffort’’.
 Le temps pendant lequel les paquets sont stockés est appelé temps de
synchronisation.
 La norme exige que ce temps ne doive pas dépassé 100ms et doit être supérieur au
temps maximal de traversée.

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les CODECS
 Les Codecs (Codeurs Décodeurs) sont des composants électroniques
permettant aux circuits intégrés de gérer les différents types de flux
numériques. Les codeurs interviennent dans le processus de numérisation
 En téléphonie sur IP, les codecs sont repartis en deux groupes:
 les codecs audio : on peut citer les codecs audios suivants:
• G.711, G.729, G.723, GSM, ILBC, OPUS
 les codecs vidéos : on peut citer les codecs vidéos suivants :
• H.261, H.263, H.264, MPEG4, VP8, VP9

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Les CODECS
Le tableau ci-dessous illustre les caractéristiques des différents codecs

ACELP : Algebraic code-


excited linear prediction
ADPCM : Adaptive
Differential Pulse Code
Modulation
LD-CELP : low-delay code
excited linear prediction
CS-CELP :Conjugate
Structure Algebraic-Code
Excited Linear Prediction

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 La Signalisation et Protocoles
 La signalisation est l'ensemble des processus (méthodes) liées à l'ouverture,
l'établissement et la fermeture de session entre deux utilisateurs.
 Une bonne communication n'est possible que si les deux entités en présence
s'entendent sur les règles, et les bases.
 En réseau, l'ensemble des règles et des bases est appelé protocole.

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 La Signalisation et Protocoles
En téléphonie sur IP, nous distinguons les protocoles de signalisation standard:
 Le protocole H.323: Très utilisé à l'époque, le protocole H3.323 a été mis en marge
au profit de son successeur, car jugé trop lourd à cause de nombreux en-têtes.
 Le protocole SIP : standard actuel des protocoles de signalisation, SIP est plus
utilisé pour les communications temps réels et ceci même sur le web (WebRTC).
 Le protocole MGCP : C’est un protocole qui est utilisé pour relier deux réseaux IP
utilisant deux protocoles de signalisation différentes (par exemple d’un côté nous
avons SIP et de l’autre côté un réseau H.323). Le protocole MGCP est
complémentaire à H.323 ou SIP, et traite des problèmes d’interconnexion avec le
monde téléphonique (SS7,RI).

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 La Signalisation et Protocoles
En téléphonie sur IP, nous distinguons les protocoles de signalisation standard:
 Le protocole SCCP (Skinny Client Control Protocol) de Cisco, SCCP est un protocole léger
qui s’occupe de la signalisation entre un téléphone IP et l’Unified Communications Manager
(CUCM) de Cisco. Le flux de données repose quant à lui sur RTP.

 Le protocole IAX (Inter Asterisk eXchnage) : c’est le protocole standard de signalisation


propre à Asterisk. Ce protocole a la capacité de contrôler et de réguler les flux multimédias à
un débit très faible. C’est ce qui le différencie du protocole SIP.
 Le protocole T.38 : Ce protocole intervient dans le transfert des données le plus souvent du
fax. Les données de Fax ne peuvent pas être envoyées sur le réseau de la même manière que
les données d’une communication vocales.

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Transport multimédia sur IP : RTP/RTCP
Des deux protocoles candidats au transport des données multimédias,
l’un est « trop complet » et l’autre trop limité.
Il est cependant possible de partir du protocole UDP et de lui ajouter des
fonctionnalités d’ordonnancement.
Le protocole RTP a été proposé à cette seule fin de reconstitution de l’ordre du
flux d’origine.
Pour sa part, RTCP a été conçu pour offrir une vision de l’état du réseau et
permettre à une application d’adapter les flux en conséquence.

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Transport multimédia sur IP : RTP/RTCP
 RTP (Real-time Transport Protocol) est un protocole de transport de flux
temps-réel en mode multicast ou unicast :
 Conférence audio, vidéo interactive, diffusion vidéo, audio

Indépendant des couches réseaux mais habituellement implémenté au dessus de


UDP/IP.
Fortement couplé aux applications qu’il transporte : notion de PROFIL Combiné
a un protocole de signalisation de la qualité des transmissions

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Transport multimédia sur IP : RTP/RTCP
 A quoi sert RTP ?
 Segmentation / Réassemblage des données
 Synchronisation des flux
 Indication du type de données
 Identification de l’émetteur (communication multipoint)
 Détection des pertes
 Sécurisation des échanges (cryptage)

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Transport multimédia sur IP : RTP/RTCP
 Format des paquets RTP V pour version (sur 2 bits) : indique la version du protocole RTP utilisée.
Actuellement, c’est la 2 qui est exploitée.
P pour padding (sur 1 bit) : bit indiquant si un bourrage est effectué dans
les champs de données du flux multimédia.
X pour extension (sur 1 bit) : indique si l’en-tête possède une extension
d’en-tête à sa suite
CC pour CSRC Count (sur 4 bits) : nombre de sources ayant contribué à
la génération du paquet.
M pour marker (sur 1 bit) : indique si des descriptifs sont associés.
PT (sur 7 bits) : décrit le format de données
Numéro de séquence (sur 16 bits) : compteur incrémenté d’une unité
entre chaque paquet.
Timestamp (sur 32 bits) : estampille temporelle permettant la
synchronisation des flux.
SSRC pour synchronization source (sur 32 bits) : identifie la source de la
synchronisation.
CSRC pour contributing source (optionnel, sur n fois 32 bits) : identifie
les contributeurs à la génération du paquet.
Dr. Kéba GUEYE
ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Transport multimédia sur IP : RTP/RTCP
 RTCP (Real-time Transport Control Protocol), est un protocole de contrôle
et de supervision du réseau.
 Il opère comme une sonde qui rend compte aux émetteurs des performances
dont la communication en cours bénéficie. Son objectif est d’offrir aux
participants d’une session une vision sur l’état du réseau et de s’y adapter de
façon dynamique. Il fournit
 pour cela un rapport sur la qualité de distribution, incluant le délai de bout
en bout, la gigue et le taux de pertes. Ce rapport est envoyé de façon
périodique de façon que les intervenants disposent d’une mise à jour
fréquente de l’état du réseau
Dr. Kéba GUEYE
ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Transport multimédia sur IP : RTP/RTCP
 RTCP est basé sur des transmissions périodiques de paquets de contrôle par
tous les participants dans la session.
 C'est un protocole de contrôle des flux RTP, permettant de véhiculer des
informations basiques sur les participants d'une session, et sur la qualité de
service.
 Il existe cinq types différents de paquets RTCP pour chaque type
d'information :

Dr. Kéba GUEYE


ToIP/VoIP
Concepts de base de la téléphonie sur IP
 Transport multimédia sur IP : RTP/RTCP
 Il existe cinq types différents de paquets RTCP pour chaque type
d'information :
 SR (Sender Report) contient des statistiques de transmission et de réception pour les
participants qui sont des émetteurs actifs.
 RR (Receiver Report) contient des statistiques de réception pour les participants qui ne sont
pas des émetteurs actifs mais récepteurs d’une session.
 SDES (Source Description) décrit la source : nom, email, tél, etc.
 BYE permet à une station d’indiquer la fin de sa participation à une session.
 APP est un paquet de signalisation spécifique à une application.

Dr. Kéba GUEYE


ToIP/VoIP
Environnements matériels et logiciels de ToIP
les différents environnements de travail
 GNS3 et le bon IOS CISCO (c3745-ipvoice_ivs-mz.124-15,T7.bin téléchargé sur le site
http://tfr.org/cisco/
 Asterisk, Kamailio, Freeswitch
 ASTERISK 16.TAR.GZ ou plus, kamailio 4 ou plus, freeswitch 1.8.8.zip

 TELEPHONES LOGICIELS
 TELEPHONES LOGICIELS SIP : MICROSIP SOUS WINDOWS, ZOIPER SOUS ANDROID LINUX ET WINDOWS,
blink
 TELEPHONES SCCP : IP COMMUNICATOR DE CISCO,

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Concept de session
 Session
période pendant laquelle un groupe d’entité communiquent ou coopèrent via un réseau.
Session multimédia : période de communication de flux multimédia entre un groupes
d’entités.
Exemples de session
Téléconférence
Conférence téléphonique
Appel téléphonique

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Session Initiation Protocol
 Qu’est ce que c’est ?
SIP est un protocole de signalisation extensible en mode client/serveur
pour la gestion de sessions multimédia (audio, vidéo) indépendant du
protocole de Transport (UDP ,TCP, IPX) car il intégrant ses propres
mécanismes de fiabilité de fonctionnement;
Il utilise typiquement UDP et le n° port 5060 RFC 3261 : 170 pages (6
messages au format ASCII)

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Session Initiation Protocol
 Qui l’a développé ?
Standard proposé par le groupe de travail de l’IETF MMUSIC
(Multiparty Multimedia Session Control) de Fév. 1996 à mars 1999 [RFC
2543], puis repris et amélioré par un nouveau groupe de travail appelé SIP
[RFCs 3261-3265]

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Session Initiation Protocol
 A quoi sert il ?
1. Il permet aux utilisateurs de mettre en place, modifier, clore des conférences multimédia (pas
seulement audio) entre deux ou « plusieurs » participants, en véhiculant l’information de contrôle
nécessaire,
2. Permet d’enregistrer, de localiser et de gérer la mobilité des utilisateurs;
3. d’intégrer les applications Web avec les applications vocales et vidéo
4. de créer et contrôler des services multimédia/téléphonique de bout en bout (Instant messaging,
vidéoconférence, PABX, partage d’applications …)

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 L'architecture SIP
Participants :
 terminal utilisateur : logiciel ou equipement de telephonie, Le terminal est l’élément dont
dispose l’utilisateur pour appeler et être appelé.
 serveur d’enregistrement: Le serveur d’enregistrement (Registrar Server) offre un moyen
de localiser un correspondant avec souplesse, tout en gérant la mobilité de l’utilisateur
 serveur de localisation : Le serveur de localisation (Location Server) agit en complément
au serveur d’enregistrement en permettant la localisation de l’abonné.
 serveur de redirection : Il agit comme un intermédiaire entre le terminal appelant et le
serveur de localisation
 serveur proxy: Serveur Proxy: permet d'initier une communication à la place de l'appelant.

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Les messages et les requêtes SIP
Le protocole SIP utilise de nombreuses similitudes tant par les méthodes de transmission
que par les messages avec le protocole HTTP.
Ce qui facilite son intégration à internet. D'où le surnom de cousin de HTTP.
Une communication SIP commence par une initialisation.

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 L'adressage SIP
 L’objectif de l’adressage est de localiser les utilisateurs dans un réseau.
 C’est l’une des étapes indispensables pour permettre à un utilisateur d’en joindre un
autre.
 Pour localiser les utilisateurs, il faut pouvoir les identifier de manière univoque.
 SIP propose des moyens très performants pour nommer les utilisateurs, grâce au
concept d’URI, classique sur Internet.
 Un URI définit une syntaxe permettant de désigner de manière unique, formelle et
normalisée une ressource, qu’il s’agisse d’un document textuel, audio, vidéo ou plus
généralement d’une entité logique ou physique.
 Une ressource décrite par un URI peut être déplacée ou même supprimée.
Dr. Kéba GUEYE
ToIP/VoIP
Étude du protocole SIP
 L'adressage SIP
 L’URI correspondant n’en conserve pas moins de manière permanente la valeur
descriptive de la ressource.
 Le format d'une adresse SIP est de la forme :
sip:identifiant[:motdepasse]@ou[:port][?parametres]
entre crochets : ce qui est optionnel
Donc dans la forme la plus simple on a : sip:identifiant@ou
ou peut être :
l'IP ou le nom de l'UA
l'IP ou le nom de son proxy SIP
le nom du domaine de l'UA

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 L'adressage SIP
 Le protocole SIP bien entendu est un protocole qui initie la communication entre deux
agents SIP.
 Une communication peut s’effectuer directement entre deux correspondants, sans faire
intervenir d’autres entités.
 Dans ce cas, l’appelant doit connaître la localisation (sous forme d’adresse IP) de la
personne qu’il souhaite contacter.
 Le principe d'initialisation met en évidence quatre requêtes de base.

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Les requêtes SIP
Le format générique d'un message SIP est de la forme:
 Ligne de requête d’état
 En-tête
 Corps du message

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Les requêtes SIP
SIP n’utilise que six méthodes fondamentales pour formuler ses requêtes. Cela indique très nettement la volonté
de simplicité de ses concepteurs.
 L'appelant (UAC) envoie un message INVITE (requête INVITE) permet d’initier une communication en invitant un
correspondant à y participer. Ce message contient les paramètres désirés pour établir la communication.
 Le message ACK: Elle fait suite à l’acceptation d’un appel par l’appelé avec la méthode d’invitation,
envoie la confirmation de la requête ou confirment établissement de la session.
 Le massage OK: Ce message spécifie que les utilisateurs peuvent ouvrir une session. Le canal de
communication est disponible.
 Le message CANCEL: Code d'annulation de réponse, Cette méthode annule une requête dont la
réponse n’est pas encore parvenue au demandeur. Elle ne permet pas d’interrompre une session, mais
indique que la réponse n’est plus attendue et qu’il n’est donc pas nécessaire de traiter la requête.
 Le message BYE: La requête BYE permet de libérer une communication. Cette requête peut être émise
indifféremment par l’appelant ou par l’appelé. Elle n’attend pas d’acquittement, puisqu’une terminaison
d’appel peut être décidée unilatéralement.
Dr. Kéba GUEYE
ToIP/VoIP
Étude du protocole SIP
 Les requêtes SIP
 Les réponses aux requêtes sont envoyées sous forme de code.
Voici quelques codes de réponse
 1xx = Messages d'information
 100 = trying
 180 = ringing
 200 = OK
 3xx = Messages de redirection
 301 = moved permanently (identiant demande n'est plus dispo.)
 302 = moved temporarily
 4xx = Erreur client
 401 = authorisation requise (p.ex., un registrar refuse l'enregistrement)
 404 = utilisateur inexistant
 486 = utilisateur occupe
 5xx = Erreur serveur
 500 = erreur interne
 503 = service non disponible (p.ex., serveur surcharge)

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Les requêtes SIP
Les champs d'en-tête
 Chaque champ de l'en-tête a la forme Champ: Valeur.
 Champs principaux pour les messages INVITE :
 From | URI de l'appelant
 To | URI de l'appele
 Call-Id | id. d'un appel
 User-Agent | type de l'UA
 Via | liste des UAs/Proxys par lequel le message est passe (IPs + ports)
La réponse au message suivra ce même chemin.
 Content-Type | type MIME du contenu
 Max-Forwards | nombre max. de proxys par lesquels un message peut transiter (permet
d’éviter les boucles)

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Les requêtes SIP
Le corps du message
 Le corps du message est optionnel.
 Il contient le descriptif des paramètres de la session :
 IP + port a utiliser pour le flux RTP
 medias souhaites pour la communication
 codecs disponibles
 parametres des codecs
...
 On le trouve principalement dans
 un message INVITE (param. fournis par l'appelant)
 un message OK envoyé en réponse a un INVITE (param. fournis par l'appelé)
 Il peut être au format HTML ou SDP (Session Description Protocol).

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP En-têete (lignes 1 a 12)

1 INVITE sip :411 @ideasip . com SIP /2.0
Les requêtes SIP
2 CSeq : 1 INVITE
ligne 1 | ligne de requête avec type de la requête,
URI de l'appele et num. de version SIP
3 Via : SIP /2.0/ UDP 192.168.1.6:5060
4 Via : SIP /2.0/ UDP 157.12.54.87:5060 lignes 3-5 | le INVITE a ete emis par l'UA
5 Via : SIP /2.0/ UDP 54.21.4.7:5060
6 User - Agent : Ekiga /4.0.1
192.168.1.6:5060. Il est ensuite passe par les proxys
7 From : <sip : sami@194 .254.173.6 > 157.12.54.87:5060 et 54.21.4.7:5060
8 Call -ID: 54 d5b754 -cdbe -e611 -885 f lignes 7-9 | URIs de l'appelant et de l'appele
9 To: <sip :411 @ideasip .com >
10 Content - Length : 458 ligne 11 | format du contenu du message = SDP
11 Content - Type : application / sdp
12 Max - Forwards : 70
13 Corps (lignes 14 et suivantes)
14 v=0 ligne 17 | IP a utiliser pour le flux RTP= 192.168.1.6
15 o=- 1481542778 1 IN IP4 192.168.1.6
16 s= Ekiga /4.0.1
17 c=IN IP4 192.168.1.6 ligne 19 | port UDP a utiliser pour le flux RTP =
18 t=0 0 54678
19 m= audio 54678 RTP / AVP 116 0 8 101
20 a= sendrecv ligne 20 et suivantes | autres info. RTP
21 a= rtpmap :116 Speex /16000/1 (media utilises, codecs, . . . )
22 a= rtpmap :8 PCMA /8000/1
23 a= rtpmap :101 telephone - event /8000
24 a= fmtp :101 0 -16 ,32 ,36
25 ... Dr. Kéba GUEYE
ToIP/VoIP
Étude du protocole SIP
 Scenario SIP 1 | Enregistrement d'un UA
 alice@info.edu s'enregistre auprès de son registrar
 Quand a lieu l'enregistrement ? A l'ouverture du softphone, au branchement du telephone IP, . . .

 Un 1èr message REGISTER contient l'identiant.


 Le serveur refuse et envoie un algo de chiffrement (md5 ici).
 Un 2em message REGISTER contient identiant + mot de passe crypte

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Scenario SIP 2 | Appel direct

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Scenario SIP 3 | Appel passant par un proxy
 toto@rt.edu appelle kim@info.edu en contactant directement le proxy de info.edu

Dr. Kéba GUEYE


ToIP/VoIP
Étude du protocole SIP
 Scenario SIP 4 | Appel passant par deux proxys
 toto@rt.edu appelle kim@info.edu en passant par son proxy

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Concepts
Asterisk est une solution de téléphonie sur IP, Open Source. Il s’agit donc d’une solution
gratuite, avec une communauté très active. Il a été développé par la société Digium.
Asterisk est disponible sous Linux et Windows, même si la version Linux utilisée est de
loin la moins rependue. Il fait office d’IPBX, mais il est aussi capable de s’interfacer
avec un réseau de téléphonie analogique, à l’aide de cartes additionnelles. Asterisk peut
donc faire office d’IPBX et de PABX.
Un serveur Asterisk permet donc de faire de la VoIP ainsi que de la téléphonie
analogique. En plus d’être gratuit, Asterisk est donc aussi très complet et supporte de
très nombreux codecs audio, dont le G.711 (u-Law et a-Law), le G.729, Opus, ...

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Les Fonctionnalités d’Asterisk
 Conférence
 Musique d’attente
 File d’attente
 Groupement d’appel
 Messagerie vocale
 Transfert d’appel
 Transcodage entre différents codecs
 Interface de développement de services (ARI
 Notification mail en cas de message (avec message audio en PJ)
 IVR (standard automatique avec choix au clavier)
 Synthèse vocale
 Chiffrement des appels
 Ne pas déranger
 Parking d’appel
 Failover
 Etc...

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Les services à valeur ajoutée de Asterisk
 Définition d’un service à valeur ajoutée:
Service venant en sus des services de bases.
 Comment créer des services à valeurs ajoutées:
La téléphonie présente beaucoup d’information mais pas assez pour être qualifiées de
valeurs ajoutées . Il faut prendre des informations en dehors du système de téléphonie.
Il faut que ces informations aient une action sur le comportement de la téléphonie
 Où ces services sont-ils développés?
DirectementdansleDialplanAsterisk
AGI/AMI
Par des applications tiers interagissant avec Asterisk

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Les services à valeur ajoutée de Asterisk
 Le Dialplan Asterisk
Plus de 169 Applications
Plus de 135 Fonctions

 Les AGI
Extensions du Dialplan vers des applications extérieurs
Pas de langage, seulement des prérequis(E/S)
Distribution sur des serveurs tiers
Rapidité, souplesse d’execution

 L’AMI (Asterisk Manager API)


Interaction bilatérale
Capacité équivalente au Dialpaln (en théorie)
Connexion simple depuis un tiers

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Supervisez vos serveurs
 CDR (Call Détail Reporting)
Stockage depuis une BDD (MySQL, PostgreSQL, MSSQL)
 SNMP:Au niveau du serveur et de Asterisk
Nagios, Cacti,…
 AMI: Application temps réel
GRTD, Flash Operator Panel,…

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Les performances de bases
 Depuis le Dialplan
Le temps d’exécution du diaplan dépend du nombre de lignes et du type d’applications
appelées.
Possibilités de blocage de la téléphonieforte
 Depuis l’AMI
Nombre d’information élevé, voir très élevé, àtraiter.
Nombre de connexion à l’AMI limitée (qq. Dizaines)
 Depuis les BDD
Limitations de son type et de la configuration de la BDD
Informations asynchrones=>Temps pas si reels…

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Augmenter les performances
 Depuis le Dialplan
La formation et l’expérience vous permettront d’avoir des dialplan plus fluides
 Depuisl’AMI
Dans le cas d’un grand nombre d’événements (env.100 appels), dédié un serveur au
traitement.
Utiliser l’excellent programme de Proxy AMI de DaveTroy
 Depuis les BDD
Back to school: revoyez les fondamentaux de l’administration de BDD

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Installation et Configuration
Il y a deux façons d’installer Asterisk soit par la commande apt-get install asterisk soit
par source c’est-à-dire installé la version tar de asterisk puis le compiler.
Installation voir tutoriel partagé

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Étude des principaux fichiers de configuration de Asterisk
 Appels entre terminaux extensions.conf, sip.conf, iax.conf, skinny.conf, unistim.conf
 Parking features.conf
 Messagerie vocale voicemail.conf
 Conférence meetme.conf
 Centre d’appels queues.conf, agents.conf
 Musique d’attente musiconhold.conf
 Informations sur les différents répertoires asterisk.conf

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Explication du rôle de quelques fichiers d’Asterisk

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Explication du rôle de quelques fichiers d’Asterisk

Pour les versions 18 de Asterisk, il existe au moins deux types de canaux : le SIP e le PJSIP qui ne peuvent pas être activés à la fois.
Donc pour éviter un conflit entre les deux canaux, il faudra éditer le fichier modules.conf et décharger le module qui gère le canal
qui ne vous intéresse pas.

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Présentation des quelques Fonctionnalités d’asterisk
 appels vocaux (codecs audio : g711,g729,ilbc,opus)
 appels video : il faut activer les codecs video(h263,h264,vp8 ou vp9)
Moralité : il faut installer installer certains prérequis pour que asterisk active
certaines fonctionnalités.
Par exemple: Activation de la langue française sur Asterisk
Éditer le fichier sip.conf et remplace languange=en en languange=fr

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Présentation des quelques Fonctionnalités d’asterisk
ensuite faire les actions suivantes
# adduser asterisk
# mkdir /var/lib/asterisk/sounds/fr
# cd /var/lib/asterisk/sounds/fr
# wget -O core.zip https://www.asterisksounds.org/fr-fr/download/asterisk-soundscore-fr-FR-sln16.zip
# wget -O extra.zip https://www.asterisksounds.org/fr-fr/download/asterisk-soundsextra-fr-FR-sln16.zip
# unzip core.zip
# unzip extra.zip
# chown -R asterisk.asterisk /var/lib/asterisk/sounds/fr
# find /var/lib/asterisk/sounds/fr -type d -exec chmod 0775 {} \;

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Présentation des quelques Fonctionnalités d’asterisk
 Boites vocales ; si on appelle un utilisateur et qu’il ne répond pas au bout d’un certain temps
alors on est invité à lui laisser un message vocal
Moralité: nous sommes dans un pays francophone, il est important de choisir les sons en français au moment de
l’installation
NB : Quand un utilisateur a un message vocal, il faut prévoir un numéro lui permettant de consulter sa boite
vocale.
 Conférences audio et vidéo : Quand il y a plus de trois personnes qui communiquent en
même temps
NB : une conférence doit avoir un modérateur, La politique de gestion d’une conférence ( musique
d’attente, faut -il supprimer la conférence quand tout le monde se déconnecte ?, faut-il autoriser des
utilisateurs à enregistrer la conférence.

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Présentation des quelques Fonctionnalités d’asterisk
 Centre d’appels: principe de centre d’appels :
Au niveau d’un centre d’appels :
on peut créer plusieurs files d’attente appelées queues :
chaque file d’attente, on attribue une fonction, un numéro et des agents appelés à gérer la
communication dans la file d’attente:
 comment personnaliser la musique d’attente ?
 Comment personnaliser la sonnerie d’un utilisateur?
 comment personnaliser la sonnerie selon l’appelant ?

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
Gestion des comptes Syntaxe générale
[utilisateur1]; début du bloque de création de compte SIP.
Création de compte SIP
Type = friend; type de compte
Host = dynamic; adresse IP adresse du serveur (PABX)
User = utilisateur1; nom d’utilisateur
Secret = mysecret; mot de passe en clair
Context = entreprise; contexte dans le quelle compte est associé.
Mailbox = 102@entreprise; numéro de la boîte vocale associée.
Language = fr; langue associé au compte
Dtmfmode = rfc2833;
Nat = yes; activation du nat (Network adress translation) sur le réseau
Callerid = <Nom Prénom> XXX
Pickupgroup =1; pour récupérer l'appel d'un téléphone qui sonne depuis
un autre poste
callgroup=1;pour attribuer un canal a tine ou plusieurs familles de poste
Dr. Kéba GUEYE
ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 compte utilisateurs
Un utilisateur a besoin d’un compte les comptes utilisateurs sont crées dans le fichier
/etc/asterisk/sip.conf
Exemple [sylla]
[bouki]; nom du compte defaultuser=sylla
defaultuser=bouki; nom de user secret=passer
secret=passer; mot de passe de l'user type=friend
type=friend ; user est autorise a appele et recevoir context=esp
context=esp host=dynamic
host=dynamic; user peut utiliser a partir de tout ip

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Création de contexte(groupe d’appels) et numéro de téléphone
Les groupes d’appels et les actions sont définis dans le fichier /etc/asterisk/extensions.conf
Dans un contexte on fait un ensemble d’action avec des priorités
la formule
exten => numero, priorite, action
Principales actions :
 Dial() appeler
 Hangup veut dire raccrocher
 Voicemail() envoyer l’appelant vers une boite vocale pour qu’il laisse un message à l’appelé
 VoicemailMain() : envoyer l’utilisateur vers sa boite vocale pour lire les messages qu’on lui a laissés
 Answer() : decrocher

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Création de contexte(groupe d’appels) et numéro de téléphone
Voici le tableau donnant quelques actions d’asterisk appelées applications qu’on utilise dans le fichier
/etc/asterisk/extensions.conf

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Création de contexte(groupe d’appels) et numéro de téléphone
Voici le tableau donnant quelques actions d’asterisk appelées applications qu’on utilise dans le fichier
/etc/asterisk/extensions.conf

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Création de contexte(groupe d’appels) et numéro de téléphone
Voici le tableau donnant quelques actions d’asterisk appelées applications qu’on utilise dans le fichier
/etc/asterisk/extensions.conf

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Création de contexte(groupe d’appels) et numéro de téléphone
Exemple de création de contexte ESP et des numéros de téléphone
[ESP]
exten=>1000,1,Dial(SIP/bouki,40,tr)
exten=>1000,2,Hangup
exten=>602,1,Answer()
exten=>602,2,VoicemailMain(@default)
NB : l’action hangup étant par défaut, on n’est pas obligé de le mettre
Regle1 d’asterisk : quand un utilisateur compose un numéro, on cherche le numéro composé dans son contexte

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Création de contexte(groupe d’appels) et numéro de téléphone
Règle 2 : inclusion de contexte le fait d’inclure le contexte1 dans contexte2 fait que les users de contexte 2 peuvent appeler les
users de contexte1
Exemple: Nous voulons que fall qui se trouve dans le contexte RTN puisse appeler bouky et sylla se trouvant dans le contexte
ESP, mais les 2 derniers n’ont pas le droit d’appeler fall, on fait appel à la notion d’inclusion de contextes. Exemple : dans le
fichier extensions.conf

[ESP] NB : type=user ; cela ne peut qu’appeler


exten=>1000,1,Dial(SIP/bouky,40,tr) mais ne peut pas recevoir des appels
exten=>1000,2,Hangup type=peer ; cela veut que le téléphone ne
exten=>1001,1,Dial(SIP/sylla,40,tr)
peut que recevoir des appels mais ne peut
[RTN]
include=>ESP pas appeler
exten=>1003,1,Dial(SIP/fall,40,tr)
Ici, fall peut appeler kouky et sylla mais bouky et sylla ne peuvent appeler fall

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Boites vocales et les contextes de BV
La messagerie vocale est utilisée pour laisser un message à votre correspondant au cas où il n'est pas disponible.
La configuration se fait au niveau du fichier voicemail.conf.
Regles 3 :
Principe de BV
[contextebv]
numero de la boite=>mot de passe
exemple dans voicemail.conf
[LITA]
1000=>1234,bouky
1001=>4321, sylla
1003=>2222, fall

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Boites vocales et les contextes de BV
La messagerie vocale est utilisée pour laisser un message à votre correspondant au cas où il n'est
pas disponible. La configuration se fait au niveau du fichier voicemail.conf.
Le fichier voicemail.conf est composé de plusieurs sections:
-[general]
-[default]

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Attribuer à un utilisateur une boite vocale
L’information est à ajouter dans le fichier compte de l’utilisateur et dans le fichier extensions.conf grâce à
l’application VoiceMail
Exemple:
[ESP]
exten=>1000,1,Dial(SIP/bouky,40,tr)
exten=>1000,2,Voicemail(1000@LITA)
NB : formule générale de Voicemail
Voicemail(numerodelaboite@contextedelaboite)
une boite a son propre contexte différent des contextes d’appels

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Attribuer à un utilisateur une boite vocale
créons le numéro 602 et l’affectons comme numéro de consultation de boites vocales de contexte LITA comme suit :
[ESP]
exten=>1000,1,Dial(SIP/bouky,40,tr)
exten=>1000,2,Voicemail(1000@LITA)
exten=>1000,3,Hangup
exten=>1001,1,Dial(SIP/sylla,40,tr)
exten=>602,1,VoicemailMain(@LITA)
Ensuite, sur l’interface d’asterisk, on fait reload pour recharger la configuration, bouky compose ensuite 602 et on
l’invite à saisir son numéro de boite vocale qui est 1000 et ensuite de saisir son mot de passe de boite qui est 1234
puis on le guide pour son message.

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Visiophonie et codecs vidéo
on commence la prise du support dans le fichier /etc/asterisk/sip.conf
pour cela, rechercher videosupport et on enlever le point-virgule devant la ligne
On ajoute les codecs vidéo (h263,h264,vp8) sur les comptes des utilisateurs
[bouky]; nom du compte
defaultuser=bouky; nom de user
secret=passer; mot de passe de l'user
type=friend ; user est autorise a appele et recevoir
context=ESP
host=dynamic; user peut utiliser a partir de tout ip
allow=h263,h264,vp8
Dr. Kéba GUEYE
ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 La visioconférence de base
Le Principe est de mettre en communication plus de 3 personnes.
 Créer une conférence dans le fichier confbridge.conf
 Créer le numéro de la conférence dans extensions.conf
 Pour accéder à la conférence, on compose son numéro

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
Mise en place d’un centre d’appels
Le Principe pour le mettre en place :
 Définir une file d’attente composée des agents qui vont répondre au téléphone
 Attribuer à la file d’attente un numéro
Lorsqu’un utilisateur compose le numéro de la file d’attente, on lui joue de la musique d’attente
avant qu’un agent disponible ne prenne l’appel.
Les fichiers impacter sont:
 queues.conf pour la file d’attente
 extensions.conf pour attribuer un numéro à la file d’attente

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
Mise en place d’un centre d’appels
Donc, on va commencer par mettre des classes de musique
 Une classe de musique est un ensemble de sons hébergés sur le serveur de ToIP ou en Réseau
(webradio par exemple)
 Elle est définie dans le musiconhold.conf et peut aussi être utilisée pour personnaliser la
sonnerie des utilisateurs
syntaxe cas fichiers son en local
[nomdelaclasse]
mode=custom
directory=chemin_du_dossier_des_fichiers_son
application= chemin_du_lecteur_de_son

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Mise en place d’un centre d’appels
il faut copier au format mp3 dans le dossier que vous avez précisé dans le paramètre directory de
votre classe de musique.

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Mise en place d’un centre d’appels
Définir un numéro dans extensions.conf pour écouter de la musique avec l’action musicOnhold
comme le montre l’image suivante.

NB : il faut installer le lecteur de sons par la commande : apt-get install mpg123

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Mise en place d’un centre d’appels
Il y’a aussi la possibilité de jouer de la musique en ligne (webradio).
 La syntaxe pour le cas de fichiers son reçus par webradio
[nomdelaclasse]
mode=custom
application= chemin_du_lecteur_de_son url_de_la_webradio

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Mise en place d’un centre d’appels
Ajouter les lignes suivantes dans le fichier extensions.conf

Maintenant les utilisateurs qui veulent écouter du web radio appellent le numéro 7001.

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Mise en place d’un centre d’appels
 Personnalisation de la sonnerie d’un utilisateur
Il y’a aussi la possibilité de personnaliser la sonnerie d’un utilisateur en choisissant la classe de
musique qu’on veut lui faire jouer avec l’option m dans l’action Dial comme:

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Mise en place d’un centre d’appels
 Création d’une file d’attente d’un centre d’appels
On doit définir pour chaque file d’attente la politique de répartition des appels entre les agents et
la classe de musique à utiliser comme musique d’attente. La politique est définie a travers le
paramètre strategy
Exemple
 strategy=ringall alors tous les telephones des agents vont sonner en mème temps à l’arivéee
d’un appel
 strategy=fewestcalls alors l’agent qui a recu le moins sera celui a qui le prochain appel sera
envoyé

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Mise en œuvre des concepts d’asterisk
 Mise en place d’un centre d’appels
 Création d’une file d’attente d’un centre d’appels
Exemple de création de la file d’attente Forum dans le fichier queues.conf

NB : la ligne member =>Local/1002@ToIP permet d’ajouter le numero 1002 du contexte


ToIP comme agent de la file d’attente Forum

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place d’un centre d’appels
 Création d’une file d’attente d’un centre d’appels
Ensuite on définit un numéro pour joindre la file d’attente dans extensions.conf avec l’action
Queue comme

la commande queue show nom_de_file_attente permet de voir des informations sur la


file d’attente

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place d’un centre d’appels
 Création d’une file d’attente d’un centre d’appels
On peut administrer une file d’attente depuis l’interface d’asterisk.
Voici quelques commandes d’ajout ou de suppression d’un agent d’une file d’attente
mail*CLI> queue add member SIP/Omar to Forum
c’est pour ajouter le téléphone de sylla comme agent devant répondre aux appels
entrant la file d’attente Forum
mail*CLI> queue remove member SIP/Omar from Forum
Pour retirer le telephone de Omar de la file d’attente Forum
Dr. Kéba GUEYE
ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place d’un centre d’appels
 Création d’une file d’attente d’un centre d’appels
Il y’a aussi la possibilité de personnaliser la musique d’attente lorsque tous les agents de la file
sont en communication. Par exemple l’utilisateur qui appel on lui fait écouter une classe musicale
avant qu’un agent décroche. Pour cela on ajoute la priorité 2 comme:

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place de la boite vocale interactive: IVR
IVR personnalisé
Il faut créer un numéro qui permet l’enregistrement des Sons à lire.
Par défaut les sons enregistrer sont contenus dans le repertoire /var/lib/asterisk/sounds/
Dans le fichier extensions.conf la configuration pour enregistrer les sons sont:

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place de la boite vocale interactive: IVR
IVR personnalisé
Pour lire le son toujours dans le fichier extensions.conf, il faut définir un numéro pour chaque son
enregistré. La syntaxe est la suivante:

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place de la boite vocale interactive: IVR
IVR personnalisé
Puis définir le contexte de livre et les actions à effectuer. Dans la figure suivante, on définit
comment joindre 2 numéros 100 et 110 en appuyant sur 1 ou 2 selon les spécifications

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place de la boite vocale interactive: IVR
IVR avec googleTTS
Pour faire parler Asterisk, nous allons installer un moteur de synthèse vocale (Text To Speech) et
nous allons mettre en place celui de Google appelé GoogleTTS.
Tout d’abord GoogleTTS à besoins de quelques dépendances pour fonctionner:
#apt-get install perl libwww-perl sox mpg123

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place de la boite vocale interactive: IVR
IVR avec googleTTS
Puis, aller dans le dossier /var/lib/asterisk/agi-bin/ et y mettre le fichier googletts.agi qui est le
script pour mettre en place la synthèse vocale.
#cd /var/lib/asterisk/agi-bin
#wget https://raw.github.com/zaf/asterisk-googletts/master/googletts.agi
#chmod +x googletts.agi
Maintenant nous allons mettre en place un véritable IVR qui va permettre d’appeler nos
utilisateurs 100 et 110.

Dr. Kéba GUEYE


ToIP/VoIP
Étude d’Asterisk
 Configuration basique de Asterisk
Fonctionnalités de base
Mise en place de la boite vocale interactive: IVR
IVR avec googleTTS

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 CISCO en plus de sa large gamme de serveurs et de solutions informatiques qu’il nous offre,
il met à la disposition du monde des solutions de ToIP derniers cri. Parmi lesquelles nous
avons :
 Le Cisco Unified Communications Manager (CUCM) : Qui est un système de
communication basé sur IP intégrant la voix et la vidéo. Il fait partie d’un ensemble de
produits de la gamme VoIP de CISCO. Il est utilisé pour de très grandes entreprises dont le
nombre du personnel est assez important.
 Le Cisco Unified Communication Manager Express (CUCME) ou CME : Qui est un
système de communication basé aussi sur IP intégrant la voix et la vidéo, tournant sur des
routeurs avec des IOS adaptés. Le CallManager Express est fait pour les PME.

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Le protocole SCCP
 Skinny Call Control Protocol (SCCP) est un protocole propriétaire Cisco évoluant au niveau
de la couche application du modèle OSI et utilisant le port 2000. Il est utilisé pour la gestion
des appels téléphoniques et de la signalisation. SCCP est supporté nativement dans le
CUCM, et est exclusivement utilisé entre un serveur SCCP et des clients SCCP.

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Le protocole SCCP
Étapes d’enregistrement d’un client SCCP
Lorsqu’on connecte un téléphone avec le protocole SCCP, il y a plusieurs étapes pour que ce
téléphone soit utilisable :
1. Le téléphone charge l’image enregistré en mémoire.
2. Avec le protocole CDP, le téléphone découvre quel VLAN utiliser (Voice VLAN).
3. Le téléphone envoie une requête DHCP pour connaître son adresse IP. Il reçoit de plus de la
part du serveur DHCP l’adresse du serveur TFTP.
4. Le téléphone envoie une requête au serveur TFTP pour récupérer sa configuration au préalable
créer par le CUCM lorsque l’on créer le téléphone.
5. Le téléphone vient s’enregistrer dans le CUCM.
Dr. Kéba GUEYE
ToIP/VoIP
ToIP dans l’environnement CISCO

 Le protocole SCCP
Étapes d’enregistrement d’un client SCCP
Note 1 : C’est le CUCM qui gère la signalisation ainsi que le routage des appels.
Note 2 : Un CUCM et/ou CME est capable de piloter autant des téléphones SCCP que des
téléphones SIP selon les configurations encours.

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Le protocole SCCP
Processus d’attachement d’un terminal SIP à un système TOIP CISCO
Grace aux fichiers dev config des téléphones sip stockés sur un serveur TFTP, on peut, entre
autres, personnaliser les touches(boutons) de téléphones sip haut de gamme
NB : de convaincre un client pour qu’il adopte des solutions de toip :
a- Solutions purement cisco (controleurs cisco-telephones cisco)
b- solutions hybrides ( controleur sous linux et telephones cisco)
c- soluions d’interco de controleur cisco et controleur TOIP libre

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Concepts de TOIP avec CUCME


un serveur sccp ecoute par defaut sur le port 2000
 Les grands principes de config de serveur sccp
 les grands principes de conf de serveur sip cisco
 Necessité d’avoir un serveur dhcp configuré avec l’option 150 pour indiquer aux telephones
l’adresse ip du serveur TFTP un cme sip peut fonctionner en mode de serveur de
secours(srst) ou controleur toip (cme)

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Configuration d’un CUCME ou CME


Dans nos travaux pratiques, nous allons utiliser l’IOS 3745-ipvoice_ivs-mz.124-15,T7.bin .
téléchargé sur le site http://tfr.org/cisco/37xx/3745/ aussi GNS3 en utilisant le cloud pour
permettre à notre routeur CUCME de communiquer avec le réseau physique.
On va utiliser le softphone sccp Cisco du nom de cisco ip communicator qui sera installé sur une
Machine window ou linux
Voici un tableau comparatif des commandes CUCME SCCP et SIP

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Configuration d’un CUCME ou CME


Voici un tableau comparatif des commandes CUCME SCCP et SIP

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Configuration d’un CUCME ou CME


Voici un tableau comparatif des commandes CUCME SCCP et SIP

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO

 Configuration d’un CUCME ou CME


Fixons l’adresse IP du routeur à 192.168.43.215 Cisco et testons que le routeur peut joindre la
machine 192.168.43.1 de notre réseau.

R1#conf t
R1(config)#int fa0/0
R1(config-if)#ip add
R1(config-if)#ip address 192.168.43.215 255.255.255.0
R1(config-if)#no sh
R1(config-if)#

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Configuration d’un CUCME ou CME
Activons le service SCCP en précisant le port d’écoute à 2000 et créons 3 numéros de téléphones

R1(config)#telephony-service
R1(config-telephony)#ip source-address 192.168.100.90 port 2000 R1(config)#ephone-dn 2
R1(config-telephony)#max-ephones 10 R1(config-ephone-dn)#number 2002
R1(config-telephony)#max-dn 10 R1(config-ephone-dn)#exit
R1(config-telephony)#create cnf-files R1(config)#ephone-dn 3
R1(config-telephony)#exit R1(config-ephone-dn)#number 2003
R1(config)#ephone-dn 1 R1(config)#telephony-service
R1(config-ephone-dn)#number 2001 R1(config-telephony)#auto assign 1 to 10
R1(config-ephone-dn)#exit R1(config-telephony)#
Avec la commande auto assign 1 to 10. On attribuera les numéros au téléphone dans l’ordre de connexion. On peut
passer à la configuration des téléphones comme suit en allant dans le menu première icône du téléphone, puis
préférence et réseau et on remplit l’adresse IP du routeur SCCP
Dr. Kéba GUEYE
ToIP/VoIP
ToIP dans l’environnement CISCO
 Configuration d’un CUCME ou CME
Configuration du serveur SIP Autorisation du service sip et activation du routeur en
R1(config)#voice register global tant que serveur d’enregistrement SIP
R1(config-register-global)#mode cme
R1(config-register-global)#source-address 192.168.43.215 port 5060 R1(config)#voice service voip
R1(config-register-global)#max-dn 5 R1(conf-voi-serv)#allow-connections sip to sip
R1(config-register-global)#max-pool 5 R1(conf-voi-serv)#sip
R1(config-register-global)#auth R1(conf-serv-sip)#registrar server
R1(config-register-global)#authenticate register
R1(config-register-global)#time-format 24
R1(config-register-global)#date-format D/M/Y
R1(config-register-global)#tftp-path flash:
R1(config-register-global)#create profile

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Configuration d’un CUCME ou CME
Création du numéro de téléphone 3000 Création de compte sip 3000 avec le mot de passe passer
R1(config)#voice register dn 1
R1(config-register-dn)#number 3000 R1(config)#voice register pool 1
R1(config-register-dn)#name Mame Bousso R1(config-register-pool)#id mac 0000.0000.3000
R1(config-register-dn)#label Mame chef de la classe R1(config-register-pool)#type 7965
R1(config-register-dn)#exit R1(config-register-pool)#number 1 dn 1
R1(config)# R1(config-register-pool)#codec g711ulaw
R1(config-register-pool)#username 3000 password passer
R1(config-register-pool)#exit
R1(config)#
Paramétrer un téléphone SIP avec le compte 3000 et comme mot de passe passer.
Constater que sur l’interface du routeur le téléphone SIP s’est bien connecté.

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
L’architecture du réseau téléphonique d’une entreprise pourrait se composer de deux solutions :
 une solution propriétaire (le CME dans notre cas);
 et une solution Libre (Asterisk dans notre cas).
Pour unifier ce réseau, il faut donc interconnecter ces deux serveurs.
Le but de cette interconnexion est de permettre aux abonnés du CME d’appeler ceux d’Asterisk et
inversement.

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Configuration côté Asterisk
Nous allons créer trois comptes. Le dernier sera le compte du serveur SIP distant
Le compte du SIP côté CME
[300]
username=300 [cmeasterisk]
host=dynamic username= cmeasterisk
context = LITA secret=passer
secret = passer type=friend
type=friend host = 192.168.43.215 ; l’adresse IP du CME
callerid=<300>« Mame" context=LITA
mailbox=300@LITA qualify=yes
dtmfmode=rfc2833
allow=ulaw
insecure=port,invite
careinvite=yes
mailbox=cmeasterisk@LITA Dr. Kéba GUEYE
ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Configuration côté Asterisk
Dans extensions.conf définir le contexte des utilisateurs et les critères d’envoi des appels vers le
serveur SIP distant.
[LITA]
exten => _3XX,1,Dial(SIP/${EXTEN},20,tr)
exten=>_2XXX,1,Dial(SIP/cmeasterisk/${EXTEN},20)

Recharger Asterisk avec la commande reload, dans sa console bien-sûr !


Dès que vous finissez cette étape, vous pouvez voir que le CME est automatiquement devenu un
client de Asterisk.
Par la commande sip show peers

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Configuration du CME
De la même manière nous avons indiqué à Asterisk le processus pour joindre les utilisateurs du CME,
nous ferons de même sur le CME afin de permettre à ses utilisateurs de pouvoir joindre ceux
d’Asterisk.
 Authentification du compte
R1(config)#sip-ua
R1(config-sip-ua)#authenticate username cmasterisk password passer
R1(config-sip-ua)#sip-server ipv4:192.168.43.215
R1(config-sip-ua)#exit

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Configuration du CME
 Le CME aussi a un plan de numérotation
Il faudra apprendre au CME comment joindre les clients Asterisk en activant le codec audio g711
R1(config)#dialplan-peer voice 2 voice
R1(config-dial-peer)#destination-pattern 3..
R1(config-dial-peer)#session protocol sipv2
R1(config-dial-peer)#session target sip-server
R1(config-dial-peer)#codec g711ulaw
R1(config-dial-peer)#exit

Faire les tests d’appels dans les dans sens.


Dr. Kéba GUEYE
ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Trunk CME/SCCP & Asterisk
Tout à l’heure nous avons fait des configurations permettant aux abonnés Asterisk d’échanger avec
ceux du CME/SIP . Ici le but est de permettre aux abonnés SCCP du CME de pouvoir s’appeler avec
ceux SIP d’Asterisk. En se basant sur l’interconnexion précédente, nous allons ici faire le nécessaire.
Ajouter la ligne suivante dans le fichier extensions.conf

exten => _3XXX,1,Dial(SIP/cmeasterisk/${EXTEN},20)

Sur le CME, nous n’aurons aucune action à faire car le plan de numérotation est déjà établi !
Faire les tests Appels entre le CME/SCCP vers Asterisk dans l’autre sens aussi.

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Gestion de boîtes vocales
Le but de cette partie est l’activation de la boite vocale pour tous nos clients : CME/SIP, CME/SCCP et Asterisk et
en suite stoker ces messages au niveau d’Asterisk. Ça veut dire que les abonnés du CME auront leurs boîte vocale
au niveau de chez Asterisk.
Config côté Asterisk
Editer sip.conf Ajouter la ligne mailbox=numéro@contexte au niveau de chaque numéro.

exten => _3XXX,1,Dial(SIP/cmeasterisk/${EXTEN},20)

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Gestion de boîtes vocales
Config côté Asterisk: Editer extensions.conf Ajouter les lignes suivantes.
[LITA]
;les appels
exten => _3XX,1,Dial(SIP/${EXTEN},20,tr) Dans le fichier voicemail.conf
exten => _2XXX,1,Dial(SIP/cmeasterisk/${EXTEN},20) [bvocale]
exten => _3XXX,1,Dial(SIP/cmeasterisk/${EXTEN},20) 300 => 1234
;la boite vocale 301 => 1234
exten => _3XX,2,Voicemail(${EXTEN}@bvocale) 2000 => ,
exten => _2XXX,2,Voicemail(${EXTEN}@bvocale) 2001 => ,
exten => _3XXX,2,Voicemail(${EXTEN}@bvocale) 3000 => ,
;les numéros à composer 3001 => ,
exten => 399,1,VoicemailMain(${CALLERID(num)}@bvocale) Cette configuration montre que les abonnés du CME ne saisiront
exten => 2999,1,VoicemailMain(${CALLERID(num)}@bvocale) aucun mot de passe pour accéder à leur boîte vocale.
exten => 3999,1,VoicemailMain(${CALLERID(num)}@bvocale)

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Gestion de boîtes vocales
Configuration du CME: Activation de la boite vocale pour les comptes CME/SCCP
Pour le numéro 2000 Activation de la boite vocale pour les comptes CME/SIP
R1(config)#voice register dn 1
R1(config)#ephone-dn 1 R1(config-register-dn)#call-forward b2bua 3000
R1(config-ephone-dn)#call-forward busy 2000 R1(config-ephone-dn)#call-forward b2bua noan 3000 timeout 20
R1(config-ephone-dn)#call-forward noan 2000 timeout 20 R1(config-ephone-dn)#exit
R1(config-ephone-dn)#exit Nous avons remarqué que l’activation de la boîte vocale pour un
compte CME/SCCP est différente de celle d’un CME/SIP.
Faire la meme chose pour les autres comptes

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Gestion de boîtes vocales
Configuration du plan de numérotation pour joindre les boites vocales
Le cas CME/SCCP Le cas CME/SIP

R1(config)#dial-peer voice 8 voip Activation de la boite vocale pour les comptes CME/SIP
R1(config-dial-peer)#destination-pattern 2… R1(config)#dial-peer voice 9 voip
R1(config-dial-peer)#session protocol sipv2 R1(config-dial-peer)#destination-pattern 3…
R1(config-dial-peer)#session target sip-server R1(config-dial-peer)#session protocol sipv2
R1(config-dial-peer)#codec g711ulaw R1(config-dial-peer)#session target sip-server
R1(config-dial-peer)#exit R1(config-dial-peer)#codec g711ulaw
R1(config-dial-peer)#exit

Un abonné du CME/SIP tente de joindre celui de Asterisk qui ne va pas décrocher. Il va donc lui laisser un message
dans sa boîte vocale. Les informations de cette action s’affichent clairement sur la console du serveur Asterisk

Dr. Kéba GUEYE


ToIP/VoIP
ToIP dans l’environnement CISCO
 Trunk entre un serveur Asterisk et un serveur CME
 Configuration du CME
De la même manière nous avons indiqué à Asterisk le processus pour joindre les utilisateurs du CME,
nous ferons de même sur le CME afin de permettre à ses utilisateurs de pouvoir joindre ceux
[cmeasterisk]
d’Asterisk. username=
Configuration du CME cmeasterisk
secret=passer
Authentification du compte type=friend
R1(config)#sip-ua host = 192.168.43.215 ; l’adresse IP du CME
R1(config-sip-ua)#authenticate username cmasterisk password context=LITA
passer qualify=yes
R1(config-sip-ua)#sip-server ipv4:192.168.43.215 dtmfmode=rfc2833
R1(config-sip-ua)#exit allow=ulaw
insecure=port,invite
careinvite=yes
mailbox=cmeasterisk@LITA
Dr. Kéba GUEYE

Vous aimerez peut-être aussi