XTAPI News for the Second Quarter 2002

  • Sunday, June 16, 2002
    XTAPI the first fully functional free JTAPI implementation announces Alpha release 0.07!
    The 0.07 release contains fixes for multi-user and multi-line support, along with a new JVoiceMail multi-user, multi-line sample application in the files section!



    Additionally a bug was found that caused the TerminalConnection to be added to an internal structure in XTAPI twice! Under some circumstances this would cause double the events, which is a very bad thing for event driven state machines such as telephony applications.
    There have been very few problems reported over the last few weeks, this is a great sign for the stability of XTAPI. If you know of any problems please post them to the help forum at http://sourceforge.net/projects/xtapi/


  • Monday, May 20, 2002
    XTAPI the first fully functional free JTAPI implementation announces Alpha release 0.06!
    The largest change to the 0.06 release is the implementation of the useDefaultXXX methods for the Serial Provider. The Serial Provider now does real-time compression and decompression to and from g.721 ADPCM and 16-bit PCM audio data.

    A few bug fixes are also contained in this release:
    XTAPI:
    It was not possible to cast the origination terminalConnection to a mediaTerminalConnection.
    The connection.getCallObservers method would return a zero length array instead of null if there were no observers.

    MSTAPI Service Provider:
    The stopPlaying/Recording methods would return before the media actually stopped.

    In general the code seems fairly stable now, if you know of any bugs please post them to the help forum at http://sourceforge.net/projects/xtapi/

    Surf over to SourceForge and check it out! http://sourceforge.net/projects/xtapi/

    Steven A. Frare http://xtapi.sourceforge.net/

    XTAPI provides a working implementation of the Core and Media packages for JTAPI 1.2.

  • Sunday, May 5, 2002
    XTAPI the first fully functional free JTAPI implementation announces Alpha release 0.05!

    All logging is now done to files instead of to the console or the debug-shared memory in Windows. This makes XTAPI much faster! XTAPI does its own logging to xtapi.log while the Service Providers are responsible for logging to their own files. Currently MSTAPI logs to MSTAPI.log and Serial logs to Serial.log. The logging routines use buffered IO so make sure to user the provider.shutdown() method before exiting so that all logs are flushed.

    Many fixes for the Serial Provider around the sound routines, hang-up and modem reset has more checks to correct for failures.

    The Serial Provider implementation now always saves the file in the Sun/Next .au format g.721 ADPCM encoded. The rate is queried from the CODEC provided in xtapi.inf. To use the Serial Provider you must set your xtapi.inf file CODEC parameters to use g.721 encoding for recording and playback. Sound conversion routines to and from g.721 / g.711 are working fine.

    The intention of this release was to pull the Serial Provider from the main XTAPI release however given the logging changes this did not happen.

    The Serial Provider is almost up to par with the MSTAPI Provider, it lacks only in useDefaultXXXX support, which is next on the agenda for the XTAPI Serial Provider.

    The media examples have been updated with enough information to get going with the Serial Provider and the JAnsweringMachine example.


  • Sunday, April 28 2002
    XTAPI Alpha Release 0.04

    Mostly a maintenance release as there wasn’t much done to the JTapi implementation.  Most work was in the MSTAPI service provider, though there were minor bug fixes in XProvider.java and XMediaTerminalConnection for the useDefaultXXXX JTapi Media Package methods.

    In the MSTAPI provider:

    The sound routines are now much improved.

    Gone is any limitation on the length of a recording.  This fixes a workaround that was required on some modems to run the JAnsweringMachine sample where they needed to make sure they went beyond 60 seconds.   Now any arbitrary time should work fine.

    To enable the above fix and for reasonable useDefaultXXXX support a circular buffer was implemented to handle recording / streaming, the code is very different now.

    The circular buffer also improves hang-up detection while recording if using the Microsoft Unimodem TSP.

    Included with the MSTAPI release is a readme.txt file that reads:

    /**
    * When streaming audio (using getDefaultXXXX) it is preferable to have smaller
    * buffers. However buffers smaller than 1 second do not work correctly on some
    * cards (Dialogic 160SC). The default buffer size is one second, add a divisor
    * DWORD value in HKEY_LOCAL_MACHINE\SOFTWARE\xtapi to divide one second/divisor.
    *
    * Setting the value to 5 results in 200ms buffers.
    *
    * HKEY_LOCAL_MACHINE\SOFTWARE\xtapi
    * Name: divisor
    * Value DWORD >= 1 <= 10
    */

    Note the registry key is optional and is NOT created by default.

    What’s next for XTAPI?

    The Service Provider Java code is currently in the same Jar file as the XTAPI JTapi implementation.  The next task is to not do that anymore as the Service Provider code is now getting the lion’s share of work while the XTAPI code is not.  This will make it easier for someone to decide if they need to bother upgrading to the next release.
    As usual the latest and greatest stuff is at http://sourceforge.net/projects/xtapi/

  • Sunday, April 21 2002
    XTAPI JTapi Implementation Code Complete! XTAPI the first fully functional free JTAPI implementation announces the Alpha 0.03 release!
    The Media Package is now 100% code complete! XTAPI has now moved from Pre-Alpha to Alpha, all feedback is welcome and needed!
    Additionally the XTAPI Media Examples release has been added to the download section on SourceForge.

    Interface changes have occured in IXTAPI.  IXTapiCallBack is now used for a looser coupling of the XTAPI Implementation and the Service Provider code.  This allows for other JTapi implementaions (such as GJTAPI also on SourceForge at
    http://www.sourceforge.net/projects/gjtapi ) to use the XTAPI Service Providers!  The net benefit for the JTapi Community is that if others implement an XTAPI Service Provider the JTapi Community will now have a choice of implementations, thus ending for ever the question of "Where do I get a Provider?", you will now have a choice!  Due to the interface changes when upgrading to XTAPI 0.03 you should delete *.class.  If you have made modifications to the XTAPI code you will need to port it.  For those of you who have not made changes to the XTAPI code, simply delete *.class and rebuild.

    JAnsweringMachine on Windows 2000

    The Alpha 0.03 release contains the latest and greatest stuff get it at
    http://sourceforge.net/projects/xtapi/

  • Sunday, April 7 2002
    XTAPI Core Implementation Code Complete! XTAPI the first fully functional free JTAPI implementation makes another leap towards a Beta release!
    The Core Package is now 100% code complete while the Media Package is gaining at 83% code complete. XTAPI will soon switch from pre-alpha to Alpha then comes Beta!
    Download the Alpha 0.02 releases for the latest and greatest stuff.

  • Sunday, March 31 2002
    Happy Easter!  I just put up the simple.zip example source archive and added documentation to run three simple JTapi examples using XTAPI!

    JSoftPhone running on Linux Redhat 7.1