Pessoal,

    Depois de muita luta e ajuda de todos consegui resolver.
    Dentro do FreePbx, em General Settings -> Asterisk Dial command options, adicionei a chamada da macro, ficando assim: trM(atende)
    Dentro do extensions.conf, criei uma macro chamada atende e dentro dela chamo o meu agi passando os parâmetros que eu preciso.
    Esse AGI vai enviar, via socket, algumas informações assim que o ramal atender a ligação. Com isso, assim que o ramal atender, abrirei para o operador, por exemplo, uma tela já com os dados do cliente.
    Segue abaixo a macro criada e o AGI.
    O servidor de socket foi desenvolvido em Delphi 7 ( quem tiver interesse envio o fonte dele ).

[macro-atende]
exten => s,1,AGI(atende.agi|${CDR(uniqueid)}|${CDR(start)}|${CDR(src)}|${CALLERID(number)})

Atende.agi
---------
#!/usr/bin/perl

use IO::Socket;

my $sock = new IO::Socket::INET (
PeerAddr => '10.1.1.56',
PeerPort => '40000',
Proto => 'tcp',);

die "Could not create socket: $!\n" unless $sock;

my $uniqueid = $ARGV[0];
my $start = $ARGV[1];
my $src = ""> my $dst = $ARGV[3];

my $MSG1 = "ID: $uniqueid";
my $MSG2 = "INICIO: $start";
my $MSG3 = "ORIGEM: $src";
my $MSG4 = "DESTINO: $dst";
my $MSG5 = "ATENDEU";

print $sock "$MSG1 \n $MSG2 \n $MSG3 \n $MSG4 \n $MSG5 \n\n";

close($sock);


Rodrigo Reis do Nascimento
Adm. de redes e banco de dados
rodr...@facilinformatica.com.br
MpsBR

www.facilinformatica.com.br
Tel./Fax:+55-31-3319-1900




-------- Original Message  --------
Subject: [AsteriskBrasil] Executar script dentro da função DIAL
From: Rodrigo Reis <rodr...@facilinformatica.com.br>
To: asteriskbrasil@listas.asteriskbrasil.org
Date: 3/7/2009 16:38
Pessoal, preciso executar um script na hora que o ramal atende a ligação.
Alguém sabe se existe alguma forma de editar a função Dial do Asterisk?
Pelo o que eu estava lendo só consigo executar um AGI antes do Dial ou depois de desliga ( HangUp ).

    -- Executing [...@macro-dial:9] Dial("IAX2/1938-2573", "IAX2/1902|15|tr") in new stack
    -- Called 1902
    -- Call accepted by 10.0.0.7 (format ulaw)
    -- Format for call is ulaw
    -- IAX2/1902-13865 is ringing
    -- IAX2/1902-13865 answered IAX2/1938-2573
=> Preciso adicionar o script depois dessa ação.

--
Rodrigo Reis do Nascimento
Adm. de redes e banco de dados
rodr...@facilinformatica.com.br
MpsBR

www.facilinformatica.com.br
Tel./Fax:+55-31-3319-1900



_______________________________________________ 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

_______________________________________________
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

Responder a