Overview
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.
On This Page
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 |
12 Comments
Ludovic Gasc (Eyepea)
A first draft, do you want two table for AGI and AMI ?
BTW, I've listed only recent libraries I've already used, because you have a lot of libraries abandoned on the Web.
Rusty Newton
Well, this is a page about AGI, so we would only want to list the AGI libraries here. The combined libraries can be listed on both pages.
Marek Cervenka
nice library for AGI + node.js which im using in production https://www.npmjs.com/package/ding-dong
Rusty Newton
Thanks! Added!
Matthias Urlichs
Well, a list of libraries is nice, but where's the actual protocol description?
james.zhu
hello:
I want to translate the pages(AGI/ARI/AMI/dialplan) in chinese. but when I use tools to export as word or PDF format, the page exported is empty. please check that.
Pedro Sanders
I wrote a FastAGI in Java, perhaps it could be added to the list. Here is the repo https://github.com/fonoster/astive
Alex Fisher
Hi! Can you add GoLang FastAgi library?
https://github.com/BlayD91/FastAGI-go
wener
Hi, due to using the old asterisk 1.8 write a golang lib for AGI/FastAGI/AMI https://github.com/wenerme/astgo
Joshua C. Colp
All comments as of this one have been applied.
Mark Mullings
Team. I have created a Perl AGI program with database access that does what is meant to do. The problem is the performance sucks. I wanted to implement it as FastAGI instead in a separate server but I haven't found any easy way to implement it. Any suggestions?
Stas Kobzar
Hello,
Can you, please, add Go AGI/FastAGI library: https://github.com/staskobzar/goagi
And AMI2 Go library: https://github.com/staskobzar/goami2
Using it in production for a while and will be glad if it can be helpful for someone