Académique Documents
Professionnel Documents
Culture Documents
Ce tutorial est a été réalisé à titre d’exemple et la configuration du serveur Asterisk peut être
largement personnalisée et enrichie.
RUNASTERISK=no
par
RUNASTERISK=yes
Cela permettra de lancer le service asterisk au démarrage ainsi que par la commande
/etc/init.d/asterisk
/etc/init.d/asterisk start
language=fr
[1001]
type=friend
username=1001
secret=1001
host=dynamic
callerid="Maxime"
mailbox=1001@default
On va fixer un numéro pour appeler cet utilisateur, dans le fichier extensions.conf :
On pourra désormais appeler l’utilisateur 1001 en appelant le numéro 1001, 20 est le timeout
avant de raccrocher.
Le premier 1001 est le numéro de la boite, le deuxième est le mot de passe de la boite vocal, puis
vient le numéro de l’utilisateur, son adresse mail, ainsi que des options.
Un message sera envoyé à l’adresse mail lorsqu’un nouveau message sera laissé sur le répondeur
le fichier son ne sera pas en pièce jointe du mail grâce a l’option attach=no, review=yes permet a
celui qui laisse un message de relire ou de réenregistrer son message.
Les messages vocaux sont stockés dans le répertoire /var/spool/asterisk
Ajouter dans /etc/asterisk/extension.conf la commande pour activer le répondeur si la
personne ne répond pas :
Recharger la configuration du serveur Asterisk via le client en ligne de commande pour valider les
modifications :
Reload
3. IVR
Création des agents et des files d’attente :
Editer le fichier /etc/asterisk/agents.conf et ajouter des agents qui seront chargés de
répondre aux appels sur les files d’attente :
Le premier 2001 correspond à l’identifiant de l’agent, le second au mot de passe, Maxime est le
nom de l’agent.
On associe l’agent 2001 à la file d’attente default, on peut créer d’autres files d’attente en créant
de nouveaux contextes.
L’option AgentLogin() permettra à l’agent de s’authentifier et de recevoir des appels depuis la file
d’attente, dans notre cas en appelant le numéro de 800 :
Le dossier de musique d’attente est donc maintenant configuré, il n’y a plus qu’à ajouter les
différentes pistes à jouer dans ce dossier.
Enfin, la troisième ligne renverra la communication vers un autre contexte nommé accueil qui
servira de menu d’accueil pour l’utilisateur. La fonction Goto() redirige vers une priorité
d’extension d’un contexte précis, ici on va rejoindre la priorité 1 de l’extension s présente dans le
contexte accueil.
Remarque : les deux premières lignes (Ringing et Wait) sont facultatives. Néanmoins elles
apportent un confort supplémentaire à l’utilisateur.
Contexte d’accueil :
Source
L’utilisation de variables globales peut simplifier la configuration, elles peuvent être définies afin
d’être réutilisable dans la configuration. On définit alors la variable contenant le chemin d’accès aux
fichiers sons sur le serveur.
L’extension # va se déclencher lorsque l’utilisateur pressera la touche #, il pourra être invité à cela
dans le message de bienvenue précédent. Cette action redirigera l’appel vers le menu principal
(contexte : menu).
Pour terminer on va rediriger à la fin du timeout vers le même contexte, ainsi l’utilisateur
réentendra le menu des options jusqu'à ce qu’il entre une option valide.
Contexte de menu :
Source
Détails
Comme pour le message de bienvenue, il sera joué à l’utilisateur le fichier son du menu pour
l’inviter à sélectionner un service.
Il faut ensuite définir les différentes extensions de redirection vers les autres services. Une seule
priorité est nécessaire pour ces actions car elles ne s’occuperont que de rediriger vers d’autres
contextes.
Contexte d’appel :
Source
Détails
Mis à part les éléments récurrents tels que les messages de menu, d’erreurs de saisie et de
redirection. Le service fourni par ce contexte est un service de redirection d’appel. On invite donc
l’utilisateur à composer le numéro du correspondant à joindre.
Le numéro d’extension _1XXX va cibler toutes les extensions commençant par 1 et comportant 4
chiffres. Une fois le numéro entrée, via la fonction Dial() le correspondant sera joint.
Le protocole utilisé sera le protocole SIP et la cible la variable globale ${EXTEN} contenant le
numéro composé par l’utilisateur. Le second paramètre sera le timeout, temps au bout duquel la
tentative de connexion sera annulée si l’appel n’a pas été prit.
Options :
t autoriser l’appelé à transférer l’appel ;
r générer une tonalité pour l’appelant.
Source
Détails
L’utilisateur ici sera redirigé vers le module de serveur de messagerie vocale VoiceMailMain. Il
pourra consulter et gérer ses messages. Le paramètre ${CALLERIDNUM} va servir à pointer au
lancement du module sur la messagerie de l’appelant sans qu’il ait à entrer son identifiant.
Cette ligne va être utile au cas où il ne serait pas possible de joindre le VoiceMail. Arrivé au bout du
timeout, la communication sera terminé par la fonction Hangup().
Contexte de support :
Source
Détails
La première priorité du contexte utilise une fonction GoToIfTime() similaire à la fonction Goto() à
la différence que l’ont peut spécifier une plage horaire. Si la condition est remplie le Goto() est
exécuté, sinon on passe à la priorité suivante.
Dans le cas présent si la condition est validée, le message de mise en relation avec le support
technique sera diffusé.
4. LIENS UTILES