[asterisk-users] Play Music While Processing AGI Script
Steve Edwards
asterisk.org at sedwards.com
Tue May 14 23:32:56 CDT 2019
On Tue, 14 May 2019, Alexander Perkins wrote:
> Hi All. I have a question - I have an AGI script that may run for 10 seconds, or it may run for 60 seconds while an agent becomes available (agents are geographically
> dispersed). Is there a way to have the music play in the background while the AGI scripts executes? When the AGI script finishes, then the music should also finish.
> I tried this, but the music needs to finish before moving on to step 4 and execute the script.
>
> exten => _NXZNXXXXXX,1,Answer()
> exten => _NXZNXXXXXX,2,MusicOnHold()
> exten => _NXZNXXXXXX,3,AGI(SetRecordingID.php,${UNIQUEID})
Create a separate thread in your AGI to play a small segment (5 to 10
seconds) of music in a loop. At the end of each 'play' check to see if the
AGI is ready to exit.
Off topic, but you can make maintenance of your dialplan easier if you
write it like:
exten = _nxznxxxxxx,1, answer()
same = n, musiconhold()
same = n, agi(SetRecordingID.php,${UNIQUEID})
The 'whitespace' and 'lowcasing' is just my personal preference. I would
also use 'getopt/longopts' to parse the command line so you can have
meaningful (long) options and are not dependent upon passing arguments in
a particular order.
--
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards sedwards at sedwards.com Voice: +1-760-468-3867 PST
https://www.linkedin.com/in/steve-edwards-4244281
More information about the asterisk-users
mailing list