Construa sua própria URA (IVR) no seu Asterisk
Senhores(as), é muito simples e fácil usar o Asterisk para atender suas chamadas e direcionar para uma URA. URA (Unidade de Resposta Audível) nada mais é do que aquele atendimento automático que todo PABX faz. Se vocês estão tentando montar uma URA, siga este roteiro.
Construção da URA
Partindo do princípio que você já tenha um tronco de entrada de ligações configurada no seu Asterisk, vamos dar início no atendimento da ligação prosseguindo até a URA.
Todas estas linhas de comando abaixo devem ser salvas no arquivo:
/etc/asterisk/extensions.conf
Atendimento da ligação:
Explicação do blocos:
Bloco - 1:
Todas estas linhas de comando abaixo devem ser salvas no arquivo:
/etc/asterisk/extensions.conf
Atendimento da ligação:
[did-incoming]
exten => _6100,2,Goto(ivr,s,1)
exten => _6100,2,Goto(ivr,s,1)
- O [did-incoming] é o responsável por atender as chamadas entrantes no meu asterisk. Por isso a linha abaixo está atendendo a ligação e transferindo para uma a IVR.
- (exten) podemos verificar que a segunda linha irá atender tudo que chegar com o parâmetro 6100. No meu caso tenho um link de E1 no servidor, e a operadora só me transmite os quarto últimos números do meu número real. Exemplo meu número é 4001-6100, a operadora só me envia que chegou uma ligação para o 6100.
[ivr]
exten => s,1,Answer
exten => s,2,NoOp(Ligação entrou na URA)
exten => s,n,Background(/var/lib/asterisk/sounds/bemvindo_a_empresa_X)
exten => s,n,NoOp(Digite a opção/1-suporte/2-comercial/3-financeiro)
exten => s,n,WaitExten(6)
exten => 1,1,NoOp(Chamada foi para Suporte)
exten => 1,2,Dial(SIP/@104|60)
exten => 2,1,NoOp(Chamada foi para Comercial)
exten => 2,2,Dial(SIP/@105|60)
exten => 3,1,NoOp(Chamada foi para Financeiro)
exten => 3,2,Dial(SIP/@106|60)
exten => t,1,NoOp(Tempo esgotado)
exten => t,2,Dial(SIP/@107|60)
exten => t,3,Hangup
exten => s,1,Answer
exten => s,2,NoOp(Ligação entrou na URA)
exten => s,n,Background(/var/lib/asterisk/sounds/bemvindo_a_empresa_X)
exten => s,n,NoOp(Digite a opção/1-suporte/2-comercial/3-financeiro)
exten => s,n,WaitExten(6)
exten => 1,1,NoOp(Chamada foi para Suporte)
exten => 1,2,Dial(SIP/@104|60)
exten => 2,1,NoOp(Chamada foi para Comercial)
exten => 2,2,Dial(SIP/@105|60)
exten => 3,1,NoOp(Chamada foi para Financeiro)
exten => 3,2,Dial(SIP/@106|60)
exten => t,1,NoOp(Tempo esgotado)
exten => t,2,Dial(SIP/@107|60)
exten => t,3,Hangup
Explicação do blocos:
Bloco - 1:
- s,1,Answer - A ligação entra na ura e é atendida;
- s,2,NoOp(Ligação entrou na URA) - Ele imprime no console do asterisk a mensagem entre parêntesis;
- s,n,Background(/var/lib/asterisk/sounds/bemvindo_a_empresa_X) - ele irá tocar a música que está no caminho indicado;
- exten => s,n,NoOp(Digite a opção/1-suporte/2-comercial/3-financeiro) - Ele imprime no console do asterisk a mensagem entre parêntesis;
- exten => s,n,WaitExten(6) - Aguarda até 6 segundos para a pessoa digitar a opção da URA;
- 1,1,NoOp(Chamada foi para Suporte) - Imprime no console do asterisk a mensagem entre parêntesis;
- 1,2,Dial(SIP/@104|60) - Se a pessoa discar a opção correta, no caso 1,2,3; o PABX irá chamar o ramal indicado, neste caso o ramal 104;
- 1,3,Hangup - Desliga a ligação.
-
exten => t,1,NoOp(Tempo esgotado) - Imprime no console do asterisk a mensagem entre parêntesis;
- exten => t,2,Dial(SIP/@107|60) - Caso passe o tempo e a pessoa não digite nenhuma opção ou se a pessoa digitar uma opção inválida, ele irá transferir para o ramal 107;
- exten => t,3,Hangup - Desliga a ligação.