[AsteriskBrasil] Plano de discagem com saidas indesejadas

Frederic Jean fjean em sunnetgroup.net
Sexta Fevereiro 3 09:22:57 BRST 2006


Daniel,

Voce poderia tentar algo assim; este exemplo deixa tentar 3 vezes depois
desliga.


[contexto1]
exten=>950,1,Answer()

exten=>950,2,SetVar(i=0)
exten=>950,3,DigitTimeout(2)
exten=>950,4,Background(vm-enter-num-to-call)

exten=>t,1,SetVar,"i=$[1 + ${i}]"
exten=>t,2,GotoIf($[${i} < 3]?950,4)
exten=>t,3,Playback(sn-obrigada)   ; vem aqui depois de 3 tentativas, desliga
exten=>t,4,Hangup

exten=>i,1,SetVar,"i=$[1 + ${i}]"
exten=>i,2,Playback(sn-invalido)  ; tecla invalida !
exten=>i,3,GotoIf($[${i} < 3]?950,4)
exten=>i,4,Hangup

exten=>1,1,Goto(contexto2,4500,1)
exten=>2,1,Goto(contexto2,4600,1)

[contexto2]
exten=>4500,1,macro(ligainterno,32461436)
exten=>4500,2,Goto(contexto1,950,2)
exten=>4600,1,macro(ligainterno,32461929)
exten=>4600,2,Goto(contexto1,950,2)


Boa sorte !

Frederic Jean
SunNET Brasil
www.sunnetgroup.net/br

  ----- Original Message ----- 
  From: Daniel Freitas 
  To: asteriskbrasil em listas.asteriskbrasil.org 
  Sent: Friday, February 03, 2006 00:36
  Subject: [AsteriskBrasil] Plano de discagem com saidas indesejadas


  Oi Gente,

  Tenho uma situação que, apesar de ter pesquisado no hitórico da lista e em alguns livros sobre o asterisk, não consegui ainda resolver.

  O plano de discagem é bem mais extenso e coloquei aqui apenas o que interessa para que eu possa expor o problema.
  Considerando o plano de discagemem abaixo, sempre que alguem discar 950, vai ouvir uma gravação que pede que digite o número um ou número 2.
  Até ai tudo bem. Mas acontece que se o usuário , sem ter ligado 950, simplesmente discar 1, o número 32461436 vai ser chamado de qualquer jeito. 

  exten=>950,1,Answer()
  exten=>950,n,DigitTimeout(2)
  exten=>950,n,Background(vm-enter-num-to-call)
  exten=>950,n,WaitExten(5)
  exten=>1,1,macro(ligainterno,32461436)
  exten=>1,n,Goto(Daniel,950,1)
  exten=>2,1,macro(ligainterno,32461929)
  ....
  ....
  Como posso fazer para evitar que isto aconteça ? Tem alguma variável que armazena o número discado enquanto o Backgound() e WaitExten() estão atuando ?

  Pensei em algo assim :
  -> Se existe alguma forma de armazenar o número digitado numa variável, por exemplo: NUMERO_DIGITADO , então, faz-se um teste com gotoif($[${NUMERO_DIGITADO} = 1}?numero-um), redirecionando para extensões definidas com strings alfanuméricas.

  exten=>numero-um,1,macro(ligainterno,32461436)

  Tem como isto ser implementado ? Qual a variável que armazena o número digitado ?
  Se não existe esta variável, que outra alternativa posso usar ?

  Valeu.....



------------------------------------------------------------------------------


  _______________________________________________
  LIsta de discussões AsteriskBrasil.org
  AsteriskBrasil em listas.asteriskbrasil.org
  http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil

  _______________________________________________
  Acesse o  wiki AsteriskBrasil.org:
  http://www.asteriskbrasil.org
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20060203/a36488dd/attachment.html


Mais detalhes sobre a lista de discussão AsteriskBrasil