On Tue, 4 Dec 2007, Olivier wrote: > Can anyone explain the difference between Asterisk Gateway Interface and > Asterisk Management Interface ? Is it correct to consider AGI scope to > focus on call handling and AMI scope to anything which can be done with > Asterisk froma loading new modules to originating calls ?
AGI is a protocol for writing your own applications. These applications execute as a step or priority in a dialplan similar to Asterisk applications like background() or meetme(). They execute in the context of a single channel. You can't execute an AGI before you have a call and you usually don't have an AGI after the call is hung up (or shortly thereafter). Each AGI executes as a separate process it does not have access to the "code" or memory space of the Asterisk process. Thus, you are executing in a much more limited environment than an Asterisk application. You also can't crash the Asterisk process with a simple coding error. Think of an AGI (Asterisk Gateway Interface) like you would think of a CGI (Common Gateway Interface) in a web server. AGI doesn't define the source language you use. You could write an AGI in shell. I use C. A lot of people use Perl or PHP. AMI is a tcp connection to Asterisk. Think of it as a connection to the Asterisk command line. You can control a call, but it is not limited to a specific call. You can ask Asterisk questions or just sit there and watch stuff wiz by :) Thanks in advance, ------------------------------------------------------------------------ Steve Edwards [EMAIL PROTECTED] Voice: +1-760-468-3867 PST Newline Fax: +1-760-731-3000 _______________________________________________ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
