You are on page 1of 5

ASTERISK 1 Aplicaes plano de discagem

No tutorial anterior (Asterisk1) foram explicadas as seguintes aplicaes utilizadas para a configurao de planos de discagem: - Answer() atende a chamada e sincroniza o canal de udio. - PlayBack() reproduz o arquivo de som especificado. - HangUp() encerra a chamada. - Record(arquivo.ext) grava o udio no arquivo especificado. - Dial() conecta dois canais de comunicao de acordo com as opes. Alm dessas, existem vrias outras aplicaes que podem ser utilizadas. Nesta aula, alm das aplicaes anteriores, sero utilizadas as seguintes aplicaes: - Goto() - Desvia a execuo do plano de discagem para o contexto, extenso e/ou prioridade indicada (KELLER, 2009). - Sintaxe: Goto(contexto, extenso, prioridade) - Exemplos de utilizao: - Goto(outrocontexto, 1500, 2) - Desvia a execuo para outorcontexto, na prioriade 2 da extenso 1500. - Goto(1500, 2) - Desvia a execuo para prioriade 2 da extenso 1500, do contexto atual. - Goto(2) - Desvia a execuo para prioriade 2, do contexto e extenso atuais. - GotoIfTime() - Desvia para o contexto, extenso e/ou prioridade indicada (MEGGELEN, 2005). - Sintaxe: Goto(horas,dias_da_semana,dias_do_mes,meses?etiqueta) - Onde: - Dias da semana mon, tue, wed, thu, fri, sat, sun. - Meses jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec. - Exemplos de utilizao: - GotoIfTime(09:00-12:00,sat,1-1,aug?especial,1000,1) - Desvia a execuo para o contexto especial, extenso 1000 e prioridade 1, desde que o cliente ligue entre 09h e 12h(09:00-12:00), em um sbado (sat), no primeiro dia do ms (11) do ms de agosto (aug). - GotoIfTime(18:00-23:59,mon-fri,*,*?forahorario,1000,1) - Desvia a execuo para o contexto forahorario, extenso 1000 e prioridade 1, desde que o cliente ligue entre 18h e 23h59(18:00-23:59), de segunda a sexta (mon-fri), em qualquer dia do ms (*) e qualquer ms (*). - BackGround() - Reproduz o arquivo de udio especificado, diferindo do PlayBack() por permitir uma interao com o usurio (KELLER, 2009). usado em URAs, nas quais os usurios tem que digitar uma opo para que a chamada seja desviada para o local desejado. - Sintaxe: BackGround(nome_do_arquivo) - O nome do arquivo deve ser colocado sem extenso. - Exemplo de utilizao: - BackGround(boasvindas) - Executa o arquivo boasvindas e l a opo do usurio, caso este digite alguma coisa. - Wait ( ) - Para a execuo do plano de discagem pela quantidade de segundos indicada (MEGGELEN, 2005). - Sintaxe: Wait (segundos) - Exemplos de utilizao: - Wait(2) - Para a execuo do plano de discagem por 2 segundos.

- WaitExten( ) - Espera que o cliente digite uma opo esperando a quantidade de segundos especificada (MEGGELEN, 2005). - Sintaxe: WaitExten(segundos) - Exemplos de utilizao: - WaitExten(2) - Espera o cliente digitar o ramal por dois segundos.

URA Unidade de Resposta Audvel


Uma URA uma unidade que faz o atendimento automtico em um PABX, encaminhando a chamada para o local escolhido pelo chamador.

2.1

Prtica 1
Objetivo: criar e utilizar uma URA, de forma que esse plano dever conter: - Ramais que possam fazer e receber ligaes. - Ramal que possa apenas receber ligao (para atendente). - Extenses para gravar as mensagens de recepo da URA; - Ao ligar nos nmeros indicados o cliente dever gravar uma mensagem aps o beep e, depois de gravar, escutar a mensagem gravada. - Extenses de configurao do atendimento automtico. - Esta prtica foi retirada de (KELLER, 2009).

2.1.1

Criar os ramais (peers) - arquivo /etc/asterisk/sip.conf


Execute o seguinte comando (no servidor): chmod 777 /usr/share/asterisk/sounds Renomeie os arquivos /etc/asterisk/sip.conf e /etc/asterisk/extensions.conf originais e crie estes arquivos novamente, em branco. A. Criar os ramais inserir o trecho a seguir no arquivo em branco:
[general] bindport = 5060 bindaddr = 0.0.0.0 context = default disallow = all allow = alaw,ulaw,gsm language = pt_BR [1015] type = friend secret = 111 host = dynamic [1020] type = friend secret = 111 host = dynamic [atendente] type = peer secret = 111 host = dynamic

O ramal atendente conseguir apenas receber chamada (tipo peer).

B.

Na console do asterisk, digite o comando sip reload para ativar as configuraes e sip show peers para ver os ramais (peers) criados.

2.1.2

