E se vc inverter a condição?

exten => s,3,GotoIf($["30" < "${QUEUE_WAITING_COUNT(atendimento)}" 
]?fila-ocupada,s,1:macro-fila,s,4)
  ----- Original Message ----- 
  From: Rodrigo Lang 
  To: [email protected] 
  Sent: Friday, November 27, 2009 2:37 PM
  Subject: Re: [AsteriskBrasil]Expressões regulares com resultado estranho em 
GotoIf()


  Imaginei que pudesse ser isso, mas o estranho é que estava funcionando certo 
e da noite para o dia parou de funcionar. Mas teoricamente a expressão regular 
fica entre os colchetes (exemplo: $[ "${QUEUE_WAITING_COUNT(atendimento)}" < 
"30" ]) e o ponto de interrogação serve para justamente separar as labels da 
condição.

  Eu tentei mu dar já colocando assim:
  exten => s,3,GotoIf($[ "${QUEUE_WAITING_COUNT(atendimento)}" < "30" 
]?macro-fila,s,4:fila-ocupada,s,1)

  Porém continua se comportando da mesma forma.


  Obrigado,
  Rodrigo Lang


  2009/11/27 Eder Souza <[email protected]>

    To achando q ele ta confundindo essa linha aqui olha

    exten => s,3,GotoIf($[ "${QUEUE_WAITING_COUNT(atendimento)}" < "30" 
]?4:fila-ocupada,s,1)


    "?4:fila-ocupada,s,1)"

    essa prioridade "4" ele deve estar entendendo que é para comparar com ela e 
nao com o 30 !!!

    Eng Eder de Souza

    2009/11/26 Rodrigo Lang <[email protected]>

      Bom dia pessoal, estou com um servidor que está com um problema no 
GotoIf(). O que acontece é que eu pego o valor que de 
${QUEUE_WAITING_COUNT(atendimento)} e vejo se ele é menor que trinta. Até ai 
tudo bem, porém o Asterisk quando este valor chega em quatro ele simplesmente 
diz que 4 é maior que 30 e encaminha as ligações para o lugar errado. Alguém já 
passou por isso ou algo parecido? Eu imaginei que era erro de sintaxe da 
expressão regular, porém tenho certeza que não é, pois estava funcionando até 
um tempo atrás. Segue abaixo o contexto, uma ligação que funcionou normal e 
outra que funcionou errado.

      [macro-fila]
      exten => s,1,Answer()
      exten => s,2,NoOp(${QUEUE_WAITING_COUNT(atendimento)})
      exten => s,3,GotoIf($[ "${QUEUE_WAITING_COUNT(atendimento)}" < "30" 
]?4:fila-ocupada,s,1)
      exten => s,n,Set(CDR(fluxo)=Entrada)


      Funcionando certo (com três chamadores em espera na fila):

          -- Executing [...@macro-fila:1] Answer("Khomp/B0C31-1", "") in new 
stack
          -- Executing [...@macro-fila:2] NoOp("Khomp/B0C31-1", "3") in new 
stack
              -- Executing [...@macro-fila:3] GotoIf("Khomp/B0C31-1", 
"1?4:fila-ocupada,s,1") in new stack
              -- Goto (macro-fila,s,4)


      Funcionando errado (com quatro chamadores em espera na fila):

          -- Executing [...@macro-fila:1] Answer("Khomp/B0C1-1", "") in new 
stack
          -- Executing [...@macro-fila:2] NoOp("Khomp/B0C1-1", "4") in new stack
          -- Executing [...@macro-fila:3] GotoIf("Khomp/B0C1-1", 
"0?4:fila-ocupada,s,1") in new stack



      Agradeço desde já,
      -- 
      Rodrigo F. Lang
      Amd. de Redes em Telecom


      _______________________________________________
      A Redfone é líder no fornecimento de bridges TDMoE &lt;-> E1
      - Valor similar ao de placas E1 PCI;
      - Não há problemas de compatibilidade com barramento PCI;
      - Possibilitam a construção de soluções de alta disponibilidade(dois
      servidores compartilham o mesmo E1)
      Conheça mais sobre este produto em www.red-fone.com
      _______________________________________________
      Lista de discussões AsteriskBrasil.org
      [email protected]
      http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil



    _______________________________________________
    A Redfone é líder no fornecimento de bridges TDMoE &lt;-> E1
    - Valor similar ao de placas E1 PCI;
    - Não há problemas de compatibilidade com barramento PCI;
    - Possibilitam a construção de soluções de alta disponibilidade(dois
    servidores compartilham o mesmo E1)
    Conheça mais sobre este produto em www.red-fone.com
    _______________________________________________
    Lista de discussões AsteriskBrasil.org
    [email protected]
    http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil




  -- 
  Rodrigo F. Lang
  Amd. de Redes em Telecom



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


  _______________________________________________
  A Redfone é líder no fornecimento de bridges TDMoE &lt;-> E1
  - Valor similar ao de placas E1 PCI;
  - Não há problemas de compatibilidade com barramento PCI;
  - Possibilitam a construção de soluções de alta disponibilidade(dois  
  servidores compartilham o mesmo E1)
  Conheça mais sobre este produto em www.red-fone.com
  _______________________________________________
  Lista de discussões AsteriskBrasil.org
  [email protected]
  http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
_______________________________________________
A Redfone é líder no fornecimento de bridges TDMoE &lt;-> E1
- Valor similar ao de placas E1 PCI;
- Não há problemas de compatibilidade com barramento PCI;
- Possibilitam a construção de soluções de alta disponibilidade(dois  
servidores compartilham o mesmo E1)
Conheça mais sobre este produto em www.red-fone.com
_______________________________________________
Lista de discussões AsteriskBrasil.org
[email protected]
http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil

Responder a