Tap here to compare the top VoIP providersTap here to hide the top VoIP Providers
Asterisk cmd AGI
Synopsis:Executes an AGI compliant application
Description:Executes an Asterisk Gateway Interface compliant program on a channel. AGI allows Asterisk to launch external programs written in any language to control a telephony channel, play audio, read DTMF digits, etc. by communicating with the AGI protocol on stdin and stdout.
exten => _X.,1,Answer
exten => _X.,n,Wait(1)
exten => _X.,n,AGI(a2billing.php,1)
exten => _X.,n,Hangup()
Return codesReturns -1 on hangup or if application requested hangup, or 0 on non-hangup exit.
Requirements for applications
- must be executable
- must be located in /usr/share/asterisk/agi-bin (see astagidir variable in asterisk.conf)
- must be specified in the dialplan complete with an extension
EAGI gives you a sound channelUsing 'EAGI' provides enhanced AGI, with audio available out of band on file descriptor 3
Use DeadAGI when you have no living channelIf you want to execute an AGI script in the 'h' hangup extension of a context, use the DeadAGI() application instead of AGI().
- Adhearsion - Ruby Dialplan via AGI
- AGI in Visual Dialplan
- EAGI: Same as AGI except it makes available file descriptors for audio streams
- FastAGI: Run AGI remotely over TCP socket: agi://
- OrderlyCalls (successor to JAGIServer) offers full support for FastAGI and Manager in an easy-to-use Named Service environment. Includes Web Deployer for developing integrated VOIP-HTML applications.
- Another Java framework for FastAGI: http://tanesha.net/Wiki/JastAgi.html
- Asterisk-java now also supports FastAGI in addition to the Manager API
- Asterisk AGI
- res_php, res_perl, res_python (PyAsterisk) if you don't want to load the interpreter with every AGI call
- http://martin.hinner.info/voip/ AGI perl script which sends e-mail or notification message with information who is calling (lookup in NANPA or intl. code database)
- SafiServer and SafiWorkshop: Graphically design callflows and a server that uses FastAGI to execute them through Asterisk
Asterisk | Applications | Functions | Variables | Expressions | Asterisk FAQ
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+