Actually it doesn't say "AGI(async:script)" it says "AGI(async:agi)" and than 
continues further to setting up an AMI user so the script is executed through 
the manager interface?? Than it says "AGI(agi:async)".?? Well most importantly 
it says "Cons of async AGI: It is the most complex method of using AGI to 
implement." ..:) I have been interested in Async AGI as well and after reading 
your post looked into the link you provided, seems different than what we 
immediately think, a background process.

Perhaps just start the script normally "AGI(script.sh)" and than inside it run 
your background process "background-script.sh > /dev/null 2>&1 < /dev/null &" 
or fork a new process, detach, run in background, etc...

Hopefully somebody else can point us towards the right direction in setting up 
a real asterisk asynchronous AGI application.

--
Mehmet

On Sep 25, 2011, at 2:00 AM, Randall Degges wrote:

> Hi Everyone,
> 
> I've been trying to get asynchronous AGIs working in some Asterisk code I 
> have. I'm using Asterisk 1.8.7.0, and I'm very familiar with dialplan and AGI 
> scripting overall. Here's my problem: I can't get Asterisk to execute *any* 
> AGIs asynchronously.
> 
> Firstly, I discovered asynchronous AGIs via "Asterisk: The Definitive Guide". 
> The asynchronous AGI information I read can be found online, here: 
> http://ofps.oreilly.com/titles/9780596517342/AGI.html (scroll down to the 
> section titled "Async AGI--AMI Controlled AGI").
> 
> According to the book, since Asterisk 1.6.0 the AGI dialplan application has 
> been able to execute AGI scripts asynchronously, via the syntax:
> 
> exten => s,1,AGI(async:script)
> 
> According to the book, using the "async:" prefix should have Asterisk run the 
> AGI script in the background and instantly continue executing dialplan code.
> 
> So here's my Asterisk dialplan code that's being run:
> 
> [hangup]
> exten => s,1,AGI(async:/etc/asterisk/scripts/hangup.py)
> exten => s,n,Return()
> 
> Pretty simple context--essentially my AGI script just does some call clean up 
> logic before a caller hangs up, talking to a few web servers and generating 
> statistics for later usage. What happens when Asterisk executes this context, 
> is:
> 
> WARNING[7911]: res_agi.c:1622 launch_script: Failed to execute 
> '/var/lib/asterisk/agi-bin/async:/etc/asterisk/scripts/hangup.py': File does 
> not exist.
> 
> As you can see, Asterisk is ignoring the async: directive, and treating it as 
> part of the AGI script path.
> 
> Is there anyway for me to make asynchronous AGIs work? I've tried searching 
> online to no avail.
> 
> I'd greatly appreciate any responses, thanks for your time.
> 
> -Randall
> 
> -- 
> Randall Degges
> http://rdegges.com/
> 
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> New to Asterisk? Join us for a live introductory webinar every Thurs:
>               http://www.asterisk.org/hello
> 
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-users


--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
               http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to