Rafael Rodrigo - NSI escreveu:
>     Estou trabalhando na área do billing do asterisk. Faço tudo da
> seguinte maneira, defino
> em um banco de dados meu, que aquele número sip pode falar x minutos.
> Antes de começar
> a ligação, uma agi lê essa informação e determina quantos minutos ela
> pode falar (exite um
> parâmetro para isso no Dial). No final da ligação, uma deadagi no
> contexto hangup conta quanto
> tempo foi a ligação (com base no cdr) e desconta desse total. Isso seria
> para limitar o tempo de
> ligação de uma conta. Isso é válido enquanto temos apenas uma ligação,
> mas por exemplo, o Xlite
> tem vários ramais, os quais podem fazer ligações simultâneas, e com isso
> a casa cai, pois com ligações simultâneas, o saldo de tempo pode ficar
> negativo.

Sugestão: use funções como DB e GROUP para detectar a situação de
múltiplas ligações e no seu AGI voce recalcula o tempo máximo de cada
ligação ativa dividindo o total pelo número de ligações e ajusta o
timeout das chamadas usando o comando AbsoluteTimeout do Manager.

Simples né ? :)

  Leonardo

----------------------------------------
Estação VoIP 2006
5 e 6 Dezembro
Curitiba PR
http://www.estacaovoip.com.br

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

_______________________________________________
Acesse o  wiki AsteriskBrasil.org:
http://www.asteriskbrasil.org

Responder a