Asterisk JTAPI


Asterisk-JTAPI is a JTAPI implementation for the Asterisk software PBX system. JTAPI is a provider independent programming interface for Java to build applications for computer telephony or to add support for it. JTAPI covers a wide range of usage scenarios starting from controlling a single telephone to a whole PBX system for example in call-centers.

Asterisk-JTAPI builds on top of two other projects: Asterisk-Java, which provides a Java interface to the Asterisk manager API, and, GJTAPI, which provides a general framework for JTAPI interfaces.


Asterisk-JTAPI is provided under the terms of the Apache License, Version 2.0.


The first version tries to implement a very basic set of features but being as robust as possible.

  • Signal incoming calls with calling party address, called party address and final destination/terminal extension
  • Signal outgoing calls
  • Initiate outgoing calls
  • Report alerting, established connection and termination
  • Reports terminals and addresses to the appliation by analysing the asterisk dialplan
  • Support of all kinds of terminals. Tested with SIP phones and ISDN Zaptel interfaces.
There is currently no support for advanced call-control features such as call transfer, conference calls.

Known Limitations

After a restart of the Java application no active calls are reported if some are established. This is not conforming to the JTAPI specification which states that after a restart any active call should be reported correctly and that snapshot events should be genereated. This is because we cannot get any needed piece of information from the Asterisk PBX (e.g. called address).

A transfered call is reported as a seperate call, so the final destination only gets the internal calling party reported.


V0.2 release, 15th May 2006: The current code base is compliant to JTAPI 1.3.1 and tested with Asterisk Version 1.2.4.


Official releases and release candidates are available on the sourceforge project page.

Asterisk-Java is also available via cvs from sourceforge:

cvs login
cvs -z3 co asterisk-jtapi

When prompted for a password for anonymous, simply press the Enter key.


At runtime Asterisk-JTAPI requires a Java Runtime Environment (JRE) of at least version 1.4.

You also need additional jar-files. Direct dependencies are can be found here.