System information
<generic response='Success' message='Authentication accepted' />
</response>
</ajax-response>
$ wget --load-cookies cookies.txt "http://localhost:8088/mxml?action=waitevent" -O -
<ajax-response>
<response type='object' id='unknown'>
<generic response='Success' message='Waiting for Event completed.' />
</response>
<response type='object' id='unknown'>
<generic event='PeerStatus' privilege='system,all'
channeltype='SIP' peer='SIP/0000FFFF0004'
peerstatus='Registered' address='172.16.0.160:5060' />
</response>
<response type='object' id='unknown'>
<generic event='WaitEventComplete' />
</response>
</ajax-response>
Development Frameworks
Many application developers write code that directly interfaces with the AMI. However,
there are a number of existing libraries that aim to make writing AMI applications
easier. Table 20-5 lists a few that we know are being used successfully. If you search
around for Asterisk libraries in any other popular programming language of your
choice, you are likely to find one that exists.
Table 20-5. AMI development frameworks
Framework Language URL
Adhearsion Ruby http://adhearsion.com/
StarPy Python http://starpy.sourceforge.net/
Asterisk-Java Java http://asterisk-java.org/
CSTA
Computer-Supported Telecommunications Applications (CSTA) is a standard for
Computer Telephony Integration (CTI). One of the biggest benefits of CSTA is that it
is used by multiple manufacturers. Some of what is provided by CSTA can be mapped
to operations available in the AMI. There have been multiple efforts to provide a CSTA
interface to Asterisk. One of these efforts is the Open CSTA project. While none of the
authors have experience with this CSTA interface to Asterisk, it is certainly worth con-
sidering if you have CSTA experience or an existing CSTA application you would like
to integrate with Asterisk.
Development Frameworks | 471