This open source software project connects the world of java with the Common-ISDN-API (CAPI). CAPI is an application programming interface standard used to access ISDN equipment.
The jcapi-project consists of the following components :
- An operating-system dependend c++ library (jcapi.cpp), that simply converts java function calls into c++ function calls. [2],[3]
- A java class that can access this above mentioned library (jcapi.java). [3]
- A set of classes that simplify the task to handle capi messages (StructIn.java, MsgIn.java, StructOut.java, MsgOut.java, ...). [1]
- Predefined message classes : controller messages (uk.co.mmscomputing.device.capi.ctrl.*), physical link messages (uk.co.mmscomputing.device.capi.plc.*), network control messages (uk.co.mmscomputing.device.capi.ncc.*). [1]
- A few example programs (uk.co.mmscomputing.device.capi.samples.*)
- A bare bone class frame work for capi applications (CapiApplication.java, CapiEnumerator.java, CapiController.java, ...). CapiApplication uses the usual Listener paradigm to communicate with the rest of the application (Metadata.java, CapiMetadata.java).
- CapiSystem sets up a CapiServerApplication that is used i.e. by the mmsc-answerphone application.
The loop for receiving capi messages is in CapiApplication. CapiCallApplication deals with outgoing calls and CapiServerApplication with incoming calls.
[1] Common-ISDN-API Part I :www.capi.org/download/capi20-1.pdf CAPI Association e.V. [last accessed : 2003-06-24]
[2] Common-ISDN-API Part II :www.capi.org/download/capi20-2.pdf CAPI Association e.V. [last accessed : 2003-06-24]
[3] Sheng Liang (1999), The Java Native Interface, SUN, Palo Alto
Package : uk.co.mmscomputing.device.capi
- CapiApplication.java
- CapiCallApplication.java
- CapiChannel.java
- CapiConfMsg.java
- CapiConstants.java
- CapiController.java
- CapiEnumerator.java
- CapiFaxDetector.java
- CapiFaxSender.java
- CapiFaxSender.java
- CapiIndMsg.java
- CapiInfoPlugin.java
- CapiInputStream.java
- CapiMetadata.java
- CapiNCC.java
- CapiOutputStream.java
- CapiPLC.java
- CapiPanel.java
- CapiPhoneCaller.java
- CapiPlugin.java
- CapiProfile.java
- CapiSMSPlugin.java
- CapiServerApplication.java
- CapiSystem.java
- CapiVoicePlugin.java
- MsgIn.java
- MsgOut.java
- Rider.java
- StructOut.java
- jcapi.java
- uk_co_mmscomputing_device_capi_jcapi.h
sub-directories:
- uk.co.mmscomputing.device.capi.ctrl:
capi messages that do not need a plci yet. - uk.co.mmscomputing.device.capi.exception:
exceptions thrown by capi system. - uk.co.mmscomputing.device.capi.facility:
Classes that handle capi facility messages. - uk.co.mmscomputing.device.capi.lin32:
libjcapi.so : The jcapi c++ library for linux (32-bit version). - uk.co.mmscomputing.device.capi.man:
Capi Manufacturer Messages - uk.co.mmscomputing.device.capi.ncc:
capi messages that need a valid ncci. - uk.co.mmscomputing.device.capi.parameter:
some capi parameter. - uk.co.mmscomputing.device.capi.plc:
capi messages that need a valid plci. - uk.co.mmscomputing.device.capi.protocol:
A few simple predefined capi protocol structs. - uk.co.mmscomputing.device.capi.q931:
A Few Q.931 Information Elements CAPI uses. - uk.co.mmscomputing.device.capi.samples:
A few simple capi test programs. - uk.co.mmscomputing.device.capi.sound:
Classes that turn the CAPI device audio streams into an A-Law, u-Law or PCM stream. - uk.co.mmscomputing.device.capi.win32:
jcapi.dll : The jcapi c++ library for windows (32-bit version). - uk.co.mmscomputing.device.capi.win64:
jcapi.dll : The jcapi c++ library for windows (amd64-bit version).
Projects :
- uk.co.mmscomputing.concurrent:
Helper classes for concurrent programming. - uk.co.mmscomputing.io:
A few io-stream classes. Modified Huffman (MH), Modified READ (MR), Modified Modified READ (MMR), Base-64, PackBits, Little Endian - uk.co.mmscomputing.util:
A few useful utility classes