0% ont trouvé ce document utile (0 vote)
15 vues24 pages

Déploiement IPBX Asterisk pour Tech Solutions

Le projet a consisté à déployer un système IPBX basé sur Asterisk pour Tech Solutions SARL afin d'améliorer ses communications internes et externes. Il a été réalisé en plusieurs séances, incluant l'installation, la configuration des comptes SIP, et l'implémentation de fonctionnalités avancées comme un serveur vocal interactif et une interconnexion sécurisée. Le système final répond aux besoins de l'entreprise avec une gestion automatisée des appels et une qualité de service optimale.

Transféré par

ebenezer n'goran
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)
15 vues24 pages

Déploiement IPBX Asterisk pour Tech Solutions

Le projet a consisté à déployer un système IPBX basé sur Asterisk pour Tech Solutions SARL afin d'améliorer ses communications internes et externes. Il a été réalisé en plusieurs séances, incluant l'installation, la configuration des comptes SIP, et l'implémentation de fonctionnalités avancées comme un serveur vocal interactif et une interconnexion sécurisée. Le système final répond aux besoins de l'entreprise avec une gestion automatisée des appels et une qualité de service optimale.

Transféré par

ebenezer n'goran
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

RAPPORT DE PROJET VOIP

Déploiement D’un ipBX Asterisk


pour Tech Solutions SARL

Membre du groupe :
 TIOTE MALIKA SARAH

 N’GORAN EBENEZER

 YAO AMANI AIME

 ZRANNOUEU GUY PRIVAT

ASSITE PAR
M. KONE DESIRE
Introduction

I. Objectifs du Projet
II. Conception et Mise en Œuvre du Système
II. 1. Séance 1 : Installation et Configuration Initiale
II. 2. Séance 2 : Configuration Avancée des Appels
II. 3. Séance 3 : Serveur Vocal Interactif (IVR) et Mode
Jour/Nuit
II.4. Séance 4 : Interconnexion Inter-sites, Sécurité et
Facturation
III. Fonctionnalités Additionnelles
III.1. Enregistrement des Appel

III.2. Mise en Attente des Appels

Conclusion

[Type here]
INTRODUCTION

TechSolutions SARL, une entreprise fictive spécialisée dans les solutions

informatiques et numériques, souhaitait moderniser ses communications

pour ses sept utilisateurs sur un site principal. Ce projet, réalisé dans le cadre

du Master 1 RTEL à ESATIC, a consisté à déployer un système IPBX basé

sur Asterisk, sécurisé et performant. L’objectif était d’améliorer les

communications internes et externes, d’intégrer des fonctionnalités

avancées comme un serveur vocal interactif (IVR), une interconnexion

inter-sites, et une facturation automatisée. Mené sur cinq séances de 2h30,

le projet a abouti à un système pleinement opérationnel, répondant aux

besoins de l’entreprise

I. Objectifs du Projet

Le projet visait à répondre aux besoins de communication de TechSolutions SARL à travers


les objectifs suivants :

 Concevoir et déployer un système IPBX sécurisé et performant basé sur


Asterisk.
 Configurer sept comptes SIP avec numérotation et mots de passe spécifiés pour
les boîtes vocales.
 Implémenter des fonctionnalités avancées, incluant un groupe d’appel, des
redirections, un serveur vocal interactif (IVR) et un mode jour/nuit.
 Établir une interconnexion sécurisée entre le site principal et un site secondaire
via un trunk SIP.

[Type here]
 Mettre en place une gestion automatisée des appels (CDR) avec génération de
rapports mensuels.

 Garantir une qualité de service (QoS) optimale pour des communications fiables.

II . Conception et Mise en Œuvre du Système

II. 1. Séance 1 : Installation et Configuration Initiale

Installation :

Ubuntu 20.04 LTS (Focal Fossa), sorti en avril 2020, est une distribution Linux à support à
long terme (jusqu’en 2025, extensible à 2030), idéale pour héberger un serveur Asterisk.
Utilisant le noyau Linux 5.4, elle offre stabilité, performance et compatibilité avec le matériel,
essentielles pour gérer les flux audios en temps réel de l’IPBX. Ses dépôts apt fournissent les
dépendances nécessaires à Asterisk (par exemple, libssl-dev), et ses outils de sécurité comme
ufw et AppArmor protègent les ports SIP/RTP. Sans interface graphique par défaut, elle
optimise les ressources pour un serveur, avec systemd pour gérer le service Asterisk. Sa
fiabilité et ses mises à jour régulières en font une plateforme robuste pour le déploiement des
sept comptes SIP et des fonctionnalités avancées du projet.

[Type here]
Installation

Tout d'abord, veillez à avoir une distribution à jour :

sudo apt update

sudo apt upgrade

Nous procédons ensuite à l'installation des dépendances :

sudo apt install build-essential libxml2-dev libncurses5-dev linux-


headers-$(uname -r) libsqlite3-dev libssl-dev libedit-dev uuid-dev
libjansson-dev

On télécharge la dernière version d’Asterisk et on l’installe :

1 - Auparavant vérifier la version à utiliser et modifiez les trois lignes (3, 4, 5) en


fonction de la version d'Asterisk

2 - Exécuter la ligne 6 en étant dans le répertoire /usr/src/asterisk/asterisk-18.6.0


(car configure est un fichier exécutable du répertoire asterisk-18.6.0)

mkdir /usr/src/asterisk

cd /usr/src/asterisk

wget [Link]
[Link]

tar -xvzf [Link]

cd asterisk-18.6.0

./configure --with-jansson-bundled

make menuselect

[Type here]
Lorsque vous faites le ./configure, il est possible qu'il manque des paquets; dans ce
cas, installez la version dev de ce paquet (par exemple, s'il manque le paquet
libedit, exécutez la commande sudo apt-get install libedit-dev) puis relancez
le ./configure.

Dans le menu qui s'affiche, allez dans Core Sound Package et cochez à l'aide de
la touche Espace CORE-SOUNDS-FR-ULAW. Quittez en pressant la touche
Echap. Allez ensuite dans Music On Hold File Packages, décochez MOH-
OPSOUND-WAV et cochez MOH-OPSOUND-ULAW. Enfin, allez dans Extras
Sound Packages et cochez EXTRA-SOUNDS-FR-ULAW.

Revenez à l'écran principal et appuyez sur Echap pour terminer et pressez S pour
sauvegarder.

Enfin tapez les commandes suivantes pour terminer l’installation :

Avant d'effectuer ces commandes, assurez vous que vous avez une connexion
Internet configurée et active.

make

make install

make samples

make config

Enfin, lancez Asterisk avec la commande suivante :

/etc/init.d/asterisk start

Lancez la console Asterisk avec la commande suivante :

sudo asterisk -rvvvv

[Type here]
Si vous avez l'erreur "Unable to connect to remote asterisk (does
/var/run/[Link] exist?)", assurez-vous que vous avez bien démarré la
console Asterisk en root.

Configuration Initiale
Le fichier de configuration SIP (/etc/asterisk/[Link]) a été modifié pour définir les sept
comptes SIP selon le tableau fourni dans le document
Taches réalisées :
 Installation d’Asterisk sur un serveur Ubuntu 20.04.
 Configuration des sept comptes SIP selon les spécifications suivantes :

[Type here]
Cette capture d'écran montre un fichier de configuration SIP (Session Initiation Protocol)
pour Asterisk, un logiciel de téléphonie open-source. Le fichier semble être
/etc/asterisk/[Link]. Voici une explication des sections et paramètres visibles :

Section [general] :

 allowoverlap=no : Désactive le chevauchement des numérotations (overlap dialing).

 udpbindaddr=[Link] : Asterisk écoute sur toutes les interfaces réseau pour les connexions UDP.

 tcpenable=yes : Active la prise en charge du protocole TCP pour SIP.

 tlsbindaddr=[Link]:5061 : Asterisk écoute sur le port 5061 pour les connexions TLS (SIP

sécurisé).
[Type here]
 tlscertfile=/etc/asterisk/keys/[Link] : Chemin du certificat TLS pour sécuriser les

communications.

 tlsprivatekey=/etc/asterisk/keys/[Link] : Chemin de la clé privée pour TLS.

 transport=udp,tls : Autorise les transports UDP et TLS pour SIP.

 srvlookup=yes : Active la recherche DNS SRV pour résoudre les noms de domaine SIP.

 nat=force_rport,comedia : Gère les problèmes de NAT (traversal réseau) en forçant l'utilisation du

port de réponse et en activant le mode "comedia" pour les médias.

 qualify=yes : Vérifie périodiquement la disponibilité des pairs SIP.

 rtptimeout=60 : Déconnecte une session RTP (média) après 60 secondes d'inactivité.

 rtpholdtimeout=300 : Déconnecte une session en attente (hold) après 300 secondes.

 videosupport=yes : Active le support de la vidéo pour la vidéoconférence.

 encryption=yes : Active le chiffrement des médias via SRTP (Secure RTP).

 avpf=yes : Active le profil AVPF (Audio-Visual Profile with Feedback) pour une meilleure gestion

des médias.

 icesupport=yes : Active le support d'ICE (Interactive Connectivity Establishment) pour le NAT

traversal.

 language=fr : Définit la langue par défaut pour les messages et prompts (français).

Section [4010]:

 type=friend : Indique que cet utilisateur est un "ami" (peut envoyer et recevoir des appels).

 context=interne : Place cet utilisateur dans le contexte "interne" du plan de numérotation.

 host=dynamic : L'adresse IP de cet utilisateur est dynamique (il s'enregistre auprès du serveur).

 secret=Brice : Mot de passe pour l'authentification SIP (ici "Brice", ce qui n'est pas très

sécurisé).

 callerid="Brice" <4010> : Identifiant de l'appelant (nom "Brice" et numéro 4010).

 mailbox=4010@default : Associe une boîte vocale (mailbox) au numéro 4010.

 transport=udp,tls : Autorise les transports UDP et TLS pour cet utilisateur.

 encryption=yes : Active le chiffrement des médias via SRTP.

 disallow=all : Refuse tous les codecs par défaut.

[Type here]
 allow=ulaw : Autorise uniquement le codec G.711 μ-law pour cet utilisateur.

Section [4020] :

 Paramètres similaires à [4010], mais pour un utilisateur nommé "Fleur" avec le numéro 4020 :

o callerid="Fleur" <4020> : Identifiant de l'appelant.

o mailbox=4020@default : Boîte vocale associée.

o secret=1402 : Mot de passe pour l'authentification.

o Autres paramètres comme type, context, host, transport, etc., sont identiques.

Section [4030] :

 Similaire aux sections précédentes, pour un utilisateur nommé "Olive" avec le numéro 4030 :

o callerid="Olive" <4030> : Identifiant de l'appelant.

o mailbox=4030@default : Boîte vocale associée.

o secret=1403 : Mot de passe.

o Les autres paramètres sont cohérents avec les sections précédentes.

Résumé:

Ce fichier configure un serveur Asterisk pour gérer des communications SIP avec trois
utilisateurs internes (4010, 4020, 4030). Il prend en charge la vidéo, le chiffrement
SRTP, et les connexions sécurisées via TLS. Les codecs sont limités à G.711 μ-law, et
le serveur est configuré pour gérer les problèmes de NAT et supporter la langue
française pour les prompts. Les mots de passe utilisés ("Brice", "1402", "1403") sont
assez faibles et devraient être renforcés pour des raisons de sécurité.

[Type here]
II. 2. Séance 2 : Configuration Avancée des Appels

La Séance 2 visait à enrichir les fonctionnalités de base établies lors de la Séance 1


(installation et configuration initiale) en implémentant des fonctionnalités avancées de
gestion des appels. Ces fonctionnalités incluaient la création d’un groupe d’appel, la
redirection automatique d’un poste, un message d’accueil pour les appels externes, et la
configuration des appels entrants et sortants via un fournisseur SIP. Ces ajouts étaient
essentiels pour répondre aux besoins opérationnels de TechSolutions SARL, en
améliorant l’efficacité et la personnalisation des communications

Étapes de la Configuration Avancée des Appels

Ce dialplan configure un système téléphonique interne avec :

 Appels directs vers 4010-4020, avec messagerie vocale si pas de réponse.


 Un groupe d'appel (600) pour 4020 et 4030.
 Une redirection (4060 vers 4070) après 15 secondes.
 Une file d'attente "support" (6500).
 Accès à la messagerie vocale (7800) et à une vidéoconférence (8000).
 Un système de bascule jour/nuit (1234) avec un PIN (1234), permettant de passer
