Pour rappel, les extensions sont la première parties dans les lignes présentes dans le fichier extensions.conf (en rouge dans les exemples suivant) :
Code:
exten = 1234,1,Dial(SIP/1234) exten = _XXXX,1,Dial(IAX2/${EXTEN}) exten = s,1,NoOp(Test) exten = h,1,Hangup()
Alors, commençons par la base, une extension peut être composée de Chiffre, ou de Lettre (Moins pratique pour composer depuis un GSM ) Elle correspondent a ce que l'appelant compose pour joindre quelqu'un, par exemple :
Si je souhaite joindre le compte sip 1234 sur mon serveur lorsque l'on compose le 1234, je mettrais la ligne suivante :
Code:
exten = 1234,1,Dial(SIP/${EXTEN})
Code:
exten = 1234,1,Dial(SIP/${EXTEN}) exten = 1234,1,Dial(SIP/${EXTEN}) exten = 1234,1,Dial(SIP/${EXTEN}) exten = 1234,1,Dial(SIP/${EXTEN}) exten = 1234,1,Dial(SIP/${EXTEN}) exten = 1234,1,Dial(SIP/${EXTEN}) exten = 1234,1,Dial(SIP/${EXTEN}) exten = 1234,1,Dial(SIP/${EXTEN})
Et bien la, on utilise les templates...... Kesako Une ancienne torture chinoise ? Une nouvelle drogue ? .....
Et non, c'est tout simple, et cela permet des faire matcher des extensions en une seule ligne..... voici comment les utiliser :
Les templates, commence toujours par le sigle :
Code:
_
X, Z, N, [], ., !
Voici comment les utiliser :
Code:
X Correspond à un chiffre entre 0 et 9 Y Correspond à un chiffre entre 1 et 9 Z Correspond à un chiffre entre 2 et 9 [1247-9] Correspond à un chiffre dans la liste suivante : 1,2,4,7,8,9 . Correspond à un chiffre/lettre et plus ! Correspond à un chiffre/lettre et plus, ou à rien
Code:
_XX = 12, 34, 45, 68, 25, 43,00, 01,... _ZX = 12, 24, 34, 64, 44, 45,.... (Mais pas par exemple 01,02,03,04,...,09) _NN = 22, 33, 23, 45, 68, ... (Mais pas par exemple 01,02,03,04,...,09, 11, 15, 17, 19) _[7-9]X = 71,78,91,85,81, (Mais pas par exemple 01,02,03,04,...,09, 11, 15, 17, 19,54,68) _[a-z] = Correspond à toutes lettre entre a et z en minuscule _. = Attention peut être dangereux, il donne accès à tout ce qui correspond à un chiffre, ou une lettre au moins (Utiliser plutôt : _X.)
Code:
exten = _XXXX,1,Dial(SIP/${EXTEN}) ou exten = _12XX,1,Dial(SIP/${EXTEN})
Continuons sur quelques extensions particulière :
h : Correspond à l'extension qui est appelée dans le contexte lors d'un hangup (Pour faire un traitement lors du raccrochement)
i : Correspond à l'extension qui est appelée lorsque l'appelant compose une extension invalide (Par exemple une extension non présente dans le contexte)
s : Correspond à l'extension appelée, lorsque l'on a pas d'information sur le numéro appelé, dans un contexte (Appel entrant, sur une ligne analogique par exemple)
t : Correspond à l'extension appelée, lorsque l'appelant arrive à un timeout, après un fichier son par exemple dans un menu vocal, sans action de la part de l'appelant.
fax : extension utilisée pour la détection de fax arrivant sur un canal DAHDI.
a : Extension appelée lors de la pression de la touche *
Et pour finir, ce petit rappel, vous pouvez utiliser pour vos extensions, des match aussi sur le callerid(num) de l'appelant avec le caractère : / :
Code:
exten = 9876,1,NoOp(Ne Sert A Rien Du Tout) exten = 9876/1234,n,NoOp(1234 est le meilleur) exten = 9876,n,Hangup()
Code:
exten = s,1,NoOp(Appel Entrant) exten = s,n,Set(CALLERID(name)=Autre) exten = s/_0041XX.,n,Set(CALLERID(name)=Suisse) exten = s/_0033XX.,n,Set(CALLERID(name)=France) exten = s,n,Dial(SIP/Support)
Message vBulletin