[AsteriskBrasil] RES: RES: RES: Funcionamento Asterisk com PHP

Danilo Almeida danilo.almeida em g1telecom.com.br
Sexta Junho 22 17:28:14 BRT 2012


Agora deu certo, mudei a primeira linha só para php e não php5

-- <SIP/5001-000001de>AGI Script /usr/local/g1telecom/calc_lig.php
completed, returning 0

Só que o script não esta gravando o log no arquivo

Faltou algum coamdno será?

Vlw

Att
Danilo Almeida

-----Mensagem original-----
De: asteriskbrasil-bounces em listas.asteriskbrasil.org
[mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de Mike
Tesliuk
Enviada em: Friday, June 22, 2012 5:10 PM
Para: asteriskbrasil em listas.asteriskbrasil.org
Assunto: Re: [AsteriskBrasil] RES: RES: Funcionamento Asterisk com PHP

voce pelo visto mudou seu caminho no asterisk.conf para 
/usr/local/g1telecom para ser o diretorio de agi, ele nao ta achando 
isso, confere se nao tem algo errado.

Em 22/06/12 17:05, Danilo Almeida escreveu:
> Segue o erro que aparece no CLI do asterisk
>
> <SIP/5001-000001c3>AGI Rx << verbose "Failed to execute
> '/usr/local/g1telecom/calc_lig.php': No such file or directory" 1
>   /usr/local/g1telecom/calc_lig.php,1340394783.676: Failed to execute
> '/usr/local/g1telecom/calc_lig.php': No such file or directory
> <SIP/5001-000001c3>AGI Tx >> 200 result=1
>
> Conferi o diretório e esta correto, segue o script
> Dei permição 777 para o diretório inteiro.
>
> #!/usr/bin/php5
> <?php
> require_once(phpagi/phpagi.php);
> $agi = new AGI();
>
> $Arg1 = $argv[1];//$AGI->get_variable("UNIQUEID");
>
> $abre_log = fopen("/dados/teste_log");
>
> $log = ("$Arg1");
>
> @fwrite($abre_log, $log);
>
> @fclose($abre_log);
>
> ?>
>
> Att
> Danilo Almeida
>
> -----Mensagem original-----
> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
Danilo
> Almeida
> Enviada em: Friday, June 22, 2012 9:06 AM
> Para: asteriskbrasil em listas.asteriskbrasil.org
> Assunto: [AsteriskBrasil] RES: RES: RES: RES: Funcionamento Asterisk com
PHP
>
> Bom dia Pessoal, voltei novamente depois de algum tempo no mesmo
> Problema...rsrs
>
> Seguinte, no meu contexto de saida, tenho a seguinte linha:
>
> exten => _[1-5]XXXXXXX,n,Macro(hangupcall,) //mandando para macro
hangupcall
>
> na macro fiz o seguinte:
>
> [macro-hangupcall]
> exten => s,1,Wait(2)
> exten => s,2,Agi(/usr/local/g1telecom/calc_lig.php)
> exten => s,3,NoCDR()
> exten => s,4,Hangup()
> exten => h,1,Wait(2)
> exten => h,2,Agi(/usr/local/g1telecom/calc_lig.php)
> exten => h,3,Hangup()
> exten => t,1,Agi(/usr/local/g1telecom/calc_lig.php)
> exten => t,2,Hangup()
>
> estou tentando enviar o UNIQUEID para meu arquivo.php para que La eu possa
> trabalha-lho após a finalização da ligação.
>
> O arquivo que recebe esta da seguinte forma:
>
> #!/usr/bin/php
> <?php
> require_once(phpagi/phpagi.php);
> //quire_once(/dados/g1box/teste.php);
>
> $agi = new AGI();
>
> $Arg1 =  $AGI->get_variable("UNIQUEID");
> $Arg2 =  $AGI->get_variable("CALLERID(num)");
> $Arg3 =  $AGI->get_variable("EXTEN");
>
> $abre_log = fopen('/dados/log_teste.csv','a');
>
> $log = ("$Arg1;$Arg2;$Arg3;")
>
> @fwrite($abre_log, $log);
>
> @fclose($abre_log);
>
> ?>
>
> Estou tentando gerar um LOG no arquivo para ver se estou pegando a
varivel,
> mais o arquivo sempre fica em "branco", é como se não acontecesse nada
>
> Alguém ai sabe no que estou errando?
>
> Obrigado desde já
>
> Att
> Danilo Almeida
>
>
> -----Mensagem original-----
> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de Mike
> Tesliuk
> Enviada em: Tuesday, June 19, 2012 3:01 PM
> Para: asteriskbrasil em listas.asteriskbrasil.org
> Assunto: Re: [AsteriskBrasil] RES: RES: RES: Funcionamento Asterisk com
PHP
>
> o diretorio de agi é especificado no asterisk.conf
>
> o arquivo a ser chamado no dialplan deve estar no diretorio em questão,
> dentro dele você pode fazer includes para outros locais se necessário.
>
> Em 19-06-2012 12:19, Danilo Almeida escreveu:
>> Mais uma duvida aqui agora
>>
>> Eu preciso necessariamente colocar o script no diretorio
>> /var/lib/asterisk/agi-bin/ ou posso colocar em outro diretorio por
exemplo
>> /usr/local/minhapasta/ e depois instanciar a classe em meu arquivo
>> tarifador.php?
>> Coloco o phpagi.php e o tarifador.php nesse mesmo diretório.
>> Isso também funciona?
>>
>> Att
>> Danilo Almeida
>>
>> -----Mensagem original-----
>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
> Danilo
>> Almeida
>> Enviada em: Tuesday, June 19, 2012 11:16 AM
>> Para: asteriskbrasil em listas.asteriskbrasil.org
>> Assunto: [AsteriskBrasil] RES: RES: RES: RES: Funcionamento Asterisk com
> PHP
>> Entendi
>>
>> Pessoal da Lista
>>
>> Será que alguém já utilizou desta forma, ou existe alguma outra forma de
>> fazer isto? Já que o DeadAgi talvez possa não funcionar
>>
>> Att
>> Danilo Almeida
>>
>> -----Mensagem original-----
>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de Mike
>> Tesliuk
>> Enviada em: Tuesday, June 19, 2012 11:08 AM
>> Para: asteriskbrasil em listas.asteriskbrasil.org
>> Assunto: Re: [AsteriskBrasil] RES: RES: RES: Funcionamento Asterisk com
> PHP
>>
>> Se você colocar depois do dial tem que ser no contexto de desligamento
>> (h) , pois normalmente depois de falar a sua ponta vai desligar e não
>> vai executar nada, e também não testei executar o AGI depois de desligar
>>
>>
>> Em 19-06-2012 11:01, Danilo Almeida escreveu:
>>> Mike,
>>>
>>> O campo userfield eu uso para gravar o diretório da gravação, aqui o
> certo
>>> seria mesmo eu mandar para o AGI e fazer o tratamento no código e depois
>>> gravar em uma outra tabela do banco os valores com o RECID da ligação.
>>>
>>> Abaixo eu acrescentei a linha no contexto que mandaria para o AGI, seria
>>> dessa maneira mesmo? Nesse caso estou enviando para meu arquivo PHP.
>>>
>>> Nesse arquivo faria todos os calculo e no final geraria o log e também
>>> gravaria no banco de dados
>>>
>>> ; PARA fixo MOVEL VOIP EX: 99216200
>>>> exten =>   _[1-5]XXXXXXX,1,NoOp(--->   NOVA LIGACAO EXTERNA VOIP<--)
>>>> exten =>   _[1-5]XXXXXXX,n,NoOp(--->   DE ${CALLERID(num)} PARA
>> ${EXTEN}<--)
>>>> exten =>   _[1-5]XXXXXXX,n,Set(DESTINO=${EXTEN})
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(gravacao,voip)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(saidapstn,)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(checasaida,)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(checasenha,)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDALIBERADA}" =
> "NAO"]?desligar)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAPSTN}" = "SIM"]?pstn)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAFIXOLOCAL}" = "PSTN"]?pstn)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAFIXOLOCAL}" = "VOIP"]?voip)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAFIXOLOCAL}" = "A2B"]?a2b)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(hangupcall,)
>>>> exten =>   _[1-5]XXXXXXX,n(pstn),Set(CDR(accountcode)=TO-PSTN)
>>>> exten =>   _[1-5]XXXXXXX,n,Dial(${PORTAPSTN}/${EXTEN},40,Tg)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(sinalizacao,${DIALSTATUS})
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(hangupcall,)
>>>> exten =>   _[1-5]XXXXXXX,n(voip),Set(CDR(accountcode)=TO-VOIP)
>>>> exten =>
>
_[1-5]XXXXXXX,n,Dial(SIP/${TECHPREFIX}${CODINCIOVOIP}${DDDLOCAL}${EXTEN}@${O
>>> PERADORA-VOIP},40,Tg)
>>>> exten =>   _[1-5]XXXXXXX,n(desligar),Macro(sinalizacao,${DIALSTATUS})
>>>> exten =>   _[1-5]XXXXXXX,n,Agi(tarifador.php) ;acrescentei aqqui a
linha
>> que
>>> manda para AGI
>>>
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(hangupcall,)
>>> Att
>>> Danilo Almeida
>>>
>>> -----Mensagem original-----
>>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
Mike
>>> Tesliuk
>>> Enviada em: Tuesday, June 19, 2012 9:20 AM
>>> Para: asteriskbrasil em listas.asteriskbrasil.org
>>> Assunto: Re: [AsteriskBrasil] RES: RES: RES: RES: RES: RES:
Funcionamento
>>> Asterisk com PHP
>>>
>>> eu pessoalmente deixaria o controle todo no banco de dados e faria o
>>> dial pelo agi mesmo, porem voce pode continuar da maneira que esta,
>>> fazer todo o tratamento da chamada, mandar para o agi para ele pegar o
>>> valor das tarifas e tudo mais , ao sair do agi, voce poderia definir uma
>>> variavel para userfield do cdr com a tarifa para esta chamada, poderia
>>> tabem setar um ID ou algo assim para facilitar sua identificacao ex:
>>> Set(CDR(userfield)="55432:0,12"
>>>
>>>
>>> ali voce acrescentou um identificador para a chamada e o tempo, ao
>>> terminar a chamada voce pode fazer um update ou algo assim em outra
>>> tabela baseado nas variaveis definidas
>>>
>>> se voce colocar no seu contexto um h,1,NoOp(ANSWEREDTIME:
>>> ${ANSWEREDTIME}) voce vai ver que ele mostra o tempo da chamada que é o
>>> valor final que voce precisa (isso ocorrerá após desligar),
>>> provavelmente voce pode usar a propria funcao de mysql do asterisk para
>>> também no h fazer o update no banco
>>>
>>> lembre-se que no seu where voce vai usear 'WHERE userfield like
'55432:%'
>>>
>>> a ideia seria fazer o proprio asterisk executar a conta matematica, e
>>> mandar o update para o cdr ou outra tabela .
>>>
>>> Em 19/06/12 09:01, Danilo Almeida escreveu:
>>>> Mike
>>>>
>>>> Com esse script eu já estou conseguindo entender o negócio. Só tem uma
>>>> coisa, no extensions vc não faz o Dial e sim no script da tarifação né?
>>>>
>>>> #executando a discagem
>>>> $AGI->exec("Dial", "SIP/tronco/197");
>>>>
>>>> No meu caso, tenho uma documentação nessa parte de configuração do
>>> asterisk
>>>> onde outras pessoas também usa, a gente só vai adaptando ela conforme a
>>>> necessidade, to querendo implementar mais essa função do tarifador
nesse
>>>> esquema.... abaixo esta a forma que utilizo, por exemplo, para discar
> pra
>>>> fixo local:
>>>>
>>>> ; PARA fixo MOVEL VOIP EX: 99216200
>>>> exten =>   _[1-5]XXXXXXX,1,NoOp(--->   NOVA LIGACAO EXTERNA VOIP<--)
>>>> exten =>   _[1-5]XXXXXXX,n,NoOp(--->   DE ${CALLERID(num)} PARA
>> ${EXTEN}<--)
>>>> exten =>   _[1-5]XXXXXXX,n,Set(DESTINO=${EXTEN})
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(gravacao,voip)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(saidapstn,)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(checasaida,)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(checasenha,)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDALIBERADA}" =
> "NAO"]?desligar)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAPSTN}" = "SIM"]?pstn)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAFIXOLOCAL}" = "PSTN"]?pstn)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAFIXOLOCAL}" = "VOIP"]?voip)
>>>> exten =>   _[1-5]XXXXXXX,n,GotoIf($["${SAIDAFIXOLOCAL}" = "A2B"]?a2b)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(hangupcall,)
>>>> exten =>   _[1-5]XXXXXXX,n(pstn),Set(CDR(accountcode)=TO-PSTN)
>>>> exten =>   _[1-5]XXXXXXX,n,Dial(${PORTAPSTN}/${EXTEN},40,Tg)
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(sinalizacao,${DIALSTATUS})
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(hangupcall,)
>>>> exten =>   _[1-5]XXXXXXX,n(voip),Set(CDR(accountcode)=TO-VOIP)
>>>> exten =>
>>>>
>
_[1-5]XXXXXXX,n,Dial(SIP/${TECHPREFIX}${CODINCIOVOIP}${DDDLOCAL}${EXTEN}@${O
>>>> PERADORA-VOIP},40,Tg)
>>>> exten =>   _[1-5]XXXXXXX,n(desligar),Macro(sinalizacao,${DIALSTATUS})
>>>> exten =>   _[1-5]XXXXXXX,n,Macro(hangupcall,)
>>>>
>>>> esse context não foi eu quem fez, e sim outro funcionario que nao faz
>> mais
>>>> parte da empresa. No começo do extensions eu adiciono as variáveis e
>>> depois
>>>> o contexto faz tudo sozinho (se sai pelo voip ou pstn, DDD local, etc)
>>>>
>>>> a questão é, de que maneira eu posso usar o AGI nesse contexto sem sair
>> do
>>>> padrão para realizar a tarifação da chamada?
>>>> Sei que para ficar de forma mais simplificada como esta este,
precisarei
>>> dar
>>>> uma mexida nesse contexto, mais por enquanto só quero adaptar ai para
>>>> conseguir fazer a tarifação.
>>>>
>>>> E valeu pelo script que foi excelente para mim que estou começando a
>>>> aprender trabalhar com AGI
>>>>
>>>> Att
>>>> Danilo Almeida
>>>>
>>>> -----Mensagem original-----
>>>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>>>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
> Mike
>>>> Tesliuk
>>>> Enviada em: Monday, June 18, 2012 7:12 PM
>>>> Para: asteriskbrasil em listas.asteriskbrasil.org
>>>> Assunto: Re: [AsteriskBrasil] RES: RES: RES: RES: RES: Funcionamento
>>>> Asterisk com PHP
>>>>
>>>> vamos pensar:
>>>>
>>>> Eu estou usando asterisk 1.8
>>>>
>>>> fiz um extension que manda para o agi, e desliga,
>>>>
>>>> exten =>   1101,1,Agi(teste-tarifacao.agi)
>>>> exten =>   1101,n,Hangup()
>>>>
>>>>
>>>> neste agi tem o seguinte.
>>>>
>>>> ------------------
>>>>
>>>> #!/usr/bin/perl
>>>>
>>>>
>>>> use Asterisk::AGI;
>>>>
>>>> $AGI = new Asterisk::AGI;
>>>> %input = $AGI->ReadParse();
>>>>
>>>> # Pegando datas e coisas do genero
>>>> my ($sec,$min,$hour,$mday,$mon,$year,
>>>>                $wday,$yday,$isdst) = localtime time;
>>>>
>>>> if($mday<   10){
>>>>              $mday = "0" . $mday;
>>>> }
>>>>
>>>> $year = $year + 1900;
>>>>
>>>> $mon = $mon + 1;
>>>>
>>>> if($mon<   10){
>>>>              $mon = "0" . $mon;
>>>> }
>>>>
>>>> $starttime = "$year-$mon-$mday $hour:$min:$sec";
>>>>
>>>> #definindo o custo da tarifa
>>>> $tarifa="0.481";
>>>>
>>>> $callerid = $AGI->get_variable("CALLERID(num)");
>>>> $destino = $AGI->get_variable("EXTEN");
>>>>
>>>>
>>>> #executando a discagem
>>>> $AGI->exec("Dial", "SIP/tronco/197");
>>>>
>>>>
>>>> # pegando a variavel com o tempo de atendidod do canal
>>>> $tempo = $AGI->get_variable("ANSWEREDTIME");
>>>>
>>>> # cobrando minimo de 30 segundos
>>>> if($tempo<   30){
>>>>              $tempo = 30;
>>>> }
>>>>
>>>>
>>>>
>>>> $segundos = ($tempo / 60);
>>>>
>>>> $custo = ($segundos * $tarifa);
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> # Gerando nosso log num arquivo de texto, voce poderia usar um mysql
>>>> para isso
>>>>
>>>> system("echo '$starttime,$callerid,$destino,$tempo,$custo,$tarifa'>>
>>>> /tmp/billing.csv");
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> -------------------
>>>>
>>>>
>>>> No caso, ele vai gerar um arquivo de billing
>>>>
>>>> o conteudo dele é o seguinte (duas ligações, uma de poucos segundos e
>>>> outra de mais de um minuto)
>>>>
>>>>
>>>> O formato do arquivo é:
>>>>
>>>>       data,quem,pra_onde,tempo_da_chamada_atendida,valor,tarifa
>>>>
>>>> Abaixo o conteudo:
>>>>
>>>> 2012-06-18 18:42:1,114,11001,30,0.2405,0.481
>>>> 2012-06-18 18:45:8,114,11001,69,0.55315,0.481
>>>>
>>>>
>>>> no meu caso aqui ele em alguns momentos nao gerou a escrita no arquivo,
>>>> não olhei o porque, talvez algum erro meu, mas enfim, a base é esta.
>>>>
>>>>
>>>> eu escrevi a saida em um arquivo de texto, poderia ser um banco de
dados
>>>> por exemplo e por ai vai.
>>>>
>>>>
>>>>
>>>>
>>>> Em 18-06-2012 18:11, Danilo Almeida escreveu:
>>>>> Ribeiro
>>>>>
>>>>> Não entendo como conseguirei fazer isso, pois após o término da
> ligação,
>>>>> como farei para calcular o custo dela?
>>>>>
>>>>> Att
>>>>>
>>>>> Danilo ALmeida
>>>>>
>>>>> -----Mensagem original-----
>>>>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>>>>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
>>>> Ribeiro
>>>>> Enviada em: Monday, June 18, 2012 4:53 PM
>>>>> Para: asteriskbrasil em listas.asteriskbrasil.org
>>>>> Assunto: [AsteriskBrasil] RES: RES: RES: RES: Funcionamento Asterisk
> com
>>>> PHP
>>>>> Danilo
>>>>>
>>>>> Não pelo DeadAGI para a sobrecarga. Pelo evento do AMI/AJAM. Estes
> podem
>>>>> causar.
>>>>> Entendi sua necessidade, mas não seria melhor pegar pelo banco de
> dados,
>>>>> adicionar uma coluna sua ou copiar os dados para outra tabela? Isso
>>>> geraria
>>>>> menos carga e seria mais fácil de você conseguir implementar.
>>>>>
>>>>> Um abraço
>>>>> Ribeiro
>>>>>
>>>>> -----Mensagem original-----
>>>>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>>>>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
>>>> Danilo
>>>>> Almeida
>>>>> Enviada em: segunda-feira, 18 de junho de 2012 09:07
>>>>> Para: asteriskbrasil em listas.asteriskbrasil.org
>>>>> Assunto: [AsteriskBrasil] RES: RES: RES: Funcionamento Asterisk com
PHP
>>>>>
>>>>> Sei que já existem diversos tarifadores, é que trabalho em uma empresa
>> de
>>>>> telefonia voIP e quero desenvolver um específico da empresa.
>>>>> Já tenho o script pronto, só que no script e só imprime o valor direto
>> na
>>>>> tela do cliente. Quando o cliente faz uma busca de ligação, ele pega o
>>>>> tempo, faz o calculo e imprime na tela.
>>>>> No asterisk, já esta configurado para gravar as infos no BD, quero
>>> somente
>>>>> conseguir gravar o valor em um novo campo da Tabela.
>>>>>
>>>>> Exemplo:
>>>>>
>>>>> Quando a ligação encerrar, pegar a informação dessa ligação, fazer o
>>>> calculo
>>>>> e dar um update na tabela jogando o valor no campo custo desta mesma
>>>>> ligação.
>>>>> Pelo que vi, isso seria feito pelo DeadAGI, mais como vc disse não sei
>> se
>>>> é
>>>>> a melhor opção pelo fato de poder dar uma sobrecarga.
>>>>>
>>>>> Teria alguma outra forma de fazer isto?
>>>>>
>>>>> obrigado
>>>>> Danilo Alameida
>>>>> -----Mensagem original-----
>>>>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>>>>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
>>>> Ribeiro
>>>>> Enviada em: Monday, June 18, 2012 2:50 AM
>>>>> Para: asteriskbrasil em listas.asteriskbrasil.org
>>>>> Assunto: [AsteriskBrasil] RES: RES: Funcionamento Asterisk com PHP
>>>>>
>>>>> Danilo
>>>>>
>>>>> Já existem tarifadores diversos e até demais no mercado e muitos Free.
>>>>> Alguns até do pessoal aqui.
>>>>> Veja o A2Billing. Ele faz exatamente o que você deseja, já está pronto
> e
>>>> não
>>>>> tem custo.
>>>>> Acesso ao banco de dados, utilização de um tarifador ou pegar os dados
>> do
>>>>> sistema é o que eu faria, pois você só precisa pegar os dados da
> ligação
>>>> que
>>>>> já acabou e o Asterisk guarda isso por padrão.
>>>>> Por exemplo: Eu uso o Elastix. Nele tem a aba Report. Em CDR Report eu
>>>> tenho
>>>>> todas as ligações realizadas e eu consigo exportar para CSV. Ele lhe
>>> daria
>>>>> TODOS os dados que você deseja de forma fácil, direta, clara e fácil.
>> Tem
>>>> o
>>>>> canal, duração, origem e destino e se foi atendida ou não.
>>>>> Você também consegue se integrar com o A2Billing.
>>>>> Na verdade é matar uma mosca com uma bomba nuclear o A2Billing para
>> você,
>>>>> mas pode ser feito.
>>>>>
>>>>> Independente da sua solução, como já foi dito, tem o cálculo de custo,
>>> que
>>>>> não é tão simples quanto parece.
>>>>>
>>>>> Sobre o AGI: Em seu caso, você não precisa monitorar as ligações no
>>>> momento
>>>>> em que elas estão acontecendo e entendo que o AGI não atenda você para
>>>> isso.
>>>>> Você poderia usar o DeadAGI para pegar os dados depois do hangup ou um
>>>>> AMI/AJAM com eventos. Neste caso ele dispara o evento toda vez que
>> alguma
>>>>> coisa acontece. Existem vários eventos e eu seguiria pelo evento Crd,
>>> onde
>>>>> toda vez que ocorre um hangup, ele lhe informa o canal que sofreu
> hangup
>>> e
>>>>> seus dados.
>>>>> Mais dados sobre eventos:
>>>>> http://www.voip-info.org/wiki/view/asterisk+manager+events . Só que
tem
>>> um
>>>>> problema. O Astrisk fica pesado, pois ele armazena todos os hungups
que
>>>>> ocorreram e em sistemas de tráfego intenso isso pode gerar sobrecarga.
>>>>>>> fique esperto que cada ligação gera 2 canais pelo menos (Pode gerar
>> mais)
>>>> e
>>>>> você tem que entender o que cada canal faz para saber qual deles tem a
>>>>> informação que você deseja ou quais deles contém.
>>>>>
>>>>> Um abraço
>>>>> Ribeiro
>>>>>
>>>>> -----Mensagem original-----
>>>>> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
>>>>> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de
>>>>> danilo.almeida em g1telecom.com.br Enviada em: domingo, 17 de junho de
> 2012
>>>>> 22:07
>>>>> Para: asteriskbrasil em listas.asteriskbrasil.org
>>>>> Assunto: [AsteriskBrasil] RES: Funcionamento Asterisk com PHP
>>>>>
>>>>> Ribeiro
>>>>>
>>>>> Isso já é um ótimo começo pra mim, mais com essas 3 opções, eu consigo
>>>>> enviar um bloco de comando e salvar em um arquivo de conf por exemplo
>> que
>>>>> possa ser meus ramais sip e depois da um include no sip.conf?
>>>>> Andei lendo também sobre AGI, mais o material que achei na internet a
>>>>> maioria ou explica coisas avançadas ou coisas básicas que não se
> encaixa
>>>> no
>>>>> meu projeto.
>>>>>
>>>>> A princípio quero pegar o tempo da ligação e o uniqueid em uma pagina
>> PHP
>>>>> fazer o cálculo do custo da ligação e armazenar no banco.
>>>>>
>>>>> Seria feito pela AGI?
>>>>>
>>>>> Obrigado
>>>>>
>>>>> Danilo Almeida
>>>>>
>>>>> _______________________________________________
>>>>> KHOMP Inovação: External Board Series
>>>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk
e
>>>>> FreeSWITCH.
>>>>> Tenha a External Series Experience na sua aplicação. Visite
>> www.khomp.com
>>>>> _______________________________________________
>>>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro
>> Treinamento
>>>> -
>>>>> Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br ________
>>>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>>>> mercado.
>>>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11)
5503-1011
>>>>> ______________________________________________
>>>>> Para remover seu email desta lista, basta enviar um email em branco
> para
>>>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> KHOMP Inovação: External Board Series
>>>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk
e
>>>>> FreeSWITCH.
>>>>> Tenha a External Series Experience na sua aplicação. Visite
>> www.khomp.com
>>>>> _______________________________________________
>>>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro
>> Treinamento
>>>> -
>>>>> Curso de PABX IP -  Asterisk  - Site www.digivoice.com.br ________
>>>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>>>> mercado.
>>>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11)
5503-1011
>>>>> ______________________________________________
>>>>> Para remover seu email desta lista, basta enviar um email em branco
> para
>>>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>>>
>>>>> _______________________________________________
>>>>> KHOMP Inovação: External Board Series
>>>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk
e
>>>>> FreeSWITCH.
>>>>> Tenha a External Series Experience na sua aplicação. Visite
>> www.khomp.com
>>>>> _______________________________________________
>>>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro
>> Treinamento
>>>> -
>>>>> Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br ________
>>>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>>>> mercado.
>>>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11)
5503-1011
>>>>> ______________________________________________
>>>>> Para remover seu email desta lista, basta enviar um email em branco
> para
>>>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> KHOMP Inovação: External Board Series
>>>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk
e
>>>>> FreeSWITCH.
>>>>> Tenha a External Series Experience na sua aplicação. Visite
>> www.khomp.com
>>>>> _______________________________________________
>>>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>>>>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>>>>> www.digivoice.com.br
>>>>> ________
>>>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>>>> mercado.
>>>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11)
5503-1011
>>>>> ______________________________________________
>>>>> Para remover seu email desta lista, basta enviar um email em branco
> para
>>>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>>>
>>>>> _______________________________________________
>>>>> KHOMP Inovação: External Board Series
>>>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk
e
>>>> FreeSWITCH.
>>>>> Tenha a External Series Experience na sua aplicação. Visite
>> www.khomp.com
>>>>> _______________________________________________
>>>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>>>>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>>>> www.digivoice.com.br
>>>>> ________
>>>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>>> mercado.
>>>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11)
5503-1011
>>>>> ______________________________________________
>>>>> Para remover seu email desta lista, basta enviar um email em branco
> para
>>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>>
>>>> _______________________________________________
>>>> KHOMP Inovação: External Board Series
>>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
>>>> FreeSWITCH.
>>>> Tenha a External Series Experience na sua aplicação. Visite
> www.khomp.com
>>>> _______________________________________________
>>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>>>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>>>> www.digivoice.com.br
>>>> ________
>>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>>> mercado.
>>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
>>>> ______________________________________________
>>>> Para remover seu email desta lista, basta enviar um email em branco
para
>>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>>
>>>> _______________________________________________
>>>> KHOMP Inovação: External Board Series
>>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
>>> FreeSWITCH.
>>>> Tenha a External Series Experience na sua aplicação. Visite
> www.khomp.com
>>>> _______________________________________________
>>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>>>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>>> www.digivoice.com.br
>>>> ________
>>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>> mercado.
>>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
>>>> ______________________________________________
>>>> Para remover seu email desta lista, basta enviar um email em branco
para
>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>
>>>
>>> _______________________________________________
>>> KHOMP Inovação: External Board Series
>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
>>> FreeSWITCH.
>>> Tenha a External Series Experience na sua aplicação. Visite
www.khomp.com
>>> _______________________________________________
>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>>> www.digivoice.com.br
>>> ________
>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>>> mercado.
>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
>>> ______________________________________________
>>> Para remover seu email desta lista, basta enviar um email em branco para
>>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>>
>>> _______________________________________________
>>> KHOMP Inovação: External Board Series
>>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
>> FreeSWITCH.
>>> Tenha a External Series Experience na sua aplicação. Visite
www.khomp.com
>>> _______________________________________________
>>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>> www.digivoice.com.br
>>> ________
>>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>> mercado.
>>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
>>> ______________________________________________
>>> Para remover seu email desta lista, basta enviar um email em branco para
>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>
>> _______________________________________________
>> KHOMP Inovação: External Board Series
>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
>> FreeSWITCH.
>> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
>> _______________________________________________
>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>> www.digivoice.com.br
>> ________
>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>> mercado.
>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
>> ______________________________________________
>> Para remover seu email desta lista, basta enviar um email em branco para
>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>
>> _______________________________________________
>> KHOMP Inovação: External Board Series
>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
>> FreeSWITCH.
>> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
>> _______________________________________________
>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>> www.digivoice.com.br
>> ________
>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
>> mercado.
>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
>> ______________________________________________
>> Para remover seu email desta lista, basta enviar um email em branco para
>> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>
>> _______________________________________________
>> KHOMP Inovação: External Board Series
>> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
> FreeSWITCH.
>> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
>> _______________________________________________
>> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
> www.digivoice.com.br
>> ________
>> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
> mercado.
>> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
>> ______________________________________________
>> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>
> _______________________________________________
> KHOMP Inovação: External Board Series
> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
> FreeSWITCH.
> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
> _______________________________________________
> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
> www.digivoice.com.br
> ________
> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
> mercado.
> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
> ______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>
> _______________________________________________
> KHOMP Inovação: External Board Series
> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
> FreeSWITCH.
> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
> _______________________________________________
> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
> www.digivoice.com.br
> ________
> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
> mercado.
> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
> ______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>
> _______________________________________________
> KHOMP Inovação: External Board Series
> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
FreeSWITCH.
> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
> _______________________________________________
> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
www.digivoice.com.br
> ________
> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
mercado.
> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
> ______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org


_______________________________________________
KHOMP Inovação: External Board Series
Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
FreeSWITCH.
Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
_______________________________________________
DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
www.digivoice.com.br
________
YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
mercado.
email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org



Mais detalhes sobre a lista de discussão AsteriskBrasil