manuellement entre les modes jour et nuit.
 Un test IVR (9999) qui bascule automatiquement entre modes jour/nuit selon l'heure
(8h-20h, lundi-vendredi).

Les fichiers audio (en français) sont utilisés pour les annonces et prompts, et le système
utilise une base de données pour stocker l'état du mode jour/nuit.

[Type here]
Cette capture d'écran montre un fichier de configuration SIP (Session Initiation Protocol)
pour Asterisk, un logiciel de téléphonie open-source. Le fichier semble être
/etc/asterisk/[Link]. Voici une explication des sections et paramètres visibles :

Section [general] :

 allowoverlap=no : Désactive le chevauchement des numérotations (overlap dialing).

[Type here]
 udpbindaddr=[Link] : Asterisk écoute sur toutes les interfaces réseau pour les
connexions UDP.
 tcpenable=yes : Active la prise en charge du protocole TCP pour SIP.
 tlsbindaddr=[Link]:5061 : Asterisk écoute sur le port 5061 pour les connexions TLS
(SIP sécurisé).
 tlscertfile=/etc/asterisk/keys/[Link] : Chemin du certificat TLS pour sécuriser
les communications.
 tlsprivatekey=/etc/asterisk/keys/[Link] : Chemin de la clé privée pour TLS.
 transport=udp,tls : Autorise les transports UDP et TLS pour SIP.
 srvlookup=yes : Active la recherche DNS SRV pour résoudre les noms de domaine
SIP.
 nat=force_rport,comedia : Gère les problèmes de NAT (traversal réseau) en forçant
l'utilisation du port de réponse et en activant le mode "comedia" pour les médias.
 qualify=yes : Vérifie périodiquement la disponibilité des pairs SIP.
 rtptimeout=60 : Déconnecte une session RTP (média) après 60 secondes d'inactivité.
 rtpholdtimeout=300 : Déconnecte une session en attente (hold) après 300 secondes.
 videosupport=yes : Active le support de la vidéo pour la vidéoconférence.
 encryption=yes : Active le chiffrement des médias via SRTP (Secure RTP).
 avpf=yes : Active le profil AVPF (Audio-Visual Profile with Feedback) pour une
meilleure gestion des médias.
 icesupport=yes : Active le support d'ICE (Interactive Connectivity Establishment)
pour le NAT traversal.
 language=fr : Définit la langue par défaut pour les messages et prompts (français).

Section [4010]:

 type=friend : Indique que cet utilisateur est un "ami" (peut envoyer et recevoir des
appels).
 context=interne : Place cet utilisateur dans le contexte "interne" du plan de
numérotation.

[Type here]
 host=dynamic : L'adresse IP de cet utilisateur est dynamique (il s'enregistre auprès
du serveur).
 secret=Brice : Mot de passe pour l'authentification SIP (ici "Brice", ce qui n'est pas
très sécurisé).
 callerid="Brice" <4010> : Identifiant de l'appelant (nom "Brice" et numéro 4010).
 mailbox=4010@default : Associe une boîte vocale (mailbox) au numéro 4010.
 transport=udp,tls : Autorise les transports UDP et TLS pour cet utilisateur.
 encryption=yes : Active le chiffrement des médias via SRTP.
 disallow=all : Refuse tous les codecs par défaut.
 allow=ulaw : Autorise uniquement le codec G.711 μ-law pour cet utilisateur.

Section [4020] :

 Paramètres similaires à [4010], mais pour un utilisateur nommé "Fleur" avec le numéro 4020 :

o callerid="Fleur" <4020> : Identifiant de l'appelant.

o mailbox=4020@default : Boîte vocale associée.

o secret=1402 : Mot de passe pour l'authentification.

o Autres paramètres comme type, context, host, transport, etc., sont identiques.

Section [4030] :

 Similaire aux sections précédentes, pour un utilisateur nommé "Olive" avec le numéro 4030 :

o callerid="Olive" <4030> : Identifiant de l'appelant.

o mailbox=4030@default : Boîte vocale associée.

o secret=1403 : Mot de passe.

