[AsteriskBrasil] CONSULTA SALDO!

Sebastião Rocha lixo em interlinksistemas.com.br
Segunda Novembro 17 11:21:57 BRST 2008


Ahh, estou usando vozes sintetizadas pra falar o saldo, caso não tenha os arquivos de audio ai e esteja usando as vozes do DISK-OS "voz feminina", posso enviar diretamente a seu em-mail os arquivos de audio .


  ----- Original Message ----- 
  From: Sebastião Rocha 
  To: asteriskbrasil em listas.asteriskbrasil.org 
  Sent: Monday, November 17, 2008 11:17 AM
  Subject: Re: [AsteriskBrasil] CONSULTA SALDO!


  Olá Ricardo, 

  Publiquei na lista um codigo completo de consulta de saldo, creio que Vanessa se referiu a minha postagem.

  Segue codigo completo!

  ; Macro para consulta de saldo.

  [macro-saldo]

      ; Consulta o saldo e define as variaveis, neste caso usando ODBC!

      exten => s,1,noop(____Consultando Saldo____)

      exten => s,n,set(saldo=${ODBC_SALDO(${CALLERID(num)})}) 

      exten => s,n,Set(reais=${IF($["${saldo:0:-3}" = ""]?0:${saldo:0:-3})})

      exten => s,n,Set(centavos=${saldo:-2:2})




      ; Decide se fala "seu creditos acabaram, ..... insira novo credito" 

      ; ou "seu saldo atual eh" 

      exten => s,n,Set(total=${saldo:0:-3}${saldo:-2:2})

      exten => s,n,gotoif(0$[${total} > 0]?fala_saldo)

      exten => s,n,playback(saldo_zero)

      exten => s,n,goto(encerra) 

      exten => s,n(fala_saldo),playback(saldo_atual)




      ; Decide se fala reais ou nao

      exten => s,n,gotoif(0$[${reais} = 0]?fala_e) 

      exten => s,n,saynumber(${reais})

      exten => s,n,playback(${IF(0$[${reais} = 1]?real:reais)})


      ; Decide se fala "e" ou nao

      exten => s,n(fala_e),gotoif(0$[${reais} = 0]?fala_centavos) 

      exten => s,n,gotoif(0$[${centavos} = 0]?fala_centavos)

      exten => s,n,playback(and)




      ; Decide se fala centavos ou nao

      exten => s,n(fala_centavos),gotoif(0$[${centavos} = 0]?encerra) 

      exten => s,n,saynumber(${centavos})

      exten => s,n,playback(${IF(0$[${centavos} =1]?centavo:centavos)})




      ; Agradece e encerra a chamada 

      exten => s,n(encerra),playback(silence)

      exten => s,n,playback(auth-thankyou)

      exten => s,n,hangup

    ----- Original Message ----- 
    From: Ricardo Monte Negro 
    To: AsteriskBrasil 
    Sent: Monday, November 17, 2008 9:25 AM
    Subject: Re: [AsteriskBrasil] CONSULTA SALDO!


    O código está funcionando mas... ele ainda fala errado!
     
    100.34 = um cem reais e trinta quatro centavos 
    303.20 = três cem reais e vinte centavos
    536=00 = cinco cem reais
     
    Alguem achou uma solução para isso?
     
    cem, duzentos, trezentos...
     


     

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

    Date: Sun, 16 Nov 2008 17:18:00 -0200
    From: vanessasather em bol.com.br
    To: asteriskbrasil em listas.asteriskbrasil.org
    Subject: Re: [AsteriskBrasil] CONSULTA SALDO!


    Alguem ja postou mas não me lembro quem.. peço ate desculpas mas segue abaixo:
    ma sugestão seria você utilizar um agi para isso, faz a leitura no
    banco com um script perl ou php, pega os valores, separa, joga o
    playback, e ja era

    Set(CDR(accountcode)=${CODIGO})
    exten => 7788,1,Set(saldo=5.71) ; proveniente com duas casas decimais
    exten => 7788,n,Set(inteiro=${saldo:0:$[${Len(saldo)}-3]})
    exten => 7788,n,Set(centavos=${saldo:$[${Len(saldo)}-2]})
    exten => 7788,n,Playback("saldo_de")
    exten => 7788,n,SayNumber(${inteiro})
    exten => 7788,n,PlayBack($[${inteiro} = 1 ? real :: reais])
    exten => 7788,n,GotoIf($[${centavos} = 0]?fim)
    exten => 7788,n,Playback(e)
    exten => 7788,n,SayNumber(${centavos})
    exten => 7788,n,Playback($[${centavos} = 1 ? centavo :: centavos])
    exten => 7788,n(fim),PlayBack(Obrigado)
    exten => 7788,n,Hangup
     



    Em 15/11/2008 08:54, Pruonckk le Punk escreveu:


      Teste algo assim

      [macro-CONSULTASALDO]
      exten = s,1, Playback(Consulta_saldo)
      exten = s,n, RealTime(usuario,codusuario,${Usuario},var_)
      exten = s,n, SayNumber(VALOR_SEM_VIRGULA);
      exten = s,n, PlayBack(reais&e)
      exten = s,n, SayNumber(VALOR_DEPOIS_DA_VIRGULA)
      exten = s,n, PlayBack(centavos)
      exten = s,n, HangUp()
      exten = h,n, HangUp

      Ricardo Monte Negro escreveu:
      > Olá, sou novo no asterisk.
      > 
      > Gostaria de uma dica sobre como criar uma macro que
      > consulte o saldo do usuario.
      > 
      > [macro-CONSULTASALDO]
      > exten = s,1, Playback(Consulta_saldo)
      > exten = s,n, RealTime(usuario,codusuario,${Usuario},var_)
      > exten = s,n, SayDigits(var_saldo);
      > exten = s,n, HangUp()
      > exten = h,n, HangUp
      > 
      > 
      > O problema é que ele lê: 100,32: um zero zero tres dois
      > E gostaria de algo: Cem reais e trunta e dois centavos.
      > 
      > Obrigado,
      > 
      > Ricardo!
      > 
      > 
      >
      >
      > ------------------------------------------------------------------------
      > Instale a Barra de Ferramentas com Desktop Search e ganhe EMOTICONS 
      > para o Messenger! É GRÁTIS! 
      > ------------------------------------------------------------------------
      >
      > _______________________________________________
      > 2 a 4 de Dezembro - IPComm 2008
      > Com presença de engenheiros da Digium e Jon "maddog" Hall.
      > http://www.ipcomm2008.com.br
      >
      > Compre uma camiseta da AsteriskBrasil.org!
      > http://www.voipmania.com.br
      >
      > Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br
      > _______________________________________________
      > Lista de discussões AsteriskBrasil.org
      > AsteriskBrasil em listas.asteriskbrasil.org
      > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil

      _______________________________________________
      2 a 4 de Dezembro - IPComm 2008
      Com presença de engenheiros da Digium e Jon "maddog" Hall.
      http://www.ipcomm2008.com.br

      Compre uma camiseta da AsteriskBrasil.org!
      http://www.voipmania.com.br

      Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br
      _______________________________________________
      Lista de discussões AsteriskBrasil.org
      AsteriskBrasil em listas.asteriskbrasil.org
      http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil




----------------------------------------------------------------------------
    Conheça já o Windows Live Spaces, o site de relacionamentos do Messenger! Crie já o seu! 


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


    _______________________________________________
    2 a 4 de Dezembro - IPComm 2008
    Com presença de engenheiros da Digium e Jon "maddog" Hall.
    http://www.ipcomm2008.com.br

    Compre uma camiseta da AsteriskBrasil.org!
    http://www.voipmania.com.br

    Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br
    _______________________________________________
    Lista de discussões AsteriskBrasil.org
    AsteriskBrasil em listas.asteriskbrasil.org
    http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil


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


  _______________________________________________
  2 a 4 de Dezembro - IPComm 2008
  Com presença de engenheiros da Digium e Jon "maddog" Hall.
  http://www.ipcomm2008.com.br

  Compre uma camiseta da AsteriskBrasil.org!
  http://www.voipmania.com.br

  Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br
  _______________________________________________
  Lista de discussões AsteriskBrasil.org
  AsteriskBrasil em listas.asteriskbrasil.org
  http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20081117/35c33338/attachment.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil