Y cuanto duro la llamada ??? - ${CDR(billsec)} no funcionaaaa!

207 views
Skip to first unread message

fcoibague

unread,
Sep 22, 2008, 5:00:30 PM9/22/08
to asterisk-es
Cordial saludo,

estoy tratando de saber cuanto duro una llamada generada a traves de
un AGI,, pero no encuentro respuestas...

he probado :

$agi->answer();
$agi->exec_dial("SIP","$teldestino@nonoh","50","L($maxduracion:
15000)","h","H");
$agi->hangup();

$cdr = $agi->exec('NOOP(${CDR(billsec))');

$duracionllamada = $agi->get_variable("CDR(billsec)");

Alguien me puede ayudar ?

Necesito generar una llamada, y que al colgar pueda obtener el tiempo
de duracion de la misma (desde que contestaron hasta que finalizo la
llamada)

Hay alguna otra variable que contenga ese dato ?

Tengo Actulmente linux fedora c8 y Asterisk 1.4.18


Gracias de antemano.

Saúl Ibarra

unread,
Sep 23, 2008, 12:10:55 AM9/23/08
to aster...@googlegroups.com
En el fichero cdr.conf:

; Normally, CDR's are not closed out until after all extensions are finished
; executing. By enabling this option, the CDR will be ended before executing
; the "h" extension so that CDR values such as "end" and "billsec" may be
; retrieved inside of of this extension.
;endbeforehexten=no

Lo tendrás que mirar en la extensión h...


--
Saúl -- "Nunca subestimes el ancho de banda de un camión lleno de disketes."
----------------------------------------------------------------
http://www.saghul.net/

fcoibague

unread,
Sep 23, 2008, 8:39:15 AM9/23/08
to asterisk-es
y es posible acceder a la extencion h, desde el mismo agi
en tiempo de ejecucion ?

o que solucion me recomiendas ?

Rodrigo Ramirez Norambuena

unread,
Sep 23, 2008, 12:43:22 AM9/23/08
to aster...@googlegroups.com
2008/9/22 fcoibague <sistem...@hotmail.com>:

>
> Cordial saludo,
>
> estoy tratando de saber cuanto duro una llamada generada a traves de
> un AGI,, pero no encuentro respuestas...
>
> he probado :
>
> $agi->answer();
> $agi->exec_dial("SIP","$teldestino@nonoh","50","L($maxduracion:
> 15000)","h","H");
> $agi->hangup();
>
> $cdr = $agi->exec('NOOP(${CDR(billsec))');
>
> $duracionllamada = $agi->get_variable("CDR(billsec)");

Has intentado con el answeredtime

$duracionllamada = $agi->get_variable("ANSWEREDTIME");


Saludos!


--
Rodrigo Ramírez Norambuena
http://decipher.blackhole.cl

Saúl Ibarra

unread,
Sep 23, 2008, 4:51:56 PM9/23/08
to aster...@googlegroups.com
Haz algo así:

[test]
exten => s,1,AGI(mikosa.php)
exten => h,1,AGI(lalala.php)

y en el segundo AGI accedes a la variable y haces lo que quieras...

Reply all
Reply to author
Forward
0 new messages