Mission 3 : Voip - SuperKumKum/SysAdmin-ll_Project GitHub Wiki
Utilisation de l'image de dougbtv/docker-asterisk https://github.com/dougbtv/docker-asterisk
version: '2'
services:
asterisk:
image: andrius/alpine-asterisk:11
container_name : asterisk
ports:
- "10000:20000/udp" # RTP need long-range ports
- "5060:5060/udp" # SIP
- "5036:5036/udp" # IAX2 (dans le cadre de communications externes)
volumes:
- /mnt/docker/asterisk:/etc/asterisk
- /mnt/docker/asterisk/sounds:/var/lib/asterisk/sounds
Le fichier sip.conf
permet une configuration plus "générale" du protocole utilisé par Asterisk qui est SIP
dans notre cadre nous avons uniquement à définir :
- L'addresse IP interne et externe de Asterisk
- Le port du prococole
- L'activation du protocole de transport UDP
[general]
language=fr
externip=151.80.119.127
localnet=151.80.119.127
localnet=172.17.0.0
bindport=5060
updbindaddr=0.0.0.0
tcpbindaddr=0.0.0.0
transport=udp
srvlookup=yes
Le ficher users.conf
permet la création des utilisateurs (numéro, nom, id).
- Création d'options générales s'appliquant à toutes les utilisateurs
[general]
hasvoicemail = yes ; possède une boite vocale
hassip = yes ; utilise sip
hasiax = yes ; utilise iax
callwaiting = yes ; mettre un appel en attente
threewaycalling = yes ; appel 2 postes
callwaitingcallerid = yes
transfer = yes ; peut transférer l'appel
canpark = yes ; mettre les appels dans un parking
cancallforward = yes ; peut rappeler
callreturn = yes
callgroup = 1
pickupgroup = 1
nat = yes ; se trouve derriere un nat
qualify = tes ; permet le monitoring
- Création d'un profil pouvant s'appliquer aux utilisateurs, il sert de template pour éviter à devoir facilité la création d'utilisateurs avec certaines options
; syntaxe [base] (!)
[base](!)
type = friend ; permet l'appel dans les 2 sens (réception et appel)
host = dynamic ; host dynamique
dtmfmode = rfc2833 ; type de rfc utilisé
disallow = all ; désactive tous les codes audio (inutiles)
allow = ulaw ; active le codec ulaw
secret = password ; applique un mot de passe pour tous les comptes (pas conseillé mais wallah)
- Création type d'un utilisateur
; SIP Login pour la direction
; Créée un user "directeur" qui ne peut etre appeler que par la secrétaire
; Numéro d'appel unique 200.
[200](base)
fullname = Bill Gates ; nom complet de l'utilisateur (qui sera affiché à l'appel)
username = bigboss ; id connexion interface web (avec le secret défini dans base)
defaultuser = bigboss
context = direction ; définisdans le fichier extensions.conf
💡 Voir le fichier users.conf
- Création du Dial Plan via le fichier extensions.conf
[direction]
exten => 300,1,Dial(SIP/300, 15) ; appel vers secrétaire pdt 15;
exten => 300,2,VoiceMail(${EXTEN}@secretaire) ; GoTo boite vocal après les 15s
exten => _1XXX,1,Dial(SIP/${EXTEN}, 15) ; appel vers tous les employés
exten => _1XXX,2,VoiceMail(${EXTEN}@ouvrier)
exten => 25,1,Dial(SIP/1101&SIP/1201, 15); numéro commun vers les bureaux des comptables
exten => 25,2,VoiceMail(${EXTEN}@comptables)
exten => _11XX,1,Dial(SIP/${EXTEN}, 15) ; appel vers b1 comptables
exten => _11XX,2,VoiceMail(${EXTEN}@comptable)
exten => _12XX,1,Dial(SIP/${EXTEN}, 15) ; appel vers b2 comptable
exten => _12XX,2,VoiceMail(${EXTEN}@comptable)
exten => _13XX,1,Dial(SIP/${EXTEN}, 15) ; appel vers tous les commerciaux
exten => _13XX,2,VoiceMail(${EXTEN}@market)
exten => 20,1,VoiceMailMain(${CALLERID(num)}@direction) ; n° boite vocal direction
💡 Voir le fichier extensions.conf
- Lien vers la boite vocale avec le fichier
voicemail.conf
💡 Voir le fichier voicemail.conf
Pour permettre la connexion des utilisateurs via un nom de domaine, il faut modifier notre dns bind et y ajouter ces lignes :
; asterisk
sip.wt7.ephec-ti.be. IN A 151.80.119.127
_sip._udp.wt7.ephec-ti.be. IN SRV 0 0 5060 sip.wt7.ephec-ti.be.
_sip._tcp.wt7.ephec-ti.be. IN SRV 0 1 5060 sip.wt7.ephec-ti.be.
TODO ....
- Utilisation de X-LITE
- Ajout d'un compte
- Lorsque le compte est connecté, nous avons une fenêtre qui ressemble à ceci :