Les autres paramètres sont cohérents avec les sections précédentes.

[Type here]
II. 3. Séance 3 : Serveur Vocal Interactif (IVR) et Mode Jour/Nuit

La Séance 3 avait pour objectif de mettre en place un serveur vocal interactif (IVR) pour
diriger les appelants externes vers les postes appropriés, de configurer un mode jour/nuit
avec basculement via un code PIN, et d’implémenter une gestion horaire pour le poste 4010
avec redirection vers la boite vocale hors horaires. Ces fonctionnalités visaient à améliorer
l’expérience des appelants et à automatiser la gestion des appels en fonction des horaires
de travail de TechSolutions SARL
Étapes de la Configuration

1. Mise en Place du Serveur Vocal Interactif (IVR) :

Cette partie de l'IVR permet une gestion manuelle des modes jour/nuit. Par exemple :

 En mode "jour", les appels entrants peuvent être dirigés vers des agents.
 En mode "nuit", ils peuvent être redirigés vers une messagerie ou un message d'accueil
fermé. Le code PIN (1234) est une mesure de sécurité pour éviter que n'importe qui
change le mode, mais il est assez faible et devrait être renforcé.

L'IVR (Interactive Voice Response) est un système qui permet aux appelants d'interagir
avec un serveur vocal via des choix ou des entrées (comme un code PIN). Dans ce cas,
l'IVR est configuré pour :

1. Permettre une bascule manuelle entre les modes "jour" et "nuit" avec un code PIN
(numéro 1234).

[Type here]
2. Simuler un appel entrant via un numéro de test (9999) pour rediriger vers un contexte
spécifique (entrants).

Bascule jour/nuit avec code PIN (numéro 1234)


Fonctionnement général

Cette section permet à un utilisateur de basculer entre les modes "jour" et "nuit" en entrant
un code PIN. Le mode jour/nuit peut influencer la gestion des appels (par exemple,
rediriger vers un accueil différent ou une messagerie).

Étapes détaillées :

 exten => 1234,1,Read(PIN,/var/lib/asterisk/sounds/fr/entrer-pin,4) :


