Limitar duracion de la llamada L

Buen dia buscando opciones para limitar la duracion de la llamada de mi asterisk
encontre la opcion L
yo tengo una tabla enmi base de datos donde esta el callerid y los minutos disponibles.
tabla anexos ahi esta campo es minutos .

guardo mis llamadas con cdr con el mysql  pero en sql no soy muy experto me pueden ayudar para lo siguiente:
quiero con agi a la hora q aga la llamada se fije su callerid y me diga sus minutos disponibles.
con mi agi obtenga el valor en la base de datos de la tabla anexos y del campo minutos y lo ponga en la opcion L(valorminutos:             )
y al terminar la llamada reste minutos -duracion de mi llamada.
solo quiero saber si me logica esta bien.Gracias de antemano
ATt.
Hector

0
Your rating: None

Hola

Hace un tiempo hice, el mismo tema que estas buscando, mi base de datos estaba en MySQL en windows, y la progmacion en PHP para el agi, muestrame tu codigo haber si puedo ayudarte algo de la logica seria asi ojala te sirva.

Te explico parte por parte como hice:

exten => _1XX,1,Answer()
exten => _1XX,2,agi(limit.php|${CALLERID(num)}|${EXTEN})
exten => _1XX,3,dial(SIP/${EXTEN},10,TrL(${LIMITE}:60000:15000))

Aquí el agi limit.php me consulta en DB sobre el saldo si tiene saldo procede la llamada si no la cuelga.

Al AGI le entrego el callerid, y la extension para que haga sus consultas y asi devuelve una varible que yo defino para que me el tiempo de limite de llamada "LIMITE" y la envio al dialplan.

exten => h,1,Deadagi(descuento.php|${billsec}|${CALLERID(num)})

Aquí le entrego al AGI el tiempò hablado desde que descolgo el telefono "billsec" y el callerID para realizar la modificaion en la base de datos y haga el descuento.

Espero haberte ayudado, yo trabajo en Asterisk.
Puedes escribirme al correo jdelcarpio868@gmail.com