Escolar Documentos
Profissional Documentos
Cultura Documentos
3- Montando um plano.
Como vimos anteriormente, o Dialplan formado por: contexto, extenso, prioridade e aplicao, ficando assim:
[nome_do_contexto]
exten => extenso,prioridade,aplicao()
Exemplo funcional:
[padrao01]
exten => 123,1,Playback(ola)
Explicando: As extenses que fizerem parte do contexto padrao01, ou seja, as extenses que no campo Context
estiver preenchido padrao01, respeitaro essas regras. Continuando, quando essas extenses discarem para o
nmero 123 ser executada uma mensagem de udio chama ola.
Uma funo interessante na montagem de Planos de Discagem, usar a opo de nmeros variantes. Por
exemplo: Vamos supor que os ramais do PBXIP sejam do 1000 ao 1999, por exemplo. Seria extremamente chato e
difcil criar uma regra pra cada ramal existente no PBXIP, ento o ideal seria falar do ramal A ao B. Para isso basta
apenas as seguintes letras na hora de chamar uma extenso:
X Dgitos de 0 a 9;
Y Dgitos de 1 a 9;
N Dgitos de 2 a 9;
Para montar um plano usando esses cdigos, faramos o seguinte:
[padrao01]
exten => _XXXX,1,Playback(ola) ; ou seja: todo ramal, do 0000 ao 9999 para o qual discarmos, ele executar uma
mensagem de udio.
No caso do exemplo que citei acima do PBXIP com ramais do 1000 ao 1999, poderamos usar a seguinte sintaxe:
exten => _1XXX,1,Playback(ola) ; ou seja: do ramal 1000 ao 1999
4 Criando planos funcionais.
A funes ou comandos que um plano de discagem pode executar so vrias e vrias. No vou abordar aqui todas,
apenas algumas mais simples e funcionais.
Dial() Discar para o ramal. Esse talvez seja o comando mais usado pois o que vai executar a ligao em si.
Normalmente eu o uso com o completo de uma varivel chamada EXTEN que vai carregada com o nmero que
foi discado. Por exemplo: caso eu disque 1000, o valor dessa varivel passar a ser 1000 ento o comando discar
(Dial) para o nmero 1000. A sintaxe fica assim: Dial(SIP/${EXTEN}). O uso do cifro do comando SIP, da barra /
e do cifro $ obrigatrio e faz parte da linguagem do Dialplan.
Playback() Executa um arquivo de udio existente no PBXIP
SayDigits() O PBXIP diz os dgitos que foram digitados
Hangup() Desliga a ligao
MixMonitor() grava a ligao
No se precipitem e pensem que s jogar esses comandos no final da linha do Dialplan que vai funcionar, pois a
maior parte deles depende de complementos e opes que devem ser adicionados dentro dos parnteses ()
Pois bem, vamos criar um primeiro Dialplan:
[padrao01]
exten => _1XXX,1,Playback(demo-congrats)
exten => _1XXX,2,Dial(SIP/${EXTEN})
exten => _1XXX,3,Hangup()
Explicando: na primeira linha, executamos um arquivo de udio chamado demo-congrats. Esse arquivo est na pasta
/var/lib/asterisk/sounds. Esse arquivo foi usado apenas como exemplo, voc poderia ter gravado um arquivo de
udio de apresentao da empresa ou algum arquivo com um aviso. Na segunda linha est o comando Dial que
executar de fato a ligao, ligando para o nmero que contem na varivel EXTEN, ou seja, o nmero discado. E
na linha 3, um comando para derrubar a ligao, no final dela.
Outro exemplo:
[padrao01]
exten => _ZXXX,1,Saydigits(${EXTEN})
exten => _ZXXX,2,Dial(SIP/${EXTEN})
exten => _ZXXX,3,Hangup()
Agora, nesse plano, essas regras sero aplicadas para ramais que comecem com um dgito de 1 a 9 e que sejam
seguidos de 3 digitos de 0 a 9. Na primeira linha, o PBXIP dir os dgitos digitados. Na segunda linha, far a ligao
e na terceira, derrubar a ligao.
No Asterisk, depois de criar o Dialplan e salv-lo, necessrio mandar o Asterisk ler novamente o arquivo de
configurao.
No Elastix, para fazer isso, clicamos em PBX (01), Tools (02), e em Asterisk-cli(03) digite reload(04) e clique no
boto Execute(05). Executando esse comando, o Asterisk vai ler todos os arquivos de configurao novamente,
aplicando as alteraes no extensions_custom.conf.
At a prxima.