o Demande à l'appelant d'entrer un PIN de 4 chiffres.
o Utilise le fichier audio /var/lib/asterisk/sounds/fr/entrer-pin (probablement "Entrez
votre PIN" en français).
 exten => 1234,2,GotoIf($[${PIN} = "1234"]?toggle:invalide) :
o Vérifie si le PIN entré est "1234".
o Si oui, va à l'étape "toggle" (bascule du mode) ; sinon, va à "invalide".
 exten => 1234,3,Set(DB(TOGGLE/mode)=jour) :
o (Étape "toggle") Définit le mode à "jour" dans la base de données Asterisk (clé
TOGGLE/mode).
 exten => 1234,4,Playback(/var/lib/asterisk/sounds/fr/mode-jour) :
o Joue un message audio indiquant "mode jour actif".
 exten => 1234,5,Hangup() :
o Termine l'appel.
 exten => 1234,6,(invalide),Playback(/var/lib/asterisk/sounds/fr/invalide) :
o (Étape "invalide") Si le PIN est incorrect, joue un message audio "code incorrect".
 exten => 1234,7,Hangup() :
o Termine l'appel.
 exten => 1234,n,GotoIf($[${DB(TOGGLE/mode)} = "jour"]?nuit:jour) :
o (Dans "toggle") Vérifie l'état actuel du mode dans la base de données :
 Si le mode est "jour", passe à l'étape "nuit".

[Type here]
 Sinon, passe à "jour".
 exten => 1234,n,Set(DB(TOGGLE/mode)=nuit) :
o (Étape "nuit") Définit le mode à "nuit".
 exten => 1234,n,Playback(/var/lib/asterisk/sounds/fr/mode-nuit) :
o Joue un message audio "mode nuit actif".
 exten => 1234,n,Hangup() :
o Termine l'appel.
 exten => 1234,n,Set(DB(TOGGLE/mode)=jour) :
o (Étape "jour") Définit le mode à "jour".
 exten => 1234,n,Playback(/var/lib/asterisk/sounds/fr/mode-jour) :
o Joue un message audio "mode jour actif".
 exten => 1234,n,Hangup() :
o Termine l'appel.

Rôle l'IVR

Cette partie de l'IVR permet une gestion manuelle des modes jour/nuit. Par

exemple :

 En mode "jour", les appels entrants peuvent être dirigés vers des agents.

 En mode "nuit", ils peuvent être redirigés vers une messagerie ou un

message d'accueil fermé. Le code PIN (1234) est une mesure de

sécurité pour éviter que n'importe qui change le mode, mais il est assez

faible et devrait être renforcé.

[Type here]
II.4. Séance 4 : Interconnexion Inter-sites, Sécurité et Facturation

Cette capture d'écran montre une section du fichier de configuration SIP ([Link]) pour
Asterisk, concernant l'interconnexion inter-sites. Elle est directement liée à la "Séance
4 : Interconnexion Inter-sites, Sécurité et Facturation". Voici une explication détaillée :

Section [site2-trunk]

Cette section définit un trunk SIP pour connecter le site principal (où ce fichier est
configuré) à un site secondaire (site2).

Parameters et explication:

 type=peer :
o Indique que ce trunk est un "peer" (un pair), utilisé pour des communications sortantes
vers un autre système SIP (ici, le site2).
 context=de-site2 :
o Les appels entrants provenant de ce trunk seront traités dans le contexte de-site2 du
plan de numérotation ([Link]). Cela permet de gérer spécifiquement les appels
venant du site2.
 host=[Link] :
o Adresse IP du serveur Asterisk du site secondaire (site2).
 port=5061 :

[Type here]
o Port utilisé pour la communication SIP avec le site2. Le port 5061 est typiquement
utilisé pour SIP sur TLS (sécurisé).
 transport=udp,tls :
o Autorise les transports UDP et TLS. TLS est utilisé ici pour sécuriser la communication
entre les sites.
 encryption=yes :
o Active le chiffrement des médias via SRTP (Secure RTP), assurant que les flux
audio/vidéo entre les sites sont sécurisés.
 qualify=yes :
o Envoie périodiquement des requêtes SIP OPTIONS pour vérifier la disponibilité du
site2.
 defaultuser=site1 :
o Nom d'utilisateur par défaut pour l'authentification sortante vers le site2.
 secret=trunksecret :
o Mot de passe pour l'authentification SIP. "trunksecret" est utilisé ici, mais il est
conseillé d'utiliser un mot de passe plus complexe pour une meilleure sécurité.

Lien avec "Séance 4 : Interconnexion Inter-sites, Sécurité et Facturation"


1. Interconnexion Inter-sites

 Trunk SIP : La section [site2-trunk] établit une connexion SIP entre le site
principal (site1) et le site secondaire (site2, à l'adresse IP [Link]).
 Contexte : Le contexte de-site2 permet de router les appels provenant du site2 vers
des règles spécifiques dans [Link] (par exemple, gérer les appels entrants
différemment selon leur origine).
 Transport : L'utilisation de TLS (transport=udp,tls) indique que la communication
inter-sites peut être sécurisée, bien que UDP soit aussi autorisé.

2. Sécurité

[Type here]
 Chiffrement : encryption=yes active SRTP pour sécuriser les flux média
(audio/vidéo) entre les sites, protégeant contre l'interception.
 TLS : Le port 5061 et transport=tls montrent que SIP peut être sécurisé via TLS,
protégeant les signalisations SIP.
 Authentification : Les paramètres defaul

 tuser=site1 et secret=trunksecret ajoutent une couche d'authentification, mais le mot


de passe "trunksecret" est faible et devrait être renforcé.
 Qualify : qualify=yes permet de détecter si le site2 est hors ligne, évitant des
tentatives d'appels inutiles.

3. Facturation

 Bien que cette capture ne montre pas directement des paramètres de facturation,
l'interconnexion inter-sites via ce trunk peut être utilisée pour suivre et facturer les
appels entre sites :
o Les CDR (Call Detail Records) d'Asterisk peuvent enregistrer les appels entre
site1 et site2 (durée, numéros appelés, etc.).
o Ces données peuvent être utilisées pour facturer les communications inter-sites, par
exemple, si les sites appartiennent à des départements ou entités différentes

III. Fonctionnalités Additionnelles


III.1. Enregistrement des Appels

L’enregistrement des appels est une fonctionnalité essentielle dans les

systèmes de téléphonie IP, notamment pour des raisons de qualité de service,

de suivi, de formation, ou de conformité légale. Asterisk, grâce à sa flexibilité,

[Type here]
permet d’enregistrer automatiquement ou manuellement les communications

entre utilisateurs.

1. Principe de fonctionnement

Dans Asterisk, les enregistrements sont déclenchés via des instructions dans le dialplan
([Link]). Ces instructions font appel à l'application MixMonitor, qui
capture les flux audio de l'appel (entrant, sortant) et les enregistre dans un fichier .wav
ou .mp3.

Exemple simple d’enregistrement automatique d’un appel :

 Dans cet exemple :


 L'appel est répondu avec Answer().
 Ensuite, MixMonitor() commence l’enregistrement.
 Puis l’appel est dirigé vers l’extension 1002.
 À la fin, l’appel est terminé avec Hangup().

2. Configuration du répertoire d’enregistrement

Par défaut, les enregistrements sont stockés dans le répertoire


/var/spool/asterisk/monitor. Ce répertoire doit avoir des droits d’accès
corrects pour l’utilisateur asterisk.

Commande à exécuter : << sudo chown -R asterisk:asterisk /var/spool/asterisk/monitor >>

[Type here]
3. Lecture et vérification des fichiers enregistrés

Après un appel enregistré, le fichier peut être consulté avec un lecteur audio ou via un script
PHP ou un serveur web.

Pour vérifier que le fichier est bien enregistré :

<< ls -lh /var/spool/asterisk/monitor/>>

III.2. Gestion des fichiers enregistrés

Il est conseillé de :

 Renommer dynamiquement les fichiers (avec date, numéros appelants, etc.)


 Mettre en place une rotation automatique ou une purge régulière des
enregistrements pour économiser l’espace disque.

Exemple plus avancé :

1. Configuration de la musique d’attente

Le fichier [Link] permet de définir des groupes de musiques. Exemple :

ini
CopyEdit
[default]
mode=files
directory=/var/lib/asterisk/moh
random=yes

Les fichiers .wav ou .mp3 placés dans ce répertoire seront joués aléatoirement à l’appelant
mis en attente.

[Type here]
2. Mise en attente lors d’un transfert d’appel

Lorsqu’un agent transfère un appel via un téléphone SIP ou via le dialplan, l’appelant est
automatiquement mis en attente pendant la procédure de transfert.

Extrait d’un transfert dans le dialplan :

ini
CopyEdit
exten => 2000,1,Dial(SIP/1001)
same => n,Transfer(SIP/1002)

[Link] en attente dans une file d’attente (Queue)

Lorsqu’un appel est dirigé vers une file d’attente (Queue), il est automatiquement mis en
attente si aucun agent n’est disponible :

ini
CopyEdit
exten => 600,1,Answer()
same => n,Queue(support)

Et dans [Link] :

ini
CopyEdit
[support]
musicclass=default
strategy=ringall
timeout=15
retry=5

[Link]érations techniques

 Il est crucial que les fichiers audios soient dans un format compatible (.wav en 8000
Hz, 16-bit, mono).
 La mise en attente n’interrompt pas la session SIP mais suspend uniquement
l’audio.
 La bonne gestion du module res_musiconhold.so est essentielle

[Type here]
CONCLUSION

Le projet de déploiement d’un IPBX basé sur Asterisk pour TechSolutions SARL a permis
d’illustrer concrètement les capacités d’un système de téléphonie IP moderne et
personnalisable. À travers cinq séances de travail structurées, nous avons pu concevoir et
implémenter une solution complète, incluant la gestion de comptes SIP, des groupes
d’appel, un serveur vocal interactif, un mode jour/nuit, ainsi qu’une interconnexion inter-
sites sécurisée. La mise en œuvre de la facturation automatisée (CDR) et les tests de qualité
ont démontré la robustesse et l’efficacité de la solution.

Ce projet nous a permis de renforcer nos compétences en administration de serveurs, en


VoIP, et en scripting Asterisk, tout en acquérant une expérience pratique précieuse pour
notre parcours professionnel.

[Type here]

Vous aimerez peut-être aussi