What's in this Distribution?
This distribution contains JAVA(TM) (note cup above) libraries and tools for the following:The Session Initiation Protocol (RFC 3261) is a text-based signaling protocol that is widely used for IP Telephony, Instant Messaging and and Internet Conferencing applications.
- An imlementation of the JAIN SIP API (JSR 32) maintenance release.
- An implementation of the JAIN SDP API (JSR 141).
The Session Description Protocol ( RFC 2327 ) is used for describing media sessions and is frequently used in conjunction with SIP.
Primarily, this distribution contains a protocol stack/library that will help you build and test SIP applications and servers.
Core Library and Stack Packages
This pacakges included in the gov.nist.javax.sip hierarchy form the reference implementation for JAIN-SIP 1.1 JSR-141 maintenance release. JAIN-SIP is a low level protocol API for SIP.Examples
These include the following pure JAIN applications:
- A proxy and registrar with presence and Instant messaging support
- An Instant Messaging user agent which interoperates with Microsoft Messenger IM.
Tools
A trace viewer application that can be used to view the traces generated by the NIST Stack.How to build it
Supported Platforms
The specification states that JAIN-SIP-1.1 needs J2SE 1.4 You need to download and install J2SDK 1.4.1 . JAIN-SIP 1.1 assumes J2SE 1.4. If your platform will support it, it is highly recommended that you use it as it is much faster. However, you can also build it under JDK 1.3.1 (for use on Compaq IPAQ class machine, for example). Nist-sip1.2 compiles and runs on Ipaq using the Blackdown jvm (1.3 compatible) running on top of Familiar (Linux embedded operating system). To add Swing support, you just need to install an optional library.Building it from Scratch
If you are using Windows (XP, 2000 or NT) please install Cygwin from Redhat (http://www.cygwin.com). and make sure that you include the build package and bash when you install it). The build tool of choice isGNU make and it is executed from a cygwin bash shell. Use the makefile provided:To report bugs you need to enable debugging. When you enable debug, a log file is generated. This log file should be sent to us so we can determine the problem. Set the TRACE_LEVEL property to 32 to enable debugging (see documentation for gov.nist.javax.SipStackImpl.java).
- edit build-config - adjust the paths to libraries. All the libraries you need are provided with the distribution but they are not necessarily the lates.
- The following make targets are relevant:
- make ri makes just the reference implementation for JAIN-SIP. A jar file nist-sip-1.2.jar will be generated which is the RI for JAIN-SIP 1.1.
- make javadoc makes the documentation
- make tools makes the tools
- make examples makes the examples.
- make classfiles makes just the .classes (no docs).
Copyrights (or lack thereof) and Other Disclaimers
This software was developed at the Information Technology Laboratory at the National Institute of Standards and Technology, Gaithersburg, Maryland. Pursuant to title 17 Section 105 of the United States Code this software is not subject to copyright protection and is in the public domain. That means you can incorporate it into any product you wish or use it as-is free of any royalty payments or license agreements. If you should do so, we request that you acknowledge NIST.NIST makes no guarantees about the correctness, stability or applicability of this work nor is there any guarantee of continuing support. This work is not an endorsement of any product or protocol.
Release Status
JSR 32 is in the "maintenance" phase although essentially, this is a complete re-write of the spec. This is still subject to change although it is expected that only minor changes will be made.This is (and will remain) user-supported code. More extensive testing is needed. Never use this code to signal your neighborhood nuclear reactor! Although this code is officially unsupported, we will try to keep up with your bug reports. You are part and parcel of this development effort and NIST-SIP is only as good as the bug reports, feature requests and usage feedback reports you send in. Please report bugs..
Some tools included in this distribution use technology that was developed by the Apache Software Foundation. The libraries used by these tools are re-distributed in binary form under the Apache Software License ( a copy of which is included herein ).
Acknowledgements
Many people have contributed bug reports and suggestions that were part of NIST-SIP 1.1 and that were carried forth into NIST-SIP 1.2. Where ever applicable, we have tried to retain acknowledgement of contributions in the code. See README for a list of contributors and please inform us if we have missed your name in error.![]()