Criar o plano de discagem arquivo /etc/asterisk/extensions.conf


A. Configurar os canais de comunicao, para os ramais criados no arquivo sip.conf. No arquivo em branco, acrescente as seguintes linhas:
[default] ;;;; Ramais para os clientes ;;;; exten => 1015,1,Dial(SIP/1015,20) exten => 1020,1,Dial(SIP/1020,20)

B. Criar as extenses para a gravao das mensagens de recepo da URA. Ainda dentro do contexto [default], acrescente o seguinte trecho:
;;;; Nmeros para gravao das mensagens de recepo ;;; exten => 2001,1,Answer() exten => 2001,n,Record(boasvindas.gsm) exten => 2001,n,wait(1) exten => 2001,n,Playback(boasvindas) exten => 2001,n,Hangup() exten exten exten exten exten => => => => => 2002,1,Answer() 2002,n,Record(saldo.gsm) 2002,n,wait(1) 2002,n,Playback(saldo) 2002,n,Hangup()

exten => 2003,1,Answer() exten => 2003,n,Record(atendimento.gsm) exten => 2003,n,wait(1) exten => 2003,n,Playback(atendimento) exten => 2003,n,Dial(SIP/atendente,20) exten => 2003,n,Hangup() exten exten exten exten exten exten exten exten exten exten => => => => => => => => => => 2004,1,Answer() 2004,n,Record(tempoesgotado.gsm) 2004,n,wait(1) 2004,n,Playback(tempoesgotado) 2004,n,Hangup() 2005,1,Answer() 2005,n,Record(invalida.gsm) 2005,n,wait(1) 2005,n,Playback(invalida) 2006,n,Hangup()

C. Criar o canal para atendimento da URA (nmero que o cliente ligar). Acrescentar o trecho a seguir dentro do contexto [default]:
;;;; Nmero para atendimento da URA (uraprimeira) exten => 2500,1,Goto(uraprimeira,s,1)

D. Criar a URA, no contexto [uraprimeira]. Acrescente o seguinte trecho, no final do arquivo:


;;;;;; URA Primeira ;;;;; [uraprimeira] exten => s,1,Answer() exten => s,n(inicioura),BackGround(boasvindas) exten => s,n, WaitExten(2) exten => 1,1,PlayBack(saldo) exten => 1,2,Goto(s,inicioura) exten => 3,1,PlayBack(atendimento) exten => 3,2,Goto(s,inicioura) ;;;;; exten exten exten Entrada Invalida ;;;;; => i,1,PlayBack(invalida) => i,n,PlayBack(tt-monkeys) => i,n,Goto(s,inicioura)

;;;;; Tempo esgotado ;;;;; exten => t,1,PlayBack(tempoesgotado) exten => t,n,Goto(s,inicioura)

E. Na console do asterisk, digite o comando dialplan reload para ativar as configuraes e dialplan show ramais para ver o plano de discagem criado.

2.1.3

Testar
A. Funcionamento dos canais de comunicao: - Execute o zoiper; - Cofigure os ramais 1015 e 1020 (contas SIP) - Faa uma chamada do 1015 para o 1020. - Faa uma chamada do 1020 para o 1015. - Repita as chamadas. - Se tudo der certo, passe para o prximo passo. B. Gravao das mensagens de recepo. Execute o seguinte comando (no servidor): chmod 777 /usr/share/asterisk/sounds - Acesse o zoiper (configurado com os ramais 1015 e/ou 1020). - Ligue no nmero 2001 e, depois do beep, grave a seguinte mensagem de boas vindas e depois tecle # para encerrar a gravao: Seja bem vindo.

Tecle 1 para saldo e 3 para falar com um de nossos atendentes. Se tudo funcionar, voc deve escutar a gravao logo depois de teclar #. - Ligue no nmero 2002 e grave a mensagem Saldo., da mesma forma que fez a gravao anterior. - Ligue no nmero 2003 e grave a mensagem Aguarde o atendente., da mesma forma que fez a gravao anterior. - Ligue no nmero 2004 e grave a mensagem Tempo esgotado., da mesma forma que fez a gravao anterior. - Ligue no nmero 2005 e grave a mensagem Opo invlida, tente novamente., da mesma forma que fez a gravao anterior. C. Utilizao da URA. - Acesse o zoiper (configurado com os ramais 1015 e/ou 1020). - Ligue no nmero 2500 e veja se o auto-atendimento funciona corretamente, de acordo com as mensagens que gravou anteriormente.

Referncias Bibliogrficas
KELLER, Alexandre. Asterisk na prtica. So Paulo: Novatec Editora, 2009. MEGGELEN, Jin Van; SMITH, Jared; MADSEN, Leif. Asterisk: o Futuro da Telefonia. Rio de Janeiro: Alta Books, 2005. DAVIDSON, Jonathan ... [et al.]. Fundamentos de VoIP. Traduo Ricardo Balbinot. 2. ed. Porto Alegre: Bookman, 2008.