[AsteriskBrasil] Script - Tarifação Billing

2009-07-01 Por tôpico Leonardo
Caros Gurus,


Gostaria de compartlhar com vcs um script de tarifação bem simples em php
que faz a tarifação por tempo que calcula da seguinte forma 1º minuto cheio
depois de 6/6`s da mesma forma que a maioria das operadoras cobram como eu
precisei e deu um trampo pra montar a função acredito que alguem mais vai
precisar segue abaixo;

?
$var_tempo_total = $_POST['txtTempo'];
if($_POST['txtTarifa']){
 $var_tarifa = str_replace(,,.,$_POST['txtTarifa']);
}
$var_primeiro_minuto = $var_tempo_total-60;
if ($var_primeiro_minuto = 0){ // se o tempo do primeiro minuto for menor
que 1 seta o tempo igaul a 1
 $var_tempoTotal = number_format(1);
}
else{
 $var_tempoTotal = number_format(1); // seta o tempo total igaul a 1
 $var_restante_tempo_total = $var_primeiro_minuto / 60; // divide a
quantidade de segundos por 60 para ter a quantidade de minutos
 $var_restante_tempo = explode(., $var_restante_tempo_total); // quebra o
resultado da divisão em 2 aprtes por .
 $var_restante_tempo_int = $var_restante_tempo[0]; //pega só o valor inteiro
da divisão
 $var_tempoTotal += $var_restante_tempo_int; // soma o tempo total
previamente setado como 1 + o valor inteiro da divisão
 $var_resto_divisao = $var_primeiro_minuto % 60; // pega o valor do resto da
divisão
 $var_fracao_minuto = number_format($var_resto_divisao / 6); // divide o
valor do resto da divisão por 6, e transforma em numero inteiro

 if ($var_fracao_minuto 0){ // se o valor do resto da divisão por 6 for
maior que 0, concatena o tempo total com ponto e valor da fracao de minuto
  $var_tempoTotal .= . . $var_fracao_minuto;
 }
}
$var_ValorTotal = $var_tempoTotal * $var_tarifa; // efetua o calculo do
tempo X o valor da tarifa
echo (Tempo digitado = .$var_tempo_total).'br /';
echo (Efetua a conta de font color='red'tempo digitado - 60 /font =
.$var_primeiro_minuto).'br /';
echo (Mostra o valor inteiro da divisatilde;o de  . $var_primeiro_minuto
. /60 = .$var_restante_tempo[0]).'br /';
echo (Efetua a conta para ver qual eacute; o resto da divisatilde;o =
.$var_resto_divisao).'br /';
echo (Efetua a conta para ver quantos deacute;cimos de minutos temos com o
resto da divisatilde;o= .$var_fracao_minuto).'br /';
echo (Valor da Tarifa = .$var_tarifa).'br /';
echo (Tempo Total = .$var_tempoTotal).'br /';
echo (Valor Total = .$var_ValorTotal).'br /';
?
pnbsp;/p
table width=300 border=1 bordercolor=#63 cellpadding=3
cellspacing=0
 tr
   td
 font size=2 face=verdana,arial,georgia color=#63Digite a
quantidade de segundos !/font
 form action=? echo $_SERVER['PHP_SELF'] ? method=post
   pSegundos
   input type=text size=20 name=txtTempo
   br
   br
Tarifa
input type=text size=20 name=txtTarifa
br
br
* lembrando que o modo da tarifaccedil;atilde;o eacute; 1ordm;
minuto cheio e depois a cada 6 segundos/p
   p60/6/p
   p
   input type=submit value=Enviar Tempo
 /p
 /form /td/tr
/table
___
Openmoko Freerunner, primeiro telefone open source, disponível no Brasil 
rodando o Android da Google.
http://www.neodroid.com

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@listas.asteriskbrasil.org
http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil

Re: [AsteriskBrasil] Script - Tarifação Billing

2009-07-01 Por tôpico ATTO - Rodrigo
Parabéns Leonardo, esse tipo de participação também é importante na lista!


Ats,
Rodrigo Lang.



Leonardo escreveu:
 Caros Gurus,
  
  
 Gostaria de compartlhar com vcs um script de tarifação bem simples em 
 php que faz a tarifação por tempo que calcula da seguinte forma 1º 
 minuto cheio depois de 6/6`s da mesma forma que a maioria das 
 operadoras cobram como eu precisei e deu um trampo pra montar a 
 função acredito que alguem mais vai precisar segue abaixo;
  
 ?
 $var_tempo_total = $_POST['txtTempo'];
 if($_POST['txtTarifa']){
  $var_tarifa = str_replace(,,.,$_POST['txtTarifa']);
 }
 $var_primeiro_minuto = $var_tempo_total-60;
 if ($var_primeiro_minuto = 0){ // se o tempo do primeiro minuto for 
 menor que 1 seta o tempo igaul a 1
  $var_tempoTotal = number_format(1);
 }
 else{
  $var_tempoTotal = number_format(1); // seta o tempo total igaul a 1
  $var_restante_tempo_total = $var_primeiro_minuto / 60; // divide a 
 quantidade de segundos por 60 para ter a quantidade de minutos
  $var_restante_tempo = explode(., $var_restante_tempo_total); // 
 quebra o resultado da divisão em 2 aprtes por .
  $var_restante_tempo_int = $var_restante_tempo[0]; //pega só o valor 
 inteiro da divisão
  $var_tempoTotal += $var_restante_tempo_int; // soma o tempo total 
 previamente setado como 1 + o valor inteiro da divisão
  $var_resto_divisao = $var_primeiro_minuto % 60; // pega o valor do 
 resto da divisão
  $var_fracao_minuto = number_format($var_resto_divisao / 6); // divide 
 o valor do resto da divisão por 6, e transforma em numero inteiro
  
  if ($var_fracao_minuto 0){ // se o valor do resto da divisão por 6 
 for maior que 0, concatena o tempo total com ponto e valor da fracao 
 de minuto
   $var_tempoTotal .= . . $var_fracao_minuto;
  }
 }
 $var_ValorTotal = $var_tempoTotal * $var_tarifa; // efetua o calculo 
 do tempo X o valor da tarifa
 echo (Tempo digitado = .$var_tempo_total).'br /';
 echo (Efetua a conta de font color='red'tempo digitado - 60 /font 
 = .$var_primeiro_minuto).'br /';
 echo (Mostra o valor inteiro da divisatilde;o de  . 
 $var_primeiro_minuto . /60 = .$var_restante_tempo[0]).'br /';
 echo (Efetua a conta para ver qual eacute; o resto da divisatilde;o 
 = .$var_resto_divisao).'br /';
 echo (Efetua a conta para ver quantos deacute;cimos de minutos temos 
 com o resto da divisatilde;o= .$var_fracao_minuto).'br /';
 echo (Valor da Tarifa = .$var_tarifa).'br /';
 echo (Tempo Total = .$var_tempoTotal).'br /';
 echo (Valor Total = .$var_ValorTotal).'br /';
 ?
 pnbsp;/p
 table width=300 border=1 bordercolor=#63 cellpadding=3 
 cellspacing=0
  tr
td
  font size=2 face=verdana,arial,georgia color=#63Digite a 
 quantidade de segundos !/font
  form action=? echo $_SERVER['PHP_SELF'] ? method=post
pSegundos
input type=text size=20 name=txtTempo
br
br
 Tarifa
 input type=text size=20 name=txtTarifa
 br
 br
 * lembrando que o modo da tarifaccedil;atilde;o eacute; 1ordm; 
 minuto cheio e depois a cada 6 segundos/p
p60/6/p
p   
input type=submit value=Enviar Tempo
  /p
  /form /td/tr
 /table
 

 ___
 Openmoko Freerunner, primeiro telefone open source, disponível no Brasil 
 rodando o Android da Google.
 http://www.neodroid.com

 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@listas.asteriskbrasil.org
 http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil


 __ Informação do ESET NOD32 Antivirus, versão da vacina 4205 
 (20090701) __

 A mensagem foi verificada pelo  ESET NOD32 Antivirus.

 http://www.eset.com

   


-- 
Rodrigo Lang
Dpto Técnico
ATTO TELEINFORMÁTICA
End.: Rua Castro Alves, 624
80.240-270 - Curitiba - PR
Fones: (41) 33128000
Fax: (41) 33128001
Email: rodrigo.l...@atto.com.br

___
Openmoko Freerunner, primeiro telefone open source, disponível no Brasil 
rodando o Android da Google.
http://www.neodroid.com

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@listas.asteriskbrasil.org
http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil