Évolution de la Téléphonie : RTC à IP
Évolution de la Téléphonie : RTC à IP
La téléphonie est devenue le moyen de communication le plus utilisé des être humains.
Avant, la transmission de la voix était exclusivement réservée au réseau téléphonique
commuté RTC ou encore réseau téléphonique commuté public (RTCP) (en anglais, public
switched telephone network ou PSTN). C'est le réseau historique des téléphones fixes, (au
Sénégal, c'est la SONATEL qui est en charge de la gestion de ce réseau) dans lequel un poste
d'abonné est relié à un commutateur téléphonique du réseau public par une paire de fils
alimentée en batterie centrale intégrale (la boucle locale).
Présentation
Le réseau Téléphonique public Commuté RTPC ou simplement RTC ou encore PSTN (Public
Switched Telecommunication Network) est certainement le réseau le plus utilisé. Il a
essentiellement pour objet le transfert de la voix. Néanmoins ce réseau peut être utilisé pour le
transfert de données par le biais d’un modem.
Principe de fonctionnement:
1
Le transport de la voix sur le réseau analogique
Tout d’abord, la technologie du RTC est basée sur un système analogique. Ces lignes
analogiques sont composées d’une paire de fils formant une boucle. Lors d’un appel, quand
vous décrochez votre téléphone pour répondre, cette boucle se ferme. Puis, lorsque vous
parlez, vous faites vibrer la membrane du combiné, qui elle-même fait vibrer une bobine afin
de créer un courant électrique. La voix est ainsi convertie en signal électrique. Puis,
des équipements appelés « commutateurs téléphoniques » se chargent du transport de la
voix sur le réseau RTC. Voilà comment fonctionne le service téléphonique via une ligne
RTC.
Architecture du RTC:
Le réseau téléphonique a une organisation hiérarchique à trois niveaux (figure 3).il structuré
en trois zones, chaque zone correspond à un niveau de concentration et en principe de
taxation. On distingue:
- La Zone à Autonomie d’Acheminement (ZAA): c’est la zone la plus basse de la
hiérarchie. Elle comporte un ou plusieurs Commutateurs à Autonomie d’Acheminement
(CAA) qui eux-mêmes desservent des Commutateurs Locaux (CL). Les Commutateurs
Locaux ne sont que de simples concentrateurs de lignes auxquels sont raccordés les abonnés
finals.
- La Zone de Transit Secondaire (ZTS): cette zone comporte des Commutateurs de Transit
Secondaire (CTS). Ces derniers assurent le brassage des circuits lorsqu’un CAA ne peut
atteindre directement le CAA destinataire.
- La Zone de Transit Principal (ZTP): cette zone assure la commutation des liaisons
longues distances. Chaque ZTP comprend un Commutateur de Transit Principal (CTP).
2
Le RTC public est très étendu; il atteint tous les pays du globe, y compris les pays en voie de
développement où même les villages très reculés possèdent en général au moins un téléphone.
L’arrêt de la production de nouvelles lignes analogiques dès 2018 marque de manière décisive
la fin programmée du réseau téléphonique commuté (RTC). Nombreuses sont les entreprises
utilisant encore ce réseau déployé à partir des années 80, et contraintes de trouver aujourd’hui
une solution de remplacement.
En effet, depuis l’avènement du protocole IP et la large adoption des offres d’accès à Internet,
le RTC n’est plus le seul véhicule des services de téléphonie existant. Nombre d’entreprises se
sont tournés vers le réseau mobile, pour garantir une continuité de service et assurer la
meilleure couverture possible à leurs solutions de téléphonie.
Le réseau RTC devient, en effet, de plus en plus difficile à maintenir pour 3 raisons :
Ce réseau existe depuis près d’un demi-siècle maintenant. De ce fait, les pannes se
multiplient en raison de l’ancienneté de la technologie.
la maintenance de ce réseau entraîne des coûts importants pour l’opérateur Orange
(près de 500 millions d’euros de charges d’exploitation annuelles pour l’entretien du
réseau cuivre).
Les équipements nécessaires au fonctionnement du réseau RTC sont plus difficiles
d’accès qu’auparavant.
3
Ces motifs expliquent le choix de l’opérateur téléphonique historique, Orange, d’abandonner
le réseau RTC au profit de la technologie ip, afin de maintenir un service de téléphonie de
qualité.
Le réseau GSM
Le GSM est créé en 1982 par le CEP (Conférence Européenne des administrations des Postes
et Télécommunication). Il signifiait Groupe Spécial Mobile (GSM).
En 1987 les premières normes du GSM ont été définies.
En 1989, le GSM devient le sigle de Globale System for Mobile communications.
Le GSM s’agit d’un réseau téléphonique mobile de deuxième génération (2G). Il permet de
transmettre la voix et les données (SMS (Short Message Service) et MMS (Multimédia
Message Service)).
La bande de fréquence du GSM varie selon le pays. Par exemple l’Europe utilise la bande de
fréquence 900MHz et 1800MHz alors que les USA utilisent la bande de fréquence 850MHz
et 1900MHz.
Le concept cellulaire
Le GSM est l’un des réseaux mobile qui utilise le concept cellulaire. Il est donc un système
cellulaire. Lors de la configuration des sites, on utilise souvent des motifs à 9 cellules pour
trois BTS avec 3 secteurs par BTS ou des motifs à 12 cellules pour 4 BTS avec 3 secteurs par
BTS.
L’architecture du GSM
Les différents éléments de base d’un réseau GSM sont :
Les stations mobiles (MS : Mobile station);
La station de base (BTS : Base Transceiver Station)
Le contrôleur des stations de base (BSC : Base Station Controller)
Le centre de commutation du service mobile (MSC : Mobile Switching Center)
Le registre des abonnés visiteurs (VLR : Visitor Location Register)
Ci-dessous l’architecture de base du GSM :
4
La MS (Mobile Station) est le terminal d’abonnée. Ça peut être par exemple un téléphone
portatif.
La BTS et le BSC constituent le sous-système radio (BSS : Base Station Subsystem).
L’ensemble MSC, VLR, EIR (Equipement Identity Register), HLR (Home Location
Register) et AUC (Autentication Center) forme le sous-système réseau (NSS : Network
Station Subsystem).
Le NSS et le BSS sont contrôlés par un centre d’exploitation et de maintenance (OMC :
Operating and Maintenance Center).
L’OMC est composé de deux parties :
Un centre d’exploitation et de maintenance réseau (OMC-N : Operating and
Maintenance Center –Network). Il contrôle le NSS.
Un centre d’exploitation et de maintenance radio (OMC-R : Operating and
Maintenance Center –Radio). Il contrôle le BSS.
Le BSS assure la supervision d’une ou plusieurs BTS.
3.1 La station mobile (MS)
Parmi les stations mobiles, on distingue :
Les terminaux mobiles fixes
Les terminaux mobiles portables
Les terminaux mobiles portatifs
Un portatif se distingue d’un portable par sa petite taille et sa puissance. Il est celui que nous
avons l’habitude d’appeler téléphone portable.
La MS comprend en général deux entités qui sont l’équipement lui-même identifié par
son IMEI (International Mobile Equipement Identity) et la carte SIM ((Subscriber
ldentity Module) identifiée par son IMSI (International Mobile Subscriber ldentity) qui
est le numéro d'abonné international.
Selon la puissance, on distingue au moins 5 classes d’équipements :
Les équipements embarqués (fixes) : puissance 20W (classe 1).
Les équipements portables : puissance 8W (classe 2).
Les équipements portatifs de classe 3 avec une puissance de 5W.
Les équipements portatifs de classe 4 avec une puissance de 2W.
Les équipements portatifs de classe 5 avec une puissance de 0,8W.
On distingue deux sortes de cartes SIM :
5
La carte SIM plug-in :
Elle a la taille d’une carte crédit. Elle est utilisée dans les équipements embarqués,
portables et rarement dans les portatifs.
La micro SIM :
Elle est utilisée dans les portatifs.
6
Le VLR s’agit d’une base de données qui enregistre temporairement les données dynamiques
(IMSI, MSRN (Mobile Station Roaming Number) etc.) des mobiles itinérant sa zone de
service.
3.5.3 Le registre des abonnés locaux (HLR)
Il s’agit d’une base de données qui enregistre les informations nécessaires permettant de
localiser les abonnés inscrits dans un MSC.
3.5.4 Le centre d'authentification (AUC)
L’AUC est une base de données qui stocke pour chaque utilisateur une clé secrète pour
protéger les communications. Le but est de vérifier l’identité des usagers.
La voix sur IP (Voice over IP) est une technologie de communication vocale en pleine
émergence. Elle fait partie d’un tournant dans le monde de la communication.
La téléphonie sur IP
La téléphonie sur IP exploite un réseau de données IP pour offrir des communications vocales
à l'ensemble de l'entreprise sur un réseau unique : données, voix et vidéo. Cette convergence
des services de communication de données, de voix, et de vidéo sur un réseau unique,
s'accompagne des avantages liés à la réduction des coûts d'investissement, à la simplification
des procédures d'assistance et de configuration.
Les coûts généraux de l'infrastructure de réseau sont réduits. Le déploiement d'un unique
réseau convergé voix, vidéo et données sur tous les sites permet de réaliser des économies sur
les investissements productifs. De plus, comme le téléphone et le PC partagent le même câble
Ethernet, les frais de câblage sont réduits. Les frais d'administration du réseau sont également
minimisés. Il est ainsi possible de réaliser des économies à court et à long terme sur de
nombreux postes : administration d'un seul réseau, fournisseur d'accès unique, unique contrat
de maintenance, câblage commun, gratuité des communications interurbaines, réduction de la
complexité de l'intégration d'applications. Enfin, la migration de la solution actuelle vers la
Téléphonie sur IP s'effectue en douceur. Les solutions de téléphonie sur IP sont conçues pour
dégager une stratégie de migration à faible risque à partir de l'infrastructure existante.
7
La voix sur IP ou « VoIP » pour Voice over Internet Protocol est la technologie qui permet
de véhiculer de la voix sur un réseau IP, autrement dit, téléphoner via Internet. Ce terme est
de plus en plus connu du fait que la téléphonie sur Internet ne souffre plus de la faible qualité
des communications.
Actuellement, le principal attrait de VOIP est économique : en utilisant Internet pour
transmettre les communications longue distance, l’utilisateur ne paie que le prix d’une
communication locale. La téléphonie sur IP offre des services très diversifiés talque la :
transmission de textes, de photos, de dossiers au fil de la conversation, possibilité de partage
de fichier et possibilité de cryptage des échanges.
Cette technologie réside sur un principe permettant de faire circuler sur Internet, grâce au
protocole IP, des paquets de données correspondant à des échantillons de voix numérisées.
Reste ensuite à acheminer ces paquets dans le bon ordre et dans un délai raisonnable pour que
la voix soit correctement restituée.
1. Acquisition du signal :
La première étape consiste naturellement à capter la voix à l’aide d’un micro, qu’il s’agisse de
celui d’un téléphone ou d’un micro casque.
2. Numérisation
La voix passe alors dans un convertisseur analogique numérique qui réalise deux tâches
distinctes échantillonnage du signal sonore : un prélèvement périodique de ce signal, il s'agit
d'enregistrer à des intervalles très rapprochés la valeur d'un signal afin de pouvoir disposer
d'un enregistrement proche de la valeur réelle de ce signal.
3. Compression
8
Le signal une fois numérisé peut être traité par un DSP (Digital Signal Processor) qui va le
compresser, c’est-à-dire réduire la quantité d’informations nécessaire pour l’exprimer.
L’avantage de la compression est de réduire la bande passante nécessaire pour transmettre le
signal.
4. Emission et transport
Les paquets sont acheminés depuis le point d’émission pour atteindre le point de réception
sans qu’un chemin précis soit réservé pour leur transport.
5. Réception
Lorsque les paquets arrivent à destination, il est essentiel de les replacer dans le bon ordre et
assez rapidement. Faute de quoi une dégradation de la voix se fera sentir.
7. Restitution
Dès lors, la voix peut être retranscrite par le haut-parleur du casque, du combiné téléphonique
ou de l’ordinateur.
9
Les avantages de la téléphonie IP
Economie sur le coût des communications : elles sont le plus souvent gratuites et
La norme exige que la durée entre la production de l’émetteur et le moment où l’autre reçoit
ne doit pas dépasser 150ms en vue de garder une bonne qualité de la communication. L’idée
est de dire que si nous voulons respecter cette contrainte temporelle il ne faudrait pas que le
canal établisse 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. Or, on veut
déployer la téléphonie dans u réseau IP. Donc il revient à dire c’est quoi un réseau IP ? Un
réseau IP est un réseau à commutation de paquet dans lequel on ne s’occupe pas de la
transmission 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 à ‘’Best Effort’’.
10
Les échos
Une autre difficulté de la communication téléphonique est l'écho. L'écho désigne un signal qui
rencontre des obstacles et revient dans l'oreille de l'émetteur au moment de la production.
Pour que l'écho ne soit pas gênant pour l'oreille, il faut que le temps de transit (traversée) de
communication ne dépasse pas 28 ms soit 56ms dans les deux sens (aller-retour).
La synchronisation
Un réseau IP est un réseau à commutation de paquet dans lequel on ne s’occupe pas 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. Les paquets sont remis au récepteur à des
instants quelconques donc il est nécessaire de faire une resynchronisation des paquets avant
de les remettre au codec. Cette resynchronisation ne peut se faire que si on stocke les paquets
pendant un certain temps. Le temps pendant lequel les paquets sont stockés est appelé temps
de synchronisation. La norme exige que ce temps ne doive pas dépasser 100ms et doit être
supérieur au temps maximal de traversée. La réalisation d'un algorithme nécessite que le
nœud récepteur doive connaitre le temps d'entrée dans le réseau en vue de synchroniser en
ajoutant le temps maximal de traversée. Dans les réseaux qui transportent de la parole, on
utilise deux types de synchronisation :
- La synchronisation directe : qui consiste à utiliser le même temps.
- La synchronisation différentielle : qui consiste à avoir les mêmes horloges tournant
à la même vitesse.
Ø La libre redistribution
Ø Un code source disponible
Ø Les travaux dérivés possibles
Alors que la voix sur IP connaît un développement sans précédent, les institutions et les
petites et moyennes entreprises sont aujourd'hui en mesure de contrôler leur réseau
téléphonique interne sans avoir recours aux services d’un coûteux prestataire. Le budget pour
11
un standard téléphonique (PABX) peut se montrer si élevé et les services en rapport si peu
adaptés que la solution la plus sage est souvent de le monter soi-même. Asterisk s'impose
alors comme la solution Open Source la plus performante. Avec Asterisk : la téléphonie Open
Source, la configuration et la mise en œuvre d'un véritable PABX à partir d'un simple serveur
PC devient enfin réalité.
Les protocoles
Un protocole est un langage commun utilisé par l'ensemble des acteurs de la communication
pour échanger des données.
Il faut distinguer en tout deux types de protocoles en téléphonie sur IP ; les protocoles de
signalisation et les protocoles de transport.
Les protocoles signalétiques, ont la charge de régir les communications, de déterminer les
appelés, de signaler les appelants, de gérer les absences, les sonneries etc... Mais aussi de
négocier quel codec pourra être utilisé.
H323
Il appartient à la couche Application du modèle OSI. Son rôle est d’ouvrir, modifier et libérer
les sessions. L’ouverture de ces sessions permet de réaliser de l’audio ou vidéoconférence, de
l’enseignement à distance, de la voix et de la diffusion multimédia sur IP essentiellement.
IAX2 est une alternative au protocole SIP. Il s’agit du protocole sur lequel s’appuie Asterisk
bien que celui-ci soit en mesure de supporter les autres principaux protocoles VoIP tel que
SIP. Il ne permet que des communications entre serveurs Asterisk
12
MGCP (Media Gateway Control Protocol)
MGCP (Media Gateway Control Protocol) est un protocole complémentaire à H.323 ou SIP
traitant des problèmes d'interconnexion avec le monde téléphonique.
Il est utilisé avec les agents d'appels (call agent) qui utilisent une passerelle multimédia. Les
agents d'appel contiennent les instructions nécessaires au contrôle d'appels et de la passerelle
multimédia. La passerelle multimédia fournit en général la conversion de la voix vers le
réseau téléphonique classique en paquets de données réseaux. Il gère aussi la synchronisation
entre les agents d'appels pour transmettre des requêtes cohérentes à la passerelle multimédia.
Les deux protocoles SIP et H323 représentent les standards définis jusqu'à présent pour la
signalisation à propos de la téléphonie sur Internet. Ils présentent tous les deux des approches
différentes pour résoudre un même problème.
La voix sur IP, offre une gamme diversifiée de protocoles. Notre choix de protocoles s’est
orienté vers le SIP et IAX, pour la complémentarité offerte par leurs services et
fonctionnalités et aussi parce qu'ils sont supportés par Asterisk.
TCP
UDP
Le protocole UDP (User Datagramme Protocol) basé sur la même couche que TCP. Il
présente des performances moyennes par rapport à TCP, car il permet l’envoi de paquets sans
contrôle de réception.
Pour ne pas ralentir le trafic, il faudrait utiliser des protocoles de transport simplifié, quitte à
ne pas prendre en compte la gestion des erreurs. Contrairement aux données où seul le débit
global compte, UDP garantit, pour la voix, un flux plus régulier.
13
RTP (Real Transport Protocol)
Le RTP (Real Time Transport Protocol) est un protocole qui permet de faciliter le transport
en temps réel des flux audio et vidéo sur les réseaux IP. RTP se situe au niveau applicatif
pour utiliser les protocoles TCP ou UDP.
Il organise les paquets à l'entrée du réseau et les contrôles à la sortie. Il est adapté aux
applications et permet de reconstituer la base de temps des flux, mettre en place un
séquencement des paquets par numérotation. La numérotation permet de détecter les paquets
perdus. Il permet aussi d'identifier le contenu des données pour les associer un transport
sécurisé, identifier la source du paquet (la source doit être connue et déterminée) et transporter
les applications audio et vidéos dans des trames. La dimension des trames sont dépendantes
des codecs.
RTCP
Le protocole RTCP est basé sur des transmissions périodiques de paquets de contrôle par tous
les participants dans la session. L’objectif de RTCP est de fournir différents types
d’informations et un retour quant à la qualité de réception. Le protocole RTCP est un
protocole de contrôle associé à RTP, il mesure les performances, il n’offre pas de garantie par
contre.
Les Codecs
Codec est une abréviation pour Codeur/Décodeur. Un codec est basé sur un algorithme qui
permet la compression des données qu'on lui donne. Il s'agit d'un procédé permettant de
compresser et de décompresser un signal, de l'audio ou de la vidéo, le plus souvent en temps
réel, permet une réduction de la taille du fichier original. Le codec numérise et compresse la
voix de l'émetteur, ainsi les données numériques sont encapsulées dans des paquets IP et
acheminées vers le destinataire. A l'arrivés au destinataire, ce dernier grâce au même codec
décompresse et restitue le son. Il On distingue des codecs à pertes et codecs sans pertes.
Une fois le signal numérisé et encodé, il est prêt à être transmis. Le transport des données peut
se faire par l'intermédiaire de plusieurs protocoles dont notamment RTP et RTCP, le contrôle
du flux se faisant via les autres protocoles nommés plus haut. Arrivé du côté du récepteur, le
signal est décodé en utilisant le même codec et ensuite restitué.
L'objectif d'un codec est la transformation d'un signal analogique vers un signal numérique et
vice-versa. Ici, le codec transforme donc le signal de la voix en données numériques
14
facilement transportables sur un réseau. Après de transport, le même codec se charge de
reconvertir le signal numérique vers un signal analogique.
Dans la téléphonie sur IP, les différents codecs retransmettent plus ou moins bien le signal
original. Pour mesurer la qualité de la voix restituée, on parle de score MOS (Mean Opinion
Score). C'est une note comprise entre 1 et 5 et attribuée par des auditeurs jugeant de la qualité
de ce qu'ils entendent. Pour la VoIP, plusieurs codecs peuvent servir. Voici leurs détails :
G.711 : Ce codec est le premier à avoir été utilisé dans la VoIP. Même s’il existe maintenant
des codecs nettement plus intéressants, celui-ci continue d'être implémenté dans les
équipements à des fins de compatibilité entre marques d'équipements différentes.
G.722 : A la différence du G.711, ce codec transforme le spectre jusqu'à 7kHz ce qui restitue
encore mieux la voix. Les débits que ce codec fournit sont 48,56 ou 64kbit/s. Une des
particularités est de pouvoir immédiatement changer de débit. Ceci est fortement appréciable
lorsque la qualité du support de transmission se dégrade.
G.722.1 : Dérivé du codec précédent, celui-ci propose des débits encore plus faibles (32 ou
24kbit/s). Il existe même des versions propriétaires de ce codec fournissant un débit de
16kbit/s.
G.723.1 : C'est le codec par défaut lors des communications à faible débit. Deux modes sont
disponibles. Le premier propose un débit de 6,4kbit/s et le deuxième un débit de 5,3kbit/s.
Les équipements
15
-téléphone-IP
Linksys PAP2
Permet d'appeler et de recevoir des appels par la ligne téléphonique classique ou gratuitement
par Internet sans changer de téléphone
2 ports RJ11 pour téléphones traditionnels ou fax avec 2 n° de téléphone
indépendant
1 port RJ-45 pour connexions Ethernet 10/100 Mbits
Protocole SIP
Compatibilité avec toutes les fonctions de votre téléphone
16
b) Les ressources logiques
Softphones
H.323phone
-Zoiper
-3xcom
-Xlite
-iaxcomm-win
-etc
Ceux sont des applications permettant d’émuler un terminal téléphonique sur un PC.
La réception d’un appel sur un softphone est conditionnée par l’ouverture de son application.
a) Softphone Xlite
Lien de téléchargement
b) Softphone iax
Lien de téléchargement [Link]
17
c) Softphone H323PhoneSetup
d) Softphone ZOIPER
Il propose deux protocoles de signalisation SIP et IAX.
e) Softphone 3CX
18
Description de la formation
Le but de cette formation est de formé les étudiants aux notions de bases de la téléphonie sur
IP. A l’aide du logiciel open source Asterisk, ils réaliseront une maquette permettant de faire
communiquer plusieurs postes. Ils auront également la possibilité d’interconnecter leurs
différents serveurs téléphoniques entre eux afin de pouvoir faire communiquer plusieurs sites
distants.
1) Faire passer tous les coûts téléphoniques dans le prix du forfait Internet
2) Se passer de téléphone si on utilise des softphones
3) Être indépendant en termes de téléphonie d’entreprise
4) Disposer d'un numéro d'appel unique quel que soit l'endroit où on se trouve
19
Séquence 2 : Présentation des PABX et PABX-IP. Installation du
PABX-IP asterisk
PBX / PBX-IP
Le PBX-IP permet :
• de recevoir des appels pour téléphones et fax depuis des lignes téléphoniques
conventionnelles,
• d'émettre des appels vers des téléphones ou fax traditionnels via ces mêmes lignes,
• d'émettre des appels à coût réduit vers des téléphones et fax traditionnels ou vers des GSM
en passant par un opérateur de téléphonie IP,
• de communiquer gratuitement via Internet, par exemple en interconnectant les PBX-IP de
sites distants ou en enregistrant un téléphone distant sur le central de l'entreprise.
Présentation d'Asterisk
Le logiciel libre Asterisk est un PABX-I et de bénéficie des services qu'offrent les
commutateurs d'entreprises : (musique d'attente, conférence, accueil vocal par une
20
standardiste numérique, messagerie vocale, etc.). Asterisk propose plusieurs milliers de
fonctions.
C’est un commutateur téléphonique privé à part entière mais d'implémentation logicielle,
compatible avec Linux et qui s'interconnecte avec quasiment tous les équipements de
téléphonie de base. Il a été développé par Mark Spencer à l'origine de l'entreprise Digium, et
qui continue, grâce à de nombreux contributeurs, à évoluer régulièrement. Ce logiciel a été
conçu pour une flexibilité maximale et reste un système ouvert à de nouvelles applications.
Asterisk fournit toutes les fonctionnalités attendues d'un PABX mais aussi la voix sur IP et n'a
besoin d'aucun matériel supplémentaire pour l'assurer. Dans l'interconnexion avec les
équipements de téléphonie numériques et analogiques, Asterisk reconnaît une large gamme de
dispositifs matériels, et notamment ceux fabriqués par ses sponsors, tels que Digium, ou
encore Quick net.
Asterisk offre des services tel que la conférence téléphonique, le répondeur interactif, la mise
en attente d'appels, la messagerie vocale, la musique d'attente, les enregistrements d'appels
pour l'intégration avec des systèmes de facturation, etc...
Installation Asterisk
Cette partie va permettre de prendre en main les différents fichiers de configuration d’asterisk.
On mettra en place un serveur téléphonique avec différentes options tels que le répondeur, la
conférence téléphonique, la mise en attente etc.
La réalisation consistera à configurer un serveur téléphonique 100% IP. Celui-ci permettra de
faire dialoguer des téléphones IP compatibles SIP ou des softphones compatibles SIP ou IAX.
Pré requis
Matériel nécessaire :
- 1 ordinateur qui servira de serveur téléphonique.
- Un système d’exploitation Linux Ubuntu.
- Des ordinateurs sur lesquelles on installera des softphone (optionnel)
- Un téléphone analogique (optionnel)
- Un téléphone IP (optionnel)
- Une passerelle VOIP Lynksys PAP2 pour connecter les téléphones analogiques au
serveur (optionnel)
- Un téléphone avec softphone Zoiper ou autre
21
PROCEDURE D’INSTALLATION DU PABX-IP ASTERISK
Installation sur un système Ubuntu
krist@kristordi:~$ sudo -s
Tapez la commande « ls » et validez pour voir la version téléchargée
root@kristordi:~# ls
root@kristordi:/usr/local/asterisk-18.17.0# ./configure
22
root@kristordi:/usr/local/asterisk-18.17.0# make
root@kristordi:/usr/local/asterisk-18.17.0# make install
Démarrage d’asterisk
root@kristordi:~# asterisk
root@kristordi:~# asterisk -rvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
23
Pour afficher de l’aide on utilise la commande suivante:
kristordi*CLI> help
Commandes description
stop now arrêt (voir aussi help stop pour les variantes)
Le fichier [Link] est le fichier de création de compte IAX. Sa syntaxe est sensiblement
identique au fichier de configuration [Link].
Syntaxe générale
24
NB :
Le paramètre type peut prendre aussi les valeurs suivantes :
- type=user ; permet uniquement d’appeler mais ne peut pas recevoir des appels
- type=peer ; permet uniquement de recevoir des appels mais ne peut pas appeler
- type=dynamic ; permet d’appeler et de recevoir des appels.
[grazy]
type=friend
defaultuser=grazy
secret=passer
host=dynamic
context=kanafa
Callerid= “grazy” <1502>
mailbox=1502@boxmailkanafa
[kamala]
type=friend
defaultuser=kamala
secret=passer
host=dynamic
context=kanafa
Callerid= “kamala” <1500>
mailbox=1503@boxmailkanafa
[fredy]
type=friend
defaultuser=fredy
secret=passer
host=dynamic
context=kenya
Callerid= “fredy” <1504>
mailbox=1504@boxmailkenya
[rita]
type=friend
defaultuser=rita
secret=passer
host=dynamic
context=kenya
Callerid= “rita” <1505>
mailbox=1505@boxmailkenya
25
e- Création des comptes sip
[Link]
Le fichier [Link] est le fichier de création de comptes SIP. Chaque compte est déclaré dans
un fichier pour indiquer la signalisation utilisée par ce compte. Donc tous les comptes qui
seront déclarés dans le fichier SIP vont utiliser la signalisation SIP. Sur chaque compte on
indique les paramètres de fonctionnement en suivant la syntaxe ci-dessous:
Chaque compte est imbriqué dans un bloque où sont énuméré tous les paramètres qui lui sont
liés.
Syntaxe générale
Exemple
[krist]
type=friend
defaultuser=krist
secret=passer
host=dynamic
context=kanafa
Callerid= “krist” <1500>
mailbox=1500@boxmailkanafa
[nalla]
type=friend
defaultuser=nalla
secret=passer
host=dynamic
context=kanafa
Callerid= “nalla” <1501>
mailbox=1501@boxmailkanafa
[manala]
type=friend
defaultuser=manala
26
secret=passer
host=dynamic
context=manala
Callerid= “manala” <1506>
mailbox=1506@boxmailkenya
[roro]
type=friend
defaultuser=roro
secret=passer
host=dynamic
context=roro
Callerid= “roro” <1507>
mailbox=1507@boxmailkenya
Le fichier [Link] permet de définir les règles de routage. Dans ce fichier on définit
les contextes et les plans de numérotation. Chaque extension a un plan de numérotation
interne qui va être interprété et acheminé vers des liens physiques (IAX ou SIP).
Syntaxe générale :
[Nom contexte]
exten => numéro, priorité, application (arguments)
Exemple
[kanafa]
27
exten => 1501,1,Dial(SIP/nalla,40,tr)
exten => 1501,2,Hangup()
[kenya]
28
Validez par les touches " appliquer" et " Ok". Un registré affiche l'interface suivante :
29
Enregistrement des comptes IAX
Pour registrer les comptes IAX, il vous un softphone supportant le protocole IAX.
Renseignez les
informations du
compte (rita pur notre
cas)
Registrer le
compte
30
Utilisation des postes téléphoniques conventionnels :
L’utilisation de téléphone classique est possible grâce au Linksys PAP2. C’est une passerelle
qui permet de raccorder nos téléphones au réseau IP afin qu’ils puissent joindre la PABX-IP
qui tourne sur asterisk.
- Le Linksys PAP2 est doté de deux lignes analogique RJ11 sur lesquelles on branche
les téléphone ;
- conectez ensuite le Linksys PAP2 au réseau via son port RJ45.
Le Linksys PAP2 fonctionne en mode client DHCP, c'est à dire qu'il demande automatique
une adresse IP au serveur DHCP disponible sur votre réseau.
Pour connaitre l'adresse IP attribuée au Linksys PAP2, il faut :
- décrocher l'un des téléphones et composer ****
- vous accédez ainsi à son menu de configuration
- composez ensuite 110# et écouter attentivement l'adresse IP en cours du Linksys
PAP2.
Supposons que l'adresse PIP en cours est IP [Link]. Taper cette adresse sur votre
navigateur pour accéder à l'interface de configuration du Linksys PAP2. Renseignez le login
et mot de passe (habituellement , admin admin)
Connectez-vous sur l’interface de votre Linksys PAP2 via un navigateur :
31
NB :
Le SIP Port de la ligne 1 ne doit pas être le même que celui de la ligne 2. Si vous avez sur
la ligne 1 un SIP Port 5060 vous devez mettre au niveau de la ligne 2 un SIP Port 5061.
Cliquer sur save setting pour sauvegarder.
Pour que les utilisateurs du contexte kanafa puissent appeler les utilisateurs du contexte
kenya et vice versa, il suffit d’inclure ces deux contextes l’un dans l’autre par le biais de la
commande :
[kanafa]
[kenya]
2- Transferts d’appels
Vous êtes en conversation avec un client qui vous demande une information. Avec les
fonctions "Transfert d'appel" sur votre téléphone fixe, vous pouvez, en tant que appelant
transférer votre appel à un autre interlocuteur ou laisser l’appelé transférer votre appel à
quelqu’un autre.
32
Transférer un appel signifie qu'un côté de la conversation (A) demande à Asterisk de connecter
l'autre côté (B) à la troisième destination du système (C). Asterisk prend en charge deux types de
transfert d'appel : aveugle et assisté.
[featuremap]
blindxfer = #1
atxfer = *2
[kanafa]
Application : l’utilisateur krist appelle l’utilisateur nalla, nalla décroche puis transfert
l’appel à rita (1505) en cliquant sur dièse (#) suivi du numéro de rita: #1505
33
3. nalla est en attente
4. nalla et rita sont en communication
5. krist raccroche
[kanafa]
Application : l’utilisateur krist appelle l’utilisateur nalla, nalla décroche. Krist transfert
l’appel à rita (1505) en cliquant sur dièse (#) suivi du numéro de rita #1505 pour nalla et
rita de continuer la communication.
3- Appels simultanés
Dans cette syntaxe, si en compose 8000 (numéro du centre d’appel) les téléphones de krist-
nalla-rita-roro sonnent en même temps. Le premier à décrocher se mets en communication
avec le premier appelant.
4- Appels en cascades
il s’git dans ce cas d’appeler successivement les postes l’un après l’autre jusqu'à ce que l’un
décroche. Dans la syntaxe suivante, le téléphone de krist va sonner pendant 2 seconde, s’il ne
décroche pas celui de nalla va sonner à son tour jusqu'à 20 seconde ainsi de suite jusqu'à
perdre l’appel à la 5ième option.
5- Centre d’appel
34
Vous êtes responsable d'un centre d'appels. Tous vos agents doivent pouvoir répondre aux
appels des clients, à tour de rôle ou suivant une règle prédéfinie. Asterisk vous offre toutes les
possibilités gestion d’agents.
Ces configurations sont effectuées dans le fichier [Link]. Ce fichier va servir à définir
les files et leur comportement.
On va déclarer une file d’attente nommée (queue_mediavision)
[queue_mediavision]
musicclass = default
strategy = ringall
timeout = 15
retry = 5
maxlen = 0
joinempty = yes
min-announce-frequency = 15
periodic-announce-frequency=60
announce-frequency = 90
announce-position = yes
announce-round-seconds = 10
queue-youarenext = queue-youarenext ; indique votre position
queue-thereare = queue-thereare ; indique le nombre avant vous
queue-callswaiting = queue-callswaiting
queue-quantity1 = queue-quantity1
queue-quantity2 = queue-quantity2
queue-holdtime = queue-holdtime
queue-minute = queue-minute
queue-minutes = queue-minutes
queue-seconds = queue-seconds
queue-thankyou = queue-thankyou
queue-reporthold = queue-reporthold
periodic-announce = queue-periodic-announce
35
b- création des extensions d’ouvertures et de fermeture de sessions en tant
qu’agents
Cette configuration se fait dans le fichier [Link]. un numéro doit être indiqué se
connecter en agent, et un autre pour se déconnecter.
Il s’agit maintenant de d’attribuer une extension d’appel pour le entre d’appel qui gère la
file d’attente queue_ mediavision des agents. La configuration se fait toujours dans
[Link]
6- Messagerie vocale
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 [Link] qui se
trouve dans le répertoire /etc/asterisk/.
36
a- Création des boites vocales dans [Link]
Comme pour tout autre fichier, le fichier [Link] est composé de plusieurs sections.
Editer ce fichier et faites les modifications suivantes en bas. Nous avons créé, dans notre cas,
deux contextes de boite vocale boxmailkenya et boxmailkanafa
La syntaxe est :
Numéro de boite vocale => mot de passe,utilisateur,email
Exp : 1504 => 504,fredy,fredy@[Link]
[boxmailkenya]
[boxmailkanafa]
1500 => 500,krist ; boite vocale 1500 pour krist et de son mot de passe 500
1501 => 501,nalla
1502 => 502,grazy
1503 => 503,kamala
Il vous faut maintenant éditer le fichier [Link] et ajouter les applications qui vont
permettre de router vos appels dans vos boites vocales.
[kanafa]
37
exten => 1501,3,Wait(3)
exten => 1501,4,PlayBack(vm-goodbye)
exten => 1501,5,Hangup()
[kenya]
38
La configuration se fait dans [Link]. Le serveur vocal est déclaré avec l’application
VoiceMailMain.
Syntaxe :
On a choisi d’en créer deux serveurs selon notre plan de numérotation.
7- Conférence téléphonique
Une conférence téléphonique est un appel téléphonique au cours duquel quelqu'un parle à
plusieurs personnes en même temps. La conférence téléphonique peut être configurée pour
permettre à l'appelé de participer à l'appel, ou bien l'appel peut être configuré de sorte que
l'appelé écoute simplement l'appel sans y participer.
Un numéro doit être affecté à la conférence. Sur asterisk, on peut créer plusieurs conférences
selon les types de participants : conférence des étudiants, conférence des membres de
l’administration etc.
Lorsque la conférence intègre un flux vidéo, on parle de vidéoconférence.
a- Déclaration des conférences :
Les conférences sont déclarées dans le fichier [Link]
Syntaxe :
39
;=====cette entrée de conf. Est sans mot de passe pour les participants ======
[User_NoAuth]
type=user
admin=no
announce_join_leave=yes
announce_join_leave_review=yes
announce_user_count=yes ; ces différents sons annonce l’étape de la
music_on_hold_when_empty=yes conférence
music_on_hold_class=default
;===== cette entrée conf. Nécessite un mot de passe pour les participants ===
[User_Auth]
type=user
admin=no
pin=5678
announce_join_leave=yes
announce_join_leave_review=yes
announce_user_count=yes
music_on_hold_when_empty=yes
music_on_hold_class=default
[User_Admin]
type=user
admin=yes
pin=6789
announce_join_leave=yes
announce_join_leave_review=yes
announce_user_count=yes
music_on_hold_when_empty=yes
music_on_hold_class=default
[administratifs_conf] ; 995500
type=bridge
video_mode=sfu
max_members=50 ; le nombre max. est de 50 participants (paramètre facultatif)
[etudiants_conf] ;885500
type=bridge
video_mode=sfu
40
max_members=200
NB : avant d’accéder aux conférences, il vous faut déclarer votre nom et prénom et
accepter l’enregistrement effectué.
8- Visiophonie
La visiophonie est l'association de la téléphonie et de la vidéo permettant aux usagers de se
voir pendant leur conversation téléphonique. Elle se fait à deux.
Les codecs vidéo généralement utilisés sont (du plus ancien au plus récent) :
H.261
H.263/ H.263+ / H.263++
MPEG-4
H.264 (MPEG-4 AVC).
On installe les paquets suivants pour la prise en charge des nouveaux codecs opus et vp8.
41
apt-get install libopus-dev libvpx-dev
Au niveau des comptes sip ajouter les codecs vidéo (h263,h264,vp8) sur les comptes
des utilisateurs
disallow=all
allow=ulaw
allow=alaw
allow=gsm codecs utilisés pour la visiophonie
allow=h263,h264,vp8
9- Le parking
Le principe du parking consiste à «garder » un appel el ligne le temps de pouvoir le récupérer
sur un autre poste. L’appel gardé en ligne doit durée quelque secondes selon le paramétrage
effectué dans le fichier de configuration.
Lors de la mise en ligne de l’appel, le PABX nous indique l’extension à composer pour
récupérer l’appel sur n’importe quel autre téléphone.
Depuis la version 12+, il faut configurer le parking dans le fichier res_parking.conf et non
plus le [Link].
42
Asterisk a vingt emplacements (slots) réservés pour « parker» les appels, 701-720. Pour
garder un appel en linge on cliquant sur #700.
Asterisk va automatiquement « parker» cet appel dans le premier emplacement libre et vous
communiquer le numéro où vous pourrez récupérer la communication à partir d’un
quelconque terminal.
[general]
;parkeddynamic = yes ; Active les parkings créés dynamiquement. (la valeur par
défaut est non)
[default]
parkext => 700
parkpos => 701-720
context => parkedcalls ; contexte des appels mis en lignes
parkingtime => 120 ; temps de parking
parkedmusicclass = default ; musique d’attente
[kanafa]
[kenya]
Redémarrer asterisk ( asterisk –rvvvvvvvvvvv ) puis reload pour que les nouveaux
paramètres soient pris en compte.
Si vous « parker » un appel #700 , vous avez 120 seconds pour reprendre cet appel sinon
l’appel sera reconduit au niveau du téléphone qui a « parker » l’appel
43
Séquence 3 : Priorités non numérotées et serveur vocal interactif
44
Une des briques de base servant à la construction de systèmes Asterisk interactifs est
l'application Background( ).
Comme Playback( ), elle joue un fichier son enregistre.
Cependant a la différence de Playback( ), quand l'appelant appuie sur une touche sur son
clavier téléphonique, il interrompt l'exécution et va a l'extension qui correspond au(x)
numéro(s) presse(s)
De nombreuses entreprises utilisent des menus vocaux pour diriger les appelants vers les
bonnes extensions, donc délestant leurs réceptionnistes d'avoir à répondre à tous les appels.
Background( ) à la même syntaxe que Playback( ):
Maintenant que notre premier menu vocal est presque complet, ajoutons quelques extensions
supplémentaires. Premièrement, nous avons besoin d'une extension pour les entrées
invalides, pour que lorsqu'un appelant appuie sur une entrée (touche) invalide (par exemple,
appuyer sur 3 dans l'exemple ci-dessus) l',appel soit envoyé à l'extension (i).
Les appels seront envoyé a l'extension (t) si l'appelant met trop de temps a appuyer sur une
touche après que Background( ) ait fini de jouer le fichier son.
Exemple :
[incoming]
exten => s,l,Answer( )
exten => s,2,Background(enter-ext-of-person)
exten => 1,1,Playback(digits/l)
exten => 1,2,Goto(incoming,s,1)
exten => 2,1,Playback(digits/2)
exten => 2,2,Goto(incoming,s,1)
exten => i,1,Playback(pbx-invalid)
exten => i,2,Goto(incoming,s,1)
45
exten => t,l,Playback(vm-goodbye)
exten => t,2,Hangup( )
Utiliser les extensions i et rrend notre plan-de numérotation plus robuste et convivial.
La syntaxe de l'application Dial( ) est un peu plus complexe que celle des autres applications
que nous avons vues jusqu'ici. Dial( ) prend jusqu'a quatre arguments.
exten => 123,1,Dial(SIP/krist,40,tTr)
Quand cette extension est exécutée Asterisk fait sonner le téléphone branche sur Le canal
SIP/krist.
Cet exemple jouera le fichier son (vm-nobodyavail) si l'appel n'est pas répondu ou le fichier
son (tt-allbusy) si Le canal SIP/krist est actuellement occupé.
Il s’agit là de faire la différence entre un canal occupé et un canal qui n’a pas répondu à
un appel.
[incoming]
exten => s,l,Answer( )
exten => s,2,Background(enter-ext-of-person)
exten => 601,3,WaitExten(5)
exten => 101,1,Dial(Zap/l,lo)
exten => 101,2,Playback(vm-nobodyavail)
exten => l0l,3,Hangup( )
exten => 101,lo2,Playback(tt-allbusy)
exten => 101,103,Hangup( )
exten => 102,1,Dial(SIP/Jeanne,lo)
exten => 102,2,Playback(vm-nobodyavail)
exten => 102,3,Hangup( )
exten => 102,102,Playback(tt-allbusy)
exten => 102,lo3,Hangup( )
exten => i,l,Playback(pbx-invalid)
exten => i,2,Goto(incoming,s,1)
46
exten => t,l,Playback(vm-goodbye)
exten => t,2,Hangup( )
Nous pouvons créer une variable appelée KRIST et lui assigner la valeur SIP/krist.
De cette façon, quand nous écrivons notre plan de numérotation, nous pouvons designer le
canal de krist par son nom plutôt que de se rappeler que krist utilise le protocole SIP/krist.
Pour assigner une valeur a une variable, tapez simplement le nom de la variable, un signe égal
et la valeur, comme ceci :
KRIST=SIP/krist
Pour référencer le nom d'une variable a l'intérieur de l'application Dial( ):
exten => 1500,1,Dial(${KRIST},40,tr)
TYPES DE VARIABLES
II y a trois types de variables que nous pouvons utiliser dans notre plan de numérotation : les
variables globales, les variables de canal et les variables d'environnement
Elles s'appliquent a toutes les extensions dans tous les contextes. Les variables globales
doivent être déclarées dans Le contexte [globals] au début du fichier [Link].
[globals]
KRIST=SIP/krist
[internal]
exten => 1500,1,SetGlobalVar(KRIST=SIP/krist)
e- Variables de canal :
Une variable de canal est une variable (comme le numéro de l'appelant) assolée uniquement a
un appel particulier. Les variables de canal sont définies uniquement pour la durée de l'appel
en cours et disponibles uniquement pour les canaux participant a cet appel.
47
Les variables de canal sont définies via l'application Set( ):
f- Variables d'environnement :
Les variables d'environnement sont une manière d'accéder aux variables d'environnement des
systèmes Unix depuis Asterisk.
Elles sont référencées sous la forme de ${ENV( var)}, ou var est la variable environnement
Unix que vous voulez référencer.
Maintenant que nous connaissons les variables, mettons-les en œuvre dans notre plan de
numérotation. Nous allons ajouter des variables pour deux personnes, krist et roro:
[globals]
KRIST=SIP/krist
RORO=SIP/roro
[canafa]
exten => 1500,1,Dial(${KRIST},20,tr)
exten => 1501,1,Dial(${RORO},20,tr)
LES MOTIFS
Apres le tiret bas, vous pouvez utiliser un ou plus des caractères suivants
X
Correspond a n'importe quel chiffre de 0 a 9.
Z
Correspond a n'importe quel chiffre de 1 a 9.
N
Correspond à n'importe quel chiffre de 2 a 9.
[15-7]
Correspond aux chiffres ou à la plage de chiffres indiques. Dans ce cas, correspond a 1, 5, 6
ou 7.
. (point)
Caractère générique correspond à un ou plusieurs caractères.
Exemple :
48
Pour utiliser la correspondance de motifs dans votre plan de numérotation,
mettez simplement Le motif a la place du nom (ou du numéro) d'extension:
exten => _NXX,1,Playback(auth-thankyou)
Dans cet exemple, le motif correspondrait a n'importe quelle extension a trois
chiffres de 200 a 999 (Le N correspond a n'importe quel chiffre entre 2 et 9 et
chaque X correspond a un chiffre entre 0 et 9).
49
Dans cet exemple, l'application SayDigits( ) ne lit que les deux derniers chiffres
après avoir supprimé (ou retirer) le premier chiffre.
Si x est négatif SayDigits( ) donne les x deniers chiffres de l'extension
composée.
Exemple :
exten => _XXXXXXX,1SayDigits(${EXTEN: -4})
Supprimer tout ce qui se trouve avant les quatre derniers chiffres de la chaîne
composée
50
Séquence 3 : INTERCONNEXION DE DEUX PABX IP
Nous pouvons aussi utiliser Internet pour relier deux plusieurs PABX-IP distants et créer
ainsi un vaste réseau de communication (interconnecté) de données et de transport de la voix.
Ce réseau autorise des appels gratuits de poste à poste d’une zone à l’autre via Internet. Nous
allons mettre en place deux technologie de TRUNK, le TRUNK IAX et le TRUNK SIP.
TRUNK IAX
Application
Supposons trois serveurs PBX tournant sur asterisk dans des localités différentes :
Localité de Dakar :
Nom PBX-1
IP [Link]
Contexte dakar
numero 1500
Localité de mali :
Nom PBX-2
IP [Link]
Contexte mali
numéro 1504
Localité de code-ivoire :
51
Nom PBX-3
IP [Link]
Contexte Cote-ivoire
numéro 1300
Supposons qu’aucune de ces localités n’a une extension supérieure à 9999 et que les
extensions d’entrée pour chaqu’une de ces localités sont :
-Dakar
8XXXX ( où XXXX correspond à la plage 0001-9999)
-mali
9XXXX
-cote-ivoire
7XXXX
Le « 8-9-7 » sont des extensions internes respectivement aux PABX -1-2-3. Ces extensions
internes ou préfixes aide Asterisk à comprendre où router l’appel, soit vers un utilisateur
interne ou vers un autre PABX.
Configuration :
Sur chaque serveur Asterisk, vous devez ajouter une extension pour chaque modèle de
numérotation et créer un compte iax
Pour le serveur de Dakar compte : krist, mot de passe : passer
Pour le serveur de Tambacuonda compte : samy, mot de passe : passer
Pour le serveur de ziguinchor compte: ndecky, mot de passe : passer
Exten =>_8XXXX,1,Dial(iax2/samy:passer@[Link]/${EXTEN:$
{TRUNKMSD}},100,tr)
exten => _8XXXX,2,Congestion
Exten =>_8XXXX,1,Dial(iax2/decky:passer@[Link]/${EXTEN:$
{TRUNKMSD}},100,tr)
exten => _8XXXX,2,Congestion
52
Sur le serveur de mali, éditer le fichier /etc/asterisk/[Link] et ajouter les lignes
suivantes :
Exten =>_9XXXX,1,Dial(iax2/krist:passer@[Link]/${EXTEN:$
{TRUNKMSD}},100,tr)
exten => _9XXXX,2,Congestion
Exten =>_9XXXX,1,Dial(iax2/decky:passer@[Link]/${EXTEN:$
{TRUNKMSD}},100,tr)
exten => _9XXXX,2,Congestion
Exten =>_7XXXX,1,Dial(iax2/krist:passer@[Link]/${EXTEN:$
{TRUNKMSD}},100,tr)
exten => _7XXXX,2,Congestion
Exten =>_7XXXX,1,Dial(iax2/samy:passer@[Link]/${EXTEN:$
{TRUNKMSD}},100,tr)
exten => _7XXXX,2,Congestion
En examinant ce que nous avons fait, nous pouvons donner un commentaire suivant :
A la première ligne de chaque extension des différents serveurs, nous indiquons à Asterisk de
créer une extension qui rentre dans la plage « 80000 à 89999» pour le serveur de Dakar, une
extension qui rentre dans la plage « 90000 à 99999» pour le serveur de mali , une extension
qui rentre dans la plage « 70000 à 79999» pour le serveur de cote-ivoire.
TRUNK SIP
Un trunk SIP est une connexion SIP faite entre deux serveurs SIP pour faire passer des appels
entre deux téléphones liés à ces serveurs.
Considérons l’exemple suivant entre l’IPBX de Bangui et celui de N’Djamena.
Pour interconnecter les deux serveurs, nous allons dans un premier temps créer deux comptes
SIP sur les deux serveurs qui seront utilisé de part et d’autre, et dans un deuxième temps
définir un plan de numérotation pour joindre les utilisateurs de l’autre serveur et vice versa.
Partant de là, nous allons voir la présentation des trunk, les configurations du trunk, le teste de
fonctionnement et nous terminerons par une conclusion
53
Nom Bangui Nom N’Djamena
IP [Link] IP [Link]
Le plan de numérotation du site de Bangui est en 1000 à 1999 alors que celui de N’Djamena
est en 2000 à 2999. Dans cet exemple, lorsqu’un utilisateur de Bangui souhaite communiquer
avec un utilisateur du site de N’Djamena, il faut que l’IPBX de Bangui redirige l’appel vers
l’IPBX du site de N’Djamena et plus précisément vers l’IPBX qui gère cette structure.
Cela veut dire que depuis le site de Bangui tous les appels commençants par 6 et qui sont
codés sur 4 chiffres doivent être envoyés sur le trunk sortant menant au serveur de
N’Djamena.
Dans un premier temps, il faut configurer les deux serveurs en local avec deux plans de
numérotation distincts. En effet, il va falloir permettre aux serveurs de différencier les
téléphones de l’agence A de ceux de l’agence B. Dans notre cas, les numéros compris entre
1000 et 1999 seront dans l’agence A et les numéros compris entre 2000 et 2999 seront dans
l’agence B. Le plan de numérotation suivant sera suffisant pour faire tous les tests :
54
Configuration au niveau du Bangui
[general]
…
[bangui_user]
type=friend
secret=passer
context=bangui
host=dynamic
insecure=port,invite
[bangui]
55
Dans un premier temps, il faut ajouter un utilisateur dans le fichier [Link] sur le serveur
Bangui.
[general]
[ndjamen _user]
type=friend
secret=passer
context=ndjamena
host=dynamic
insecure=port,invite
Dans le fichier [Link] sur Serveur Bangui
Quand le serveur Bangui s’est bien enregistré, le serveur N’Djamena pourra rediriger tous les
appels commençants par 9 et compris entre 2000 et 2999, vers le serveur Bangui avec cette
ligne dans le fichier [Link].
[ndjamena]
exten => _9XXX,1,Dial(SIP/ ndjamena_user /${EXTEN})
56