How do I call a function after a queued call completes?

Can someone please tell me where in the dialplan I can place a function that is called after a queued call is completed?

Here’s what I’m trying to do. I have a chron job that uploads and deletes all recorded calls to another server every hour. The problem is that it cuts off any calls in progress whenever it runs. I’d like to use the SYSTEM() command to move the files out of /var/spool/asterisk/monitor and into another directory when they are done recording.

All calls are being placed into a queue and recorded using mixmonitor. I can’t figure out where to place this SYSTEM() command so that it’s called after the call completes. Is there somewhere that I can put this, or does asterisk just stop processing the dialplan when a call ends?

Thanks for any help.

Try call system() in the “h” extension of the context where you queue the calls.


Marco Bruni

Thanks! That helped me figure out the solution.