Introduction
Ce document va expliquer la configuration du dialplan d’Asterisk.
Le dialplan permet d’attribuer les numéros en faisant les correspondances entre un numéro et un compte SIP par exemple ou tous autres services.
Préliminaires
Si vous avez suivi mon document sur l’installation du serveur Asterisk: Installation et configuration préliminaire et que vous avez défini des comptes SIP en suivant le document: Configuration des comptes SIP ou encore des services grâce au document: Différents services, vous êtes prêt pour créer votre dialplan.
Configuration
On peut trouver énormément de cas différents dans un dialplan. C’est pour cela que j’ai séparé les différents cas.
Pour configurer le dialplan, cela se passera dans le fichier extensions.conf qui se trouvent dans le répertoire /etc/asterisk.
Les paramètres généraux
Quelques options par défaut. Cela sera de la forme suivante:
; Mot clef pour les paramètres généraux [general] ; le dialplan est statique. ; le 'no' n'est pas implementé pour l'instant static=yes ; on ne peut pas faire de modification au dialplan depuis le CLI Asterisk writeprotect=yes ; les variables sont effacés et recalculer à chaque redémarrage d'Asterisk clearglobalvars=yes ; le contexte des auteurs que nous utiliserons pour toutes nos règles. [auteurs]
Numéro interne pour un compte utilisateur
Nous avons défini le compte SIP pour René Barjaval. Nous allons maintenant lui associer son numéro. Pour cela, nous utiliserons une ligne de la forme:
; extension 104 -> Rene Barjavel ; on associe 104 au compte SIP de Rene Barjavel et on le fait sonner pendant 20 secondes exten => 104,1,Dial(SIP/ekiga-rene,20)
Comme nous lui avons aussi créé une boite vocale, on envoie l’appel dessus après 20 secondes de sonnerie sans réponse en ajoutant quelque chose de la forme suivante juste en dessous:
; si il n'a pas répondu en 20 secondes, on l'envoi sur sa boite vovale exten => 104,2,VoiceMail(104@auteurs)
Appels sortants avec une carte Zaptel
Si vous utilisez une carte Zaptel et que vous l’avez configuré en suivant le document: Configuration de Zaptel. Il vous faudra surement quelque chose de la forme suivante pour pouvoir faire des appels sortants:
; Tous les numéros commencant par 0 sont des appels sortants ; parce que l'on a decide de creer le prefixe 0 qui correspond aux appels sortants ; On envoie donc cces appels vers un device zaptel, le groupe 1: g1 ; tous les chiffres tapés sur le clavier du téléphone sauf le premier 0 ; que nous utilisons comme préfixe de sortie exten => _0X.,1,Dial(ZAP/g1/${EXTEN:1})
Appels entrants sur une carte Zaptel
Pour les appels entrants avec une carte Zaptel, Asterisk voit un numéro à 9 chiffres.
Nous allons ajouter un numéro externe à notre compte SIP de René Barjavel.
Pour cela, nous utiliserons une ligne de la forme suivante:
; il y a 9 chiffres entrants sur le T2 donc la ligne est de la forme suivante: exten => 320123104,1,Dial(SIP/ekiga-rene,20) ; cela fait sonner le téléphone qui sera enregistré sur le compte SIP ekiga-rene ; comme cete utilisateur a une boite vocale, au delà des 20 secondes, on envoie sur la messagerie exten => 320123456,2,VoiceMail(104@auteurs)
Accès à la messagerie vocale
Si quelqu’un laisse un message sur une messagerie vocale, il faut que le destinataire puisse l’écouter. Pour cela il va appeller le numéro de la messagerie que nous allons définir. Si il le fait depuis son téléphone, il sera identifié et ne devra taper que son mot de passe.
Pour cela nous ajouterons le bloc suivant:
; extension 555 -> Acces voicemail ; on associe l'extension 555 à l'application d'accès à la messagerie vocale ; Asterisk répond à l'appel exten => 555,1,Answer ; il attend 1 seconde avant de commencer ; c'est pour éviter que le début de message ne sont grignoté exten => 555,2,Wait(1) ; il lance l'application voicemail sur la boite de messagerie qui correspond à l'extension qui appelle exten => 555,3,VoiceMailMain(${CALLERID(num)}@auteurs)
Il est tout à fait possible de créer un numéro pour accéder à la messagerie vocale depuis un autre téléphone que le sien. Il faudra que la troisième ligne soit de la forme suivante:
; On lance l'application voicemail sans numéro de boite ; Asterisk commence par demander le numéro de la boite vocale ; puis le mot de passe exten => 555,3,VoiceMailMain(auteurs)
Accès au pont de conférence
Pour utiliser le pont de conférence il faut que tous les membres de la conférence appellent le pont. Pour cela, on lui donne un numéro avec quelque chose de la forme suivante:
; extension 666 -> Acces au pont de conférence ; on associe l'extension 666 au pont de conférence ; Asterisk répond à l'appel exten => 666,1,Answer ; il attend 1 seconde avant de commencer ; c'est pour éviter que le début de message ne sont grignoté exten => 666,2,Wait(1) ; il lance l'application du pont de conférence avec par défaut la salle que l'on créé exten => 666,3,MeetMe(666)
Appel sur un groupe
Pour appeller un groupe, il suffit de faire l’extension que l’on va lui attribuer avec quelque chose de la forme suivante:
; extension 777 -> le groupe auteurs ; on associe l'extension 777 à l'application qui gère les files d'attente ; Asterisk répond à l'appel exten=> 777,1,Answer ; il attend 1 seconde avant de commencer ; c'est pour éviter que le début de message ne sont grignoté exten=> 777,2,Wait(1) ; il lance l'application de gestion des files avec comme paramètre le groupe que l'on souhaite associé à ce numéro ; ce groupe a été créé précedement exten=> 777,3,Queue(auteurs)
Après cela, il ne reste plus qu’à appliquer les modifications pour que notre serveur Asterisk soit opérationnel. Tous nos utilisateurs et services ont maintenant un numéro associée.
Application des modifications
Pour pouvoir utiliser ce nouveau compte SIP, il faut faire un reload sur Asterisk. Pour cela, taper la commande suivante:
/etc/init.d/asterisk reload
On pourrait aussi se connecter sur le CLI de Asterisk en tapant la commande suivante:
asterisk -r
puis en faisant un reload
asterisk*CLI> reload
Ou encore un reload seulement sur la partie SIP
asterisk*CLI> dialplan reload
Mot de la fin
Nous avons maintenant un serveur Asterisk opérationnel. Il ne reste plus qu’à configurer les différents téléphones pour pouvoir l’utiliser.
Pour cela, vous pouvez suivre les documents suivants: