Installer un serveur VOIP Asterisk et ses clients
0/5 - - 0 vote

Présentation d’Asterisk

Asterisk est un IPBX (Internet Protocol - Private Branch eXchange = Server VOIP), faisant partie des leaders dans les solutions VoIP et développé par la société Digium. En effet c'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. Asterisk possède de nombreuses fonctionnalités dont :

❖ Sale de conférences

❖ Mise en attente des appels (avec musique d’attente)

❖ Créer une file d’attente

❖ Messagerie

❖ Transférer des appels

❖ IVR (standard automatique avec choix au clavier)

❖ Parking d’appel..

 

Installation des prérequis

Afin de pouvoir mener à bien l’installation d’Asterisk (Après une fraiche installation de notre distribution linux : Debian, Ubuntu, Raspbian, CentOS), nous devons mettre à jour notre OS et installer quelques outils de compilation :

#Mise à jour de l’OS

apt-get update && sudo apt-get upgrade && reboot

#Télécharger les outils de compilations apt-get install build-essential wget libssl-dev libncurses5-dev libnewt-dev libxml2-dev linux-headers-$(uname -r) uuid-dev libsqlite3-dev libjansson-dev

 

Téléchargement et installation d’Asterisk

Téléchargeons de la dernière version d’Asterisk depuis les sources et procédons à l’installation :


#Créer un répertoire

mkdir /usr/src/asterisk && cd /usr/src/asterisk

 

#Télécharger Asterisk

wget http://downloads.asterisk.org/pub/telephony/certified-asterisk/certified-asterisk-13.1-current.tar.gz

 

#Décompresser l’archive tar -xzvf certified-asterisk-13.1-current.tar.gz && cd certified*

#Lancer le script de configuration

./configure


#Personnaliser l’installation en choisissant les langues françaises et les drivers nécessaires.

Choisir chan_sip au niveau de « Chanel Drivers », ensuite choisir les voix françaises. make menuselect

#Compiler et installer Asterisk

make

make install

 

#Créer l’exemple des fichiers de configurations

make samples

 

#Créer le script de démarrage automatique d’Asterisk

make config

 

#Redémarrer Asterisk

service asterisk restart

 

#Lancer la console d’asterisk

asterisk -rvvv

 

Les fichiers de configurations

Asterisk est installé dans le répertoire /etc/asterisk. Nous allons pour le moment toucher aux fichiers :

sip.conf

users.conf

extensions.conf

 

#Créer une sauvegarde des fichiers de configurations

cd /etc/asterisk

cp sip.conf sip.conf.back && cp users.conf users.conf.back && cp extensions.conf extensions.conf.back

 

Configuration globale

#Vider le fichier sip.conf

echo " " > sip.conf

 

#Ajoutons les config globales

vim sip.conf

[general]

language=fr

 

 

Création d’utilisateurs

#Vider le fichier users.conf

echo " " > users.conf

 

#Ajoutons les config globales

vim user.conf

[general]

hasvoicemail=yes ; L’utilisateur possède une boite vocale

hassip=yes ; L’utilisateur possède un compte SIP

qualify=yes ; Permet le monitoring

[general]

hasvoicemail=yes

hassip=yes

qualify=yes

 

Création d’un Template d’utilisateur

[template](!) ; Nom du template d’utilisateur

type=friend ; Type d'objet SIP (friend = utilisateur)

host=dynamic ; L’utilisateur n’a pas une IP fixe

dtmfmode=rfc2833 ;Mode DTMF

disallow=all ; Interdit tous les codecs

allow=ulaw ; Autorise le codec ulaw

 

[template](!)

type=friend

host=dynamic

dtmfmode=rfc2833

disallow=all

allow=ulaw

hassip=yes

qualify=yes

hasvoicemail

 

Création de l’utilisateur 1000

[1000](template) ; Numéro SIP et Template utilisé

context=supinfo ; Contexte de l’utilisateur

fullname=Brah Bassim ; Nom complet de l'utilisateur

username=brah ; Nom d'utilisateur

secret=12345 ; Mot de passe

[1000](user_template)

context=supinfo

