Etat des configurations du service VoIp - CardinPatson/SysAdmin GitHub Wiki

Création des fichiers de configuration:

Création des fichiers de configuration dans le répertoire config comme décrit ci-dessous:

Lien vers les fichiers de configuration

user.conf :

Contient la configuration de la liste des utilisateurs. Nous avons utilisé un Template communs qui sera appliqué à tous les utilisateurs, ce qui facilite l'ajout de nouveaux utilisateurs

Voici le template utilisé:

[default_template](!)              ; Nom du template . Le  !  indique quil sagit dun Template
type=friend                        ; Type d'objet SIP (friend = utilisateur)
host=dynamic                       ; Lutilisateur nest pas associé à une IP fixe
dtmfmode=rfc2833                   ; Mode DTMF
disallow=all                       ; Interdit tous les codecs   
allow=alaw
allow=speex
allow=gsm
allow=h261
allow=h263
allow=h263p
allow=h264
allow=ulaw                         ; Autorise le codec ulaw
nat=never                          ; L'utilisateur ne se trouve pas derrière un NAT
hassip=yes                         ; Lutilisateur possède un compte SIP
hasiax=no                          ; Lutilisateur ne possède pas de compte iax
callwaiting = yes                  ; Lutilisateur peut mettre des appels en attente
transfer=yes                       ; Lutilisateur peut transférer des appels
canpark=yes                        ; Lutilisateur peut mettre des appels dans le parking
hasvoicemail=yes                   ; Lutilisateur possède une boîte vocale 
deny=0.0.0.0/0.0.0.0               ; Range dIP non-autorisées pour le client
permit=192.168.1.0/255.255.255.0   ; Range dIP autorisées pour le client
qualify=yes                        ; Permet le monitoring
threewaycalling=yes

Création des utilisateurs: exemple de création du téléphone du Directeur

[550]                          ; Numéro SIP et Template utilisé
fullname = Directeur           ; Nom complet de l'utilisateur us
username = directeur           ; Nom d'utilisateur
secret=password                ; Mot de passe
mailbox = 550                  ; N° de boîte vocale
context=Direction              ; Contexte de lutilisateur

extensions.conf :

Contient la configuration du Dial Plan qui permet le routage des appels à travers le serveur. l'exemple ci-dessous illustre le routage des appels vers le directeur

[Direction]

exten => _4[0-8]X,1,Dial(SIP/${EXTEN},40)
exten => _4[0-8]X,2,Voicemail(${EXTEN}@Direction_vm)

exten => 550,1,Answer()
exten => 550,2,VoiceMailMain(${CALLERID(num)}@Direction_vm)

exten => _2XX,1,Goto(Compta,${EXTEN},1)
exten => _3XX,1,Goto(Commercial,${EXTEN},1)
exten => _1XX,1,Goto(Ouvrier,${EXTEN},1)

voicemail.conf :

contient la configuration de la messagerie des utilisateurs pour laisser un message s'ils ne sont pas disponibles:

[general]
# format = définit les format utilisés lors du stockage des messages vocaux
format=wav49|gsm|wav49
# maxsilence = Définit le nombre de temps à attendre pendant un silence avant de terminer l'appel 
maxsilence=5
# maxlogins = définit le nombre de tentatives permises avant de déconnecter l'utilisateur qui tente d'accèder à la boite mail
maxlogins=3
# sendvoicemail = Envoie ou non le message enregistré à la boite vocale
sendvoicemail=yes

maxmsg=100          ; Nombre max de message sur la Voicemail. Si elle est pleine, il n'est pas possible de rajouter des messages
maxsecs=0           ; Durée max d'un message. "0" = pas de limite
minsecs=2           ; Durée minimum d'un message
review=no           ; Permet à l'appelant de réécouter son message avant de le transmettre à la Voicmail. Accessible en terminant le message par #
saycid=no           ; Dicte le numéro de l'appelant avant de jouer le message qu'il a laissé

SOA externe:

Pour permettre la connexion des utilisateurs via un nom de domaine, il faut ajouter les RR suivants:

; asterisk 
sip.m1-3.ephec-ti.be.	IN	A	176.96.231.201
_sip._udp.m1-3.ephec-ti.be.	IN	SRV	0 0 5060 sip.m1-3.ephec-ti.be.
_sip._tcp.m1-3.ephec-ti.be.	IN	SRV	0 1 5060 sip.m1-3.ephec-ti.be.

Installation:

Création d'un dockerfile pour la création de l'image docker

Mise à jours de la distribution:

RUN apt-get -y update && apt-get -y upgrade

Installation des dépendances et d'Asterisk :

RUN apt-get install vim nano dnsutils net-tools asterisk -y

Copy des fichiers de configuration sur le contenaire dans le répertoire /etc/asterisk/

COPY config/asterisk.conf /etc/asterisk/asterisk.conf
COPY config/extensions.conf /etc/asterisk/extensions.conf
COPY config/users.conf /etc/asterisk/users.conf
COPY config/sip.conf /etc/asterisk/sip.conf
COPY config/voicemail.conf /etc/asterisk/voicemail.conf

Lancement du service Asterisk:

ENTRYPOINT [ "/usr/sbin/asterisk", "-f" ]