Package net.sf.asterisk.fastagi

Provides an implementaion of Asterisk's FastAGI.


Interface Summary
AGIChannel Provides the functionality to send AGICommands to Asterisk while handling an AGIRequest.
This interface is supposed to be used by AGIScripts for interaction with the Asterisk server.
AGIReader The AGIReader reads the replies from the network and parses them using a ReplyBuilder.
AGIRequest Defines an object to provide client request information to an AGIScript.
This includes information about the channel the script is invoked on and parameters passed from the dialplan.
AGIScript AGIScripts are used by the AsteriskServer to handle AGIRequests received from the Asterisk server.
To implement functionality using this framework you have to implement this interface.
Note: The implementation of AGIScript must be threadsafe as only one instance is used by AsteriskServer to handle all requests to a resource.
AGIServer Listens for incoming AGI connections, reads the inital data and builds an AGIRequest using an AGIRequestBuilder.
The AGIRequest is then handed over to the appropriate AGIScript for processing.
AGIWriter The AGIWriter sends commands to Asterisk.
MappingStrategy A MappingStrategy determines which AGIScript has to be called to service a given AGIRequest.

Class Summary
AbstractAGIScript Deprecated. use BaseAGIScript instead
AGIConnectionHandler An AGIConnectionHandler is created and run by the AGIServer whenever a new socket connection from an Asterisk Server is received.
It reads the request using an AGIReader and runs the AGIScript configured to handle this type of request.
AGIServerThread Runs an AGIServer in a separate Thread.
You can use this class to run an AGIServer in the background of your application or run it in your webcontainer or application server.
BaseAGIScript The BaseAGIScript provides some convinience methods to make it easier to write custom AGIScripts.
Just extend it by your own AGIScripts.
ResourceBundleMappingStrategy A MappingStrategy that is configured via a resource bundle.
The resource bundle contains the script part of the url as key and the fully qualified class name of the corresponding AGIScript as value.
SimpleMappingStrategy A MappingStrategy that is configured via a fixed set of properties.
This mapping strategy is most useful when used with the Spring framework.
Example (using Spring):

Exception Summary
AGIException Abstract base class for all AGI specific exceptions.
AGIHangupException The AGIHangupException is thrown if the channel has been hang up while processing the AGIRequest.
AGINetworkException The AGINetworkException usally wraps an IOException denoting a network problem when talking to the Asterisk server.
InvalidCommandSyntaxException An InvalidCommandSyntaxException is thrown when the reader receives a reply with status code 520.
InvalidOrUnknownCommandException An InvalidOrUnknownCommandException is thrown when the reader receives a reply with status code 510.

Package net.sf.asterisk.fastagi Description

Provides an implementaion of Asterisk's FastAGI.

Copyright © 2004-2005 Stefan Reuter. All Rights Reserved.