fullname=Brah Bassim

username=brah

secret=12345

 

Création de l’utilisateur 1001

[1001](user_template) ; Numéro SIP et Template utilisé

context=supinfo ; Contexte de l’utilisateur

fullname=Moritie Camara ; Nom complet de l'utilisateur

username=Moritie ; Nom d'utilisateur

secret=12345 ; Mot de passe

[1001](template)

context=supinfo

fullname=Moritie Camara

username=Moritie

secret=12345

 

Création de l’utilisateur 1002

[1002](template) ; Numéro SIP et Template utilisé

context=supinfo ; Contexte de l’utilisateur

fullname=Daouda Maiga ; Nom complet de l'utilisateur

username=Daouda ; Nom d'utilisateur

secret=12345 ; Mot de passe

[1002](template)

context=supinfo

fullname=Daouda Maiga

username=Daouda

secret=12345

 

Création des plans d’appels

On définit un plan d’appel par :

exten => Numéro,Priorité, Applications ()

Le mot clé « Exten => » marque le début d’une extension.

Le « Numéro » correspond au numéro de téléphone pris en compte par l’extension.

La « Priorité » définie l’ordre des actions de l’extension.

L’« Application » définit ce que le serveur va faire

 

#Vider le fichier extensions.conf

echo " " > extensions.conf

 

#Ajoutons notre premier DialPlan(plan d’appel)

[supinfo]

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

exten => _1XXX,2,Hungup()

 

Tout d’abord, un pattern doit commencer par un « _ ».

Ensuite, nous pouvons utiliser les caractères suivants :

 

« X » : correspond aux chiffres de 0 à 9

« Z » : correspond aux nombres de 1 à 9

« N » : correspond aux nombres de 2 à 9

« . » : correspond à un ou plusieurs chiffres

« ! » : correspond à zéro ou plusieurs chiffres

 

Pour plus d’information :

https://wiki.asterisk.org/wiki/display/AST/Pattern+Matching

 

Télécharger les softphone x-lite ou zoiper pour passer nos premiers appels

 

Configuration des boites vocales

#Vider le fichier voicemail.conf

echo " " > voicemail.conf

 

#Ajoutons les config globales

vim voicemail.conf

[general]

maxmsg=100 ; Nombre max de message sur la boite vocale

maxsecs=0 ; Durée max d'un message. Dans le cas de "0" = pas de

limite

minsecs=2 ; Durée minimum d'un message

[general]

maxmsg=100

maxsecs=0

minsecs=2

 

[supinfo_vm]

1000 => 12345, Brah Bassim

1001 => 12345, Moritie Camara

1002 => 12345, Daouda Maiga

 

#Mettons à jour notre plan d’appel dans extensions.conf

vim extensions.conf

 

[supinfo]

exten => _1XXX,1,Dial(SIP/${EXTEN},5)

exten => _1XXX,2,Voicemail(${EXTEN}@supinfo_vm)

exten => _1XXX,3,Hungup()

 

exten => 100,1,Answer()

exten => 100,2,VoiceMailMain(${CALLERID(num)}@supinfo_vm)

 

#Déclaréer les botes vocales des utilisateurs

vim users.conf

 

[template](!)

type=friend

host=dynamic

dtmfmode=rfc2833

disallow=all

allow=ulaw

hassip=yes

qualify=yes

 

[1000](template)

context=supinfo

fullname=Brah Bassim

mailbox=1000

username=brah

secret=12345

 

[1001](template)

context=supinfo

fullname=Moritie Camara

mailbox=1001

username= Moritie

secret=12345

 

[1002](template)

context=supinfo

fullname=Daouda Maiga

mailbox=1002

username=Daouda

secret=12345.

 

 
  • Suivre Linux:
  • http://www.facebook.com/yvestarn
  • http://www.twitter.com/jepartage81

Partager cette page

0 commentaire

0 étoile
+ =

Lettre d'information

Nous suivre

  • http://www.facebook.com/yvestarn
  • http://www.twitter.com/jepartage81
  • http://www.linkedin.com/in/yves-ketterle-968693131

2018-2019 © Je-partage