Asterisk Gateway Interface (AGI)¶
Under Construction
If you would like to help write this section, please consider contributing to the documentation.
AGI is analogous to CGI in Apache. AGI provides an interface between the Asterisk dialplan and an external program that wants to manipulate a channel in the dialplan. In general, the interface is synchronous - actions taken on a channel from an AGI block and do not return until the action is completed.
AGI Libraries and Frameworks¶
| Name | Language | Website | Protocols |
|---|---|---|---|
| Adhearsion | Ruby | http://www.adhearsion.com/ | AMI/FastAGI |
| Asterisk-Java | Java | https://asterisk-java.org/ | AMI/FastAGI |
| PAGI | PHP | https://github.com/marcelog/PAGI | AGI |
| PHPAGI | PHP | http://phpagi.sourceforge.net/ | AGI |
| Panoramisk | Python+AsyncIO | https://github.com/gawel/panoramisk | AMI/FastAGI |
| Pyst2 | Python | https://github.com/rdegges/pyst2 | AMI/AGI |
| StarPy | Python+Twisted | https://github.com/asterisk/starpy | AMI/FastAGI |
| Nanoagi | C++ | http://sourceforge.net/projects/nanoagi/ | AGI |
| AsterNET | .NET (C#/VB.net) | https://github.com/skrusty/AsterNET | AMI/FastAGI |
| Ding-dong | node.js | https://www.npmjs.com/package/ding-dong | AGI |
| astive | Java | https://github.com/fonoster/astive | FastAGI |
| FastAGI-Go | Go | https://github.com/BlayD91/FastAGI-go | FastAGI |
| astgo | Go | https://github.com/wenerme/astgo | AMI/AGI/FastAGI |
| Asterisk::AGI | Perl | https://metacpan.org/pod/Asterisk::AGI | AGI |
| lua-agi | Lua | https://github.com/stolendata/lua-agi | AGI |